现在位置:范文先生网>理工论文>电子通信论文>DSP与PC机的PCI总线高速数据传输

DSP与PC机的PCI总线高速数据传输

时间:2023-02-20 22:38:52 电子通信论文 我要投稿
  • 相关推荐

DSP与PC机的PCI总线高速数据传输

摘要:介绍了TI公司的高性能浮点式数字信号处理芯片TMS320C6713的接口信号及控制寄存器,并在此基础上,指出了该DSP通过PCI总线与PC机进行高速数据传输的实现方法,同时给出了TMS320C6713和PC机通过PCI9052总线接口芯片实现接口的硬件原理图。
  关键词:DSP;数据传输;TMS320C6713PCI9052
  
  TMS320C6713是TI公司在TMS320C6711的基础上推出的C6000系列新一代浮点DSP芯片,它是目前为止C6000系列DSP芯片中性能最高的一种。TMS320C6713可在255MHz的时钟频率下实现1800MIPS/1350MFLOPS的定点和浮点运算,因而可极大地满足通信、雷达、数字电视等高科技领域对信号处理实时性的要求。同时其主机口(HPI)可灵活地和PCI总线控制器相连接。而PC机则可通过PCI总线控制器直接访问TMS320C6713的存储空间和外围设备,从而实现PC机与TMS320C6713之间的高速数据传输。
  
  在TMS320C6713DSP与PC机实现高速数据传输的方案中,可选用PLX公司的PCI9052作为两者之间的接口;同时选用PLX公司的NM93CS46作为加载PCI9052配置信息的串行EEPROM;而用TI公司的SN74CBTD3384作为PCI9052与TMS320C6713HPI之间的电平转换芯片。
  
  1TMS320C6713的HPI简介
  
  1.1TMS320C6713HPI的接口信号
  
  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信号为高。
  
  表1HPI接口信号描述
  
  信号管脚号管脚数信号功能HD[15:1]从低到高依次为147、152、155、154、156、159、161、164、165、166、167、168、172、173、17416数据/地址总线HCNTL[1:0]从低到高依次是146、1442HPI访问类型控制HHWIL1391确认半字(16位)输入HAS1351对复用地址数据总线的主机区分地址和数据HR/W1431读/写选择HCS1451输入数据选通HDS1/HDS2从低到高依次是152、1512输入数据选通HRDY1401访问HPI状态准备好HINT1391向主机发出的中断信号
  表2HCNTL[1:0]控制信号的功能
  
  HCNTL1HCNTL0功能00主机可以对HPI的控制寄存器HPIC进行读写01主机可以对HPI地址寄存器HPIA的进行读写10主机可以对HPID的数据寄存器进行读写操作,此时HPIA采用以字为单位的地址自增方式11主机可以对HPID的数据寄存器进行读写操作,但此时HPIA不受影响
  1.2TMS320C6713HPI的控制寄存器
  
  在TMS320C6713HPI中,可利用三个寄存器来完成主设备和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位的传输次序。
  
  2PCI9052与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)。CSIBASE?0?为片选使能位,其中CSIBASE[27:1]为片选空间位。从片选空间位的第1位向第27位扫描时,遇到第1个“1”即决定了片选空间的大小,其余位则为片选空间的基地址。
  
  LINT1和LINT2可通过中断控制/状态寄存器INCSR的中断使能位INCSR[6]进行使能,同时可设置其它相关信息。
  
  表3PCI9052与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、5232数据总线LW/R1271为“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、12227地址总线,传输28位线性地址的高26位LBE[3:0]从低到高依次是46、47、48、494字节使能信号,表示当前总线传输中哪一个字节被选中LRDY1281在局部总线读数据或可接受写数据ADS1231表明可用地址和一次新的总线存取的起始CS1、CS2130、1312片选信号RD1261通用写WR1251通用读LINT1,LINT2137、1362局部中断输入
  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才能有效。
  
  另外,要保证TMS320C6713HPI与PCI9052的稳定协调工作,除了要设计合理的硬件电路外?还必须对PCI9052的内部寄存器进行准确配置。关于PCI9052内部寄存器的具体配置方法,可以参考PLX公司的用户手册,这里不再赘述。
  
  笔者已将该方案应用于某电力系统精确故障定位及录波装置中。其中,由TMS320C6713DSP芯片构成的高速数据采集卡用来控制电力系统中各电参数的采集、存储与故障判断。当其HPI被设置为带地址自增的读方式时,可在一次故障记录结束后,由PC机将存储在TMS320C6713外扩SDRAM中的大量数据一次性读入。读入的数据可用来计算故障发生的精确位置,分析系统中各电参数的变化情况,同时记录各继电保护装置的动作情况。
  
  4结束语
  
  该方案不仅有效地解决了TMS320C6713DSP芯片与PC机间数据传输的瓶颈问题,而且简化了硬件设计。同时由于它支持即插即用技术。因此,由DSP构成的高速数据采集卡具有良好的可移植性。
  
  
  

【DSP与PC机的PCI总线高速数据传输】相关文章:

高速PCI总线接口卡的开发08-06

PCI总线和DSP芯片的图像处理平台的硬件设计08-06

基于PCI总线的嵌入式实时DSP图像采集系统08-06

基于PCI总线的双DSP系统及WDM驱动程序设计08-06

焊缝检测系统中PCI总线高速数据采集卡的设计08-06

PCI总线仲裁器的设计与实现08-06

基于PCI总线加密卡硬件设计08-06

PCI总线接口芯片9050及其应用08-06

基于PCI总线的CAN卡的设计与实现08-06