嵌入式實(shí)時(shí)系統開(kāi)發(fā)的正確選擇
嵌入式系統開(kāi)發(fā)生命周期
許多系統設計工程師都會(huì )經(jīng)歷硬件/軟件協(xié)同設計的過(guò)程(圖1),此過(guò)程中硬件與軟件將同時(shí)進(jìn)行開(kāi)發(fā)。理解硬件與軟件功能相互之間的關(guān)系及界限有助于確保設計要求得到完整正確的理解和實(shí)現。
早在設計要求的定義與分析階段,系統開(kāi)發(fā)人員就必須與設計工程師協(xié)同分配硬件或/和軟件方面的要求。這種分配的依據是早期系統仿真、原型設計和行為建模結果、工程師自己的經(jīng)驗以及上文提及的各種因素權衡結果(圖2)。一旦分配結束,就可以立即著(zhù)手具體的設計和實(shí)現。實(shí)時(shí)系統開(kāi)發(fā)中軟硬件的并行設計會(huì )使用到各種分析技術(shù),包括:
1. 硬件與軟件仿真;
2. 硬件/軟件協(xié)同仿真;
3. 可調度的建模技術(shù),如速率恒定分析;
4. 原型設計和漸進(jìn)式開(kāi)發(fā)。
可以在各種抽象層次使用的仿真技術(shù)主要用于開(kāi)展早期的性能評估。低層仿真可以用來(lái)為總線(xiàn)寬度和數據流程建模,這對性能評估是非常有用的。高層仿真可以滿(mǎn)足功能的交互,并促成硬件/軟件權衡研究及有效性設計。利用仿真可以將一個(gè)復雜的系統向下抽象成基礎組件和行為。仿真還助于解決功能性問(wèn)題(數據與算法)、行為(進(jìn)程排序)或性能問(wèn)題(資源利用、吞吐量和時(shí)序)。
理解設計要求
在作執行任何類(lèi)型的處理器評估時(shí),首先要詳細理解用戶(hù)的功能和非功能性要求。功能性要求通常比較容易獲得,而非功能性要求較難定量測量。但對于實(shí)時(shí)系統來(lái)說(shuō),定義響應時(shí)間這樣的要求是非常重要的。實(shí)時(shí)要求可以有以下幾種:
1. 激勵-激勵(S-S):到系統去的兩個(gè)激勵之間的實(shí)時(shí)關(guān)系;
2. 激勵-響應(S-R):一個(gè)激勵與來(lái)自系統的一個(gè)后序響應之間的實(shí)時(shí)關(guān)系;
3. 響應-激勵(R-S):一個(gè)響應與到系統去的一個(gè)后序激勵之間的實(shí)時(shí)關(guān)系;
4. 響應-響應(R-R):來(lái)自系統的兩個(gè)響應之間的實(shí)時(shí)關(guān)系。
S-R和R-R關(guān)系定義了對指定系統的時(shí)序要求。這種情況下所實(shí)現的功能必須足夠快(或足夠慢)才能滿(mǎn)足時(shí)序要求。S-S和 R-S約束暗示系統必須能夠從環(huán)境(可能是一個(gè)用戶(hù)或另外一個(gè)系統)中檢測出特定時(shí)序約束的破壞。這些約束與功能的快慢沒(méi)有關(guān)系,相反它們能夠檢測出某些遭到破壞的時(shí)序約束并采取必要的措施。
因此要從最初系統要求設計時(shí)就很好地理解這一點(diǎn),因為S-R和R-R約束可以引導設計工程師進(jìn)行代碼優(yōu)化,而S-S和R-S約束需要用額外的軟件來(lái)檢測和響應時(shí)序沖突。
處理器選擇
嵌入式實(shí)時(shí)系統比較適合用于系統優(yōu)化。由于這些系統主要用來(lái)解決范圍相對較窄的問(wèn)題,因此硬件和軟件能夠得到最佳優(yōu)化,并很好地應用于單一設備。這樣做的目的是要在軟硬件最佳折衷狀態(tài)下開(kāi)展系統設計。影響這一階段設計的主要因素是處理器的選擇、軟硬件的分割和總體系統集成。
在為嵌入式實(shí)時(shí)系統選擇處理器時(shí)需要考慮以下幾個(gè)方面:
1. 性能:處理器必須有足夠的性能執行任務(wù)和支持產(chǎn)品生命周期。
2. 實(shí)現:根據具體應用情況,處理器可能需要被高度集成。在DSP應用中可以有好幾種選擇,專(zhuān)用集成電路(ASIC)就是其中的一種。這些器件可以被用作 DSP協(xié)處理器,但對于許多通用信號處理來(lái)說(shuō)顯得不夠靈活。另外可以選擇精簡(jiǎn)指令集計算機(RISC)處理器。這些處理器的時(shí)鐘速度特別快,但可擴展性不是很強,而且會(huì )發(fā)生其它實(shí)時(shí)(可預測性)問(wèn)題?,F場(chǎng)可編程陣列(FPGA)是一種快速器件,能夠快速高效地完成某些DSP功能,但與DSP相比開(kāi)發(fā)難度比較大,因為在DSP中一個(gè)簡(jiǎn)單的程序就能完成相同的功能。如果是主信號處理應用,則最好采用性能強大功耗也較大的通用處理器。如果需要快速升級信號處理應用,采用DSP等可編程器件比定制的硬件方案要更好些。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論