Page 45 - MCU大廠分享10億級出貨秘訣
P. 45
DESIGN CORNER
設計新技術
掌握RISC-V程式碼庫
Rafael Taubinger,IAR System技術行銷
嵌入式產業面臨日趨複雜的挑戰,必須以更快的速度因應軟體錯誤衍生的風險,這些錯誤除了影響產 品品質,還將導致安全問題。RISC-V程式碼庫尤其如此,程式碼經常會重複使用或從其他CPU架構移 植,而且預期得到相同的運作效能,但大多數開發者只是開始使用RISC-V架構、新指令集,以及少數的 延伸架構(extension)。
談到掌控RISC-V程式碼庫, 實際上涉及兩個層面。第一是重複 使用程式碼庫,可以沿用在未來的 專案。第二點是不良的程式碼品質 實際上是一項廣泛蔓延的問題, 許多證據顯示不良的編碼方式將 衍生許多漏洞。顯然每個開發者 與企業都需要改進程式碼品質,讓 軟體經得起時間的考驗,意謂軟
體沒有缺陷,抑或盡可能接近無缺 陷的狀態。
Boehm提出的COCOMO結構 成本模型如圖1所示,此模型預測 在重複使用程式碼所需的修改作業 量,會顯著影響撰寫程式碼的相對 成本。X軸是要重複使用程式碼進
行修改的比率,而Y軸則代表撰寫 全新程式碼的比率。請注意三個 程式碼樣本其中的二個,大部分都 不需要修改,重複使用程式碼的比 率高達50%。重點在於,如果真的 想重複使用程式碼,條件是必須具 備高品質,而且還得有妥善的設計 才能壓低重複使用的成本。
程式碼品質至關重要,其理由 有幾項:第一,依照開發組織成熟 程度的不同,工作時間可能最多有 80%的比重會花在除錯作業上。如 果能在釋出正式版之前快速隔離各 項缺陷,缺陷注入比率就能壓低, 意謂能更快達到組織制定的品質 標準。不過這也代表程式碼殘存的 bug會比較少,比較適合拿來重複 使用,日後發現先前未找到bug的 機率會比較小。高品質的程式碼更 容易維護,因為缺陷數量比較少, 如果依循良好的軟體工程原則便 更容易延伸,之後推動的後續專案 也能更快進行。另外如果有需要,
重複使用程式碼
著重程式碼品質
41
圖1:Boehm的COCOMO非線性重複使用方法。
2022年6月 | www.eettaiwan.com