积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> DSP >> 应用论文
  相关分类: 应用论文 | TI DSP | 新产品 | 算法 | 下载 | DSP代码示例 | ADI DSP | freescale DSP |
TMS320VC5502图像传输系统的USB接口扩展
 
作者:何平征,许茹,王德清   来源:《电子工程师》    点击数:98   更新时间:2008-9-5
您可以添加到网摘 让更多人关注此文章:

    0 引言

  一个典型的水下图像传输系统采用DSP(数字信号处理器)作为实时图像处理的核心单元,并用PC机建立良好的人机界面,以完成图像的采集和显示。因此,PC上位机与DSP间需进行一种高效、快速的数据传输。目前PC机和DSP常采用RS-232串口通信方式实现数据交换,其通信协议简单,但在大数据量的图像信息传输中,很难满足系统的实时性要求。此外,PC机本身串口资源也十分有限。而USB(通用串行总线)作为一种快速且有弹性的新式接口,可以满足多数情况下大数据量实时交换的要求。

  本文提出一种基于USB接口的图像传输系统方案,介绍DSP和上位机间的USB接口设计,利用TI公司的DSP芯片TMS320VC5502和Cypress公司Ez-USB SX系列芯片CY7C68001,完成USB接口扩展的软硬件设计,实现DSP与上位机间的高速数据传输。

  1系统整体方案

  系统整体结构如图1所示。

  在发送端,PC机将待发送图像转换为数据比特流送到USB总线上,同时,在主机屏幕上显示原图像。图像数据经DSP和外围电路的处理后送人信道。接收机对接收信号进行处理后,通过USB总线把图像数据传回上位机并显示接收图像。其中,DSP和上位机间的USB接口设计是本文的重点。

        
 
  2硬件设计

  USB接口扩展的硬件设计如图2所示。

        

  TMS320VC5502是一款定点16位芯片,作为TI公司TMS320C5000 DSP平台上性价比最佳的新型产品,其运算速度高达600亿次乘加运算每秒。它具有1条32 bit的程序读总线和5条16 bit的数据总线,片上集成有ROM(16 k×16 bit)、DARAM(32 k×16 bit)等存储器和丰富的外设资源,可满足大数据量的图像处理要求。此外,芯片低功耗(不到200 mW)的特点使它可以应用到水下图像传输系统中。

  由于DSP的I/O口资源有限,系统采用FP-GA芯片EPF10k10A完成地址译码。它具有66个用户IO口,将DSP的部分地址线连接到FPGA的IO口并配置为输入端口,通过FPGA程序模拟译码器逻辑,可以产生Flash存储器、SDRAM、USB、UART等所有与DSP通信的模块片选信号,从而实现DSP的I/O口扩展。

  USB通信协议较复杂,因此,本系统采用Cypress公司的CY7C68001芯片实现USB2.0接口,该芯片集成了USB2.0收发器和SIE(串行接口引擎),分别完成物理层和链路层的数据通信管理,USB的应用层协议由TMS320VC5502编程实现。

  CY7C68001芯片支持高速(480 Mbit/s)或全速(12 Mbit/s)USB数据传输;内部有4个端点(End-point)共享4 kB的FIFO,每个端点对应的FIFO空间大小及FIFO状态可编程;芯片还具有智能SIE功能,可在不借助微处理器中断的前提下完成枚举。

  CY7C68001具有16根数据总线FD[15:0],3根地址线FIFOADR[2:0]用于选通命令接口或指定的FIFO。此外,/INT信号表明CY7C68001有中断事件发生,或通知DSP对CY7C68001的读操作结束;READY信号表明CY7C68001处于可读写状态。

  3软件编程

  3.1主机端程序

  USB协议中包含控制型(contro1)、等时型(Isoch-ronous)、中断型(Interrupt)和批量型(Bulk)4种基本的数据传输类型。其中,批量传输特别适合大数据量的传输,在没有带宽和间隔时间要求时,可以保证快速准确的传输。因此,本系统采用批量传输方式进行PC机与DSP间的图像数据传输。

  主机端软件包括3个部分:

  a)CY7C68001的驱动程序,用于实现USB设备的发现、配置和关闭,实现数据传送接口与控制等功能。结合EZ-USB的GPD(通用设备驱动程序),在Windows WDM DDK环境下编译生成驱动程序的系统文件(.sys)。

  b)安装USB时的信息文件(.inf),用于将驱动程序绑定到特定设备的Verdor ID(VID)和Product ID(PID)。当USB设备插入计算机时,计算机检测到设备插入后自动发出查询请求;USB设备回应该请求,并送出设备的VID/PID。计算机根据这两个ID装载相应设备驱动程序,完成枚举。

  c)系统上位机(PC)处理程序,采用Microsoft Vis-ual C++软件编写,通过对界面上控件的操作产生消息,使CPU执行相应的动作。以发送端为例,主机程序流程如图3所示。

        
 
  驱动程序与应用程序的接口函数定义如下:

       

  对用户而言,所有应用程序均通过IO控制来访问EZ-USB GPD。以上接口函数主要调用两个Win32API函数:首先通过CreatFile()连接USB设备并获取访问设备驱动程序的句柄;再调用DeviceIoControl()提交I/O控制码(IOCTL),向驱动程序发送相应命令,并为CreatFile()返回的设备句柄设置I/O缓冲区。部分源代码如下: 
 
  
  
  3.2 DSP端程序

  USB主机与设备间的数据传输是通过设备中的端点(Endpoint)进行的。这些端点通过端点号和输入输出方向来进行标识,并为数据传输分配固定FIFO存储区。本系统在初始化时将CY7C68001的4个端点配置为批量传输类型。其中,FIF02、FIF04为输出端点,用于接收上位机传来的数据;FIF06、FIF08为输入端点,用于存放待发送的数据。各个FIFO设置为异步工作模式。

  DSP经初始化后打开USB外部中断,向CY7C68001写入描述符表,等待其枚举中断。枚举成功后,DSP对CY7C68001进行其他配置并清空FIFO,然后等待主机发送用户请求并进行相应处理。

  程序流程如图4所示。程序在TI CCS 2.2集成开发环境下进行编译并调试通过。

        
 
  3.2.1 USB的初始化

  在每个USB设备的内部都有一个设备描述符(descriptor)表,它包含了设备的全部要求和特性。通过主机与设备间的控制传输来辨识并配置新连接上的USB设备的过程称为设备枚举(enumeration)。CY7C68001芯片内有一个大小为500字节的描述符RAM,用于存放描述符表,内部寄存器DESC用于存放描述符表的长度。

  CY7C68001的枚举方式有EEPROM自举和通过DSP自举(默认)2种。本系统采用默认方式,先由DSP向DESC寄存器写入2字节的描述符表长度,再通过命令口将描述符表按字节写入描述符RAM。描述符表写入后,DSP等待CY7C68001的枚举成功中断。枚举成功后,CY7C68001完成对各端点的配置。

  3.2.2 CY7C68001的寄存器读写

  DSP采用二次寻址方式对CY7C68001寄存器进行读写,即首先通过命令口将要寻址的寄存器子地址和操作类型(读/写)写入,然后通过命令口将数据读出或写入。具体步骤可参考CY7C68001芯片手册。

  3.2.3 CY7C68001的中断

  SX2共有以下6个中断源:

  SETUP:SX2收到无法自动处理的上位机请求;
  EPOBUF:端点0的缓冲区处于可读/写状态;
  FLAGS:OUT端点FIFO转为非空状态;
  ENUMOK:SX2枚举成功;
  BUSACTIVITY:总线挂起/恢复;
  READY:从低功耗通过WAKEUP引脚被唤醒。

  当有中断事件发生时,CY7C68001通过INT信号触发:DSP中断。DSPUSB的ISR(中断服务子程序)中通过读命令口来判断中断源,并设置相应中断标志。若为SETUP中断,即SX2收到无法自动处理的用户请求(如用户定义的批量读/写),则在随后的中断处理中,ISR从命令口依次读入8个字节,存入用户命令缓冲区中,再由主程序解析执行。

  4结束语

  本系统利用USB2.0接口芯片CY7C68001实现上位机和DSP的高速图像数据传输,为水下图像传输系统建立良好的人机界面,用户利用PC机将待发送的图像送入发送机的DSP,接收机的DSP将收到的图像数据送回PC机并显示,用户可对发送和接收到的图像进行直观对比。



相关文章
· DSP与PC机的无线交换调制模块设计[427]
· ARM CPU S3C44B0X与C54X DSP的接口设计[131]
· 利用双处理器延长电池使用寿命[197]
· 基于C语言设置TMS320 DSP中断向量表[157]
· 用FPGA构成液晶显示控制器[177]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
新兴半导体技术催生绿色节能的大学校园
电子系统创新促进汽车走向环保与节能
意法CEO携新品巡游中国 
未来3年新余需要8万光伏产业人才
看好中国未来发展:瑞萨提升在华芯片产
中国LED发展神速将成为未来照明产业
剖析联发科技2009年五大产品策略
突破四大障碍 蓝牙立体声耳
瑞萨向德国企业出售当地半导体前工序工
产业紧缩 PCB业或将提前
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
[转]教你如何进行电磁兼容设计...
[转]汽车和专业音响原厂设计原...
诺基亚,三星手机原厂图纸和PC...
电子元器件可靠性和失效分析经典...
[建议]FPGA设计技巧与实例...
Xilinx FPGA设计快速...
基于CPLD的各种设计实例和分...
教你如何学会MSP430单片机...
凌阳单片机教程(共8章)非常详...
[建议]学习PIC系列单片机的...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网