標(biāo)準(zhǔn)接口的基本技術(shù)知識(shí)
本文將重點(diǎn)介紹各種標(biāo)準(zhǔn)接口,并揭示它們對(duì)不同嵌入式芯片廠商的區(qū)別所在。了解基本接口可幫助設(shè)計(jì)人員優(yōu)先考慮哪些接口應(yīng)為片上。另外,雖然標(biāo)準(zhǔn)接口具有很高的使用價(jià)值,但為了提供額外的片上資源,也需要可定制化的片上接口。本文將介紹兩種這樣的外設(shè)塊。
USB
通用串行總線 (USB) 接口最初的開發(fā)目的是用來連接個(gè)人計(jì)算機(jī)與外設(shè)。隨著時(shí)間的推移,它已經(jīng)成為工業(yè)與基礎(chǔ)設(shè)施應(yīng)用的常用接口。諸如鍵盤、鼠標(biāo)以及示波器等人機(jī)接口設(shè)備 (HID) 一般都采用 USB 接口,這就意味著它必須得到系統(tǒng)嵌入式處理器的支持。實(shí)現(xiàn)這一目標(biāo)的最有效方法是采用片上外設(shè)。
除 HID 之外,工業(yè)與基礎(chǔ)設(shè)施應(yīng)用還使用另外兩種設(shè)備。USB 通信設(shè)備類 (CDC) 不但適用于調(diào)制解調(diào)器與傳真機(jī),而且還可通過提供用于以太網(wǎng)數(shù)據(jù)包傳輸?shù)慕涌趤碇С趾?jiǎn)單的聯(lián)網(wǎng)。同樣,USB 大容量存儲(chǔ)設(shè)備 (MSD) 主要用于硬盤驅(qū)動(dòng)器及其它存儲(chǔ)介質(zhì)。
USB 2.0 規(guī)范要求主機(jī)初始化所有向內(nèi)及向外的傳輸。此外,該規(guī)范還定義了三種基本設(shè)備:主機(jī)控制器、集線器以及外設(shè)。
USB 2.0 的物理互連是一種在每個(gè)星型中心使用一個(gè)集線器的分層星型拓?fù)浣Y(jié)構(gòu)。每條線段都是一個(gè)主機(jī)與集線器或功能之間的點(diǎn)對(duì)點(diǎn)連接,或者是一個(gè)連接至另一個(gè)集線器或功能的集線器。
USB 2.0 系統(tǒng)中用于設(shè)備的尋址方案可實(shí)現(xiàn)單個(gè)主機(jī)連接多達(dá) 127 個(gè)設(shè)備。這 127 個(gè)設(shè)備可以是集線器或外設(shè)的任何組合。復(fù)合或組合設(shè)備可以是這 127 個(gè)設(shè)備中兩個(gè)或兩個(gè)以上的設(shè)備。
雖然 USB 2.0 很可能是工業(yè)和許多基礎(chǔ)設(shè)施應(yīng)用的首選,但外設(shè)設(shè)備需要在沒有主機(jī)參與的情況下彼此通信時(shí),還需要部署移動(dòng) USB ( USB OTG)。為了實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信,USB OTG 引入了一種新的設(shè)備,這類設(shè)備包含可為兩個(gè)外設(shè)實(shí)現(xiàn)數(shù)據(jù)共享的限制主機(jī)功能。
OTG 補(bǔ)充方案定義了一套新的、稱之為主機(jī)協(xié)商協(xié)議 (HNP) 的握手方式。使用 HNP,能夠作為默認(rèn)外設(shè)連接的設(shè)備可請(qǐng)求成為主機(jī)。這有助于現(xiàn)有 USB 2.0 主機(jī)設(shè)備范例提供點(diǎn)對(duì)點(diǎn)通信。另外還定義了會(huì)話請(qǐng)求協(xié)議 (SRP)。
USB 具有可靠標(biāo)準(zhǔn)的普及性與極高地位,可向嵌入式處理器廠商提供專門針對(duì) USB 功能的軟件庫,從而可大幅縮短開發(fā)時(shí)間。系統(tǒng)設(shè)計(jì)人員不必編寫自己的代碼,只需進(jìn)行功能調(diào)用,便可實(shí)施接口。
這些庫應(yīng)通過認(rèn)證,證明已通過了 USB 實(shí)施人員論壇實(shí)施的 USB 設(shè)備及嵌入式主機(jī)合規(guī)性測(cè)試。德州儀器 (TI) 等一些廠商可為其嵌入式處理器提供廣泛的 USB 庫。
2007 年,旨在創(chuàng)建一種更快 USB 類型的 USB3.0 推廣團(tuán)隊(duì) (the USB 3.0 Promoter Group)得以成立,這種 USB 類型不但向后兼容以前的 USB 標(biāo)準(zhǔn),而且還可提供比 USB2.0 快 10 倍的數(shù)據(jù)速率。USB 3.0 采用新的信號(hào)發(fā)送方案,并通過保留 USB 2.0 雙線接口實(shí)現(xiàn)了向后兼容性。然而這種更快的版本還處于部署初期,USB 2.0 今后數(shù)年仍將是最常用的 USB 類型,其具有高速 (480Mbps)、低速 (1.5Mbps) 以及全速 (12Mbps) 三種速度選項(xiàng)。
EMAC
雖然符合IEEE 802.3以太網(wǎng)標(biāo)準(zhǔn)的接口一般會(huì)被誤稱為以太網(wǎng)介質(zhì)訪問控制器 (EMAC),但完整的 EMAC 子系統(tǒng)接口實(shí)際上包括三個(gè)模塊,這三個(gè)模塊可能會(huì)集成在片上,也可能不會(huì):
1.物理層接口 (PHY);
2.以太網(wǎng) MAC,其可實(shí)施協(xié)議的 EMAC 層;
3.定制接口一般稱為 MAC 控制模塊。
EMAC 模塊可控制系統(tǒng)到 PHY 的包數(shù)據(jù)流。MDIO 模塊可執(zhí)行 PHY 的配置以及狀態(tài)監(jiān)控。兩個(gè)模塊都可通過 MAC 控制模塊訪問系統(tǒng)核心,從而還可優(yōu)化數(shù)據(jù)流。在 TI 嵌入式處理器等完全集成型解決方案中,定制接口被視為 EMAC/MDIO 外設(shè)不可或缺的組成部分。
完整的 EMAC 子系統(tǒng)如圖 1 所示。
圖 1:EMAC 子系統(tǒng)
EMAC 控制模塊不但可控制設(shè)備中斷,而且還整合了一個(gè)用于保持 EMAC 緩存器描述符的 8K 字節(jié)內(nèi)部隨機(jī)訪問存儲(chǔ)器 (RAM)。該 MDIO 模塊采用 802.3 串行管理接口來詢問和控制多達(dá) 32 個(gè)采用共享雙線總線連接至設(shè)備的以太網(wǎng) PHY.
主機(jī)軟件使用 MDIO 模塊來配置連接至 EMAC 的每個(gè) PHY的自動(dòng)協(xié)商參數(shù),恢復(fù)協(xié)商結(jié)果,并在 EMAC 模塊中配置所需的參數(shù),以實(shí)現(xiàn)正確的操作。該模塊可為 MDIO 接口實(shí)現(xiàn)近乎透明的操作,基本不需要核心處理器的維護(hù)。
EMAC 模塊可在網(wǎng)絡(luò)與處理器之間提供一個(gè)高效率的接口。EMAC 模塊通??商峁?10Base-T(10Mbit/秒)與 100Base TX(100Mbit/秒)、半雙工與全雙工模式,以及硬件流控制與服務(wù)質(zhì)量 (QoS) 支持。此外,部分處理器現(xiàn)在還支持可實(shí)現(xiàn) 1000 Mbit/秒數(shù)據(jù)速率的千兆位 EMAC 容量。
由于以太網(wǎng)的廣泛使用,嵌入式處理器一般都在芯片上集成了一個(gè)或多個(gè) EMAC 接口。不同的廠商在實(shí)施上述完整的 EMAC 子系統(tǒng)時(shí)采用的方法也稍有不同。實(shí)施以太網(wǎng)接口所需的軟件支持與庫的質(zhì)量和范圍是選擇嵌入式處理器廠商時(shí)需要考慮的另一個(gè)問題。
路由器或交換機(jī)等應(yīng)用所需的 EMAC 有時(shí)不止一個(gè)。這些應(yīng)用通過使用多個(gè) EMAC,能夠在創(chuàng)建同步過程通信的同時(shí),與眾多設(shè)備通信。
串行 ATA (SATA) 可將主機(jī)總線適配器與諸如硬盤驅(qū)動(dòng)器與光盤驅(qū)動(dòng)器等大容量存儲(chǔ)設(shè)備相連。它已基本取代了之前的并行 ATA (PATA)。PATA 要求 40/80 線并行線纜,長(zhǎng)度不超過 18 英寸。PATA 的最大數(shù)據(jù)傳輸速率為 133Mbit/秒,而 SATA 串行數(shù)據(jù)格式則使用兩個(gè)差分對(duì)來支持連接數(shù)據(jù)存儲(chǔ)設(shè)備的接口,線路速率為 1.5Gbit/秒(SATA 版本 1)、3.0Gbit/秒(SATA 版本 2)與 6.0Gbit/秒(SATA 版本 3)。SATA 1 和 SATA 2 現(xiàn)已面市,SATA 3 將在近期推出。
此外,SATA 控制器需要的線纜較細(xì),而且可以長(zhǎng)達(dá) 3 英尺。較細(xì)的線纜更加靈活,一方面可實(shí)現(xiàn)更便捷的布線,另一方面更有利于大容量存儲(chǔ)設(shè)備外殼內(nèi)的空氣流通。
串行鏈路可獲得高性能的部分原因是采用高級(jí)系統(tǒng)存儲(chǔ)器結(jié)構(gòu)來容納高速串行數(shù)據(jù)。這種高級(jí)主機(jī)控制器接口 (AHCI) 存儲(chǔ)器結(jié)構(gòu)可為控制、狀態(tài)以及命令列表數(shù)據(jù)表提供一個(gè)通用域。命令列表的每條記錄都包含用于編程 SATA 設(shè)備的信息以及一個(gè)用于在系統(tǒng)存儲(chǔ)器與設(shè)備之間傳輸數(shù)據(jù)、指向描述符表的指針。
大多數(shù) SATA 控制器不但支持熱插拔,而且還采用端口多路器來增加可連接至單個(gè) HBA 端口的設(shè)備數(shù)量。SATA 標(biāo)準(zhǔn)有一個(gè)很長(zhǎng)的特性列表,但幾乎沒有 SATA 控制器可支持所有這些特性。常見特性包括:
· 支持AHCI 控制器規(guī)范1.1版;
· 集成SERDES PHY;
· 集成Rx與Tx數(shù)據(jù)緩存器;
· 支持SATA 電源管理特性;
· 每端口配備內(nèi)部 DMA 引擎;
· 多達(dá) 32 條記錄的硬件輔助原生命令排序 (NCQ);
· 32 位尋址;
· 支持端口乘法器;
· 支持 LED 工作;
· 機(jī)械控制開關(guān) (mechanical presence switch)。
由于 SATA 能夠存儲(chǔ)可延伸至太字節(jié)范圍的大量數(shù)據(jù),因此應(yīng)用非常廣泛,其中包括上網(wǎng)本、膝上型電腦、臺(tái)式機(jī)、多媒體設(shè)備以及便攜式數(shù)據(jù)終端等。此外,SATA 還可用于可能需要傳感器或系統(tǒng)監(jiān)控器存儲(chǔ)大量數(shù)據(jù)以待后續(xù)分析的工業(yè)應(yīng)用。
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
交換機(jī)相關(guān)文章:交換機(jī)工作原理
存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
評(píng)論