嵌入式系統開發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
留言分享你的想法!
avatar-img
Will 進步本
5會員
240內容數
歡迎來到「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
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
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》
Thumbnail
電腦是我們日常生活中不可或缺的一部份,但你有曾經了解過它裡面的構造嗎?如果沒有那這篇文章將帶你認識你所不知道的電腦
Thumbnail
電腦是我們日常生活中不可或缺的一部份,但你有曾經了解過它裡面的構造嗎?如果沒有那這篇文章將帶你認識你所不知道的電腦
Thumbnail
早年科技公司與工廠成立,後來台灣被俗稱「科技島」。不論企業組織亦或工廠皆需要管理人才,這點不難從大專院校觀察到,90%以上的..........
Thumbnail
早年科技公司與工廠成立,後來台灣被俗稱「科技島」。不論企業組織亦或工廠皆需要管理人才,這點不難從大專院校觀察到,90%以上的..........
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News