📄 基于gpif的usb-ata解决方案.htm
字号:
其中PB[0..7]和PD[0..7]是双向FIFO数据线,用来连接数据线DD[0..15],进行数据的传送;PA3连接RESET信号线,对硬盘进行复位操作;ADR[0..2]与DA[0..2]连接,对寄存器地址;RDY0、RDY1分别与IORDY、IOCS16连接,使FIFO分别工作在8位的命令传输和16位的数据传输模式下。</P>
<P style="TEXT-INDENT: 0px"><B>3 软件设计流程</B></P>
<P
style="TEXT-INDENT: 30px">GPIF的程序存储区可存储4组波形的程序代码。一般情况下存储的4组波形分别用于单字节读、单字节写、多字节连续读、多字节连续写。对不同寄存器的读写操作将触发指定波形程序代码的执行,例如:读SGLDATLTRIG寄存器,GPIF则执行单字节写操作。当GPIF处于IDLE方式时,可以对程序区进行读写操作,从而改变波形程序。对GPIF的编程,可采用CYPRESS公司提供的一个基于Windows界面的开发工具。这个工具使得好GPIF的编程成为一个填表式的选择过程。对所有选项选择完毕后,它将自动生成C51的源代码,完成初始化过程。现分别以EZ-USB
FX系列和EZ-USB FX2系列中的GPIF为例,实现ATA接口中的PIO工作模式和UDMA工作模式。</P>
<P style="TEXT-INDENT: 30px">在EZ-USB
FX系列里,FIFO只有64字节大小,BULK端点UBFFER最大也只能设置为64字节。因此,用此系列的GPIF实现ATA接口的PIO模式比较合适。GPIF程序存储区分别存储单元字节读、单字节写、多字节连续读、多字节连续写4条波形程序。单字节读、写操作时,选择数据宽度为8位,完成命令传输操作。多字节读、写操作时,选择数据宽度为16位,完成数据传输操作。USB数据上传给PC机,采用BULK方式。在EZ-USB
FX系列中,端点2支持BULK方式,且可以设置成双缓冲模式。单字节读过程中,总线宽度为8位,RDY0信号接IORDY经脚,在每个Interval中可以根据选定的PIO模式指定合适的延时,也可以对IORDY信号采样,直到指定状态出现才继续动作。图3是根据PIO模式4采用GPIF产生的单字节读波形。单字节写波形的编程类似于单字节读过程,如图4所示。单字节操作一般用在命令传输中,数据传输则采用多字节读写操作,此时FIFO宽度为16,长度为64字节。与单字节操作不同的是,多字节读写操作在一次读写操作完成后,自动开始下一次读写操作,不需要再次触发,直到完成指定的次数,从而减少了CPU参与的时间。在对一个扇区进行操作时,总共需要连续进行256次读写。为此,设计一个连续64次读写的多字节读写操作程序,调用4次,则完成对一个扇区的读写。PIO模式流程图如图5所示。<BR><IMG
height=386 hspace=10 src="基于GPIF的USB-ATA解决方案.files/20050506214803493.gif"
width=545 vspace=10 border=0><BR></SPAN><FONT size=3>
</FONT><SPAN class=main1>在EZ-USB
FX2系列中,GPIF功能进一步完善,能更好地与ATA接口连接,并可以支持UDMA功能。FX2系列支持USB2.0的控制芯片,BULK端点大小可以设置为512字节或者1024字节。为实现UDMA功能,FX2系列中的GPIF做了几方面的改善。先是让GPIF中的Slave
FIFO与USB通讯中端点BUFFER直接建立连接,数据的传送不再需要CPU的参与。当端点BUFFER写满后,置BUFFER满标志位,而GPIF则根据此标志位停止读写动作。此外,GPIF中还多了一项Re-execute功能,即重复执行功能。设定此项后,GPIF可以不经过IDLE状态而根据采样RDY信号重复下一次动作,直到出现了指定的标志位后才停止动作。这项功能一般用于大批量数据的连续读写,如UDMA模式下对一个或多个扇区的读写操作。为完成UDMA模式下的CRC校验,FX2系列的芯片中还设置了特殊寄存器来完成CRC校验工作,具体使用详见芯片技术手册。可见,FX2系列芯片的GPIF能很好地胜任ATA接口中的UDMA模式传输。</P>
<P
style="TEXT-INDENT: 30px">上述方案较好地实现了USB-ATA的功能,并实现了PIO和UDMA两种模式。在运行中,GPIF不需要CPU的干预,仅通过一些CPU标志和中断与8051内核通讯,节约大量CPU资源。从该方案中还可以看出,EZ-USB
FX以及FX2系列芯片的地址线、数据线都未用到。因此,在此方案上还可以进行其他扩展,从而实现基于硬盘的大容量数据采集系统,应用于某些特殊环境下的数据采集。
</SPAN></P></TD></TR>
<TR>
<TD class=left_tdbgall align=right colSpan=2>文章录入:<A
href="http://www.mculab.com/UserInfo.asp?UserName=飞雪无痕">飞雪无痕</A> 责任编辑:飞雪无痕
</TD></TR>
<TR>
<TD width=5></TD>
<TD width=752>
<LI>上一篇文章: <A
title="文章标题:USB软件狗的设计及反破解技术 作 者:南京邮电学院信息工程系(210003)徐增祥 更新时间:2005-5-6 21:47:20 点击次数:795"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=369">USB软件狗的设计及反破解技术</A><BR>
<LI>下一篇文章: <A
title="文章标题:USB安全钥功能扩展与优化设计 作 者:清华大学Motorola单片机与数字信号处理器应用开发研究中心 马伟 更新时间:2005-5-6 21:49:28 点击次数:750"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=371">USB安全钥功能扩展与优化设计</A></LI></TD></TR>
<TR class=left_tdbgall align=right>
<TD colSpan=2>【<A
href="http://www.mculab.com/Article/Comment.asp?ArticleID=370"
target=_blank>发表评论</A>】【<A
href="http://www.mculab.com/Article/SendMail.asp?ArticleID=370"
target=_blank>告诉好友</A>】【<A
href="http://www.mculab.com/Article/Print.asp?ArticleID=370"
target=_blank>打印此文</A>】【<A href="javascript:window.close();">关闭窗口</A>】
</TD></TR></TBODY></TABLE>
<TABLE class=center_tdbgall cellSpacing=0 cellPadding=0 width=760 align=center
border=0>
<TBODY>
<TR>
<TD class=main_shadow></TD></TR></TBODY></TABLE><!--文章显示代码结束--><!--最新热点、最新推荐、相关文章代码开始-->
<TABLE class=center_tdbgall style="WORD-BREAK: break-all" cellSpacing=0
cellPadding=0 width=760 align=center border=0>
<TBODY>
<TR>
<TD class=main_title_282
width="33%"><B> 最新热点</B></TD>
<TD width=5 rowSpan=2></TD>
<TD class=main_title_282
width="33%"><B> 最新推荐</B></TD>
<TD width=5 rowSpan=2></TD>
<TD class=main_title_282
width="33%"><B> 相关文章</B></TD></TR>
<TR>
<TD class=main_tdbg_760 vAlign=top height=100>
<SCRIPT language=javascript
src="基于GPIF的USB-ATA解决方案.files/Article_Hot3.js"></SCRIPT>
</TD>
<TD class=main_tdbg_760 vAlign=top width="33%">
<SCRIPT language=javascript
src="基于GPIF的USB-ATA解决方案.files/Article_Elite3.js"></SCRIPT>
</TD>
<TD class=main_tdbg_760 vAlign=top width="33%">
<LI><A
title="文章标题:USB接口芯片SL811HS在51单片机系统中应用 作 者:王成 乔晓军 轩松涛 辛本胜 更新时间:2005-12-4 21:14:57 点击次数:5989"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=950">USB接口芯片SL811HS在51单片…</A>
[<FONT color=red>5989</FONT>]<BR>
<LI><A
title="文章标题:AN2131QC芯片USB总线通信的开发 作 者:闫军虎 更新时间:2005-9-29 15:37:08 点击次数:913"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=622">AN2131QC芯片USB总线通信的开…</A>
[<FONT color=red>913</FONT>]<BR>
<LI><A
title="文章标题:PCI接口扩展卡的快速开发方案 作 者:张志明 沈宇华 杜继宏 李春文 更新时间:2005-9-29 15:21:44 点击次数:785"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=615">PCI接口扩展卡的快速开发方案</A>
[<FONT color=red>785</FONT>]<BR>
<LI><A
title="文章标题:C8051F320在USB设计中的应用 作 者:李建平 更新时间:2005-8-20 11:19:07 点击次数:1638"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=586">C8051F320在USB设计中的应用</A>
[<FONT color=red>1638</FONT>]<BR>
<LI><A
title="文章标题:PolySwitch PPTC器件在汽车电子保护中的应用方案 作 者:Rick Astley 汽车应用经理 泰科电子 更新时间:2005-8-11 22:00:15 点击次数:715"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=569">PolySwitch PPTC器件在汽车电…</A>
[<FONT color=red>715</FONT>]<BR>
<LI><A
title="文章标题:USB在数据采集系统中的应用 作 者:清华大学 刘 丁 毛德柱 王云飞 更新时间:2005-6-23 20:50:45 点击次数:1139"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=507">USB在数据采集系统中的应用</A>
[<FONT color=red>1139</FONT>]<BR>
<LI><A
title="文章标题:智能寻位加工技术中USB接口数据传输方式的应用研究 作 者:清华大学制造工程研究所 毛德柱 周 凯 张伯鹏 刘大成 更新时间:2005-6-18 21:51:08 点击次数:1250"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=498">智能寻位加工技术中USB接口数…</A>
[<FONT color=red>1250</FONT>]<BR>
<LI><A
title="文章标题:一种改进嵌入式Linux操作系统实时性的新型方案 作 者:崔珂 陈伟 更新时间:2005-6-11 23:18:53 点击次数:725"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=470">一种改进嵌入式Linux操作系统…</A>
[<FONT color=red>725</FONT>]<BR>
<LI><A
title="文章标题:嵌入式系统设计中的USB OTG方案 作 者:TransDimension公司 Paul Liu 更新时间:2005-6-11 23:15:36 点击次数:824"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=469">嵌入式系统设计中的USB OTG方…</A>
[<FONT color=red>824</FONT>]<BR>
<LI><A
title="文章标题:USB接口类单片机特点及应用 作 者:邵森龙 程天宇 更新时间:2005-5-29 20:47:27 点击次数:1070"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=424">USB接口类单片机特点及应用</A>
[<FONT color=red>1070</FONT>]<BR></LI></TD></TR></TBODY></TABLE>
<TABLE class=center_tdbgall cellSpacing=0 cellPadding=0 width=760 align=center
border=0>
<TBODY>
<TR>
<TD class=main_shadow></TD></TR></TBODY></TABLE><!--最新热点、最新推荐、相关文章代码结束--><!--网友评论代码开始-->
<TABLE class=center_tdbgall style="WORD-BREAK: break-all" cellSpacing=0
cellPadding=0 width=760 align=center border=0>
<TBODY>
<TR>
<TD class=left_tdbgall height=25><STRONG> <IMG height=16
src="基于GPIF的USB-ATA解决方案.files/TEAM.gif" width=16 align=absMiddle>
网友评论:</STRONG>(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)</TD></TR>
<TR>
<TD>
<SCRIPT language=javascript
src="基于GPIF的USB-ATA解决方案.files/Comment.htm"></SCRIPT>
</TD></TR></TBODY></TABLE>
<TABLE class=center_tdbgall cellSpacing=0 cellPadding=0 width=760 align=center
border=0>
<TBODY>
<TR>
<TD class=main_shadow></TD></TR></TBODY></TABLE><!--网友评论代码结束--><!-- ********网页中部代码结束******** --><!-- ********网页底部代码开始******** -->
<TABLE class=Bottom_tdbgall style="WORD-BREAK: break-all" cellSpacing=0
cellPadding=0 width=760 align=center border=0>
<TBODY>
<TR align=middle>
<TD class=Bottom_Adminlogo colSpan=2>| <A class=Bottom
onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.mculab.com');"
href="http://www.mculab.com/Article/ShowArticle.asp?ArticleID=370#">设为首页</A>
| <A class=Bottom
href="javascript:window.external.addFavorite('http://www.mculab.com','MCULAB');">加入收藏</A>
| <A class=Bottom href="mailto:mculab@mculab.com">联系站长</A> | <A
class=Bottom href="http://www.mculab.com/FriendSite/Index.asp"
target=_blank>友情链接</A> | <A class=Bottom
href="http://www.mculab.com/Copyright.asp" target=_blank>版权申明</A> | <A
class=Bottom href="http://www.mculab.com/Admin/Admin_Index.asp"
target=_blank>管理登录</A> | </TD></TR>
<TR class=Bottom_Copyright align=middle>
<TD width="100%">Copyright ©2004 - 2005 <A
href="http://www.mculab.com/"><FONT
color=#000000>芯片实验室</A></FONT> & <A
href="http://www.eastchip.cn/"><FONT color=#000000>东芯科技</A></FONT>
Email:<A href="mailto:mculab@mculab.com"><FONT
color=#000000>mculab@mculab.com</FONT></A></TD></TR></TBODY></TABLE><!-- ********网页底部代码结束******** --><!-- Powered by: PowerEasy V4.0 --></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -