资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,HPI,HPI,概述,HPI,程序装载过程,DES,的,HPI,接口示意图,HPI,的三个寄存器,通过,HPI,接口访问片内,RAM,HPI,接口中断的使用,HPI,概述,以,PC,机作为主机,通过,PC,的,ISA,总线与,DSP,的,HPI,主机并口连接作为传输通道,,实现对,PC,机,ISA,插卡上的,DSP,芯片,TMS320,VC5402,进行,实时在线程序装载,。,是一种,主从模式,的应用,即把,PC,机作为主机,,DSP,芯片作为从机。,HPI,程序装载过程,系统上电复位,MP/MC,引脚为低,yes,VC5402,内部具有,4K16,位字,的,ROM,C54X,的,BOOTLOADER,是芯片在出厂时由生产厂家写入的一段,ROM,程序。,该程序的,启动地址,正是,C54X,复位后的起始地址,0FF80h,。,对,C54X,系列:,HPI,模式需要外部引脚连接配合,,即需要将引脚,HINT,与引脚,INT2,相连,BOOTLOADER,程序将,HPIC,的,HINT,位置,1,,,于是,HINT,引脚和,INT2,引脚变为低电平,,然后,BOOTLOADER,程序通过判断,IFR,的,D2,位,(即有无,INT2,中断)以确定是否为,HPI,启动。,若,D2=1,,则跳转到指定地址处开始执行。,对,VC5402,:增强,HPI,接口,在写入,DSP,代码后,,只需要将程序进入点地址写入,0 x7f,单元,,BOOTLOADER,会自动跳转到进入点地址开始运行,,而不用再次复位!,注意,,VC5402,的,HPI,装载方式与,C54X,系列的其它型号稍有不同。其不同有以下两点:,VC5402,的,HPI,装载过程是在复位过程,(Reset),以后,完成的,不是在复位过程中完成的。,/INT2,标志位不是判断,HPI,装载模式的唯一方法,,VC5402,内地址为,0X007F,的,RAM,单元的内容也是判断,HPI,装载模式的一种方法,。,标准,HPI,有两种工作模式:,RAM,共享和主机访问模式。,增强型,HPI,(如,VC5402,,,VC5409,,,C5410,等)都是共享模式,而且只能在,DSP,时钟信号有效时才能访问片内,RAM,。,DES,的,HPI,接口示意图,HPI,的数据线,HD0-HD7,通过缓冲隔离,BUF,与,PC,机的数据线,D0-D7,相连。,HCNTL0/1,信号线用来选择主机将要读写的是,HPI,的哪个寄存器,它们由,PC,并口的,A1,,,A2,位决定。,HBIL,为比特传输控制位,由,PC,并口,A0,位决定。当,HBIL,(即,A0,),=0,时,表示当前传输的是一个,C54X,内存单元(,16,位)的第一个字节(第一个,8,位),,HBIL,为高时表示传输第二个字节。而这两个,8,位哪个是高,8,位,哪个是低,8,位,不是由该信号控制,而是由,HPIC,中的,BOB,位确定。,HCS,为片选信号,HAS,为地址锁存信号,HDS1/2,为读写或数据使能信号。,在,DES,的,HPI,接口设计中,将它们简化,仅使用,HCS,和,HDS2,,其它接为高电平。,DES,中主机(,PC,机)通过并口来访问,HPI,。所以,HPI,的选通信号由,PC,的并口地址译码信号产生,HR/W,为,HPI,的读写控制信号,高电平为读操作,低电平为写操作。,HINT,也是一个输出信号,,由,HPIC,中的,HINT,比特位确定,,HPI,可以利用该引脚中断主机。,引脚,HPIENA,为高电平表示允许,HPI,接口工作,若要使用,HPI,,该引脚必须接高电平。,HRDY,为,HPI,的输出信号,高电平表示,HPI,准备就绪,该信号,DES,中没有使用。,HPI,的三个寄存器,BOB,位,:该比特位,只能由主机读写,,,C54X,无法访问。,如果,BOB=1,,表示,HPI,的,16,位传输中的,第一个,8,位字节是低,8,位,;,BOB=0,,表示第一个,8,位字节为高,8,位。,该比特位必须在读写数据和地址寄存器之前设置,。,SMOD,位,:该比特位主机只能读,而,C54X,可以读写。,如果,SMOD=1,,表示起用,共享,RAM,模式,,主机和,C54X,都可以访问,HPI,共享,RAM,;,如果,SMOD=0,,表示,HPI,工作在,主机访问模式,,,C54X,将无法访问,2K,的,HPI,共享,RAM,。,C54X,复位时,,SMOD,设置为,0,;复位操作执行完成后,,SMOD=1,。,VC5402,中,该比特无效。,DSPINT,位,:,该比特位,只能由主机,写,,并且,C54X,和主机都,无法读取,。,当主机将,1,写到该比特位时,将产生一个中断到,C54X,。,如果,IMR,寄存器中的,HPINT,位(,D9,)被设置为,1,,,DSP,将响应该中断,执行相应的中断服务程序。,HINT,位,:该比特位,主机和,C54X,都可以读写,。,该比特决定了,C54X,引脚,HINT,的状态。,C54X,可以利用该信号发送中断到主机,。,当,C54X,在复位状态时,,HINT,比特位为,0,,,对应的,HINT,脚为高电平。,当,C54X,将该比特位设置为,1,时,,HINT,脚将变为低电平。,注意,,当主机和,C54X,读取,该比特位时,,它将反映,HINT,引脚的状态,,0,表示高电平,,1,表示低电平。,另外,,该比特位只能由,C54X,设置,由主机清除,。,主机将,1,写到该比特位,将清除,HINT,位,即,HINT,位为,0,。,主机,利用,HPI,访问,C54X,的片内,RAM,,实际上是通过,读写,HPI,的,数据和地址寄存器,来实现的。,由于,C542,的,HPI,为,8,位,所以一个内存单元必须通过,两次,HPI,读写,来完成。,初始化,HPIC,寄存器:,HCNTL1=0,HCNTL0=0,;,将,HPIC,的值写入,HPI,(注意,BOB,位的设置),设置地址寄存器,HPIA,:,HCNTL1=1,HCNTL0=0,;,将要访问的,C54X,片内,RAM,的地址写入,HPI,注意:,HPIC,的高,8,和低,8,位是一样的,读写,C54X,的片内,RAM,:,1,、,HCNTL1=0&HCNTL0=1,地址自动增加模式,或,HCNTL0=HCNTL1=1,完成读写操作后,地址寄存器,HPIA,将不会变,2,、对数据锁存器,HPID,进行操作,通过,HPI,接口访问片内,RAM,HPIA,在,读完后,自动加,1,;,HPIA,将在,写之前,自动加,1,HPI,接口中断的使用,主机发送中断到,C54X,主机通过,HPIC,寄存器的,DSPINT,位,中断,C54X,主机将,1,写入到,HPI,控制寄存器,HPIC,的,DSPINT,比特位时,,C54X,将产生一个中断请求。,注意:该比特位主机和,C54X,读取的结果都是,0,,而且主机写入,0,没有任何意义。,在,C54X,中,,,该中断位于,中断屏蔽寄存器,IMR,和中断标志寄存器,IFR,的,D9,位,,其中断入口地址位于中断向量表中,64h,。,如果,IMR,中该比特位为,1,,同时,INTM,标志为,0,允许中断请求时,,C54X,将响应并口中断,程序将跳转到中断向量表的,64h,,开始执行中断服务程序。,实验时,可以使用,C,语言将,1,写入,DSPINT,位,然后查看,IFR,寄存器,检查是否产生中断请求。,C54X,发送中断到主机,C54X,可以通过,HPIC,寄存器的,HINT,位,发送中断请求到主机,无论是主机或,C54X,都可以,通过读取,HPIC,来,判断,HINT,引脚的状态。,读出的,HINT,比特位为,0,,表示该引脚为高电平;,1,表示该引脚为低电平。,当,C54X,将,1,写入,HPIC,的,HINT,比特位时,,HINT,引脚变为低电平,主机可以利用该引脚接收,C54X,发生的中断信号。,HPIC,中的,HINT,比特位只能通过主机清除,,即主机写,1,到,HPIC,的,HINT,位后,外部引脚,HINT,的状态变回到高电平(这时再读取,HPIC,,,HINT,位为,0,),
展开阅读全文