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

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> DSP >> 应用论文
  相关分类: 应用论文 | TI DSP | 新产品 | 算法 | 下载 | DSP代码示例 | ADI DSP | freescale DSP |
基于DSP的USB设备固件程序开发
 
作者:詹鹏 郭勇 蔡顺燕 高嵩   来源:微计算机信息    点击数:323   更新时间:2008-6-20
您可以添加到网摘 让更多人关注此文章:

    摘要:本文介绍了一种采用TMS320VC5509A自带的USB模块来实现USB数据传输的方案,对该DSP内部的USB模块的构造及其传输原理做了分析,详细的介绍了如何利用CCS内部集成的片级支持库(CSL)来实现USB设备固件程序的设计,并给出了相关的部分代码。该方案大大降低了系统硬件设计的复杂度和调试的难度,提高了系统的集成度和稳定性,适用于便携式设备中。
关键词:TMS320VC5509A;CSL;DSP;USB;固件程序

1.引言


通用串行总线(USB)是一种高传输速率的串行接口总线,由于它具有即插即用、易于扩展、传输速率高、连接简单、使用方便的特点,被广泛的应用于各种计算机外设、数据采集、数字设备以及工业控制等领域中。选取合适的USB控制芯片是USB数据传输系统设计的重要环节,目前常采用USB控制芯片有两类,一类是不带MCU的控制芯片,如PDIUSBD12;而另一类是带MCU的,如EZ—USB系列等。这两类专用的控制芯片都需要通过芯片所提供的接口来与系统处理器进行通信,而本文介绍的USB接口方案没有采用专用的USB控制芯片,而是采用DSP芯片TMS320VC5509A内部集成的USB模块来完成USB通信,使系统硬件设计和调试难度都大大降低,同时也提高了系统的集成度和稳定性。


2.USB接口设计


2.1 TMS320VC5509A简介


TMS320VC5509A是TI推出的高性能、低功耗的定点DSP处理器,CPU频率最高可以运行在200MHz(内核电压工作在1.6v),每个时钟周期可执行一到两条指令,有两个算术逻辑单元(ALU),两个硬件乘法器,是一款具有较高性价比、高集成度、低功耗的DSP芯片,适用于便携式设备中。TMS320VC5509A集成了128K 16Bits RAM、32K 16Bits的ROM,且带有EMIF接口, 可实现与多种存储器之间的无缝连接。片内还有丰富的外设:2个20位的定时器;3个多通道缓冲串口(McBSP);USB全速接口(12Mbps);I2C接口;实时时钟等[1]


2.2 TMS320VC5509A的USB模块介绍


TMS320VC5509A自带的USB模块支持USB1.1协议全速标准,该USB模块有两个控制端点(仅用于控制传输)和14个通用端点,通用端点支持中断、批量和同步传输。DSP的USB模块由串行接口引擎(SIE)、USB缓冲管理单元(UBM)、缓冲器RAM、USB的DMA控制器和缓冲器RAM仲裁器组成。DSP存储器与USB主机之间的数据传输模型如图(1)所示:在IN事务中,CPU或USB的DMA控制器将准备发送到主机的数据放到缓冲器RAM中,等待USB缓冲管理单元将数据取出后送到串行接口引擎(SIE),由SIE负责数据的发送;在OUT事务中,SIE接收到由主机发来的数据后送到UBM,再送入到缓冲器RAM中,等待CPU或USB的DMA控制器将数据取出后送到DSP的存储器中。



图(1)DSP存储器与USB主机之间的数据传输


 


2.3 USB 模块的时钟发生器:


USB模块有专门的时钟发生器,独立于CPU的时钟发生器,如图(2)所示,由DSP时钟发生器输出的时钟送入到CPU和其他外设(不包括USB模块),而USB模块的时钟由单独的时钟发生器为它提供。USB模块的时钟可选择用模拟锁相环(APLL)或数字锁相环(DPLL)来产生[3]。模拟锁相环与数字锁相环相比有它独特的优势,TI推荐使用模拟锁相环来产生USB模块的时钟。提供给USB模块的时钟必须设置为48MHz。



图(2)时钟发生器


2.4 USB接口硬件设计


       如图(3)所示,DP、DN和PU端口接到5509A的USB模块端口引脚上,DSP的DP、DN端口以差分方式传送数据,PU端口通过1.5k的上拉电阻接到USB总线的D+端,DSP可以通过编程来控制PU端口,从而控制设备与USB总线的连接与断开。主机USB接口提供的电源经电阻分压后送入DSP,供DSP检测是否与主机的USB接口连接上。




图(3)USB接口硬件连接图


3.USB设备固件程序设计与实现


USB驱动程序主要包括两个部分:设备固件程序和主机端的设备驱动程序,设备固件程序是指运行在设备端CPU中的程序,它主要完成USB协议的处理及设备与主机的数据交换, 设备固件程序设计是重点也是难点,本文主要介绍设备固件程序的编写。


3.1 DSP 的CSL编程


       在DSP系统软件设计中,一般会大量涉及到对片上外设的操作,而这往往要消耗过多的时间和精力。TI为5000系列和6000系列的DSP提供了各自的片级支持库CSL(chip support library),CSL库函数主要用于配置和控制DSP片上外设,使片上外设更容易使用,缩短开发时间,增加可移植性。用CSL来配置和管理DSP的USB模块可以使USB固件程序的开发变得更加方便和快捷。CSL已集成到CCS中,我们可利用CCS提供的图形用户接口(GUI)来对USB模块进行相应的初始化配置,或者直接调用CSL库函数来配置。


3.2 USB设备枚举过程


当主机检测到有设备连接到USB总线时,主机要向USB设备发出一系列的设备请求,获取USB设备的一些属性,如设备支持的最大传输速率、设备接口特性、设备端点个数以及每个端点支持的传输方式等。接着主机为USB设备分配一个唯一的设备地址,然后USB设备才可以正常使用,这个过程叫做枚举[4]。USB设备的枚举过程分以下几步:


1.  USB设备加电,并连接上USB总线。


2.  主机检测到USB设备,总线复位,集线器发送复位信号并维持至少10毫秒。


3.  复位完成,USB设备处于缺省状态,此时设备将以缺省地址0响应主机请求


4.  主机发出请求,从缺省地址0读取USB设备的设备描述符。


5.  主机为该USB设备分配一个新的设备地址。


6.  主机从新的设备地址再次读取USB设备的设备描述符。


7.  主机读取设备的配置,包括配置描述符、该配置的所有接口描述符、接口的所有端点描述符以及字符串描述符号。  


8.  主机加载设备驱动程序,USB枚举过程结束,USB设备可以正常使用了。


[1] [2]  下一页



相关文章
· 利用I2C总线实现DSP对增强型视频输入理器SAA7111A EVI...[8]
· 基于Lonworks总线的嵌入式智能节点的设计[8]
· VxWorks下实时多任务程序的实现[6]
· DSP系统中的EMC和EMI的解决方案[10]
· 轨道车辆电动自动门控制系统开发[12]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
温度测控系统设计方案
中华英才网将被全盘收购
破国外垄断 中国移动存储标
IC设计面临三重挑战 ED
手机电视芯片方案需求多变
北京德尔威科技有限公司与台湾佳营电子
全球手机芯片市场战局将出现重大变革
北京奥运安保系统首次成功运用射频识别
英特尔开发空气传电技术
IBM生产出首个22纳米工艺SRAM
 
热门下载 [更多]
 
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
[ ] 实用电源电路集锦
 
论坛新帖 [更多]
 
液晶问题...
[原创]本公司长期批发各种滑冰...
[原创]本公司长期超低价批发各...
[原创]本公司长期超低价批发种...
[原创]本公司长期批发各种酒、...
[原创]本公司长期低价批发各种...
[原创]长期低价批发各种母婴用...
[原创]本公司长期批发各种饮料...
[推荐]通讯上通用的一个GSM...
用两个电容代替一个?...

 
赞助商 [更多]
 


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

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