當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]嵌入式系統(tǒng)中“軟外設(shè)”的研究

作者Email:   sunchengli@sjzue.edu.cn

    摘要:隨著CPU的性能的不斷提升,處理速度越來越快,運算能力不斷增強,在許多嵌入式系統(tǒng)的開發(fā)中逐漸出現(xiàn)了軟外設(shè)(Software Peripherals)。所謂軟外設(shè)是指以軟件編程為手段,模擬CPU的外圍設(shè)備的功能,真正達到以軟代硬的目的。軟外設(shè)的出現(xiàn)給產(chǎn)品的開發(fā)帶來了極大的靈活性,不但使系統(tǒng)體積變得更小,而且使系統(tǒng)的升級換代變得更為方便,從而真正實現(xiàn)SOC。

    本文介紹軟外設(shè)的設(shè)計思想以及在開發(fā)過程中應(yīng)注意的事項,并結(jié)合一個嵌入式系統(tǒng),分析軟外設(shè)對系統(tǒng)的影響以及如何使設(shè)計合理化。

    關(guān)鍵詞:嵌入式系統(tǒng) UART  Software Peripherals

    一、介紹

    應(yīng)該說軟外設(shè)并不是一個新思想,從計算機發(fā)明以來,電子系統(tǒng)設(shè)計人員一直試圖盡可能多地用軟件編程來代替實際電路,通過這種方式把外設(shè)嵌入進系統(tǒng)。但由于CPU速度、計算能力有限,以及內(nèi)存技術(shù)的發(fā)展不夠成熟,從而束縛了軟外設(shè)的發(fā)展。

    近年來,隨著電子技術(shù)的發(fā)展,越來越多的處理器廠家在處理器的設(shè)計中加大了對軟外設(shè)的支持,象ARM公司宣稱他們的32、64位RISC處理器已經(jīng)能用軟件實現(xiàn)更多更強的功能,指令集也更為豐富,甚至包括DSP方面的許多功能現(xiàn)在已經(jīng)能夠在CPU上實現(xiàn)。Motorola公司已經(jīng)開發(fā)出基于SM56PCI接口的用純軟件實現(xiàn)的調(diào)制解調(diào)器。這些都說明電路設(shè)計已經(jīng)進入了一個嶄新的時期。

    目前,電子設(shè)計中把外設(shè)嵌入進系統(tǒng)的方法主要有兩種。方法Ⅰ是采用標(biāo)準(zhǔn)的微處理器+一塊輔助芯片,輔助芯片可以是FPGA或CPLD等可編程邏輯芯片;方法Ⅱ是采用基本的CPU內(nèi)核+附加邏輯單元,這些可以在一塊高密度可編程邏輯芯片上實現(xiàn),CPU內(nèi)核往往為Altera和Xilinx等FPGA生產(chǎn)廠家提供的軟件模塊。以上兩種方法都需要開發(fā)人員熟悉硬件描述語言,但在實際應(yīng)用中CPU內(nèi)核以及各種IP核的使用的往往要得到產(chǎn)權(quán)許可,而且可編程邏輯芯片體積大,價格昂貴,故在一些便攜式裝置的研制中不便采用。

    軟外設(shè)的設(shè)計通常是采用標(biāo)準(zhǔn)的微處理器,在滿足系統(tǒng)穩(wěn)定和系統(tǒng)負荷允許的條件下,設(shè)計中盡可能多地采用可配置的軟件模塊,用這些可配置的軟件模塊來實現(xiàn)某種外設(shè)的功能。并且可以配置、升級、重組,從而完成特定的功能。應(yīng)該說明的是,并不是所有外設(shè)的功能都能完全由軟件實現(xiàn),這種設(shè)計方法的目的是在系統(tǒng)允許的條件下盡量“以軟代硬”,以盡可能少的硬件開銷取得最佳的性能比。

    二、系統(tǒng)要求

    下面給出具有軟外設(shè)的嵌入式系統(tǒng)結(jié)構(gòu)圖。

    下面給出對嵌入式系統(tǒng)的要求:

    (1) 高性能CPU內(nèi)核。軟外設(shè)的必須以高性能CPU內(nèi)核為支持,只有采用高性能CPU內(nèi)核,系統(tǒng)的頻率才能得以提高,軟外設(shè)和CPU之間才能高速傳送數(shù)據(jù),軟外設(shè)才能得以高速運行而對系統(tǒng)整體工作不會有太多影響。建議采用帶有流水線、32位以上RISC核的CPU。

    (2) 快速的中斷響應(yīng)。軟外設(shè)均采用中斷方式向CPU提出服務(wù)請求??梢栽谄洗鎯ζ髋c內(nèi)部總線之間增加寄存器組來減少系統(tǒng)的中斷響應(yīng)時間。

    (3) 附加硬件模塊。正如前面所提,系統(tǒng)有些特性是不能由軟件實現(xiàn)的,象定時器、中斷控制器。另外在信號處理中由于A/D、D/A轉(zhuǎn)換如果用軟件實現(xiàn)對系統(tǒng)開銷太大,由硬件實現(xiàn)較好。

    (4) 快速、足夠的存儲器和高性能的運算單元。

    三、軟外設(shè)的算法設(shè)計

    由于軟外設(shè)要求實時性強,有時需要和別的應(yīng)用程序并行執(zhí)行,在設(shè)計時可以把軟外設(shè)看作等待服務(wù)的任務(wù),協(xié)調(diào)、安排好這些任務(wù)非常重要,根據(jù)任務(wù)的確定性可以把實時系統(tǒng)的進程調(diào)度策略劃分為兩類:一類是靜態(tài)的,主要負責(zé)預(yù)先知道發(fā)生時間的任務(wù);要求按進度準(zhǔn)點完成的任務(wù);要求固定時間發(fā)生的任務(wù)。對這類調(diào)度策略可以采用Round-robin算法或間隔算法(見3)。另外一類是動態(tài)進程調(diào)度策略,負責(zé)那些不能預(yù)測何時發(fā)生任務(wù);不知執(zhí)行周期有多長的任務(wù)。這是一些具有臨時性的任務(wù),比如含有條件循環(huán)的任務(wù)(不知何時滿足條件)。以上兩種策略分別適用于不同的情況,在一個復(fù)雜的系統(tǒng)中,往往存在幾個要求并行執(zhí)行的軟外設(shè),進程的調(diào)度對任務(wù)的同步和系統(tǒng)的優(yōu)化非常重要。

    另外為了設(shè)計的可移植性和簡便,要進行模塊化和層次化設(shè)計,復(fù)雜的軟外設(shè)可以看作由幾個具有層次的簡單的模塊構(gòu)成。

    四、性能分析

     現(xiàn)以示出了一個嵌入式系統(tǒng)的框圖,該系統(tǒng)采用Motorola公司生產(chǎn)的MCF5104型號CPU,接有三個軟外設(shè),分別為UART、LCD和鍵盤控制器。現(xiàn)在從工作速度和能量損耗方面以UART軟外設(shè)為例,對軟外設(shè)進行性能分析。

    在UART實現(xiàn)程序中,共有16條匯編指令,假定每條指令需要一個時鐘周期(即CPI=1),沒有奇偶校驗功能。通過改變CPU主頻(變化范圍為30~100),計算執(zhí)行的時間占有CPU時間的比率,分析UART軟外設(shè)在不同波特率情況下對CPU的負擔(dān),計算過程如下:

    假定CPU發(fā)送/接收一個字節(jié)的時間為t。UART軟外設(shè)的CPU占有率為T,則

    t=指令數(shù)×CPI+中斷響應(yīng)周期×CPU主頻-1。
    T=t×波特率。
    結(jié)果如表1所示。

1 UARTCPU占有率

Rate(bit/s)

  MHz

19200

38400

57600

1152000

30

1.534%

3.070%

4.605%

9.215%

50

0.920%

1.843%

2.764%

5.530%

75

0.614%

1.227%

1.843%

3.687%

100

0.460%

0.921%

1.380%

2.764%

    上表中的統(tǒng)計數(shù)據(jù)是在假定UART工作在全雙工方式(FD)下,沒有檢錯功能得到的,而系統(tǒng)絕大多數(shù)時間是工作在半雙工方式(HD)下的,HD方式下該UART的CPU占有時間率要減少25%。如果加上奇偶校驗功能,該軟外設(shè)的CPU占有時間率在FD方式會增加11.45%,HD方式下增加7.60%。

    由表1可知,CPU頻率越高,軟外設(shè)對系統(tǒng)的負擔(dān)越小,另外隨著UART的波特率增加,系統(tǒng)負擔(dān)加重。建議軟外設(shè)的運行占CPU時間不能超過20%,實驗證明,軟外設(shè)的CPU占有率不超過20%的情況下對系統(tǒng)來說是可以承受的。

    接下來我們分析該軟外設(shè)的能耗問題。圖三示出了CPU在接有URAT軟外設(shè)或URAT硬件的情況下在不同情況下的CPU消耗電流曲線。

上圖表明:
1.隨著波特率增加,UART軟外設(shè)的能耗增加。
2.隨著CPU主頻增加,UART軟外設(shè)的能耗增加。
3.波特率在小于70Kbit/s時UART軟外設(shè)的能耗低于硬件外設(shè),此時選用軟外設(shè)可以降低能耗,即該軟外設(shè)適合于數(shù)據(jù)量不是很大的場合(如語音通信)。在要求系統(tǒng)傳輸速率極快的情況下(如視頻流傳輸),選用硬件實現(xiàn)較為合適。

六、結(jié)束語

    本文系統(tǒng)地介紹了軟外設(shè)的設(shè)計思想,并以一個軟外設(shè)為例,分析了它的一些性能指標(biāo)。 軟外設(shè)具有許多優(yōu)點:如調(diào)試方便,系統(tǒng)可移植性強,能耗小,成本低。很適合在一些要求便攜式、低能耗的場合應(yīng)用。雖然也存在一些缺點,如速度慢,并行性差,但隨著CPU相關(guān)技術(shù)的發(fā)展以及算法的完善,這些方面在一定程度上會得到改觀。設(shè)計人員在設(shè)計時需要對硬件設(shè)計和軟件設(shè)計進行折衷考慮。畢竟,軟外設(shè)的出現(xiàn)給嵌入式系統(tǒng)設(shè)計提供了一種更為靈活的設(shè)計方案,給設(shè)計人員也提供了更多的選擇余地,更廣的設(shè)計空間。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉