嵌入式開發(fā)實踐經(jīng)驗秘訣_第1頁
嵌入式開發(fā)實踐經(jīng)驗秘訣_第2頁
嵌入式開發(fā)實踐經(jīng)驗秘訣_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、本文格式為Word版,下載可任意編輯嵌入式開發(fā)實踐經(jīng)驗秘訣 工程師一刻也沒遺忘交付達(dá)到質(zhì)量、時間支配和預(yù)算目標(biāo)的項目的需求。您可以借鑒嵌入式系統(tǒng)開發(fā)人員社區(qū)多年來累計的閱歷教訓(xùn),確保您下一個嵌入式系統(tǒng)項目達(dá)成這些目標(biāo)。下面我們來了解一些為嵌入式開發(fā)帶來了最佳實踐的重要閱歷。 系統(tǒng)地思索 系統(tǒng)工程是一個廣泛的專業(yè)領(lǐng)域,掩蓋從航空母艦及衛(wèi)星到實現(xiàn)其性能的嵌入式系統(tǒng)的全部開發(fā)工作。我們可以運(yùn)用系統(tǒng)工程方法管理從概念到使用周期結(jié)束處置的嵌入式系統(tǒng)工程生命周期。系統(tǒng)工程方案的第一階段跟常人想象的不一樣,不是確立系統(tǒng)需求,而是制定系統(tǒng)工程管理規(guī)劃。這一規(guī)劃不僅將為系統(tǒng)定義工程生命周期以及開發(fā)團(tuán)隊將要開展的

2、設(shè)計評審,而且還將定義這些評審的預(yù)期輸入輸出。該規(guī)劃可依據(jù)工程大事的次序和每個階段的先決條件,為項目管理、工程和客戶群體做出明確的定義。簡而言之,它可展現(xiàn)預(yù)期和可交付項。在清晰理解工程生命周期的狀況下,系統(tǒng)思索的下一步是確立正在開發(fā)嵌入式系統(tǒng)的需求。良好的需求集應(yīng)掩蓋三個方面。功能需求定義嵌入式系統(tǒng)如何開展工作。非功能需求定義法規(guī)遵從與牢靠性等方面的問題。環(huán)境需求定義工作溫度和沖擊與振動以及電氣環(huán)境(例如 EMI 和 EMC)等方面的需求。在較大規(guī)模的開發(fā)工作中,這些需求將從較高層次的規(guī)范向下延長并且可跟蹤,比如系統(tǒng)或子系統(tǒng)規(guī)范(圖 1)。假如沒有較高層次的規(guī)范,我們必需在開發(fā)過程中接觸利益相

3、關(guān)方,確立一套明確的利益相關(guān)方需求,然后將其用于確立嵌入式系統(tǒng)需求。 圖 1 在開發(fā)工作中,需求從較高層次的規(guī)范向下延長并且可跟蹤。 生成一個良好的需求集,需要我們充分思索每一個需求,才能確保其符合這些標(biāo)準(zhǔn): 1.它是必要的。沒有需求,我們的項目就不會取得勝利。 2.它是可驗證的。我們必需確保該需求能通過檢驗、測試、分析或演示實現(xiàn)。 3.它是可實現(xiàn)的。在給定的約束條件下,該需求在技術(shù)層面上是可以實現(xiàn)的。 4.它是可追蹤的。該需求能夠從較低層次的需求進(jìn)行追蹤,而且可追蹤較高層次的需求。 5.它是唯一的。這項標(biāo)準(zhǔn)可防止需求之間的界限不清。 6.它是簡潔清楚的。每條需求指定一項功能。 為體現(xiàn)意圖,在

4、定義需求時還經(jīng)常使用特定語言。一般我們對強(qiáng)制性要求使用“必需”,對非強(qiáng)制性要求 使用“應(yīng)當(dāng)”。非強(qiáng)制性要求可讓我們表達(dá)必要的系統(tǒng)屬性。 在我們確立了我們的需求底線后,最佳實踐就是創(chuàng)建一個合法規(guī)陣,說明符合每項需求。我們還可以通過為每項需求安排一種驗證方法開頭確立我們的驗證策略。這些方法一般是測試、分析、檢驗、演示和交叉讀取。依據(jù)合規(guī)及驗證矩陣創(chuàng)建需求能讓我們: 清楚地了解系統(tǒng)行為。 向內(nèi)部測試團(tuán)隊和外部客戶都演示驗證方法。這不僅可在開發(fā)過程的早期階段發(fā)覺任何困難的測試方法,而且還可關(guān)心我們確定所需的資源。 確定技術(shù)性能指標(biāo)。這些指標(biāo)來自合法規(guī)陣,由存在無法合規(guī)的風(fēng)險的各種需求構(gòu)成。 安排工程預(yù)

5、算 每個工程項目都涵蓋肯定數(shù)量的預(yù)算,我們應(yīng)將其安排給在架構(gòu)中識別的解決方案。預(yù)算安排不僅可確保項目實現(xiàn)整體需求,而且還可確保每個模塊的設(shè)計牽頭人理解模塊的安排,以創(chuàng)建適當(dāng)?shù)慕鉀Q方案。我們安排預(yù)算的典型領(lǐng)域有功能的總質(zhì)量、功能的總功耗、用平均故障間隔時間或勝利概率定義的牢靠性以及設(shè)計中信號類型間的正值串?dāng)_(一般是一套適用于大量功能的通用規(guī)章集)。確立工程預(yù)算最重要的方面之一是確保我們有足夠的應(yīng)急安排。但我們必需戰(zhàn)勝應(yīng)急再加應(yīng)急的想法,由于這會成為影響時間支配和成本的嚴(yán)峻技術(shù)問題。 管理技術(shù)風(fēng)險 從合法規(guī)陣及工程預(yù)算的生成看,我們應(yīng)當(dāng)能夠識別在技術(shù)上有難度的需求。每一個這類有風(fēng)險的需求都應(yīng)當(dāng)有明

6、確的規(guī)避方案,其將說明我們將如何實現(xiàn)這一需求。展現(xiàn)這一點的最佳途徑之一是使用技術(shù)就緒指數(shù) (TRL)。TRL 有 9 級,從所觀看到的基本原理 (TRL1) 到完整功能與實地部署 (TRL9) 描述設(shè)計成熟度級數(shù)。把 TRL 安排給我們架構(gòu)中使用的每一項技術(shù),再結(jié)合合法規(guī)陣,可關(guān)心我們確定技術(shù)風(fēng)險的所在位置。我們隨后可啟動一個 TRL 開發(fā)規(guī)劃,確保在項目不斷推動時,低 TRL 領(lǐng)域會提升到所需的 TRL 水平。該規(guī)劃涉及的內(nèi)容可確保我們在項目推動時實現(xiàn)和測試正確的功能,或是在項目推動的過程中 執(zhí)行功能或環(huán)境動態(tài)測試。 創(chuàng)建架構(gòu) 理解嵌入式系統(tǒng)要求的行為后,我們就需要為解決方案創(chuàng)建一個架構(gòu)。該

7、架構(gòu)將由分組勝利能塊的需求構(gòu)成。例如,假如嵌入式系統(tǒng)必需處理模擬輸入或輸出,架構(gòu)就將包含模擬 I/O 模塊。其它模塊可能會更加明顯,比如電源調(diào)整、時鐘和復(fù)位生成。 該架構(gòu)不應(yīng)僅限于硬件(電氣)解決方案,還應(yīng)包含 FPGA/SoC 及相關(guān)軟件的架構(gòu)。當(dāng)然,模塊化設(shè)計的關(guān)鍵是針對模塊及功能行為的良好接口文檔編制。 該架構(gòu)的一個關(guān)鍵方面是呈現(xiàn)如何在高層次上創(chuàng)建系統(tǒng),這樣工程團(tuán)隊就能輕松理解其實現(xiàn)方式。該步驟也是在系統(tǒng)運(yùn)行生命周期中為系統(tǒng)供應(yīng)支持的關(guān)鍵。 在確定我們的架構(gòu)時,我們需要考慮模塊化方法,這樣不僅能在當(dāng)前項目上進(jìn)行復(fù)用,而且還能在將來的項目上進(jìn)行復(fù)用。模塊化要求我們從第一天起就考慮可能的復(fù)用

8、,并要求我們把每個模塊存檔為一個獨立的單元。就內(nèi)部 FPGA/SoC 模塊而言,像 ARM? AMBA? 高級可擴(kuò)展接口 (AXI) 這樣的通用接口標(biāo)準(zhǔn)有助于實現(xiàn)復(fù)用。 模塊化設(shè)計的一個重大優(yōu)勢就是能夠針對某些需求使用商用現(xiàn)成的模塊。商用現(xiàn)成(COTS)模塊讓我們能夠以更快的速度開發(fā)系統(tǒng),由于借助 COTS,我們能夠把我們的工作重點放在項目從我們的專業(yè)力量產(chǎn)生的增值中獲益最大的部分上。 系統(tǒng)電源架構(gòu)是一個需要縝密思索的的設(shè)計方面。很多嵌入式系統(tǒng)會要求隔離 AC/DC 或 DC/DC 轉(zhuǎn)換器來確保嵌入式系統(tǒng)的故障不會集中。圖 2 顯示的是電源架構(gòu)的示例。來自該模塊的輸出軌需要二級調(diào)整來為處理內(nèi)核

9、和轉(zhuǎn)換裝置供應(yīng)電壓。我們必需認(rèn)真防范這些階段發(fā)生嚴(yán)峻的開關(guān)損耗和效率下降。由于效率降低意味著系統(tǒng)熱耗散增大,假如不正確解決就會影響單元的牢靠性。 圖 2 在本電源架構(gòu)示例中,模塊的輸出軌需要二級穩(wěn)壓。 我們必需認(rèn)真了解使用的線性調(diào)整器的行為以及在電源線上進(jìn)行進(jìn)一步濾波的要求。這一要求的緣由是 FPGA 和處理器等器件的開關(guān)頻率遠(yuǎn)遠(yuǎn)高于線性調(diào)整器的掌握環(huán)路所能應(yīng)對的水平。隨著噪聲頻率提高,線性調(diào)整器的噪聲抑制力量下降,導(dǎo)致需要采納額外的濾波和去藕技術(shù)。假如不了解這一關(guān)系,會造成混合信號設(shè)備消失問題。 另一個重要的考慮因素是時鐘和復(fù)位架構(gòu),尤其是在有多個需要同步的開發(fā)板的狀況下。在架構(gòu)層面我們必需

10、考慮時鐘安排網(wǎng)絡(luò):我們是否在跨多個開發(fā)板扇出單個振蕩器,或是使用多個頻率相同的振蕩器?為確保時鐘安排的穩(wěn)健牢靠性,我們必需考慮: 振蕩器啟動時間。我們必需確保在整個時間周期內(nèi)激活復(fù)位(假如需要)。 振蕩器歪斜。假如我們要在跨多個開發(fā)板扇出振蕩器,時序是否至關(guān)重要?假如是,我們需要考慮線路卡上的歪斜(連接器引起的)和緩沖器自身引起的歪斜。 振蕩器抖動。假如我們在開發(fā)混合信號設(shè)計,我們需要確保使用低抖動時鐘源,由于抖動的增大會降低混合信號轉(zhuǎn)換器的信噪比。在我們使用千兆位級串行鏈路時狀況也是一樣,由于我們需要使用低抖動時鐘源在鏈路上取得良好的誤碼率。 我們也必需留意復(fù)位架構(gòu),確保只在需要的地方使用復(fù)

11、位。例如基于 SRAM 的 FPGA 一般不需要復(fù)位。 假如我們在使用復(fù)位的異步激活,我們需要確保移除它不會導(dǎo)致亞穩(wěn)態(tài)問題。 清楚定義接口 內(nèi)外部接口的正式文檔在機(jī)械、物理和電氣層面為各個接口供應(yīng)清楚的定義,以及協(xié)議和掌握流。這些正式文檔也往往被稱為接口掌握文檔 (ICD)。當(dāng)然最好是盡量使用標(biāo)準(zhǔn)通信接口。 接口定義最重要的一個方面是外部接口的“連接化”。這個過程考慮了所需連接器的引腳安排,連接器引腳的額定功率以及所要求的插拔次數(shù),以及任何對屏蔽的要求。 在我們?yōu)槲覀兊南到y(tǒng)考慮連接器類型的時候,我們應(yīng)確保不會由于在子系統(tǒng)中使用相同類型連接器而造成不利的交叉連接。通過使用不同類型連接器或采納不同的連接器鍵位(假如支持),我們就能夠避開交叉連接的可能性。 連接化是我們開頭使用之前確定的預(yù)算要求的首個方面之一。特殊是我們可以使用串?dāng)_預(yù)算來指引我們定義引腳安排。圖 3 所示的例子說明白這一流程的重要性。重新支配引腳安排,將接地基準(zhǔn)電壓 (GND) 引腳布局在信號 1 和信號 2 之間,可以降低互感以及由此引發(fā)的串?dāng)_。 圖 3 連接化是接口定義最重要的特征

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論