新闻中心

EEPW首页>嵌入式系统>设计应用> PC/104总线/TMS320VC5402HPI口通信解决方案

PC/104总线/TMS320VC5402HPI口通信解决方案

作者: 时间:2012-03-09 来源:网络 收藏


EPM7128S用来提供整个系统需要的组合逻辑。它属于MAX7000系列,是Altera公司的基于第二代MAX结构的CPLD。它提供多达5000个可用门和在系统编程,其引脚到引脚延时快达6ns。可以容纳各种各样的独立的组合逻辑和时序逻辑。EPM7128S有两个工作电压,核电压为5V, I/O工作电压可设为5V或3.3V。设为3.3V时,其输入为5V,而输出为3.3V TTL电平所有的驱动器均能配置在3.3V和5V,允许用于混合电压系统中。EPM7128S的优点是基于E2PROM原理,可以通过JTAG口进行在线编程,设计者可将设计内容从PC机上通过下载电缆和JTAG口对EPM7128S进行任意次修改。在这里使用EPM7128S是为电路提供组合逻辑以映射空间。它有多达100个I/O引脚可供编程使用,可以接入PS、IS等管脚,方便系统扩展存储空间和外设。

3 软件编程

程序分为两大部分:主程序及中断服务子程序。主程序完成初始化后,等待CC同步脉冲的到来。CC同步信号连到DSP的外部中断上,当脉冲到来时,DSP响应外部中断,脉冲到来一次响应一次中断。中断服务子程序完成随机数的迭代、对比、信号的接收、译码、解密及主控机的数据传输等。主程序流程如图3所示。

C54x和主机都能够访问C54x片内RAM。主机存取时必须同步于C54x的时钟,以确保片内RAM读/写正确。当C54x和主机同时读/写同一存储区域时将产生冲突,这时主机具有优先权,C54x CPU将等待一个C54x时钟周期。

主机访问HPI时,首先完成外部接口部分的操作,即先初始化HPIC寄存器,然后初始化HPIA寄存器,再从HPID寄存器中读出或写入数据。HPI的3个寄存器如表3所示。

在DSP的初始化程序中,一般对HPIC进行了初始化后就无需再对HPI操作了,其余的工作就完全由主机完成。通过HPI接口,主机和C54x之间可以相互发送中断请求。主机通过HPIC寄存器的DSPINT位中断C54x,而C54x通过HPIC寄存器的HINT位发中断请求到主机。无论是主机或C54x都可以通过读取HPIC来判断HINT引脚的状态,但是HPIC中的HINT位只能由主机清除。

HPID寄存器具有可供选择的自动地址自增特性,它为读/写连续的存储区提供了便利。自增模式下连续传送数据,每访问存储器一次,HPIA寄存器地址就自动增加。由于主机无需在每次访问存储器时修改HPIA值,从而提高了系统性能。当HCNTL0=1且HCNTL1=0时选择自增模式。需要注意的是,如果采用了扩展的片内RAM,要保证正确的自增操作,HPIC寄存器中的XHPIA位必需设置为1。

当使用地址自增模式时,读操作后HPIA寄存器地址加1;写操作前,HPIA寄存器地址加1。因此,如果对给定地址使用自增模式下写操作时,HPIA寄存器应初始化为起始地址减1。地址自增会影响HPIA的16位,在使用扩展片内RAM(C5410除外)时,地址自增也影响扩展地址。如果HPIA=FFFFh,那么下次读/写时将HPI地址改变为010000h。由于C5410的地址自增不会影响扩展HPI寻址,因此在上面的操作中,如果使用C5410,将使C5410地址改变为000000。

HPI口的应用极大地方便了PC/104总线与DSP系统的数据交换,使在线修改DSP存储器的数据成为可能。该方案灵活、简单,适用于任何含有HPI接口的DSP应用系统,从而为开发人员提供了一种全新的数据共享/传输方案。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭