微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PC/104总线/TMS320VC5402HPI口通信解决方案

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

时间:03-09 来源:互联网 点击:

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应用系统,从而为开发人员提供了一种全新的数据共享/传输方案。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top