微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于DSP的USB技术在图像传输中的应用

基于DSP的USB技术在图像传输中的应用

时间:08-06 来源:互联网 点击:

  0 引言

  当前,数字信号处理器(DSP)芯片以其强大的运算能力不仅在通信、电子、图像处理领域得到了广泛的应用,同时在医疗,生物等新兴领域也有相应的应用。基于DSP的多功能滴定仪器主要是用于粮食质量的无公害检测,在该项目中, 需要设计一个图像采集和处理的DSP子系统, 该DSP子系统主要完成RAW格式图像数据的采集和相关的处理, 处理后的图像数据的显示和更进一步的处理及判别需要由PC机来完成,同时Pc机处理后的结果还需要返回给DSP。由于DSP端需要传给Pc的图像数据是不需要经任何压缩的RAw格式,而RAW格式的图像数据与压缩过的图象数据(如JPEG等)相比,数据量比较大,这样就需要设计一个高速接口来完成DSP与主机之间的大容量数据交互。由于USB接口具有热插拔,速度快等特点,因此在该项目中选择了USB作为DSP和Pc机之间的接口方式。结合整个系统的需要,设计了TMS320DM642芯片和CYPERSS公司的USB接口控制芯片CY7C68013相连接,可使PC机通过USB2.0接口实时地从DSP处获得RAW格式的图像数据,从而将DSP从数据传输中解放出来,解决了Pc机与DSP之间的大容量图像数据的传输问题。

  1 硬件连接设计

  1.1 基本工作流程

  在本系统中, 多功能滴定仪器的DSP与主机之间的接口主要由3个部分组成:主机(能够支持USB2.0协议的PC机),USB接口芯片CY7C68013和高速DSP芯片TMS320DM642。

  其基本工作流程是:当USB设备插入PC时,PC和USB设备之间会完成一个枚举过程,PC将设计好的设备驱动程序装载UUSB芯片中。枚举过程结束后即可进行数据的传输, 当PC要从DSP内存空间读取图像数据时, 由于在上电之后,DSP的内存空间中已经采集到了一帧图像数据,因此,它首先启动USB芯片中的接收程序,通过USB芯片的端口6将固定长度的图像数据依次读入FIFO,当FIFO中的数据达到一定数量后,USB芯片会自动将数据打包传送给USB总线,直到传输完毕。然后通过USB芯片的PAl引脚向DSP的EXTINT4发送中断信号,DSP芯片在收到中断信号之后,会启动相应的中断程序,进行下一帧图像数据的采集, 为PC下一次读取图像数据做好准备,这样PC就可以动态地控制图像的读取速度。

  当PC有数据要发送时,它将数据直接传给USB芯片,USB芯片收到数据后,按指定的数据长度将数据写到发送端口2的FIFO中,然后自动启动内部的GPIF相关程序,将数据写入DSP相应的内存地址空间, 接下来USB芯片通过设置DM642的HPIC寄存器中的DSPINT位(将其置i),向DM642发起中断,通知DM642有数据到。

  1.2 硬件连接

  由于DM642的HPI接口是从模式的,因此CY7C68013须以主模式参与连接,这样我们选择可编程控制接口GPIF方式与DM642的HPI接口进行连接。接口问信号线的连接见表1:

  USB接口芯片通过GPIF波形描述符的编写来匹配DM642的HPI接口的读写时序,从而能正确地对HPI内部的四个寄存器进行读写,成功地实现对HPI口的操作。从FX2L P的PA口选取PA[7:6]连接HCN TL[1:0], 实现对HPI寄存器操作的选择,见表2:

  表2 HPI寄存器的选择与功能除了以上两个接口间主要的信号线连接外,还有以下几点需要说明:

  接口芯片CY7C68013的SCL和SDA两个管脚应该上拉,DM642的HAS#管脚应上拉和HD5管脚应下拉。

1.3 DSP内存空间的访问

  DSP内存空间的正确访问是实现USB接口功能最关键的部分。USB接口芯片是通过运用其GPIF口来访问DM642的HPI接口,来达到间接访问DM642的内存空间,DM642的HPI接口各个寄存器的读写时序详见参考文献[2]。然后再通过芯片内部的USB2.oh3议模块完成与主机(PC)之间的数据交换,从而实现DSP与主机之间的数据传输。因此,通过GPIF波形描述符的编写来匹配DM642的HPI接口的读写时序成为了驱动程序中最重要的部分。

  在该项目中,主机从DSP内存空间中读取的主要是图像数据,而图像数据往往存放在连续的地址空间中, 因此这里采用的是以地址白增方式读IIPI数据寄存器。读HPID的过程为: 先向控制寄存器HPIC写入操作控制字;再向地址寄存器HPIA写入欲操作的DM642的内存空间地址: 然后等待DM642以EDMA的方式完成内部操作,并将数据准备好:然后从数据寄存器HPID处根据HPIC中控制字的要求以地址自增方式连续读取DM642内存空间的数据。

同时由于主机向DSP内存空间中写入的是少量控制数据,故以固定地址方式写HPI数据寄存器。写HPID的过程为:先向控制寄存器HPIC写入操作控制字:再向地址寄存器HPIA写入欲操作的DM642的内存空间地址;然后以固定地址方式根据HPIC中控制字的要求向HPID中写入数据;最后DM642以EDMA的方式完成内部操作,将HPID中的数据写入HPIA中的

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

网站地图

Top