July 24, 2018
技術論壇 | 以小制大,微控制器時代不可忽視的安全層面

在電子產品益加訴求「輕薄精巧、智慧多功能」的今日,產品研發製造商為達到創新、省電、設計等要求,在重新改造舊有技術的電子產品並進行去蕪存菁的工藝流程後,即常可見「微控制器 (MCU)」 的身影。在此趨勢下,「韌體 (Firmware)」在電子產品的運用日益重要,然而我們還是無法規避「安全」這件事。 台灣製造業長期以來在電子產品的開發有著深厚的經驗,故能夠機動因應時代潮流,駕輕就熟地研製出許多高規格產品,以符合中高端市場的需求。 不論是將很多的電路設計合併到一顆積體電路 (IC) 中,或是透過韌體 (Firmware) 控制取代龐大的邏輯電路,皆能使得現在的電子產品,變得更為精緻小巧、省電極佳,或具有創新性等優點。許多製造商在將舊有技術的電子產品重新去蕪存菁的設計後,可見微控制器 (MCU) 正大量現身在各式電子產品上。我們也由此可知今日韌體在電子科技產業上的運用日益重要。 具有前置把關意味的安全功能 當很多電子產品的功能都需要仰賴韌體設計實現時,與安全相關的保護功能自然不容忽視。我們就以越來越多廠商使用在電子產品上的無刷直流馬達 (後簡稱:BLDC) 為例,說明「軟體評估  (Software Evaluation)」與「安全功能(Safety Function)」之間的關係: 《圖一》 由於必須透過控制器才能驅動的 BLDC,是屬於電子保護式的馬達 (Electronically Protected Motors) 其中一種,在國際安全規範是需要經過 UL 1004-1 及 1004-7 的審核,該標準即針對產品的安全功能有以下幾項安全要求: Locked Rotor Protection Running Heating Loss of Phase 而為滿足標準的要求,一般在馬達控制器的設計時,即會將上述的安全功能一併考量進去。根據《圖一》的控制器示意圖,不難發現微控制器除了執行驅動馬達的工作外,也扮演安全功能的重要元件。 在馬達的安規標準中,對於控制器的要求,往往會直接引用其它的標準,如 UL 60730-1,以確保是否有掌握住茲事體大的安全功能。而其中引用的方式,可以僅針對安全功能性評估,當然也可以直接就對整個控制器進行審核。不過無論引用何種方式,只要保護的過程中,是需要透過微控制器的韌體達成安全性功能,即必須額外進行「軟體評估」。 不得忽略的軟體安全 由上所述,我們簡單了解軟體評估的引用關係,亦大致清楚軟體評估如何與安全功能息息相關,這也是為何我們必須抓住以下的軟體安全評估兩大重點: 終端產品 (End-Products) 的安全功能設計 確認控制器在接受到輸入訊號,能夠與終端產品的訊號之間具正確性與可靠度。此部份確認的重點為,當單一元件失效 (Single Fault) 後,而產品仍在持續運轉的情況下,安全功能必須能被正確地執行。 微控制器的自我檢測功能 (MCU Self-Check... read more