论文关键词: DSP HPI MPC8272 FPGA VHDL源代码
论文摘要:通过对TI公司TMS320C6421 DSP HPI接口信号和接口总线时序的分析,以VHDL语言为工具,使用Altera的FPGA芯片EP3C40F780C8,设计完成MPC8272总线和TMS320C6421 DSP HPI总线之间的通信接口,并在实际的产品中得到运用,给出与整个接口设计相关的VHDL源代码。对于类似的DSP HPI接口设计,此文章具有参考和指导意义。
一、HPI概述
HPI(Host-Port Interface)主机接口,是TI高性能DSP上配置的与主机进行通信的片内外设。通过HPI接口,主机可以非常方便地访问DSP的所有地址空间,从而实现对DSP的控制。
TMS320C6421的HPI接口是一个16bit宽的并行端口。主机(host)对CPU地址空间的访问是通过EDMA控制器实现的。 HPI接口的访问主要通过三个专用寄存器来实现,它们分别是HPI控制寄存器(HPIC)、HPI地址寄存器(HPIA)和HPI数据寄存器(HPID)。
二、HPI接口信号简介
(1) HD[15∶0](数据总线)
(2) HCNTL[1∶0](控制HPI访问类型)
如前所述,对HPI的访问需要通过三个寄存器,即HPI地址寄存器(HPIA),HPI数据寄存器(HPID)和HPI控制寄存器(HPIC)来实现。HCNTL[1∶0]就是用于选择这三个寄存器的专用引脚。
HCNTL1
HCNTL0
HPI访问类型
0
0
主机可读写HPI控制寄存器HPIC
0
1
主机可读写HPI数据寄存器HPID,读操作或写操作后HPIA自动增1
1
0
主机可读写HPI地址寄存器HPIA
1
1
主机可读写HPI数据寄存器HPID,读操作或写操作后HPIA不变
(3) HHWIL (半字指示选择)
HHWIL指示当前的为第一个或是第二个半字传输,但需要注意的是,它并不代表是最高有效的(most significant)还是最低有效的(least significant),而决定的依据是HPIC中的HWOB位的状态。对于第一个半字,HHWIL必须被驱动为低电平;对于第二个半字,HHWIL必须被驱动为高电平。
(4) HR/W (读/写操作指示)
HR/W为高电平,表示从HPI接口读;HR/W为低电平,表示向HPI接口写。
(5) HRDY (输出准备好)
(6) HCS,HDS1,HDS2(选通信号)
当HCS有效,并且HDS1和HDS2中仅有一个有效时,内部触发信号HSTROBE有效。这三个信号的组合逻辑其实就是片选和读/写信号构成的组合逻辑,因此,可直接与主机的片选和读/写信号相连。如下图所示:
(7) HAS (地址输入选通)
在TMS320C6421 HPI接口中目前没有用,连接到逻辑高电平。
(8) HINT(向主机输出的中断)