1 主机接口386EX
C54x片内都有一个主机接口(HPI)。HPI是一个并行口,用来与主设备或主处理器接口。外部主机是HPI的主控者,可以通过HPI直接访问CPU的存储空间,包括存储器映像寄存器。
HPI主要由5个部分组成:
*HPI存储器(DARAM)。HPI的RAM主要用于C54x与主机之间传送数据,也可以用作通用双寻址数据RAM或程序RAM。
*HPI地址寄存器(HPIA)。它只能由主机对其直接访问。寄存器中存放当前寻址HPI存储单元的地址。
*HPI控制寄存器(HPIC)。C54x和主机都能对其直接访问,它映像在C54x数据存储器地址的002CH处。
*HPI控制逻辑。用于处理HPI与主机之间的接口信号。
HPI有两种工作方式:
*共用寻址方式(SAM)。在SAM方式下,主机和C54x都能寻址HPI存储器,异步工作的主机的寻址可以在HPI内部重新得到同步。如C54x与主机的时候周期发生冲突,则主机具有寻址优先权,C54x等待一个周期。
*仅主机寻址方式(HOM)。在HOM方式下,只能让主机寻址HPI存储器,C54x则处于复位状态或者处在所有内部和外部时钟都停止工作的IDLE2空闲状态(最小功耗状态)。
Intel 386EX微处理器是一个优化的、用于嵌入式应用的全静态的32位处理器。其特点是功耗低、工作电压低,集成了许多通常使用的DOS类型外围芯片,并且与拥有大量软件基础的32位编程结构的Intel 386处理器兼容。
2 主机接口与386EX的连接
图1为TMS320C57S HPI与80386EX主机连接的接口电路图。由图1可见,C54x通过HPI与主设备相连时,除了8位HPI数据总线以及控制信号线外,不需要附加其它的逻辑电路。
C57S HPI是一个8位的并行端口,可以用其将16位字结构的C54x DSP与主机相连,因而主机必须读/写两个连续的8位字节。当该引脚为低电平时,就可以通过D7:D0读/写2个连续的8位字节达到操作16位外设的目的。
从386EX的可寻址空间可以看出,只需两根地址线(A2、A1)便可寻址到HPI端口:控制寄存器、地址寄存器和数据寄存器。386EX有一个内部译码器CS0,可将外部设备译码至可寻址范围。当然,也可将HPI端口映射至386EX的I/O地址空间。
3 软件设计
(1)存取DSP的数据
由于主机接口总是传送8位数据字节,而HPIC寄存器又是一个16位寄存器,在主机这一边就可以相同内容的高字节与低字节来管理HPIC寄存器,而在C54x这一边高位是不用的。
当主机开始存取DSP的数据时,首先要执行以下两步操作:
*将HPIC寄存器的BOB位置1(高字节与低字节必须相同)。
BOB位为字节选择位。BOB位置为1,表示第一个字节为低字节。BOB位影响数据和地址的传送。只有主机可以修改这一位,C54x对它既不能读也不能写。
*将地址写入HPIA寄存器。
当DSP处于复位状态时,HPI自动设置为HOM模式。此时主机可以灵活地控制DSP的复位信号(RS)。如果想使DSP处于省电方式,还应当控制其时钟信号。C54x与主机在同一时钟周期访问存储器时,主机的优先级要高。
(2)HPI自举加载
如果选择HPI自举方式,应将HINT与INT3引脚连在一起。当HINT为低电平时,C54x的中断标志寄存器(IFR)的相应位(bit2)置位。INT3发出之后,自举加载程序等待20个机器周期后读出IFR的相应位(bit2)置位。INT3发出之后,自举加载程序等待20个机器周期后读出IFR的bit2。若此位被置位,自举加载程序就转换到片内HPI RAM的起始地址——程序空间的8800H,并从这个地址起执行程序。
(3)HPI存储器
C54x的HPI存储器是一个2K×16位的DARAM。它在数据存储空间的地址为1000H~17FFH(这一存储空间也可以用作程序存储空间,条件是PMST寄存器的OVLY位被置位)。
从接口的主机方便看,是很容易寻址2K字的HPI存储器的。HPIA寄存器是16位,由它指向2K字空间,因此主机对它寻址是很方便的,地址为0~7FFH。
HPI存储器地址的自动增量特性,可以用来连续寻址HPI存储器。在自动增量方式,每进行骊次读操作,都会使HPIA事后增1;每进行一次写操作,都会使HPIA事前减1。HPIA寄存器是一个16位寄存器,它的每一位都可以读出和写入,尽管寻址2K字的HPI存储器只要11位最低有效位地址。HPIA的增/减对HPIA寄存器所有16位都会产生影响。
上一篇:浅谈交流伺服系统脉冲接口抗干扰能力的几种典型接口方法
下一篇:嵌入式系统中PCI总线仲裁器的设计方法
推荐阅读最新更新时间:2024-05-02 21:36