基于HPI接口的高速数据传输设计
从C6416 HPI寄存器的编址方式可以看出,主机需两根地址线寻址到HPI接口的控制寄存器、地址寄存器和数据寄存器,因此选择主机的地址线A3、A2连接C6416 HPI的HCNTL1、HCNTL0。HPI的选通由HCS、HDS1、HDS2三根信号线共同作用,最后的HPI使能信号(STROBE)为HDS1异或HDS2后,再与HCS进行与非运算的结果。若将HPI接口安排在主机的ACE1区域(即地址范围0X90000000-0X9FFFFFFF),则直接将主机的片选信号ACE1接到HCS,而将读写信号RE、WE分别接到HDS1、HDS2。对于HR/W信号,可以连接到地址线A4,当A4=1时,代表读操作,反之为写操作。
本文引用地址:https://www.eepw.com.cn/article/86522.htm若使用HPI16,可以使用主机的地址线A1接HHWIL来完成高低字节的识别:当A1=0时,表示为第一字节;A1=1时表示第二字节。
由于主机的ARDY信号和C6416 HPI接口的HRDY信号逻辑刚好相反,因此要将HRDY信号经过反相后再接ARDY信号。C6416 HPI的HINT信号可以直接连接到主机的EXT_INT7引脚上实现HPI对主机的中断信号连接。HPI接口信号线中的HAS线直接拉高。C6416 HPI与主机的连接电路如图1所示。
软件设计
主机必须按照顺序进行HPI访问:
(1)初始化HPI控制(HPIC)寄存器;
(2)初始化HPI控制(HPIA)寄存器;
(3)写数据到HPI数据(HPID)寄存器或从HPID寄存器读取数据。
一旦HPI被初始化,主机就可以固定地址模式或自动增加模式对DSP地址进行读写访问,下面以HPI接口地址增加模式写操作为例来介绍。
实验结果
HPI的数据传输速率可以通过在单位时间内传输的数据量来表示,其计算公式如下
cpuclk: CPU时钟周期
latency: 从主机开始传输到目标准备转移第一个数据所需周期数
xfer:传输n个字所需周期数
实验中测得的HPI数据传输速率见表3。
结束语
本文介绍了主机接口HPI的特点,通过实验得出HPI的数据传输速率。该方案灵活简单,适用于含有HPI接口的DSP应用系统,从而为开发人员提供了一种全新的数据共享传输方案。其特点是通用、高速且不需辅助硬件,具有很好的实际应用前景。
评论