>
首页 » 业界动态 » 基于PC机与HPI接口的DSP程序直接下载法

基于PC机与HPI接口的DSP程序直接下载法

作者:董 韬,李兵兵  时间:2007-01-24 23:26  来源:

摘 要:利用TI 公司生产的DSP 芯片所提供的HPI 接口及其功能,提出了一种新的从计算机直接将DSP 程序下载到DSP 芯片的RAM 中的方法,即将PC 机的打印机接口与DSP 芯片的HPI 总线直接相连,用来下载程序和传输数据。其中,只需要在PC 机端对下载程序代码进行一些处理就可以省掉DSP 下载仿真器以及DSP 芯片的外围下载辅助电路,从而只使用了DSP 中的RAM ,提高了处理速度,大大地减少了硬件设计的复杂度和开销。

关键词:DSP ; HPI ;下载

  在TI 公司生产的DSP 芯片中,程序的下载往往采用两种方式,即使用仿真器下载,或将程序烧写到FLASH ,再从FLASH 中调用程序。使用仿真器下载会提高工程的费用;而采用FLASH 下载,又会用到较多的外围电路,增加硬件设计的复杂度,给工程开发带来不必要的麻烦。这里将要讨论的是另外一种新的方法,即采用HPI 自举方式,通过PC机的打印机接口与DSP 芯片的HPI 总线,将程序从PC 机直接下载到DSP 芯片的RAM 中。这里只需要并口线连接,而不需要任何其他辅助器件,减少了硬件开支,节省了开发经费。经过实验证明该方法不但稳定可靠, 而且由于只用到了DSP SRAM ,从而大大地提高了处理速度。

 

HPI PC 机的接口形式

本文采用的DSP 芯片型号为TMS320VC5416 ,该芯片具有HPI 数据总线。在此处,该方法采取的是HPI-8 工作方式,体现在主机是通过8 位数据总线(HD0-HD7) DSP 之间交换数据信息。要通过HPI方式直接将程序下载到DSP SRAM ,并且通过自举方式运行程序,就要把DSP 芯片的MP/ MC 引脚接地,而且要把HINT 引脚与INT2 引脚短接,这样,在程序下载到芯片中后,程序才能够自动运行。

硬件连接原理如图1 所示。在这里,所用的PC机接口是L PT 接口(打印机接口) 。图中,DSP 8位数据总线( HD0-HD7) 与主机交换数据信息。

因为C54x DSP 16 位字节结构,主机与DSP之间数据传输必须包含两个连续的字节。图1 所示的HBIL 引脚信号确定传输的是第一个还是第二个字节,HBIL = 0 ,表示第一个字节; HBIL = 1,表示第二个字节。

HCNTL0 HCNTL1 信号是地址输入控制信号,选择对HPIAHPIC HPID 寄存器进行访问。这里,HPIA ( HPI 地址寄存器) HPIC( HPI 控制寄存器) HPID( HPI 数据寄存器) DSP 芯片中自带的寄存器,用于存储主机的地址、控制和数据信 号。HCNTL1/ 0 的信号与功能如表1 所示。

HR/ W 信号是读写信号,高电平表示读操作,低电平表示写操作。

HDS1 在这里用作选通信号,在它的下降沿,HBIL ,HCN TL0/ 1 HR/ W 进行采样,对数据进行控制。

由于HIN T 引脚与IN T2 引脚短接,DSP 芯片复位后,它的信号为低电平,在程序下完毕后,HIN T 信号可以被主机置为高电平,用来表示程序下载成功。

 HPI 内部寄存器的选择与设置

TMS320VC5416 具有3 16 位的寄存器:HPID ,HPIA HPICHPID 内寄存传输的数据;HPIA 内寄存数据表示数据要传输到的存储器的地址,在这里表示DSP 芯片内部RAM 的地址; HPIC是控制寄存器,对数据传输的状态进行控制。

2 HPIC 的寄存器内容,是主机向HPIC中写入数据的格式。另外还有主机从HPIC 中读取数据的格式,这里不加以描述。表中的@表示不确定数,可以写入任何值。BOB 位表示选择第一字节或者第二字节为最高位,因为HPI 数据总线是以8bit 为单位传输数据;但计算机内部存储器和DSP内部RAM 都是以16 bit 为单位,所以,主机要把16位的数据分成两个字节发送,DSP 需要分清所传输字节应该放入存储单元的高8 位还是低8 位。当BOB = 1 ,第一个字节为低位;BOB = 0 ,第一个字节为高位。DSPIN T 表示的是主机发送给DSP 的中断信号,HIN T 表示的是DSP 向主机发送的中断信号。需要注意的是,主机写入HPIC 的第一个字节和第二个字节的内容必须相同。

HPID 用于寄存本次主机向DSP 内部RAM 写入的数据。

HPIA 中寄存的是HPID 中存储的数据将要写入的地址。

在每次选通信号HDS1 的下降沿,系统采样HPIC ,HPIA HPID 的数据,按照HPIC 中内容所要求的格式,HPID 中的数据写入HPIA 所制定的存储单元中去。

 

HPI 自举方式及其实现

DSP 芯片硬件复位时,如果检测到MP/ MC引脚的信号为低电平,则将从片内ROM FF80H开始执行Bootloader 程序。这个程序是生产时工厂固化到ROM 中的,Bootload 程序将开始循环检测DSP 芯片将要使用哪种自举方式。在外部硬件电路中把HIN T 引脚和IN T2 引脚短接,复位成功后,Bootloader 程序会检测到IN T2 为低电平,确定采用HPI 自举方式加载程序。这时,DSP 系统会清除RAM 0x007Fh 单元中的内容, 并且把0x007Fh 用作一个软件标志以显示HPI 自举加载是否已经完成。如果0x007Fh 中的内容发生了变化,则表示程序加载完成。同时,系统会把0x007Eh0x007Fh 中的数据作为程序的首地址开始运行程序。所以,在主机将程序直接下载DSP 芯片的方法中,程序下载完成后,要把程序首字节的存储地址的高16 位放入0x007E 单元, 而把低16 位放入0x007Fh 单元。例如,如果程序是从地址0x0080 开始运行, 则要在0x007Eh 单元中存入0000h , 0x007Fh 单元中存入0080h ,DSP 芯片就会从内部SRAM 0080h 地址开始顺序地执行程序。

 

下载程序的格式与生成方法

DSP 程序的编译通常都是在CCS (Code Composer St udio) 的环境下完成的,在编译完成后所生成的是*. out 文件,但此文件无法直接下载到DSP芯片的SRAM 中运行。解决这个问题,可以利用TI 公司提供的hex500. exe 文件转化工具,这个工具可以在CCS 文件夹的c5400\ cgtool s\ bin\ 目录下找到。hex500. exe 需要在dos 环境下运行。如果CCS 安装在C 盘下,do s 指令是:

c :\ ti \ c5400\ cgtool s\ bin\ hex500 c : \ dsp . out- bscr 0e8000h - swwsr 7fff h - i - byte - o d : \test . hex - memwidth 16 - romwidt h 16 - boot -bootorg 0x8000

其中,dsp . out CCS 生成的需要转化的文件,test . hex 是转换后得到的文件,这个文件中包含着文件存储地址,文件长度等信息。*. hex 文件的格式如下:

00000000h :00 80 01 8C 77 18 0C 00 F2 73 00 FC F4 95F4 95 ;

00000010h :F4 EB F4 95 F4 95 F4 95 08 F4 95 F7 BDF4 95 48 ;

00000020h :1D F0 30 FF F7 F4 95 F4 95 F4 95 F4 95 80 16 72 1D 00 ;

00000030h :16 F4 95 F4 95 71 10 00 12 F4 95 10 12 F000 00 ;

00000040h :01 80 12 F4 95 F4 95 10 17 F0 10 00 01 8017 F4 ;

00000050h :95 F4 95 F4 95 48 1D F0 30 00 7F F0 40 0080 F0 ;

上表中,前两个字节表示程序将要存储的首地址,这里首地址是0080h ;第三、四个字节表示的是程序的长度,这里是018Ch ;后边是实际应用程序的内容。然后将实际应用程序截取下来,按照所给地址写入DSP RAM ,再把首地址的值0080 写入0x007f 单元,就可以让程序正确运行了。

 

下载程序流程

本方法通过对L PT 接口进行控制,来完成程序的下载。

程序工作流程如图2 所示。工作过程中, HPIC 的所有内容均设置为0 :BOB = 0 ,表示所传输的第一个字节为高字节;DSPIN T = 0 ,表示不对该位进行操作; HIN T = 0 ,清除中断。因为每次只能传输8 bit 数据,所以每个字的内容需要传输两次才能完成。在向HPID 写入数据前, 需要分两次向HPIA 写入地址信息,而后再分高8 位和低8 位把数据写入HPID。最后, 把程序首地址写入0x007Eh 0x007Fh 地址单元中,表示传输完毕。这里,程序首地址位0x0080h ,故而向0x007Eh 中写入0000h ,0x007Fh 中写入0080h 。然后,DSP 就会从0080h 地址单元开始执行程序。

 

结束语

通过HPI 接口直接下载程序到DSP 芯片的方法,不仅可以使用在主机与DSP 的通信中,同样可以应用于单片机和其他控制芯片与DSP 的通信。经验证,这种方法稳定可靠,大大地减少了DSP 的开发的复杂度,减少了开发费用,不失为DSP 开发的一条新途径。

相关推荐

CEVA凭借90%的市场份额继续领导DSP IP市场

CEVA  DSP  2012-05-30

欧胜推出带有语音处理器DSP的下一代音频中枢

欧胜  DSP  2012-05-07

Tensilica HiFi音频/语音DSP迎来又一里程碑

Tensilica  DSP  2012-04-25

Tensilica授权瑞萨电子ConnX BBE16 DSP IP核

Tensilica  DSP  2012-04-18

Tensilica HiFi音频DSP支持杜比数字+功能

Tensilica  DSP  2012-02-28

CEVA和Idea! 电子系统合作

CEVA  DSP  ISDB-T  2011-12-19
在线研讨会
焦点