×

系统设计中的各种标准接口资料下载

消耗积分:2 | 格式:pdf | 大小:417.93KB | 2021-04-12

分享资料个

  对于设计人员而言,根据应用的性能、电源、存储器以及接口要求寻找特定的嵌入式处理器是一项令人生畏的艰巨任务,因为即便是相似的系统也存在着显著的差异。尽管ARM处理器提供十几种选择,但系统设计人员却很难找到“完美的搭配”。   本文将重点介绍各种标准接口,并揭示它们对不同嵌入式的区别所在。了解基本接口可帮助设计人员优先考虑哪些接口应为片上(on-chip)。不过,虽然标准接口具有很高的使用价值,但为了提供额外的片上资源,也需要可定制的片上接口。本文将介绍两种这样的外设模块。   USB   通用串行总线(USB)接口最初的开发目的是用来连接个人计算机与外设。随着时间的推移,它已经成为工业与基础设施应用的常用接口。诸如键盘、鼠标以及示波器等人机接口设备(HID)通常都采用USB接口,这就意味着它必须得到系统嵌入式处理器的支持。实现这一目标的最有效方法是采用片上外设。   除了HID之外,工业与基础设施应用还可以使用另外两种设备。USB通信设备类(CDC)不但适用于调制解调器与传真机,而且还可通过提供用于以太网数据包传输的接口来支持简单的联网。同样,USB大容量存储设备(MSD)主要针对硬盘驱动器及其它存储介质。   USB 2.0规范要求主机初始化所有向内及向外的传输。此外,该规范还定义了三种基本设备:主机控制器、集线器以及外设。   USB 2.0的物理互连是一种在每个星型中心使用一个集线器的分层星型拓扑结构。每条线段都是一个主机与集线器或功能之间的点对点连接,或者是一个连接至另一个集线器或功能的集线器。   USB 2.0系统中用于设备的寻址方案可实现单个主机连接多达127个设备。这127个设备可以是集线器或外设的任何组合。复合或组合设备可以是这127个设备中两个或两个以上的设备。   虽然USB 2.0很可能是工业和许多基础设施应用的首选,但外设设备需要在没有主机参与的情况下彼此通信时,还需要部署移动USB(USB OTG)。为了实现点对点通信,USB OTG引入了一种新的设备,这类设备包含可为两个外设实现数据共享的限制主机功能。   OTG补充方案定义了一套新的、称之为主机协商协议(HNP)的握手方式。使用HNP,能够作为默认外设连接的设备可请求成为主机。这有助于现有USB 2.0主机设备范例提供点对点通信。另外还定义了会话请求协议(SRP)。   USB具有可靠标准的普及性与极高地位,可向嵌入式处理器厂商提供专门针对USB功能的软件库,从而可大幅缩短开发时间。系统设计人员不必编写自己的代码,只需进行功能调用,便可实施接口。   这些库应通过认证,证明已通过了USB实施人员论坛实施的USB设备及嵌入式主机合规性测试。德州仪器(TI)等一些厂商可为其嵌入式处理器提供广泛的USB库。   2007年,旨在创建一种更快USB类型的USB 3.0推广团队(the USB 3.0 Promoter Group)得以成立,这种USB类型不但向后兼容以前的USB标准,而且还可提供比USB 2.0快10倍的数据速率。USB 3.0采用新的信号发送方案,并通过保留USB 2.0双线接口实现了向后兼容性。然而这种更快的版本还处于部署初期,USB 2.0今后数年仍将是最常用的USB类型,其具有高速(480Mbps)、低速(1.5Mbps)以及全速(12Mbps)三种速度选项。   EMAC   虽然符合IEEE 802.3以太网标准的接口一般会被误称为以太网介质访问控制器(EMAC),但完整的EMAC子系统接口实际上包括三个模块,这三个模块可能会集成在片上,也可能不会:物理层接口(PHY);以太网MAC,其可实施协议的EMAC层;定制接口一般称为MAC控制模块。   EMAC模块可控制系统到PHY的包数据流。MDIO模块可执行PHY的配置以及状态监控。两个模块都可通过MAC控制模块访问系统核心,从而还可优化数据流。在TI嵌入式处理器等完全集成型解决方案中,定制接口被视为EMAC/MDIO外设不可或缺的组成部分。   完整的EMAC子系统如图1所示。      EMAC控制模块不但可控制设备中断,而且还整合了一个用于保持EMAC缓存器描述符的8K字节内部随机访问存储器(RAM)。该MDIO模块采用802.3串行管理接口来询问和控制多达32个采用共享双线总线连接至设备的以太网PHY。   主机软件使用MDIO模块来配置连接至EMAC的每个PHY的自动协商参数,恢复协商结果,并在EMAC模块中配置所需的参数,以实现正确的操作。该模块可为MDIO接口实现近乎透明的操作,基本不需要核心处理器的维护。   EMAC模块可在网络与处理器之间提供一个高效率的接口。EMAC模块通常可提供10Base-T(10Mbit/秒)与100Base TX(100Mbit/秒)、半双工与全双工模式,以及硬件流控制与服务质量(QoS)支持。此外,部分处理器现在还支持可实现1000Mbit/秒数据速率的千兆位EMAC容量。   由于以太网的广泛使用,嵌入式处理器一般都在芯片上集成了一个或多个EMAC接口。不同的厂商在实施上述完整的EMAC子系统时采用的方法也稍有不同。实施以太网接口所需的软件支持与库的质量和范围是选择嵌入式处理器厂商时需要考虑的另一个问题。   路由器或交换机等应用所需的EMAC有时不止一个。这些应用通过使用多个EMAC,能够在创建同步过程通信的同时,与众多设备通信。   SATA   串行ATA(SATA)可将主机总线适配器与诸如硬盘驱动器与光盘驱动器等大容量存储设备相连。它已基本取代了之前的并行ATA(PATA)。PATA要求40/80线并行线缆,长度不超过18英寸。PATA的最大数据传输速率为133Mbit/秒,而SATA串行数据格式则使用两个差分对来支持连接数据存储设备的接口,线路速率为1.5Gbit/秒(SATA版本1)、3.0Gbit/秒(SATA版本2)与6.0Gbit/秒(SATA版本3)。SATA 1和SATA 2现已面市,SATA 3将在近期推出。   此外,SATA控制器需要的线缆较细,而且可以长达3英尺。较细的线缆更加灵活,一方面可实现更便捷的布线,另一方面更有利于大容量存储设备外壳内的空气流通。   串行链路可获得高性能的部分原因是采用高级系统存储器结构来容纳高速串行数据。这种高级主机控制器接口(AHCI)存储器结构可为控制、状态以及命令列表数据表提供一个通用域。命令列表的每条记录都包含用于编程SATA设备的信息以及一个用于在系统存储器与设备之间传输数据、指向描述符表的指针。   大多数SATA控制器不但支持热插拔,而且还采用端口多路器来增加可连接至单个HBA端口的设备数量。SATA标准有一个很长的特性列表,但几乎没有SATA控制器可支持所有这些特性。常见特性包括:支持AHCI控制器规范1.1版;集成SERDES PHY;集成Rx与Tx数据缓存器;支持SATA电源管理特性;每端口配备内部DMA引擎;多达32条记录的硬件辅助原生命令排序(NCQ);32位寻址;支持端口乘法器;支持LED工作;机械控制开关(mechanical presence switch)。   由于SATA能够存储可延伸至太字节范围的大量数据,因此应用非常广泛,其中包括上网本、膝上型电脑、台式机、多媒体设备以及便携式数据终端等。此外,SATA还可用于可能需要传感器或系统监控器存储大量数据以待后续分析的工业应用。   DDR2/移动DDR   DDR2是双倍数据速率(DDR)SDRAM规范的后继标准,这两个标准互不兼容。DDR2在总线时钟信号的上升沿与下降沿传输数据,并能够以更高的总线速度运行,从而可实现每个内部时钟周期四次的数据传输。   简化型DDR2控制器包括以下设计块:存储器控制、读取接口、写入接口以及I/O块。   这些块以及它们与DDR2存储器芯片及核心逻辑的关系见图2所示。      存储器控制块发出存储器对专用核心逻辑的访问,反之也是如此。读取物理块负责处理在各个读取周期中采集数据的外部信号时序,而写入物理块则使用适当的外部信号时序管理时钟与数据的发出。   字节宽度双向数据选通(DQS)随数据(DQ)通过外部方式传输,用于采集目的。DQS在读取存储器时由控制器通过边缘对齐的方式传输,而在写入存储器时则采用中心对齐的方式。片上延迟锁相环(DLL)用于锁住DQS及相应的DQ。这可在电压及温度发生变化时确保它们能够彼此跟踪。   DDR2 SRAM具有差分时钟输入,可降低时钟输入占空比变化时的影响。此外,DDR2 SRAM还支持数据掩码信号,可在各个写入周期中为数据位添加掩码。   移动DDR(MDDR)也称低功耗双倍数据传输速率存储器(LPDDR),因为其工作电压为1.8V,而传统存储器工作电压为2.5V或3.3V,通常用于便携式电子产品。此外,移动DDR存储器还支持传统DDR2存储器不具备的低功耗状态。与所有DDR存储器一样,双倍数据传输速率是通过器件时钟上下沿同时传输数据实现的。   uPP   由于片上外设的数量受成本或其它限制条件的约束,系统设计人员往往想找出数据片上与片外传输的新方法。一种策略是利用未使用视频端口的资源,实际上是利用它来高速发送和接收非视频数据。这种方法的缺点之一就是数据必须被格式化成视频帧,这在工作中需要部分处理器MIPS的支持,而在设计周期中则需要宝贵的编程时间。   其它的方法存在类似的困难,而且大多数标准片上数据接口是串行端口,不能执行高速数据传输。   最终许多系统设计人员认识到将某种不符合特定接口标准,但能够以多种方式配置的高灵活高速外设专门用于数据传输会带来显著的优势。如果系统处理器必须与高速DAC、ADC、DSP乃至FPGA连接,实现250MB/秒的高速数据传输,则这种思路就非常有价值了。   这种外设的基本架构很容易描述。它要有多个具有单独并行总线的通道,经配置后可以容纳超过一个字的长度。此外,它还要有内部DMA块,这样其工作就无需占用内核的MIPS预算。单、双倍数据速率以及多种数据打包格式也是可以使用的。   TI各种嵌入式处理器都提供通用并行端口(uPP),包括Sitara ARM9 AM1808与AM1806

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'系统设计中的各种标准接口资料下载',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);