TMS320C6713是TI公司在TMS320C6711的基础上推出的C6000系列新一代浮点DSP芯片,它是目前为止C6000系列DSP芯片中性能最高的一种.TMS320C6713可在255MHz的时钟频率下实现1800MIPS/1350MFLOPS的定点和浮点运算,因而可极大地满足通信、雷达、数字电视等高科技领域对信号处理实时性的要求.同时其主机口(HPI)可灵活地和PCI总线控制器相连接.而PC机则可通过PCI总线控制器直接访问TMS320C6713的存储空间和外围设备,从而实现PC机与TMS320C6713之间的高速数据传输.
在TMS320C6713 DSP与PC机实现高速数据传输的方案中,可选用PLX公司的PCI9052作为两者之间的接口;同时选用PLX公司的NM93CS46作为加载PCI9052配置信息的串行EEPROM;而用TI公司的SN74CBTD3384作为 PCI9052与TMS320C6713HPI之间的电平转换芯片.
1 TMS320C6713的HPI简介
1.1 TMS320C6713 HPI的接口信号
TMS320C6713的HPI是一个16位宽的并行端口.主机(上位机)掌管着该端口的主控权,可通过HPI直接访问TMS320C6713的存储空间和外围设备.表1给出了TMS320C6713HPI接口信号的基本特征.下面对它们的具体工作方式进行说明:
HD[15:0]:可以用作数据和地址的共用总线,通过HD[15:0]传送的数据包括控制寄存器的设置值、初始化的访问地址以及要传输的数据.
HCNTL[1:0]:用于控制当前访问的是HPI的哪一个寄存器,该信号同时还提供了一个对HPI数据寄存器(HPID)进行地址自增的访问方式.在该方式下,主机会连续地访问一个线性存储区域,而无需反复向HPIA写入需要的地址.表2给出了HCNTL[1:0]控制信号的功能.
HHWIL信号:用于表明并区分HD[15:0]上传输的是32位数据中的高16位还是低16位.由于TMS320C6713芯片结构决定了它与主机间所有的数据交换都是32位,而HPI端口为16位,所以每次数据访问都需要进行两次存取,而由HPI自动将HD[15:0]上连续的两个16位数据合成32位,当然,也可以用其进行反向分解.
HAS信号:用于复用地址数据总线的主机.它可使HCNTL、HHWIL和HR/W信号在一个存取周期中快速地实现状态转换.对于地址数据复用的总线来说,也可以为数据/地址的切换留出更多的时间.
HCS、HDS1和HDS2信号:这三种信号可在片内组合为一个低有效的HSTROBE信号,如图1所示.其作用是,在读取时,在HSTROBE信号的下降沿锁存输入的HPI控制信号,包括HHWIL、HR/W和HC-NTL[1:0];而在写入时,其下降沿和读取时作用相同,其上升沿则锁存写入的数据.
HRDY信号:用于表明HPI是否已准备好传输数据,其作用是在接口时序上插入等待状态.如果前一次HPI的访问尚未完成,那么当前访问的第一个半字的存取需要等待,此时,HPI会置HRDY信号为高.
表1 HPI接口信号描述
信 号 | 管 脚 号 | 管 脚 数 | 信 号 功 能 |
HD[15:1] | 从低到高依次为147、152、155、154、156、159、161、164、165、166、167、168、172、173、174 | 16 | 数据/地址总线 |
HCNTL[1:0] | 从低到高依次是146、144 | 2 | HPI访问类型控制 |
HHWIL | 139 | 1 | 确认半字(16位)输入 |
HAS | 135 | 1 | 对复用地址数据总线的主机区分地址和数据 |
HR/W | 143 | 1 | 读/写选择 |
HCS | 145 | 1 | 输入数据选通 |
HDS1/HDS2 | 从低到高依次是152、151 | 2 | 输入数据选通 |
HRDY | 140 | 1 | 访问HPI状态准备好 |
HINT | 139 | 1 | 向主机发出的中断信号 |
表2 HCNTL[1:0]控制信号的功能
HCNTL1 | HCNTL0 | 功 能 |
0 | 0 | 主机可以对HPI的控制寄存器HPIC进行读写 |
0 | 1 | 主机可以对HPI地址寄存器HPIA的进行读写 |
1 | 0 | 主机可以对HPID的数据寄存器进行读写操作,此时HPIA采用以字为单位的地址自增方式 |
1 | 1 | 主机可以对HPID的数据寄存器进行读写操作,但此时HPIA不受影响 |
1.2 TMS320C6713 HPI的控制寄存器
在TMS320C6713 HPI中,可利用三个寄存器来完成主设备和CPU的通信,它们是HPI数据寄存器(HPID)、HPI地址寄存器(HPIA)和HPI控制寄存器(HPIC).主机可对这三个寄存器进行读写,而CPU只能对HPIC进行访问.HPID中存放的是主机从存储空间中读取的数据,或者是主机向TMS320C6713的存储空间中写入的数据.HPIA中存放的是主机访问TMS320C6713存储空间的地址,其最低两位固定为零.HPIC中存放的是TMS320C6713的控制信息,其高16位和低16位内容相同.
主机对HPI进行访问的次序为:初始化HPIC、初始化HPIA、从HPID寄存器中读取或向其写入数据.在初始化HPIC时,HWOB位的设置是关键,它决定着高16位与低16位的传输次序.
2 PCI9052与TMS320C6713HPI的接口
PCI9052是PLX公司继PCI9050之后推出的用于低成本适配器的总线目标接口芯片.它支持PCI2.1协议规范,在33MHz的总线时钟频率下,其峰值传输速度可达132MB/s,因而可大大改善数据传输中的瓶颈问题.同时它还具有方便灵活的开发特点,正是这些特点使其在PCI从模式接口卡的设计中得到了广泛的应用.
表3给出了PCI9052与TMS320C6713HPI接口信号的基本特征.下面是对它们具体工作方式的一些说明:
LAD[31:0]:利用该信号可通过设置LASIBRD局部地址空间总线区域描述寄存器的总线宽度位来调整总线宽度,当LASIBRD[23:22]=00时,采用LAD[7:0]8位宽度,当LASIBRD[23:22]=01时,采用LAD[15:0](16位),当LASIBRD[23:22]=10时,采用LAD[31:0](32位).
LBE[3:0]字节使能信号是在总线宽度的基础上编码的.对于32位总线,LBE[3:0]表示哪一个字节被选中:LBE0对应[7:0],LBE1对应[15:8],LBE2对应[23:16],LBE3对应[31:24];而对于16位总线,LBE0对应[7:0],LBE1对应地址的第1位,LBE2不用,LBE3对应[15:8];对于8位总线,LBE0对应地址的第0位,LBE1对应地址的第1位,LBE2和LBE3不用.
CS1和CS2分别带有与之对应的片选基地址寄存器(CSIBASE).CSIBASE0为片选使能位,其中CSIBASE[27:1]为片选空间位.从片选空间位的第1位向第27位扫描时,遇到第1个“1”即决定了片选空间的大小,其余位则为片选空间的基地址.
LINT1和LINT2可通过中断控制/状态寄存器INCSR的中断使能位INCSR[6]进行使能,同时可设置其它相关信息.
表3 PCI9052与TMS320C6713的接口信号描述
信 号 | 管 脚 号 | 管脚数 | 信 号 功 能 |
LAD[31:0] | 从低到高依次为91、90、89、88、87、86、85、84、83、82、79、78、77、76、75、74、73、72、71、70、69、62、61、60、59、58、57、56、55、54、53、52 | 32 | 数据总线 |
LW/R | 127 | 1 | 为“1”时写,为“0”时读 |
LA[27:1] | 从低到高依次是92、93、94、95、96、97、98、100、101、102、105、106、107、108、109、110、111、112、113、114、115、116、117、118、119、122 | 27 | 地址总线,传输28位线性地址的高26位 |
LBE[3:0] | 从低到高依次是46、47、48、49 | 4 | 字节使能信号,表示当前总线传输中哪一个字节被选中 |
LRDY | 128 | 1 | 在局部总线读数据或可接受写数据 |
ADS | 123 | 1 | 表明可用地址和一次新的总线存取的起始 |
CS1、CS2 | 130、131 | 2 | 片选信号 |
RD | 126 | 1 | 通用写 |
WR | 125 | 1 | 通用读 |
LINT1,LINT2 | 137、136 | 2 | 局部中断输入 |
3 与 PC的高速数据传输
TMS320C6713HPI与PCI9052的具体连线如图2所示.
实际上,在具体电路设计时,整个方案的实现除了需要TMS320C6713和PCI9052外,还需要有SN74CBTD3384和NM93CS46.由于TMS320C6713的I/O是在3.3V电压下工作,而PCI9052在5V电压下工作,所以TMS320C6713与PCI9052之间必须采用SN74CBTD3384进行电平转换.SN74CBTD3384是TI公司生产的10位总线转换器,它的输入、输出引脚一一对应,并分别排列在芯片的两侧封装.图2中共选用了三片SN74CBTD3384.NM93CS46是PLX公司生产的串行EEPROM存储器,用于加载PCI9052配置信息.其中按一定顺序存放着设备号(DID)、供应商代号(VID)、子设备号(SDID)、子供应商代号(SVID)、PCI总线与局部总线之间的地址空间映射关系、片选地址、控制位、状态位及其它杂项配置等.上电时,PCI总线的RST信号有效,同时PCI9052输出局部复位信号LRESET,并检查NM93CS46是否有效.若有效,且第一个16位字不是FFFFh,那么PCI9050将根据串行EEPROM的值来设置内部寄存器,否则采用默认值.
考虑到TMS320C6713HPI与PCI9052间的时序配合问题,通常在连线过程中,还必须注意下列几个问题:
(1)由于PC机中数据与地址总线是复用的,所以PCI9052的MODE引脚应接地,而PCI9052中局部数据与地址总线是非复用的,所以TMS320C6713的HAS引脚应接高电平.
(2)由于 TMS320C6713的HR/W信号与PCI9052的W/ R信号极性相反,因此必须通过非门进行连接.
(3)由于TMS320C6713与PCI9052分别工作在不同的时钟频率下,所以TMS320C6713的HRDY信号输出必须通过D触发器的同步后才能送入逻辑电路,以供PCI9052的LRDY信号使用.
(4)LRDY信号的逻辑表达式为:LRDY=RD.WR+(CS1+ADS+HRDY),因此,只有RD或WR有效,且CS、ADS、HRDY也有效时,LRDY才能有效.
另外,要保证TMS320C6713 HPI与PCI9052的稳定协调工作,除了要设计合理的硬件电路外还必须对PCI9052的内部寄存器进行准确配置.关于PCI9052内部寄存器的具体配置方法,可以参考PLX公司的用户手册,这里不再赘述.
笔者已将该方案应用于某电力系统精确故障定位及录波装置中.其中,由TMS320C6713 DSP芯片构成的高速数据采集卡用来控制电力系统中各电参数的采集、存储与故障判断.当其HPI被设置为带地址自增的读方式时,可在一次故障记录结束后,由PC机将存储在TMS320C6713外扩SDRAM中的大量数据一次性读入.读入的数据可用来计算故障发生的精确位置,分析系统中各电参数的变化情况,同时记录各继电保护装置的动作情况.
4 结束语
该方案不仅有效地解决了TMS320C6713 DSP芯片与PC机间数据传输的瓶颈问题,而且简化了硬件设计.同时由于它支持即插即用技术.因此,由DSP构成的高速数据采集卡具有良好的可移植性。
上一篇:TMS320F240的IDE接口仿真器设计
下一篇:基于定点DSP的CMOS数字视频监控终端设计
推荐阅读最新更新时间:2024-05-02 21:06