嵌入式系統開發1 - 資源限制

更新 發佈閱讀 4 分鐘
Making Embedded Systems

Making Embedded Systems

資源限制

嵌入式系統的設計是為了完成特定任務,因此會刪減不必要的資源來達成目標。這些資源包含以下幾項:

  • 記憶體(RAM)
  • 程式碼空間(ROM 或 Flash)
  • 處理器週期或速度
  • 電力消耗(也就是電池壽命)
  • 處理器周邊設備


這些資源在某種程度上可以互換。舉例來說,你可以以佔用更多程式碼空間為代價來提升執行效率,讓程式運行得更快。或者,你也可以降低處理器速度來節省電力。如果系統缺乏某些硬體介面,也可能透過 I/O 線路和處理器週期以軟體模擬方式來實現。然而,即便可以進行這些取捨,這些資源仍然非常有限,如何在有限的資源下達成目標是嵌入式系統面臨的重要挑戰之一。


硬體挑戰

除了資源限制,嵌入式系統開發還面臨來自硬體的挑戰。例如,交叉除錯(cross-debugging)可能讓人感到挫折,尤其在硬體剛啟動的階段,系統問題的來源可能難以判斷,因為問題可能出現在硬體也可能出現在軟體。與一般的電腦不同,你所撰寫的軟體甚至有可能對硬體造成實質損壞。此外,必須具備對硬體的深刻了解,知道硬體能做到什麼。但這些知識可能在下一個專案中無法完全沿用,因此你需要快速學習新的硬體技術。


以下是幾個具體的嵌入式系統開發案例,說明與硬體挑戰相關的問題:

案例 1:無線感應裝置的硬體啟動問題

在一個無線感應裝置的開發過程中,工程師遇到系統無法正確啟動的問題。剛開始時,他們認為是軟體初始化的問題,但實際上是硬體晶片中的電源管理電路存在缺陷,導致系統在上電後電壓不穩定。由於嵌入式系統軟硬體緊密結合,初期調試花費大量時間來排查硬體與軟體之間的交互問題,這就是交叉除錯過程中的典型挫折。

案例 2:醫療設備中的韌體升級錯誤

在一個醫療設備的開發中,韌體升級後設備無法正常工作。原因是軟體錯誤導致設備內部的處理器以不適當的方式控制電流,最終燒毀了一些硬體元件。這個案例說明,嵌入式系統中的軟體錯誤可能對硬體造成實質性的損壞,並強調開發過程中進行周全測試和軟硬體協作的重要性。

案例 3:智慧家居設備的I/O 模擬

在開發智慧家居控制器時,因為成本限制,選用的處理器缺少某些硬體介面(如專用I²C接口)。工程師不得不在有限的處理器資源下,利用軟體方式模擬I²C協定來與周邊感測器進行通信。這雖然成功達成目標,但也增加了開發和除錯的難度,尤其是在模擬的通信速率不穩定時,需要深入了解硬體時序,並進行細緻的調校。

案例 4:消費性電子產品的硬體升級困難

在消費性電子產品的開發中,工程師在現有系統中遇到硬體升級的瓶頸。原有的處理器已經運行接近其資源極限,當增加新功能時,發現處理器無法負荷新需求。在嘗試對軟體進行優化後,最終還是不得不更換處理器。但由於對新硬體的了解有限,整個開發團隊不得不重新學習新的硬體架構,這拖延了整個專案進度。


這些案例展示了嵌入式系統開發中,軟硬體之間複雜的互動,以及快速適應新硬體技術的重要性。


製造階段與量產

當開發與測試完成後,系統將進入量產階段。這是純軟體工程師通常不會涉及的領域。然而,嵌入式軟硬體工程師需要確保系統可以以合理的成本進行製造。支持量產是一個嵌入式工程師的任務,確保製造出的系統能夠忠實再現所設計的功能。


使用階段與產品生命週期

產品製造完成後將進入實際使用階段。對於消費性產品,這意味著它們將進入數百萬個家庭,任何的程式錯誤將被大眾體驗。對於醫療、航空或其他關鍵產品,程式錯誤可能是災難性的(這也是為什麼這些領域有大量文件工作)。對於科學或監測設備,系統可能部署於無法回收或難以回收的環境中(如火山口中的設備),因此它必須非常可靠。這些設備在離開開發者之後的生命週期,是設計軟體時必須考量的重點。


變化與預測未來

即便你已經解決了所有這些問題,仍然存在一個共通的最大挑戰,那就是變化。不僅產品目標會變化,專案的需求也會隨著時間推移而改變。在專案初期,你可能只想隨便拼湊一些功能來進行試驗,但隨著專案的深入,對產品目標和硬體的理解逐漸加深,你將開始構建更多基礎設施,使軟體更具除錯性、穩定性和靈活性。然而,在資源受限的環境下,你必須判斷究竟能投入多少基礎設施開發時間、記憶體、程式碼空間和處理器週期。最終開發出來的系統往往與最初的設計大相徑庭,而開發工作也幾乎永無止境。


嵌入式系統為特定應用量身定做,這有一個不幸的副作用,就是當應用需求變化時,系統可能無法跟隨變化。因此,嵌入式系統工程不僅是應對嚴格的限制與系統的生命週期,更重要的是預測未來的變化,並設計出能夠適應這些變化的軟體。你需要試著預測專案的未來發展方向,並設計出足夠靈活的軟體來應對這些變化。這無疑是一個極具挑戰性的工作。

留言
avatar-img
Will 進步本
10會員
284內容數
歡迎來到「Will 進步本」!我們將探索計算機科學、商用英文和生成式AI。從基礎到前沿,共同學習和交流,拓展知識視野,啟發創新思維
Will 進步本的其他內容
2024/08/28
評估元件時使用數據表的步驟 評估元件是一項進階技能,通常是你在實現系統的驅動程序之後才會培養的能力。
2024/08/28
評估元件時使用數據表的步驟 評估元件是一項進階技能,通常是你在實現系統的驅動程序之後才會培養的能力。
2024/08/26
閱讀數據表(Datasheet) 在產品開發的過程中,面對發佈壓力,往往會讓我們無法慢下來仔細閱讀元件的數據表、手冊以及應用說明。更糟糕的是,儘管我們可能已經翻遍了這些文件,卻發現什麼也沒記住,因為這些文件中的專業術語對我們來說就像外語一樣陌生。
2024/08/26
閱讀數據表(Datasheet) 在產品開發的過程中,面對發佈壓力,往往會讓我們無法慢下來仔細閱讀元件的數據表、手冊以及應用說明。更糟糕的是,儘管我們可能已經翻遍了這些文件,卻發現什麼也沒記住,因為這些文件中的專業術語對我們來說就像外語一樣陌生。
2024/08/26
電壓與電流 我們測量電量時使用電壓和電流,但這兩者都源於更基本的物理原理。
Thumbnail
2024/08/26
電壓與電流 我們測量電量時使用電壓和電流,但這兩者都源於更基本的物理原理。
Thumbnail
看更多
你可能也想看
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
一、半導體產業改革的中心「EDA」,台積電、英特爾都非常重視 半導體產業的微縮化、晶片模組集成和3D實作的進步正在徹底改變整個行業。這些技術革新帶來了對傳統製造流程和設計方法的新要求;電子設計自動化(EDA)工具的作用變得日益重要。EDA工具是設計者設計和驗證複雜電路和系統時不可或缺的工具,尤其在
Thumbnail
一、半導體產業改革的中心「EDA」,台積電、英特爾都非常重視 半導體產業的微縮化、晶片模組集成和3D實作的進步正在徹底改變整個行業。這些技術革新帶來了對傳統製造流程和設計方法的新要求;電子設計自動化(EDA)工具的作用變得日益重要。EDA工具是設計者設計和驗證複雜電路和系統時不可或缺的工具,尤其在
Thumbnail
筆記-2024.03.16-曲博 財訊訪談-談ARM *處理器的兩種架構: 精簡指令集RISC 複雜指令集CISC, *CPU為複雜指令集,運算能力較強,缺點是較耗電。 *ARM,為精簡指令集,運算效能較差,但較省電,屬於微處理器(MPU)。 *英特爾稱霸電腦用CPU, 然而手機較看重
Thumbnail
筆記-2024.03.16-曲博 財訊訪談-談ARM *處理器的兩種架構: 精簡指令集RISC 複雜指令集CISC, *CPU為複雜指令集,運算能力較強,缺點是較耗電。 *ARM,為精簡指令集,運算效能較差,但較省電,屬於微處理器(MPU)。 *英特爾稱霸電腦用CPU, 然而手機較看重
Thumbnail
本文延續之前康斯坦丁·霍普夫博士等人的研究,該研究談及了〈人工智慧的組織導入:工藝與機械工作〉(Organizational Implementation of AI: Craft and Mechanical Work)中提出的五項組織挑戰。本文專注於這些挑戰中的第三項,即「系統連結缺失和資料稀缺
Thumbnail
本文延續之前康斯坦丁·霍普夫博士等人的研究,該研究談及了〈人工智慧的組織導入:工藝與機械工作〉(Organizational Implementation of AI: Craft and Mechanical Work)中提出的五項組織挑戰。本文專注於這些挑戰中的第三項,即「系統連結缺失和資料稀缺
Thumbnail
嗯⋯這個專案,確實發生了不妙的事情,其實近日來,我都會將這台半成品實際帶到辦公室去,一方面測試穩定性,一方面發覺新需求,直到某天⋯
Thumbnail
嗯⋯這個專案,確實發生了不妙的事情,其實近日來,我都會將這台半成品實際帶到辦公室去,一方面測試穩定性,一方面發覺新需求,直到某天⋯
Thumbnail
2023年來看處理器的發展,x86_64系統結構與ARM64系統結構是目前市場上的主流處理器系統結構,ARM是一個整合作業系統、組合語言、C語言、電子電路技術的宏大領域。熟悉ARM架構一定是硬體工程師想要進軍CPU領域的唯一目標(當然還有一個是RISC-V)。
Thumbnail
2023年來看處理器的發展,x86_64系統結構與ARM64系統結構是目前市場上的主流處理器系統結構,ARM是一個整合作業系統、組合語言、C語言、電子電路技術的宏大領域。熟悉ARM架構一定是硬體工程師想要進軍CPU領域的唯一目標(當然還有一個是RISC-V)。
Thumbnail
我們可以想像一台電腦是由許多硬體組合而成的,不過,你可能不知道,從鍵盤打字到螢幕顯示的過程中,有個不可或缺的角色——中央處理器,也就是 CPU,今天我們就來淺聊一下電腦的大腦,中央處理器(CPU, Central Processing Unit)。
Thumbnail
我們可以想像一台電腦是由許多硬體組合而成的,不過,你可能不知道,從鍵盤打字到螢幕顯示的過程中,有個不可或缺的角色——中央處理器,也就是 CPU,今天我們就來淺聊一下電腦的大腦,中央處理器(CPU, Central Processing Unit)。
Thumbnail
中央處理器、記憶體、顯示卡、固態硬碟,電腦四大標準配備名稱,讓你在選購筆電時,內心慌亂了嗎?CPU、RAM、GPU、SSD,其承載的任務是什麼?三種不同使用者場景,輕文書/追劇類、2D繪圖/數據分析/Podcast類、3D繪圖/剪輯/遊戲玩家類,對配備的要求並不同。附全息圖、動畫、單張懶人包。
Thumbnail
中央處理器、記憶體、顯示卡、固態硬碟,電腦四大標準配備名稱,讓你在選購筆電時,內心慌亂了嗎?CPU、RAM、GPU、SSD,其承載的任務是什麼?三種不同使用者場景,輕文書/追劇類、2D繪圖/數據分析/Podcast類、3D繪圖/剪輯/遊戲玩家類,對配備的要求並不同。附全息圖、動畫、單張懶人包。
Thumbnail
電腦的功能十分多元,不管是文書處理還是工作需求,又或是打遊戲等等都是電腦的運用範圍。今天我想先來介紹電腦的各式零件,讓你對電腦有初步的認知。 《CPU&GPU》 《MOTHERBOARD》 《STORAGE》 《PSU》 《CASE&COOLING》
Thumbnail
電腦的功能十分多元,不管是文書處理還是工作需求,又或是打遊戲等等都是電腦的運用範圍。今天我想先來介紹電腦的各式零件,讓你對電腦有初步的認知。 《CPU&GPU》 《MOTHERBOARD》 《STORAGE》 《PSU》 《CASE&COOLING》
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News