- 相關(guān)推薦
智能網(wǎng)絡(luò)設(shè)備開發(fā)中的硬件設(shè)計(jì)
摘要:從理解產(chǎn)品要求和設(shè)計(jì)局限出發(fā),講述智能網(wǎng)絡(luò)設(shè)備的通信部件和協(xié)議。通過(guò)全盤考慮存儲(chǔ)器執(zhí)行訪問(wèn)速度、網(wǎng)絡(luò)、重啟各種因素對(duì)整個(gè)設(shè)計(jì)的影響,提高產(chǎn)品的設(shè)計(jì)成功率。關(guān)鍵詞:嵌入式系統(tǒng) 100Base-T MBPS RTOS
引言
嵌入式系統(tǒng)設(shè)計(jì)帶來(lái)了與傳統(tǒng)系統(tǒng)設(shè)計(jì)全然不同的挑占。其中包括從處理器和存儲(chǔ)器的選擇到產(chǎn)品環(huán)境的考慮。在理解產(chǎn)品設(shè)計(jì)的許多復(fù)雜方面和影響后,呵以直接提高產(chǎn)品設(shè)計(jì)成功的幾率,對(duì)于設(shè)計(jì)者,僅僅了解需要什么部件來(lái)完成一個(gè)設(shè)計(jì)是不夠的,還要考慮部件之間如何交互、何種要素會(huì)帶來(lái)影響和設(shè)計(jì)的產(chǎn)品將在何種環(huán)境中運(yùn)行等問(wèn)題。
本文試圖用合適的視角來(lái)盾待這些問(wèn)題,為設(shè)計(jì)工程師們提供指導(dǎo)和幫助,從所有的層面上幫助它們?yōu)榻窈蟮脑O(shè)計(jì)項(xiàng)目做更好的準(zhǔn)備。
1 理解產(chǎn)品要求和設(shè)計(jì)局限
在創(chuàng)造一個(gè)智能的網(wǎng)絡(luò)化設(shè)備時(shí),第一步是要理解這個(gè)嵌入式產(chǎn)品本身內(nèi)含的規(guī)格要求,大同小異不僅僅是產(chǎn)品的功能要求;镜脑,如處理器類型,會(huì)對(duì)吞吐量、可裁剪性和開發(fā)周期的長(zhǎng)短產(chǎn)生廣泛的影響。這一點(diǎn)一定在事先就了然于胸。同樣重要的成本,因?yàn)槎鄶?shù)嵌入式產(chǎn)品對(duì)成本是敏感的。因此,材料清單的成本需要比傳統(tǒng)設(shè)計(jì)低很多。典型的具有以太網(wǎng)能力的嵌入式產(chǎn)品生產(chǎn)的材料清單的花費(fèi)為$45~$100元。這些限制要求對(duì)性價(jià)比做很好的分析。
對(duì)于串口、USB、I2C接口的設(shè)計(jì)決定也會(huì)對(duì)性價(jià)比產(chǎn)生影響。找到帶集成接口的處理器并不難,比如帶以太網(wǎng)口、串口、USB及其它接口。在合適的價(jià)位找到這樣的處理器,并且還能提供產(chǎn)品的可裁剪性,就不那么容易了。
還有2個(gè)重要的事項(xiàng)有時(shí)會(huì)被忽略,就是電源要求和溫度潿。如果產(chǎn)品是電池供電,要考慮系統(tǒng)所有部件的電流消耗;如果產(chǎn)品本身要求滿足工業(yè)級(jí)溫度要求,那么這個(gè)盒子中的所有部件都要是工業(yè)級(jí)的。最后一點(diǎn),由于本文的焦點(diǎn)在硬件,需要記住,產(chǎn)品可裁剪性取決于軟件。
除了辨別一個(gè)產(chǎn)品的功能要求外,對(duì)于該產(chǎn)品功能環(huán)境的理解也同樣重要。這個(gè)產(chǎn)品將在何處度過(guò)它的整個(gè)生命周期,那里的環(huán)境是否有特殊性?這樣的問(wèn)題,設(shè)計(jì)者可以利用環(huán)境的先天優(yōu)勢(shì),同時(shí)為最壞的情形做打算。如考慮暴露情況、環(huán)境污梁情況、溫度極限和更多的將影響性能和潛在的生命周期的情況。
人機(jī)交互同樣是重要因素。如程序改動(dòng)的頻繁度、產(chǎn)品可能維護(hù)計(jì)劃等。一定要關(guān)注技術(shù)環(huán)境。比如,如果一個(gè)智能網(wǎng)絡(luò)設(shè)備接到一個(gè)局域網(wǎng)上,相關(guān)的信息流量會(huì)如何影響周圍的設(shè)備?如果該產(chǎn)品是一個(gè)串口到以太網(wǎng)的網(wǎng)關(guān),只負(fù)責(zé)從串口得到數(shù)據(jù)然后將它轉(zhuǎn)換成以太網(wǎng)包,反之亦然,那么不僅要考慮最大的數(shù)據(jù)延時(shí)允許網(wǎng)包,還要考慮有多少數(shù)據(jù)要傳送。雖然延時(shí)對(duì)許多應(yīng)用不是一個(gè)主要考慮因素(如當(dāng)一個(gè)產(chǎn)品只是不時(shí)地收集數(shù)據(jù),定期地被取走),但在一些應(yīng)用中,延時(shí)是以太網(wǎng)拓?fù)渲械南拗埔蛩。在需要?duì)緊急情況作出立即反應(yīng)的地址,如工廠地面上的閥門控制、通信和反應(yīng),一定要真正實(shí)時(shí)地完成。
2 通信、部件和協(xié)議
在基于以太網(wǎng)網(wǎng)絡(luò)中有2個(gè)常用術(shù)語(yǔ)是10BaseT和100BaseT。為了高效地設(shè)計(jì)一個(gè)產(chǎn)品,理解這些術(shù)語(yǔ)的含義是很必要的。10BadeT和100BaseT是線速度。線速度和能占用的持續(xù)速度是不同的。通常意義上講,10BaseT線速度是10Mbit/s,100BaseT線速度是100Mbit/s。作為一個(gè)共享的資源,所有局域網(wǎng)上的設(shè)備都要能互相通信。因此,設(shè)備沒有能力百分之百地?fù)碛腥康膸。如果真的存在這種情況,其它設(shè)備就不能進(jìn)行任何通信了。由此可知,在100BaseT的連接中,設(shè)備可以用100BaseT的解碼機(jī)制進(jìn)行通信,而不是維持100Mbit/s的速度。總吞吐量可以被視作理論吞吐量,而凈吞吐量可以視為實(shí)際的流量。
許多應(yīng)用在設(shè)計(jì)時(shí)遵循所謂的“30%規(guī)則”。簡(jiǎn)單講,在有其它設(shè)備共享網(wǎng)絡(luò)的環(huán)境中,一個(gè)設(shè)備應(yīng)被設(shè)計(jì)為能使用30%的帶寬。在一個(gè)100BaseT的網(wǎng)絡(luò)中,這意味著30Mbit/s。很明顯,智能化設(shè)備網(wǎng)絡(luò)意味著設(shè)計(jì)一個(gè)嵌入式產(chǎn)品應(yīng)用到一個(gè)已存在的網(wǎng)絡(luò)中。在這里,設(shè)計(jì)得必須面對(duì)此設(shè)計(jì)要素,即必須估計(jì)在這個(gè)水平上,將不得不在什么條件下進(jìn)行工作。
網(wǎng)絡(luò)的布線費(fèi)用通常是網(wǎng)絡(luò)中比較貴的部分。由于這個(gè)費(fèi)用,許多其它介質(zhì)和協(xié)議,尤其是無(wú)線,正在被研究用于承載通信。802.11和藍(lán)牙是2個(gè)無(wú)線的協(xié)議。
網(wǎng)絡(luò)設(shè)備本身的價(jià)格在不斷地下落。由于這個(gè)原因,許多應(yīng)用著眼于現(xiàn)存的線路來(lái)保持以太網(wǎng)布線。這在樓宇控制應(yīng)用系統(tǒng)中是很常見的。因?yàn)閿?shù)公里長(zhǎng)的485或422的線路已經(jīng)存在,這些線路通常保留。因?yàn)橐蜆怯羁刂仆庠O(shè)進(jìn)行通信。因此,應(yīng)用系統(tǒng)作為網(wǎng)關(guān),用軟件來(lái)橋接遺留的串口協(xié)議和以太網(wǎng)之間的通信。
如今,在許多建筑的物理布線中通常包含標(biāo)準(zhǔn)的、屏蔽或非蔽的雙絞線。不管屏蔽的還是非屏蔽的,雙絞線在抗電磁干擾上是很有效的。基本的差別在于(不比較成本)屏蔽的雙絞線能提供更好的噪音保護(hù)。除了從設(shè)施中現(xiàn)有部件產(chǎn)生的噪音外,比如電力線、變壓器和發(fā)電機(jī)等,線路自身的數(shù)據(jù)傳輸也會(huì)產(chǎn)生噪音。這一情況使得安裝和調(diào)試一個(gè)新硬件成為一種挑戰(zhàn)。在最壞情況下的可能影響,包括從傳輸燈亮?xí)r網(wǎng)絡(luò)的不穩(wěn)定,到高速傳輸數(shù)據(jù)時(shí)的數(shù)據(jù)錯(cuò)誤。
一種特殊級(jí)別的雙絞線名叫5類電纜,可以用于許多普通雙絞線難于應(yīng)付的情況。5類線支持100Mbit/s數(shù)據(jù)傳輸,而出錯(cuò)概率很低。光纖線路也在以太網(wǎng)絡(luò)中得到應(yīng)用,特別是在電磁干擾敏感的環(huán)境中,光纖是抗電磁干擾的,沒有輻射,防竊聽,
完全適合極高速率的數(shù)據(jù)傳輸。
需要強(qiáng)調(diào)的是,以太網(wǎng)拓?fù)渑c其它網(wǎng)絡(luò)拓?fù)湎啾仁欠浅2灰粯拥摹M負(fù)溥x擇將影響布線的費(fèi)用。以太網(wǎng)不是基于多跳的網(wǎng)絡(luò),比如10Base-2的雛菊鏈網(wǎng)。以太網(wǎng)拓?fù)浣M成的是星狀的配置。星上的每一個(gè)設(shè)備在物理上要么連在一個(gè)集線器上,要么連在一個(gè)交換機(jī)上。在以太網(wǎng)上,一個(gè)設(shè)備與另一個(gè)設(shè)備的通信起處于發(fā)送設(shè)備端,然后到它連接的集成器或交換機(jī)。
以太網(wǎng)有2種基于類型:平面式和多層結(jié)構(gòu)式。在一個(gè)平面式的以太網(wǎng),連接在一個(gè)集線路上的所有設(shè)備可以看到這個(gè)集線器接角到的所有數(shù)據(jù)包。這還包括相互連接在一起的集線器上的所有設(shè)備。在多層結(jié)構(gòu)式以太網(wǎng)中,由于集線路之間由交換機(jī)連接,只有連接在一個(gè)集一器上的設(shè)備可以看到那些包,此外,交換機(jī)還能決定哪些設(shè)備可以看到包,而哪些不能。
值得注意的是,不管是平面式還是多層結(jié)構(gòu)式,以太網(wǎng)一個(gè)共同的好處是不會(huì)受故障設(shè)備所牽連;而在雛菊鏈網(wǎng)絡(luò)中,一旦1個(gè)網(wǎng)絡(luò)設(shè)備貪婪工作,其它網(wǎng)上設(shè)備的通信就無(wú)法進(jìn)行了。在以太網(wǎng)的多層結(jié)構(gòu)網(wǎng)中,數(shù)據(jù)沖突被最小化了。但它的最大不足就是線路總量和安裝總費(fèi)用增加了。
3 存儲(chǔ)器的考慮
對(duì)一個(gè)系統(tǒng)來(lái)講,選擇RAM是設(shè)計(jì)的一個(gè)很重要的方面,它會(huì)影響到產(chǎn)品的使用環(huán)境以及產(chǎn)品的全面的功能需求。應(yīng)用本身往往會(huì)確定使用何種存儲(chǔ)器。其它因素和成本、實(shí)性、產(chǎn)品穩(wěn)定性也會(huì)影響RAM的選擇。靜態(tài)RAM以使用方便和速度快而著稱。例如,SRAM的脈沖,通常由1個(gè)2-1-1-1的周期組成,意味著它要用2個(gè)時(shí)鐘周期來(lái)取第1個(gè)長(zhǎng)字,然后每1個(gè)時(shí)鐘周期取1個(gè)。在設(shè)計(jì)中,SRAM也易于實(shí)現(xiàn)。受限制的因素包括低密度的封裝以及較高的價(jià)格。
EDORAM和DRAM在老一點(diǎn)的設(shè)計(jì)中徑常見到。但由于這些類型的RAM曼慢被淘汰,現(xiàn)在很少能見到了。而且,EDORAM很難找到適合嵌入式設(shè)計(jì)的通用密度(1、2或8MB)。
SDRAM是今天的智能網(wǎng)絡(luò)設(shè)備中最常見的RAM。SDRAM可用性很好,與SRAM相比,每兆字節(jié)的成本比也不錯(cuò)。處理器易于和SDRAM交互,而且SDRAM也能提高效率。SDRAM的脈沖周期如果為3-1-1-1,但SDRAM第1個(gè)指令獲取之后,每下一個(gè)獲取必須與時(shí)鐘的上升沿步。DRAM在信號(hào)產(chǎn)生上有很地址和列地址之分。行地址和列地址在DRAM類型中都要給出來(lái)定位一個(gè)存儲(chǔ)器地址。DRAM還有刷新周期,SDRAM有列地址延遲的值,以及需要存儲(chǔ)器控制器控制的其它信號(hào)。在處理器中集成一個(gè)SRAM、DRAM和SDRAM的控制器在做嵌入式設(shè)計(jì)時(shí)絕對(duì)會(huì)讓你受益非淺。
許多處理器需要一個(gè)負(fù)責(zé)內(nèi)存遇像保存和程序執(zhí)行的外部存儲(chǔ)器子系統(tǒng)。對(duì)于映像存儲(chǔ),許多設(shè)備使用Flash。Flash有2個(gè)大的供應(yīng)商AMD和Intel。Flash本身與RAM來(lái)講是相對(duì)較慢的,因此,多數(shù)應(yīng)用中,程序在Flash中的執(zhí)行效率不高——特別是在實(shí)時(shí)應(yīng)用中。在大多數(shù)的設(shè)計(jì)中,16位的Flash用來(lái)降低成本,而通過(guò)在RAM中執(zhí)行映像文件,這種結(jié)構(gòu)被采用后可以不影響產(chǎn)品的運(yùn)行。
另一種非易失內(nèi)存為電可擦除可編程只讀存儲(chǔ)器。EEPROM在許多應(yīng)用中被用于為設(shè)備保存配置信息。這些參數(shù)通常至少包括MAC地址和IP地址。其它參數(shù)可包括子網(wǎng)掩碼、序列號(hào)、網(wǎng)關(guān)、波特率或其它板級(jí)參數(shù)。EEPROM可以作為一個(gè)簡(jiǎn)單靜態(tài)RAM類型設(shè)備來(lái)被設(shè)置和訪問(wèn)。雖然EEPROM通常很慢,但它一般不會(huì)影響到嵌入式設(shè)備,因?yàn)樗闹饕猛臼窃趩?dòng)時(shí)提供參數(shù)。為了高效地選取Flash適應(yīng)產(chǎn)品,F(xiàn)lash的密度要決定好。決定一個(gè)系統(tǒng)中Flash的大小,實(shí)際上就決定了設(shè)備的材料消耗費(fèi)(BOM)。在Flash的問(wèn)題上界限要很好地劃定:太少,則限制了軟件角度上的可裁剪性;太多,則為產(chǎn)品帶來(lái)了成本上不必要的增加。
4 增加價(jià)值的特性
許多工程開始就有一些限定的要求——使一個(gè)產(chǎn)品更快地投放市場(chǎng)和保持一個(gè)合理的成本。當(dāng)產(chǎn)品經(jīng)受住市場(chǎng)的考驗(yàn)時(shí),產(chǎn)品修正需要從現(xiàn)存的硬件得到支持。這包括了在保證了附加軟件的設(shè)計(jì)中,能增加價(jià)值的特性。
錄找一個(gè)TCP/IP層內(nèi)存需求羅小的操作系統(tǒng),有助于將材料成本保持在一個(gè)較低的價(jià)位,因?yàn)樗鼘?duì)內(nèi)存的需求減少了。比如,使用NetSilicon的NET+OS集成的硬件和軟件解決方案,操作系統(tǒng)和;旧现徽加240 KB的內(nèi)存。加上Web服務(wù)器和FTP服務(wù)器,整個(gè)系統(tǒng)只需310KB就可以啟動(dòng)了。
當(dāng)有嵌入式Web服務(wù)器的時(shí)候,對(duì)于Web頁(yè)面的構(gòu)建需要仔細(xì)考慮。普通的頁(yè)面設(shè)計(jì),用來(lái)控制和監(jiān)視,350KB以內(nèi)的Flash仍能滿足使用。但當(dāng)動(dòng)態(tài)的GIF文件、復(fù)雜的徽標(biāo)和JPEG文件被引進(jìn)時(shí),內(nèi)存的需求會(huì)急劇增加。許多設(shè)計(jì)帶FTP、HTTP和Email功能,加上客戶的應(yīng)用,0.5MB甚至更少的Flash仍然放得下。放1MB的Flash在板子上可以在板子不用重新設(shè)計(jì)布線的情況下增加有意義的特性。
RAM用來(lái)執(zhí)行指令和數(shù)據(jù)儲(chǔ)存。因此,最小的RAM也要是Flash的大小加上數(shù)據(jù)內(nèi)存和以太緩沖區(qū)的大小。有其它能影響RAM大小的考慮,比如,產(chǎn)品要不要在線升級(jí)。在有的機(jī)制中,比如NetSilicon公司的Net+Works方案提供的FTP可升級(jí)特性,RAM的大小需要是程序映像大小的2倍。比如,剛提到的FTP實(shí)現(xiàn)需要的一個(gè)保存新程序的緩沖區(qū)。這個(gè)緩沖區(qū)會(huì)通過(guò)網(wǎng)絡(luò)接收1個(gè)新的映像文件,然后將它保存在RAM的1個(gè)區(qū)里。升級(jí)例程然后會(huì)將新映像燒到Flash中。因此,在這個(gè)例子中,內(nèi)存需求的增加包括可執(zhí)行代碼的大小、另外增加的用于暫時(shí)保存升級(jí)程序的緩沖區(qū)以及為數(shù)據(jù)和網(wǎng)絡(luò)緩沖區(qū)增加的空間。
最后,堆的大小一定要考慮,堆的大小會(huì)有很多職能,如對(duì)每一個(gè)Socket連接分配內(nèi)存。具體的例子,如NET+OS中,每一個(gè)Socket連接需要大約400字節(jié)。在這種情況下,通常用將執(zhí)行文件大小加倍的方案來(lái)確定RAM的大小。
5 執(zhí)行、訪問(wèn)和速度
在Flash中執(zhí)行,對(duì)許多低端應(yīng)用來(lái)說(shuō)并不壞。如一個(gè)簡(jiǎn)單的串口到以太網(wǎng)的網(wǎng)關(guān)設(shè)備,在Flash中運(yùn)行通常不需要性能上的補(bǔ)償。有一些處理器,如NET+ARM,可以利用內(nèi)部產(chǎn)生的與Flash相關(guān)的信號(hào)來(lái)獲得效率。例如,對(duì)于一個(gè)16位的AMD Fash設(shè)備,F(xiàn)lash的片選可以接地,從而在100%的時(shí)間內(nèi),它都是活動(dòng)的。當(dāng)電源可以承擔(dān)這樣的消耗,此特性可以提高Flash的效率。寫使能和輸出使能信號(hào)可以直接從處理器得到。例如,NET+ARM處理器有5個(gè)可用的片選。一個(gè)普通的寫使能和輸出使能存在于內(nèi)存外設(shè)中。片選0通常用于Flash。我們不將NET+ARM的片選0接到Flash上,也就是不用NET+ARM的片選0的輸出使能和寫使能。與此對(duì)應(yīng),將Flash上的片選使能接地,而同時(shí)寫使能和輸出使能用NET+ARM的26、27地址線來(lái)驅(qū)動(dòng)。這樣,數(shù)據(jù)有效是依賴輸出使能而不是片選使能。從而,就可以繞過(guò)與Flash設(shè)備相關(guān)的幾個(gè)慢速訪問(wèn)周期。
除了理解不同的類型和內(nèi)存需求,找到正確的內(nèi)存大小依賴于內(nèi)存允許的訪問(wèn)時(shí)間。內(nèi)存速度直接影響傳輸率性能,而傳輸率直接影響到處理器能處理多少數(shù)據(jù)。內(nèi)存慢導(dǎo)致取指令慢,接著就降低了整個(gè)產(chǎn)品效率。理解這些產(chǎn)品需求中的依賴性對(duì)建造一個(gè)嵌入式產(chǎn)品是必不可少的。要理解內(nèi)存速度的需求,需要對(duì)NET+ARM了解得更詳細(xì)一些。NET+ARM的系統(tǒng)周期在它的總線主控制者之間共享。也就是說(shuō),系統(tǒng)時(shí)鐘周期在ARM7內(nèi)核和內(nèi)部10通道的DMA控制器之間分享。在這樣的設(shè)計(jì)中,ARM內(nèi)核每得到一個(gè)時(shí)鐘周期,DMA也同樣得到一個(gè)時(shí)鐘周期,在將總線交回下一個(gè)控制者之間,總線主控制者被允許可以突發(fā)至4個(gè)長(zhǎng)字。
下一個(gè)較關(guān)鍵的性能是時(shí)鐘速度。NET+ARM通常使用33MHz的時(shí)鐘。這樣就給它的處理時(shí)間差據(jù)周期的單位數(shù),將結(jié)果乘上30ns,再將所得結(jié)果乘2,就得到了整個(gè)系統(tǒng)時(shí)鐘周期的時(shí)間。請(qǐng)注意每一個(gè)總線控制者都可以突發(fā)至4個(gè)字長(zhǎng)或16個(gè)字節(jié)。整個(gè)系統(tǒng)周期基本上是ARM、DMA1、ARM、DMA2,依次類推。我們看一下DMA通道1(以太網(wǎng)接收通道),可以簡(jiǎn)單地將每個(gè)系統(tǒng)周期移動(dòng)16個(gè)字節(jié)轉(zhuǎn)換成每秒多少兆字節(jié)。
除了Flash,附加的NVRAM有時(shí)會(huì)被忽略。許多RTOS廣商推薦使用一些如EEPROM的小型NVRAM設(shè)備來(lái)存儲(chǔ)配置信息。為了增強(qiáng)易用性,NetSilicon推薦用EEPROM來(lái)保存如MAC地址、序列號(hào)、IP地址一類的設(shè)備配置。當(dāng)產(chǎn)品的IP地址或配置設(shè)定被改動(dòng)時(shí),程序可以簡(jiǎn)單地將新的值寫到EEPROM中,而不需要保存配置信息的Flash的該扇區(qū)重新擦寫。由于需要的EEPROM的容量通常較小,使用的NVRAM設(shè)備也是小設(shè)備。在NetSilicon公司的NET+ARM開發(fā)包中,有針對(duì)MAC地址、IP配置、序列號(hào)的程序。利用這些工具可以大大地節(jié)省時(shí)間和開發(fā)精力。
板級(jí)部件之間的通信有一個(gè)通用的機(jī)制是內(nèi)存映射。處理器通常有一個(gè)系統(tǒng)總線,由地址和數(shù)據(jù)總線組成,它們都會(huì)被用來(lái)與外設(shè)進(jìn)行通信。內(nèi)存,如Flash和SDRAM,一般會(huì)駐留在處理器的系統(tǒng)總線上。其它的外圍部件,如FPGA、LCD顯示、編碼器、其它類型的設(shè)備等,也會(huì)需要添加到這個(gè)總線上。
這一類型的實(shí)現(xiàn)通常有2個(gè)原因:效率和易用性。與許多其它類型的接口比較,系統(tǒng)總線上的效率是非常重要的。需要慎重考慮的是,究竟是何種其它外設(shè)是通過(guò)系統(tǒng)總線進(jìn)行通信的。如果有許多高帶寬的部件要進(jìn)行通信,那么總線爭(zhēng)用就會(huì)出現(xiàn)。從易用性角度出發(fā),所有系統(tǒng)總線上的設(shè)備基本上類似于內(nèi)存。使用智能的內(nèi)存處理器,可以使得應(yīng)用的硬件之間的通信容易得如同訪問(wèn)一內(nèi)存區(qū)。
緩存的概念,就是檢查每一次內(nèi)存訪問(wèn),看它是否在緩沖區(qū)中。如果不是,一個(gè)常規(guī)的內(nèi)存訪問(wèn)會(huì)進(jìn)行。如果該地址出現(xiàn)在在緩沖區(qū)中,指令或數(shù)據(jù)會(huì)直接在緩存中存取,而不需要嘗試總線來(lái)進(jìn)行外部的訪問(wèn)。這樣一來(lái),DMA控制器就可以繼續(xù)使用總線而ARM內(nèi)核直接從緩存控制器中取得指令。
6 其它網(wǎng)絡(luò)因素
以太網(wǎng)通信所需的包含MAC、PHY、1個(gè)電壓轉(zhuǎn)換器和1個(gè)連接器。選擇一個(gè)集成了MAC的處理器是非常有益處的,因?yàn)樵S多設(shè)計(jì)部件減少了。
在有外部MAC的情況下,有時(shí)附加的內(nèi)存是需要的。通過(guò)集成MAC,系統(tǒng)的成本也會(huì)跟著降低。MAC的主要任務(wù)包括處理以太網(wǎng)上的沖突情況。當(dāng)偵測(cè)到一個(gè)沖突時(shí),MAC會(huì)將包放入發(fā)送單元,一直到將包發(fā)送出去為止。
許多應(yīng)用為了與其它外設(shè)進(jìn)行通信,既需要內(nèi)部接口,也需要外部接口。內(nèi)部接口通常是部件之間通信板級(jí)接口。許多情況下,處理器的系統(tǒng)總線會(huì)用來(lái)為外設(shè)做內(nèi)存映射,比如USB、LCD、FPGA、MPEG編碼器等。GPIO(通用I/O)可以用來(lái)構(gòu)造像串行EEPROM的接口設(shè)備。除了外部設(shè)備(如硬盤或相機(jī))的接口,還可以用來(lái)做部件通信相關(guān)設(shè)備(如Modem、CODEC)接口。
對(duì)于很多類型的產(chǎn)品和部件,串行接口是常見的。串行拓?fù)洌鏡S232、422、485,在與外部設(shè)備通信時(shí)經(jīng)常用到。用到485的有2個(gè)主要市場(chǎng):工業(yè)自動(dòng)化和樓宇控制。而現(xiàn)在以太網(wǎng)成了很多應(yīng)用的常見連接方式,就像過(guò)去串行、并行連接一樣。無(wú)線以太網(wǎng)又增添了遠(yuǎn)程的應(yīng)用和功能,使得以太網(wǎng)可以延伸到那些不可能布線或布線成本太高的地點(diǎn)。802.11和藍(lán)牙技術(shù)正在被不斷地改進(jìn)。
7 重啟
重啟也是設(shè)計(jì)中的關(guān)鍵因素。理解什么類型的重啟可用,它們將對(duì)系統(tǒng)產(chǎn)生保種影響,以幫助設(shè)計(jì)者利用特定的情況。在NET+ARM芯片中,有5種重啟可以使用:加電重啟、通過(guò)RESET引腳的硬重啟、看門狗重啟、ENI重啟和軟件重啟。
ENI重啟允許NET+ARM被一個(gè)外部處理器重啟。這是在NET+ARM作為一個(gè)協(xié)處理器負(fù)責(zé)網(wǎng)絡(luò)通信的情況下使用的。加電重啟、硬重啟和看門狗重啟都會(huì)導(dǎo)致NET+ARM內(nèi)部模塊重啟。但ENI重啟卻不會(huì)影響到NET+ARM的內(nèi)存控制器和ENI模塊本身。軟件重啟不會(huì)影響ARM處理器、ENI和內(nèi)
存模塊。通過(guò)了解可用的重啟類型,就可以在得啟個(gè)別部分時(shí)無(wú)須影響到整個(gè)系統(tǒng)。
有2點(diǎn)本文沒有討論,分別是電源的穩(wěn)定性和設(shè)備失效后的恢復(fù)。當(dāng)系統(tǒng)中只有一閃存設(shè)備時(shí)(在成本敏感的設(shè)計(jì)中往往如此),如果電源失效,閃存就會(huì)癱瘓。這種情況如果發(fā)生,就得被迫用另外的方式來(lái)訪問(wèn)處理器。在NET+ARM的設(shè)計(jì)中,可選的方式包括JTAG連接,它允許編程者獲得處理器的控制來(lái)糾正閃存中映像。
8 結(jié)論
最有效的系統(tǒng)設(shè)計(jì)一定要看到未來(lái)的發(fā)展并有所計(jì)劃。近年來(lái)的半導(dǎo)體發(fā)展就反映了這個(gè)趨勢(shì)。1μm的半導(dǎo)體處理技術(shù)被分別由0.8、0.5、0.35、0.25和0.18μm處理技術(shù)代替。每一次處理尺寸的縮小,就帶來(lái)相關(guān)價(jià)格的降低和實(shí)現(xiàn)性能的提高。例如,早期的NET+ARM設(shè)計(jì)使用NET+12,現(xiàn)在就可以被NET+40或NET+50所代替。
如果設(shè)計(jì)得當(dāng),了解產(chǎn)品發(fā)展的未來(lái)路線和得到NetSilicon公司為客戶所做的硬件設(shè)計(jì)檢查,使用NET+ARM做設(shè)計(jì)時(shí)如果保證了這三點(diǎn)因素,客戶就可以選擇不同的NET+ARM產(chǎn)品而使用相同的板子。另外,額外的內(nèi)存和部件的布局設(shè)計(jì)也可以增加,確保整個(gè)系統(tǒng)的設(shè)計(jì)更通用、能堅(jiān)持更長(zhǎng)的使用時(shí)間。通過(guò)了解產(chǎn)品需求、理解產(chǎn)品環(huán)境、精心選擇部件、利用集成的方案、在為今天的需求設(shè)計(jì)產(chǎn)品時(shí)能為明天的改進(jìn)計(jì)劃出相應(yīng)的路線,聰明的設(shè)計(jì)者可以最大限度地發(fā)揮產(chǎn)品的功效。這些因素會(huì)幫助你的設(shè)計(jì)和產(chǎn)品獲得成功。
【智能網(wǎng)絡(luò)設(shè)備開發(fā)中的硬件設(shè)計(jì)】相關(guān)文章:
在線教育中多元智能的開發(fā)與培養(yǎng)08-05
VoIP語(yǔ)音卡在路由器中的應(yīng)用及硬件設(shè)計(jì)08-06
CAN智能節(jié)點(diǎn)的設(shè)計(jì)08-06
從“非典”中開發(fā)課程08-17
IGBT-IPM智能模塊的電路設(shè)計(jì)及在SVG裝置中的應(yīng)用08-06
Lon總線多點(diǎn)I/O智能節(jié)點(diǎn)的開發(fā)08-06
運(yùn)用歷史課堂提問(wèn)開發(fā)學(xué)生智能08-07