《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM雙內(nèi)核的平臺(tái)化網(wǎng)絡(luò)產(chǎn)品設(shè)計(jì)
基于ARM雙內(nèi)核的平臺(tái)化網(wǎng)絡(luò)產(chǎn)品設(shè)計(jì)
摘要: 這類產(chǎn)品中的存儲(chǔ)器管理是個(gè)需要仔細(xì)考慮的問(wèn)題。完全的嵌入式系統(tǒng)通常運(yùn)行在固定的程序集中,無(wú)需加入新的程序。這樣的應(yīng)用產(chǎn)品并不需要帶有地址轉(zhuǎn)換的完整存儲(chǔ)器管理單元(MMU)。更簡(jiǎn)單的存儲(chǔ)器保護(hù)單元(MPU)通常可以高效地運(yùn)行實(shí)時(shí)操作系統(tǒng)(RTOS),允許多程序運(yùn)行,進(jìn)行上下文切換時(shí)開(kāi)銷(xiāo)更少。含有 MMU的內(nèi)核進(jìn)行中斷服務(wù)時(shí)可能比基于MPU的內(nèi)核要低效一些,同時(shí)還需要為地址轉(zhuǎn)換設(shè)置更大的外部存儲(chǔ)器。
Abstract:
Key words :

      新興的無(wú)線連接技術(shù)促使更多產(chǎn)品向新一代商務(wù)及家庭網(wǎng)絡(luò)應(yīng)用方向發(fā)展。因此,網(wǎng)絡(luò)市場(chǎng)中的用戶終端設(shè)備(CPE:customer premises equipment)部分,也正朝著消費(fèi)市場(chǎng)的狀態(tài)轉(zhuǎn)變。
   CPE產(chǎn)品的成功,需要由一個(gè)設(shè)計(jì)平臺(tái)及靈活的產(chǎn)品開(kāi)發(fā)流程來(lái)支撐,以滿足各種新興網(wǎng)絡(luò)協(xié)議的性能需求,加快研發(fā)進(jìn)程,最終提供經(jīng)濟(jì)而節(jié)能的終端產(chǎn)品。
網(wǎng)絡(luò)市場(chǎng)中設(shè)備數(shù)量分布

圖1網(wǎng)絡(luò)市場(chǎng)中設(shè)備數(shù)量分布
  技術(shù)發(fā)展動(dòng)力
  對(duì)網(wǎng)絡(luò)設(shè)備而言,日益增長(zhǎng)的帶寬需求是最為顯著的技術(shù)發(fā)展動(dòng)力。曾有人指出帶寬正以類似于摩爾定律的方式增長(zhǎng),如:客戶端的帶寬每18-24個(gè)月增加一倍,而核心/光纖帶寬約每8月增長(zhǎng)一倍[2]。

  然而,日益增長(zhǎng)的帶寬需求并不是唯一促進(jìn)技術(shù)發(fā)展的原因。對(duì)CPE的功能及智能性需求的增長(zhǎng)也是另一種驅(qū)動(dòng)因素,因此,單單采用更大更快的處理器并不是最為有效的方案。
  更多功能的集成、增強(qiáng)的安全性和多種協(xié)議的發(fā)展等都將使CPE產(chǎn)品越來(lái)越復(fù)雜。不同協(xié)議的交換處理是眾多CPE應(yīng)用產(chǎn)品的普遍需求。如:無(wú)線局域網(wǎng)接口設(shè)備中的核心功能是在以太網(wǎng)和多種IEEE802.11接口標(biāo)準(zhǔn)間進(jìn)行轉(zhuǎn)換。產(chǎn)品需求中可能會(huì)需要接口設(shè)備能夠提供多種接入點(diǎn),以支持管理多種格式數(shù)據(jù)流的需求。
  即使網(wǎng)絡(luò)產(chǎn)品不是便攜式的,低功耗也非常重要。低功耗設(shè)計(jì)可以降低對(duì)外殼及印刷電路板(PCB)制造的限制,也無(wú)需電扇散熱。除去了這些問(wèn)題,設(shè)計(jì)的可靠也將大大提高。
將各類產(chǎn)品集中使用的思路促使應(yīng)用產(chǎn)品往集成化方向發(fā)展

圖2將各類產(chǎn)品集中使用的思路促使應(yīng)用產(chǎn)品往集成化方向發(fā)展

  為了達(dá)到優(yōu)良的實(shí)時(shí)性能,處理器應(yīng)能有效地管理中斷,并同時(shí)具備足夠的數(shù)據(jù)處理能力。上下文的切換也是關(guān)鍵的需求,具有在中斷服務(wù)程序和任務(wù)模式編碼之間有效切換的能力會(huì)帶來(lái)更佳的性能。當(dāng)然,還應(yīng)盡量減少中斷服務(wù)和進(jìn)行上下文切換的延時(shí)。
  這類產(chǎn)品中的存儲(chǔ)器管理是個(gè)需要仔細(xì)考慮的問(wèn)題。完全的嵌入式系統(tǒng)通常運(yùn)行在固定的程序集中,無(wú)需加入新的程序。這樣的應(yīng)用產(chǎn)品并不需要帶有地址轉(zhuǎn)換的完整存儲(chǔ)器管理單元(MMU)。更簡(jiǎn)單的存儲(chǔ)器保護(hù)單元(MPU)通常可以高效地運(yùn)行實(shí)時(shí)操作系統(tǒng)(RTOS),允許多程序運(yùn)行,進(jìn)行上下文切換時(shí)開(kāi)銷(xiāo)更少。含有 MMU的內(nèi)核進(jìn)行中斷服務(wù)時(shí)可能比基于MPU的內(nèi)核要低效一些,同時(shí)還需要為地址轉(zhuǎn)換設(shè)置更大的外部存儲(chǔ)器。
    CPE產(chǎn)品正朝著家用消費(fèi)品市場(chǎng)進(jìn)軍。目前,市場(chǎng)競(jìng)爭(zhēng)激烈,終端設(shè)備的價(jià)格便成為主要的競(jìng)爭(zhēng)優(yōu)勢(shì)。同樣地,縮短產(chǎn)品上市時(shí)間,也是提高市場(chǎng)占有率的重要優(yōu)勢(shì)。客制化終端網(wǎng)絡(luò)設(shè)備將真正縮短推出系列產(chǎn)品的上市時(shí)間。市場(chǎng)需要一種既能節(jié)約開(kāi)發(fā)費(fèi)用,又能縮短研發(fā)時(shí)間,并且能簡(jiǎn)便地開(kāi)發(fā)系列產(chǎn)品的技術(shù)方案。
  無(wú)論從商務(wù)或技術(shù)角度出發(fā)考察一個(gè)片上系統(tǒng),都需要處理器方案能滿足多種網(wǎng)絡(luò)應(yīng)中的特殊控制和信號(hào)處理需求。設(shè)計(jì)的技術(shù)需求表明,若處理器性能遠(yuǎn)遠(yuǎn)高于實(shí)際需求,即設(shè)計(jì)了太多不需要的功能,意味著將無(wú)端地增加產(chǎn)品成本;但一定的性能冗余和靈活性可以支持產(chǎn)品的后續(xù)發(fā)展,而無(wú)需進(jìn)行更本性的重新設(shè)計(jì)。
  總結(jié)上述兩個(gè)驅(qū)動(dòng)因素,開(kāi)發(fā)人員應(yīng)能夠從技術(shù)和商業(yè)兩方面來(lái)衡量實(shí)現(xiàn)一個(gè)具體設(shè)備。
  ARM在網(wǎng)絡(luò)設(shè)備中的應(yīng)用
  為了增加帶寬并擁有更復(fù)雜的協(xié)議數(shù)據(jù)交換能力,許多設(shè)計(jì)人員正考慮在設(shè)計(jì)中使用雙核。
  CPE系統(tǒng)需要滿足多重的復(fù)雜控制需求。許多系統(tǒng)體系結(jié)構(gòu)建立于單內(nèi)核基礎(chǔ)上,管理高級(jí)別的功能,如進(jìn)行系統(tǒng)配置操作和運(yùn)行實(shí)時(shí)操作系統(tǒng),而后與專用的狀態(tài)機(jī)集成,進(jìn)行如數(shù)據(jù)包處理等操作。然而,這樣做使得設(shè)計(jì)和調(diào)試非常復(fù)雜,特別是設(shè)計(jì)含有多重私有狀態(tài)機(jī)時(shí)。
  嵌入式軟件技術(shù)方案相較于復(fù)雜的私有硬件技術(shù)方案更易維護(hù)和推廣運(yùn)用。嵌入式軟件技術(shù)方案能使用高級(jí)語(yǔ)言進(jìn)行編程,使用眾所周知的程序員模式,并擁有大量具有豐富經(jīng)驗(yàn)的工程師作為后盾。
  ASIC的集成度已經(jīng)非常高,因而,CPU內(nèi)核的面積非常小。用第二個(gè)或第三個(gè)處理器來(lái)代替以往用多重的獨(dú)立硬件模塊顯得更加經(jīng)濟(jì)和實(shí)際。
  在此種趨勢(shì)的推動(dòng)下,ARM推出了集成了雙ARM946E-S微處理器內(nèi)核的PrimeXsys雙內(nèi)核平臺(tái)(946DCP)。
  ARM946E-S特點(diǎn)
  ARM946E-S內(nèi)含有ARM9E-S?內(nèi)核,為運(yùn)行實(shí)時(shí)操作系統(tǒng)的嵌入式產(chǎn)品提供指令(I)、數(shù)據(jù)(D)高速緩存、緊密耦合存儲(chǔ)器(TCM)、寫(xiě)緩沖器、存儲(chǔ)器保護(hù)單元(MPU)。指令和數(shù)據(jù)緩存和TCM緩存都是可配置的。存儲(chǔ)器體系結(jié)構(gòu)令設(shè)計(jì)者可依據(jù)實(shí)際情況調(diào)整緩存和TCM大小。
  ARM9E-S微處理體系結(jié)構(gòu)提供了快速中斷響應(yīng)和上下文切換功能。該體系結(jié)構(gòu)非常合適用于如Wind River的VxWorks或Mentor Graphics Nucleus等小型實(shí)時(shí)操作系統(tǒng)(RTOS),非常適合于CPE設(shè)計(jì)。增強(qiáng)型DSP指令集可直接在CPU內(nèi)核上運(yùn)行,滿足一些DSP需求,不需要另外一個(gè)獨(dú)立的DSP處理器。
  EDN嵌入式微 處理器基準(zhǔn)協(xié)會(huì)(EEMBC,www.eembc.org)提供了一套完整的嵌入式處理器測(cè)試標(biāo)準(zhǔn)。EEMBC Netmark?網(wǎng)絡(luò)基準(zhǔn)是一套路由測(cè)試標(biāo)準(zhǔn)。其包含開(kāi)路最短路徑第一(OSPF/Dijkstra)算法,數(shù)據(jù)包流路由基準(zhǔn),路

 

由表算法等。該基準(zhǔn)對(duì)處理器在網(wǎng)絡(luò)運(yùn)用時(shí)實(shí)現(xiàn)的功能進(jìn)行了模擬。
  這套測(cè)試基準(zhǔn)中包含壓縮的路由測(cè)試基準(zhǔn),用實(shí)際的IP幀結(jié)構(gòu)執(zhí)行數(shù)據(jù)打包和路由表查詢。該基準(zhǔn)可使用不止一個(gè)長(zhǎng)度的路由表,因而更為高效。這避免了合成測(cè)試基準(zhǔn)中單一尺寸路由表的缺陷。ARM為ARM946E-S內(nèi)核提供Netmark基準(zhǔn)。在與ARM簽訂了NDA之后,您可獲得該基準(zhǔn)。
  PrimeXsys雙核平臺(tái)
  PrimeXsys雙核平臺(tái)(圖3)提供了可擴(kuò)展、預(yù)集成的基礎(chǔ)級(jí)IP,支持RTOS的直接運(yùn)行。946 DCP采用多層AMBA?片上總線體系結(jié)構(gòu),在交叉型AHB總線矩陣中支持多重總線管理,并提供非常高的帶寬。在946DCP中添加IP,可以用主、從方式訪問(wèn)系統(tǒng)總線。相應(yīng)地,AMBA外設(shè)總線(APB)為速度較慢的外設(shè)提供了更節(jié)能的片上系統(tǒng)連接方式。
  每個(gè)內(nèi)核內(nèi)都含有向量中斷控制器(VIC)和嵌入式跟蹤宏單元(ETM?)。當(dāng)內(nèi)核全速工作時(shí),ETM監(jiān)控ARM指令和數(shù)據(jù)總線,在與跟蹤調(diào)試工具進(jìn)行數(shù)據(jù)交換前,將數(shù)據(jù)暫存到MultiTrace?分析器中。
  表1為946 DCP中IP主要模塊的性能指標(biāo)。
雙核平臺(tái)模塊門(mén)數(shù)

表1. 雙核平臺(tái)模塊門(mén)數(shù)(單位:千門(mén))
  半導(dǎo)體合作伙伴或系統(tǒng)集成商在946 DCP基礎(chǔ)上可進(jìn)行自身產(chǎn)品的開(kāi)發(fā),非常簡(jiǎn)便,各公司可根據(jù)各種不同的需求制造各種產(chǎn)品。為硬件與其它IP集成提供多種總線主、從端口,PrimeXsys平臺(tái)負(fù)責(zé)處理軟硬件開(kāi)發(fā)過(guò)程。ARM的PrimeCell庫(kù)中還包括了其他外設(shè)許多外設(shè)IP。
  PrimeXsys平臺(tái)的另一個(gè)關(guān)鍵價(jià)值為:在CPU內(nèi)核之上設(shè)立了新的IP標(biāo)準(zhǔn),使第三方合作伙伴可以為PrimeXsys平臺(tái)提供不同的軟、硬件IP技術(shù)方案。
  PrimeXsys技術(shù)基礎(chǔ)(圖3)提供了子系統(tǒng)級(jí)設(shè)計(jì),包括CPU內(nèi)核和其他預(yù)集成的部件,為開(kāi)發(fā)特殊應(yīng)用平臺(tái)提供穩(wěn)定的基礎(chǔ)設(shè)計(jì)。預(yù)集成部件至少應(yīng)使內(nèi)核具有裝載操作系統(tǒng)的能力。在以雙核技術(shù)為基礎(chǔ)的情況下,在預(yù)集成模塊中添加邏輯功能,是實(shí)現(xiàn)如內(nèi)核通信和調(diào)試等功能的必須條件。在其它基礎(chǔ)部件中綜合其他功能,適于創(chuàng)建子系統(tǒng)體系結(jié)構(gòu),無(wú)需將該基礎(chǔ)部件建為特殊用途的產(chǎn)品。
  與硬件子系統(tǒng)相同,技術(shù)基礎(chǔ)包括子系統(tǒng)的軟件部分--并不只是指預(yù)移植的操作系統(tǒng),也指驅(qū)動(dòng)程序和軟件庫(kù)(對(duì)于特殊硬件模塊在基礎(chǔ)部件中的驅(qū)動(dòng)非常必要)。
  ARM PrimeXsys技術(shù)基礎(chǔ)將作為特殊應(yīng)用的PrimeXsys平臺(tái)技術(shù)方案基礎(chǔ)。
  雙核平臺(tái)刺激第三方公司開(kāi)發(fā)軟硬件IP、提供如TCP/IP等功能(通過(guò)軟件協(xié)議堆棧)、安全處理如編/解碼運(yùn)算法則、提供關(guān)鍵技術(shù)方案和許多其他應(yīng)用軟件。
ARM PrimeXsys 946雙核平臺(tái)

圖3. ARM PrimeXsys 946雙核平臺(tái)
  雙核性能
  決定系統(tǒng)性能的一些主要的參數(shù)包括CPU性能、存儲(chǔ)器帶寬、系統(tǒng)總線帶寬、中斷響應(yīng)延時(shí)等。
  PrimeXsys雙核平臺(tái)體系結(jié)構(gòu)可為多種CPE產(chǎn)品提供充足的存儲(chǔ)帶寬。表2所示為946 DCP的存儲(chǔ)帶寬情況。
PrimeXsys 946 DCP存儲(chǔ)帶寬

表2:PrimeXsys 946 DCP存儲(chǔ)帶寬。
  *表2假設(shè):
  32位SDRAM
  AHB存取模式--70%讀、30%寫(xiě)
  所有存取以字進(jìn)行
  50%為四次觸發(fā),30%為八次觸發(fā),20%為16次觸發(fā)
  存儲(chǔ)器存?。?br />   50% bank open, correct page
  30% bank closed
  20% bank open, incorrect page

 應(yīng)用產(chǎn)品帶寬需求

表3. 應(yīng)用產(chǎn)品帶寬需求。
  *表3條件:
  平均帶寬采用PCMCIA和USB接口,或Ethernet和USB接口,并不需要并口。
  應(yīng)用產(chǎn)品帶寬需求如表3所述,提供了CPE接口的評(píng)估值。例如:存取點(diǎn)在802.11上,PCMCIA/USB1v1 轉(zhuǎn)接口需要21.5MB/s的峰值帶寬,以太網(wǎng)和USB2v0接口需要平臺(tái)提供至少為92MB/s的峰值存儲(chǔ)帶寬。
  PrimeXsys開(kāi)發(fā)
  PrimeXsys平臺(tái)的目的是為了將預(yù)集成的IP優(yōu)勢(shì)發(fā)揮到極至。系統(tǒng)公司若要最大限度地體現(xiàn)平臺(tái)的價(jià)值,就必須提供在平臺(tái)上又快又準(zhǔn)確地建立其他技術(shù)方案的方法。為了達(dá)到此上目的,PrimeXsys系統(tǒng),包括其他一些測(cè)試基準(zhǔn),將保證開(kāi)發(fā)進(jìn)程非??焖?,并能最終開(kāi)發(fā)出高質(zhì)量的設(shè)計(jì)產(chǎn)品。
  AMBA的各項(xiàng)測(cè)試基準(zhǔn)將確保把IP加載到AMBA總線的同時(shí)可完全連接并符合AMBA片上總線標(biāo)準(zhǔn)。測(cè)試基準(zhǔn),通常基于Verisity的測(cè)試基準(zhǔn)自動(dòng)控制語(yǔ)言E,迅速自動(dòng)生成功能測(cè)試、數(shù)據(jù)檢測(cè)、功能覆蓋分析、HDL仿真控制。PrimeXsys測(cè)試基準(zhǔn)提供系統(tǒng)集成和系統(tǒng)確認(rèn)。
  同時(shí)也 提供軟件開(kāi)發(fā)模型(SDM)。該開(kāi)發(fā)模型包括:內(nèi)核的指令集模擬器(ISS)、運(yùn)行在ARMulator?測(cè)試環(huán)境下的附加IP模型(C語(yǔ)言)。雖然此種模式可運(yùn)行RTOS,但模擬速度限制了ARMulator在實(shí)際應(yīng)用產(chǎn)品測(cè)試時(shí)的速度。該環(huán)境對(duì)于驗(yàn)證寄存器的完整性、驅(qū)動(dòng)初始化和操作系統(tǒng)移植具有非常大的意義。
  為了進(jìn)一步加快系統(tǒng)對(duì)基于FPGA的開(kāi)發(fā)板的仿真速度,在得到硅芯原型前應(yīng)提供應(yīng)用開(kāi)發(fā)和測(cè)試的環(huán)境。
  調(diào)試多核系統(tǒng)
  對(duì)于應(yīng)用產(chǎn)品來(lái)說(shuō),獲得雙核體系結(jié)構(gòu)具有非凡的意義,但是,對(duì)許多設(shè)計(jì)人員來(lái)說(shuō),調(diào)試雙核系統(tǒng)仍將遇到許多難題。
  無(wú)論何時(shí),RTOS將執(zhí)行若干線程。典型的應(yīng)用產(chǎn)品將執(zhí)行許多任務(wù),如:編解碼、數(shù)據(jù)包處理等。若系統(tǒng)管理兩個(gè)通道,這將導(dǎo)致有一、兩個(gè)任務(wù)同時(shí)運(yùn)行,可能在同核上,也可能在異核上。因此,RTOS可能在兩個(gè)核之間切換運(yùn)行。
  無(wú)論系統(tǒng)配置如何,成功的調(diào)試便是在各個(gè)階段都能跟蹤編碼執(zhí)行情況,從開(kāi)始執(zhí)行任務(wù),到發(fā)生中斷、上下文切換、數(shù)據(jù)處理。以不同的獨(dú)立調(diào)試系統(tǒng)調(diào)試獨(dú)立運(yùn)行在不同核上的編碼是非常困難的。
  PrimeXsys 946 DCP提供了針對(duì)復(fù)雜的多線程應(yīng)用軟件進(jìn)行聯(lián)合調(diào)

 

試的方法。946 DCP可在由多源(包括雙核、附加的IP等)產(chǎn)生的斷點(diǎn)處進(jìn)行交叉觸發(fā)。設(shè)計(jì)者可使用觸發(fā)器設(shè)置觸發(fā)點(diǎn)和單步運(yùn)行,調(diào)試非常簡(jiǎn)單,就如同在調(diào)試一個(gè)單核系統(tǒng)。ARM RealView多核調(diào)試器結(jié)合了一個(gè)仿真器和一個(gè)調(diào)試器,可對(duì)ARM的多核系統(tǒng)進(jìn)行內(nèi)核的同步調(diào)試。
  小結(jié)
  CPE產(chǎn)品中的片上系統(tǒng)應(yīng)具有優(yōu)異的性能和低功耗特性,并能快速上市且開(kāi)發(fā)費(fèi)用低廉。CPE產(chǎn)品只有具有上述特性,產(chǎn)品才能獲得成功。ARM的PrimeXsys雙核平臺(tái)將能縮短產(chǎn)品上市時(shí)間、降低投資風(fēng)險(xiǎn)、帶來(lái)更具競(jìng)爭(zhēng)力的片上系統(tǒng)技術(shù)方案基礎(chǔ)平臺(tái)。
  通過(guò)類似于ARM體系結(jié)構(gòu)的方法,把PrimeXsys平臺(tái)建立為業(yè)界標(biāo)準(zhǔn),將使ARM的合作伙伴們通過(guò)與ARM的合作關(guān)系受益,同時(shí)可以從第三方持續(xù)獲得各類創(chuàng)新的軟、硬件IP。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。