有鑒於FPGA設計人員在越來越多的設計中嵌入軟微處理器,FPGA供應商和協力智財權(IP)供應商也因此開發出許多以各種方式授權的軟微處理器,包括最新的開放原始碼模式。
由於設計人員一般需要花費大量時間為其軟微處理器開發軟體程式碼,因此瞭解相關授權模式的涵義對設計人員而言至關重要。
選擇授權模式
一旦決定採用軟微處理器,設計人員就必須確認可最佳滿足需求的授權模式。針對軟微處理器和MCU而言,FPGA供應商一般採用以下四種主要授權模式。
一般協力IP供應商最常使用的是付費IP模式。雖然協力IP供應商採用的方式並不列入本文的討論範圍,但它們大多與FPGA供應商採用的方法類似。
模式1:付費IP
提供FPGA軟微處理器的傳統模式即為付費IP,而該模式會帶來以下四項挑戰:
‧對於使用該微處理器開發工具和其產生的HDL程式碼必須付費才能享有使用權。若要繼續使用這些工具進行如軟體維護等作業,一般需繳交年費。
‧微處理器的HDL描述一般都是加密的,因此會限制設計人員最佳化建置的能力,且必須仰賴FPGA供應商進行除錯。
‧支援該微處理器的開發資源僅限於FPGA供應商所選用的。資源的優先順序是由供應商而非設計人員所定義。
‧付費IP授權條例一般對於供應商的FPGA元件建置具有限制。隨著設計人員已為微處理器開發越來越多程式碼,轉向與另一個FPGA供應商合作也變得越來越困難,FPGA供應商對此都心知肚明。
‧設計人員無法轉換供應商的事實雖然消除了供應商間的競爭壓力,卻也導致無法有效吸引客戶且限制了未來在價格上的讓步。
模式2:免費參考設計
免費參考設計方式解決了與付費IP相關的兩項挑戰。不用預先付費絕對是個誘人的因素,且這些總是以原始程式碼格式提供的設計也給予設計人員切入設計架構的機會。
然而,FPGA供應商對該設計的所有權也消弭了為設計開發額外程式碼的動機。參考設計的建置最終也將與付費IP一樣受限於供應商的元件架構。
模式3:加密IP
新穎的加密IP方式試圖解決付費IP方式帶來的若干挑戰。在加密模式中,IP被整合進採用FPGA設計工具的設計以及所產生的加密位元串流內。
為使用該位元串流,必須以高於標準FPGA的價格購買預編程該密鑰的特殊FPGA。此方法不但免除了預付費用,也使得標準微處理器架構可在FPGA中使用。
標準架構的使用讓程式碼得以建置在獨立晶片和ASIC等其他非FPGA的解決方案中。然而,設計人員卻發現他們又再度陷入了使用單一供應商元件的困局。該方法依然無法解決缺乏程式碼能見度以及供應商主導開發優先順序的問題。
模式4:開放原始碼
開放原始碼方法可望解決其他授權方式帶來的棘手問題。它為程式碼提供能見度、允許設計人員掌握設計功能以達到最佳化利用的目的。
此外,它也為設計人員提供了修正建置程式碼的靈活性,而享有IP權益亦能鼓勵使用者為廣大開發社群提供加強的設計。
開放原始碼是免費的,另外,也許算是最重要的,它所提供的便利性允許設計人員將其建置在任何FPGA架構或如ASIC的非FPGA架構建置中。
