⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 基于usb2_0的高速数据通信接口设计 - 21ic中国电子网.htm

📁 usb2.0的一篇论文
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0039)http://www.21ic.com/news/n26565c70.aspx -->
<HTML lang=gb2312 xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>基于USB2.0的高速数据通信接口设计 - 21IC中国电子网</TITLE>
<META http-equiv=content-type content=text/html;charset=gb2312>
<META content=noindex,nofollow name=robots><LINK href="favicon.ico" 
type=image/x-icon rel=icon><LINK href="favicon.ico" type=image/x-icon 
rel="shortcut icon">
<META content=基于USB2.0的高速数据通信接口设计 name=description>
<META content=21IC.com name=keywords><LINK 
href="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/style.css" type=text/css 
rel=stylesheet>
<SCRIPT src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/flash.js" 
type=text/javascript></SCRIPT>

<SCRIPT type=text/javascript>
var thumbWidth=120;var thumbHeight=0;
var thumbHWidth=thumbWidth;var thumbHHeight=thumbHeight;
</SCRIPT>

<SCRIPT src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/thumbnail.js" 
type=text/javascript></SCRIPT>

<SCRIPT language=javaScript 
src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/scroll.js" 
type=text/javascript></SCRIPT>

<SCRIPT language=javaScript 
src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/imgResize.js" 
type=text/javascript></SCRIPT>

<META content="MSHTML 6.00.2900.3429" name=GENERATOR></HEAD>
<BODY topMargin=0><SPAN id=printScript>
<SCRIPT language=javascript type=text/javascript>
<!--
function ContentSize(size)
{
	var obj=document.all.BodyLabel;
	obj.style.fontSize=size+"px";
}
-->
</SCRIPT>
</SPAN>
<SCRIPT language=javascript src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/print.js" 
type=text/javascript></SCRIPT>

<DIV class=twidth>
<TABLE id=sitehead cellSpacing=0 cellPadding=0 align=center border=0>
  <TBODY>
  <TR>
    <TD class=l></TD>
    <TD class=m>
      <TABLE width="100%" align=center>
        <TBODY>
        <TR>
          <TD width=200><A href="http://www.21ic.com/"><IMG 
            style="FILTER: chroma(color=#FFFFFF)" 
            src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/logo.gif" border=0></A> 
          </TD>
          <TD align=middle><!--Adforward Begin:--><IFRAME marginWidth=0 
            marginHeight=0 
            src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/adfshow.htm" 
            frameBorder=0 width=468 scrolling=no 
            height=60>
<SCRIPT LANGUAGE="JavaScript1.1" SRC="http://afp21ic.allyes.com/main/adfshow?user=Afp21ic|news|top468x60&db=afp21ic&local=yes&js=on"></SCRIPT>
<NOSCRIPT><A HREF="http://afp21ic.allyes.com/main/adfclick?user=Afp21ic|news|top468x60&db=afp21ic"><IMG SRC="http://afp21ic.allyes.com/main/adfshow?user=Afp21ic|news|top468x60&db=afp21ic" WIDTH=468 HEIGHT=60 BORDER=0></a></NOSCRIPT></IFRAME><!--Adforward End--></TD>
          <TD style="LINE-HEIGHT: 120%" align=middle width=100><A 
            onclick="javascript:window.external.addFavorite('http://www.21ic.com','21IC中国电子网')" 
            href="http://www.21ic.com/news/n26565c70.aspx#">加入收藏</A><BR><A 
            href="http://www.21ic.com/news/sitemap.aspx">网站地图</A><BR><A 
            href="mailto:info@21ic.com">联系我们</A><BR><A 
            href="http://www.21ic.com/news/search.aspx">网站搜索</A> 
      </TD></TR></TBODY></TABLE></TD>
    <TD class=r></TD></TR></TBODY></TABLE>
<TABLE id=navsub cellSpacing=0 cellPadding=0>
  <TBODY>
  <TR>
    <TD class=l></TD>
    <TD class=m>&nbsp; <A 
      href="http://www.21ic.com/news/default.aspx">21IC中国电子网</A> → <A 
      href="http://www.21ic.com/news/c29.aspx">应用</A> → <A 
      href="http://www.21ic.com/news/c70.aspx">接口电路</A> </TD>
    <TD class=r></TD></TR></TBODY></TABLE>
<TABLE id=middle cellSpacing=0 cellPadding=0 align=center>
  <TBODY>
  <TR>
    <TD>
      <DIV class=mframe>
      <TABLE cellSpacing=0 cellPadding=0 width="100%">
        <TBODY>
        <TR>
          <TD class=tl></TD>
          <TD class=tm>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD width="10%"><SPAN class=tt>详文</SPAN></TD>
                <TD width="90%">
                  <FORM name=email 
                  action=http://www.21icsearch.com/buzi/mail2/chkemail.asp 
                  method=post target=_blank><B>电子工程周刊:</B> <INPUT class=main 
                  style="BORDER-RIGHT: #0097cf 1px solid; BORDER-TOP: #0097cf 1px solid; BORDER-LEFT: #0097cf 1px solid; BORDER-BOTTOM: #0097cf 1px solid; BACKGROUND-COLOR: #ffffff" 
                  maxLength=55 size=10 value=Email name=email> <INPUT class=jbutton type=submit value=订阅> 
                  ←自动接收新闻,资料,设计应用 </FORM></TD></TR></TBODY></TABLE></TD>
          <TD class=tr></TD></TR></TBODY></TABLE>
      <DIV id=printBody>
      <TABLE 
      style="TABLE-LAYOUT: fixed; WORD-BREAK: break-all; TEXT-ALIGN: left" 
      cellSpacing=0 cellPadding=0 width="100%" align=center>
        <TBODY>
        <TR>
          <TD class=ml></TD>
          <TD class=mm vAlign=top><BR>
            <DIV align=center>
            <H1 class=aTitle>基于USB2.0的高速数据通信接口设计</H1></DIV>
            <TABLE width="97%" align=center>
              <TBODY>
              <TR>
                <TD width=120>[日期:<SPAN id=TimeLabel>2008-5-5</SPAN>]</TD>
                <TD align=middle>来源:<SPAN id=SourceLabel>微计算机信息 </SPAN>&nbsp; 
                  作者:<SPAN id=AuthorLabel>肖燕娟 杨俊峰</SPAN></TD>
                <TD align=right width=100>[字体:<A 
                  href="javascript:ContentSize(16)">大</A> <A 
                  href="javascript:ContentSize(14)">中</A> <A 
                  href="javascript:ContentSize(12)">小</A>] </TD></TR></TBODY></TABLE>
            <DIV class=content id=BodyLabel 
            style="PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px"><!--DVNEWS_AD_BEGIN--><!--Adforward Begin:-->
            <SCRIPT language=JavaScript1.1 
            src="C:\Documents and Settings\admin\My Documents\基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files\adfshow(1).htm"></SCRIPT>
<!--Adforward End--><!--DVNEWS_AD_END--><STRONG>摘要:</STRONG>利用USB2.0接口芯片CY7C68013实现了语音信号处理系统中DSP与PC机的高速通信,简要介绍了CY7C68013的功能结构以及与TMS320C6203B的接口设计,深入研究了该芯片的固件、设备驱动和应用程序开发。 
            <BR><STRONG>关键词</STRONG>:EZ-USB&nbsp;FX2;&nbsp;CY7C68013;&nbsp;TMS320C6203B;&nbsp;数据传输 
            <BR>
            <P><B>ABSTRACT:</B> Using CY7C6801 as the control chip, the 
            communication between DSP and PC in the voice signals processing 
            system is realized. A brief introduction of the basic features of 
            EZ2USB CY7C68013 and the designing of interface to TMS320C6203B is 
            provided. The development of Programming Firmware、device driver and 
            application are thoroughly researched.<B></B></P>
            <P><B>Key words: </B>EZ-USB FX2; CY7C68013; TMS320C6203B; data 
            transmission</P>
            <P align=left><B>0 </B><B>引言</B></P>
            <P>由于DSP的工作频率较高,如TMS320C6203B时钟频率高达250MHZ,故其数据读写周期很短,然而PC机串口读写速度较低,最大数据吞吐量约为115kbps,尽管DSP在与这些慢速外设进行数据交换时可以加入额外的等待周期,但是在实时性要求苛刻,算法复杂的场合,将DSP从这些冗长的等待周期中解放出来,将其时间重点放在处理关键的实时任务中去,有着重要的实际意义<SUP>[1]</SUP>。为了提高系统的实时性, 
            高速接口电路设计显得尤为重要。目前流行的EZ-USB 
            FX2芯片的传输速率为480Mbps,较好地解决了DSP与PC机间高速数据传输时的带宽瓶劲问题。本文设计并实现了TMS320C6000 
            系列DSP上, 利用EZ-USB FX2系列芯片CY7C68013 的接口技术, 实现了DSP 与计算机之间的高速数据传输。</P>
            <P><B>1 CY7C68013</B><B>结构特点</B></P>
            <P>CY7C68013是Cypress公司研制开发的EZ-USB 
            FX2系列芯片,该芯片符合USB2.0规范,同时兼容USB1.0的全速工作模式<SUP>[2]</SUP>,它的功能框图主要包括5个部分(图1):</P>
            <P>(1)收发器。USB和PC机通过D+和D-两根信号线进行数据传输,数据以480Mbit/s的全速信号或者以240Mbit/s的半速信号在D+和D-信号线上差分传输。</P>
            <P>(2)智能接口引擎(SIE)。SIE通过包排序、信号产生、信号检测、CRC产生、CRC校验、NRZI数据编码、位填充、包标识产生和解码等功能来处理USB通信协议,并保证传送到USB电缆上的数据字节以LSB开头。</P>
            <P>(3)通用微控制器以及片上RAM。USB控制器采用通用的8051微控制器,即编程语言为51系列单片机的通用语言,可使实际操作更加灵活方便。</P>
            <P>(4)I<SUP>2</SUP>C总线控制器。主要为完成将USB控制器作为主设备时必须的配置。</P>
            <P>(5)片内FIFO。其容量为4KB,可以快速实现与不同速度的外设通信。</P>
            <P><B>2 CY7C68013</B><B>与TMS320C6203B的接口电路设计</B></P>
            <P>CY7C68013是一个非常方便的USB2.0实现方案,它提供与DSP连接的接口,连接方式有两种:Slave 
            FIFOs和Master可编程接口GPIF<SUP>[3]</SUP>。本文采用Slave FIFOs异步读写方式。Slave 
            FIFOs方式是从机方式,DSP可以象读写普通FIFO一样对CY7C68013内部的多层缓冲进行读写。具体的电路连接如图2所示:</P>
            <P align=center></P>
            <P align=center><IMG onmousewheel="return bbimg(this)" 
            onclick=ImgClick(this) 
            src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/080505094720371.jpg" 
            border=0 resized="0"></P>
            <P align=center>图1 CY7C68013功能框图</P>
            <P align=center><IMG onmousewheel="return bbimg(this)" 
            onclick=ImgClick(this) 
            src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/080505094720372.jpg" 
            border=0 resized="0"></P>
            <P align=center></P>
            <P align=center>图2 CY7C68013与TMS320C6203B电路连接图</P>
            <P>FLAGA、FLAGB和FLAGC是CY7C68013内部FIFO的状态标志,TMS320C6203B通过通用I/O口获得CY7C68013内部FIFO的空、半满(由用户设定半满阈值)和满这3个状态信号,EMIF接口的CE2空间对CY7C68013进行读写操作。其工作过程为:DSP通过USB向PC发送数据时,首先查看空、半满和满这3个状态信号,然后向USB写入适当大小的数据,以保证数据不会溢出;PC机通过USB向DSP发送命令字时,USB通过中断方式通知DSP读取命令字。</P>
            <P><B>3 </B><B>软件设计</B></P>
            <P>系统的软件设计包括3部分:C8051固件设计、设备驱动程序没计和应用软件设计。CY7C68013的功能具体实现过程如下:</P>
            <P>(1)当设备连接时,Windows的设备管理器自动检测到该设备,并读取由CY7C68013核心(并非C805l固件)传回的设备描述符,根据它提供的厂商和产品ID号VID/PID(存放在FX2外接E<SUP>2</SUP>PROM中)与.inf文件进行比较,找到固件下载驱动程序(ezloader.sys),从主机将C8051固件下载到CY7C68013的RAM中。</P>
            <P>(2)C8051固件下载到RAM后,CY7C68013仿真一个脱离再连接至USB总线的过程,执行重新枚举过程,让C805l固件控制USB传输。Windows的设备管理器会检测到新的USB设备的连接,并根据C8051固件提供的厂商ID(VID)/产品ID(PID)(不同于CY7C68013核心提供的VID/PID)来加载该USB设备的设备驱动程序。</P>
            <P>(3)应用软件调用CreateFile()API函数,使用识别该设备的符号链接来取得该设备的代号。取得设备的句柄后,应用软件通过DeviceIoControl()向I/O系统服务发出要求传入数据的I/O请求,I/O管理器将此请求构造成一个合适的IRP传递给CY7C68013设备驱动程序。CY7C68013设备驱动程序根据该IRP中包含的具体操作来构造相应的USB请求块,并据此形成新的IRP传递给USB总线驱动程序。USB总线驱动程序根据该USB请求块从CY7C68013设备读取数据。操作的结果再用IRP一层一层地返回给应用程序,应用程序再对数据进行分析和处理<SUP>[4]</SUP>。</P>
            <P>3.1 C8051固件设计</P>
            <P>&nbsp;&nbsp; Cypress公司为了简化固件开发,缩短时间,加速USB外围的开发,在EZ-USB 
            FX2软件开发包里提供了固件架构。该固件架构利用C8051的程序代码来实现CY7C68013芯片起始设置、USB标准设备请求的处理以及USB闲置模式的电源管理服务。用户仅需提供其USB描述符表(即dscr.a51)及实现外围功能的程序代码(periph.c),即可完成完全兼容的USB设备。</P>
            <P>&nbsp;&nbsp;&nbsp; 
            固件的编译在Kei的集成开发环境中进行,在建立的项目中包含5个文件ez_usb.lib、</P>
            <P>usbjmptb.obj、dscr.a51和periph.c,其中:</P>
            <P>&nbsp;&nbsp;&nbsp; 
            固件架构程序流程如图3所示。该程序首先初始化所有的内部状态变量,然后调用TD_Init函数进行初始化,初始化主要包括:</P>
            <P>(1)使CY7C68013工作于异步从FIFO模式。相应的寄存器操作为IFCONFIG=0xCB。</P>
            <P>(2)将4KB的FIFO对应到两个端点(EndPoint),即EndPoint2和EndPoint6。相应的寄存器操作为:EP2(:FG=0xA0,EP6(:FG=0xE2。EndPoint2与EndPoint6分别对应21kB的内部FIFO(下面分别称作FIF02,FIF06),存放LJSB需要上传与接收的数据。其中EndPoint2为OUT型,负责从主机接收数据;EndPoint6为IN型,负责向主机发送数据。另外EndPoint2</P>
            <P>与EndPoint6均采用批量(BULK)传输方式,这种方式相对于其他LJSB2.0定义的传输方式</P>
            <P>具有数据可靠、传输速率高等特点,是最常用的传输方式。<FONT 
            color=#ffffff>www.51kaifa.com/</FONT></P>
            <P>(3)对FIF0进行配置。相应的寄存器操作为E192FIFO(:FG=0xl 
            1,EP6FIFOCFG=0x0D。本案例将FIF02,FIF06设置成自动方式。</P>
            <P></P>
            <P align=center><IMG onmousewheel="return bbimg(this)" 
            onclick=ImgClick(this) 
            src="基于USB2_0的高速数据通信接口设计 - 21IC中国电子网.files/080505094720373.jpg" 
            border=0 resized="0"></P>
            <P align=center>图3 固件架构程序流程</P>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -