FPGA的軟核、硬核以及固核的概念

原文鏈接:https://www.cnblogs.com/lifan3a/articles/4229952.html

核(CORE)是一個數字系統的核心,負責整個系統的內存調度,中斷管理,算術邏輯運算等,如同整個系統的大腦,是由物理電氣實現邏輯功能的關鍵。儘管複雜,但不可忽略的是,核同其他數字器件一樣,也是一個典型的邏輯器件(準確的說是時序邏輯),也由邏輯門、觸發器構成,那麼也就可以由硬件描述語言來描述。
  既然核可以由HDL來描述,那麼對於每一個特定功能和性能(即邏輯的時序和功能特定)的核而言,必有一組HDL描述等價於它,而具體的器件信號、封裝等,只不過是這組HDL依賴具體工藝的一種物理實現罷了。因此,我們應該認識到,所謂核,本質上是一種知識產權,是一種特定的可描述的邏輯結構。
  現在的FPGA設計,規模巨大而且功能複雜,因此設計的每一個部分都從頭開始是不切實際的。一種解決的辦法是:對於較爲通用的部分可以重用現有的功能模塊,而把主要的時間和資源用在設計中的那些全新的、獨特的部分。這就像是你在開發應用程序的時候就不用直接去寫驅動物理硬件的代碼,而是直接調用Windows提供的API就行了。 這種功能模塊我們稱作IP核(Intelligent Property) 。
  IP核是具有知識產權核的集成電路芯核總稱,是經過反覆驗證過的、具有特定功能的宏模塊,與芯片製造工藝無關,可以移植到不同的半導體工藝中。到了SOC 階段,IP 核設計已成爲ASIC 電路設計公司和FPGA 提供商的重要任務,也是其實力體現。對於FPGA 開發軟件,其提供的IP 核越豐富,用戶的設計就越方便,其市場佔用率就越高。目前,IP 核已經變成系統設計的基本單元,並作爲獨立設計成果被交換、轉讓和銷售。
  從IP核的提供方式上,通常將其分爲
軟核、固核和硬核
這3類。從完成IP核所花費的成本來講,硬核代價最大; 從使用靈活性來講,軟核的可複用使用性最高。與軟覈實現方式相比,硬核可以把功耗降低5~10 倍, 節約將近90% 的邏輯資源。
  軟核(Soft IP Core) : 軟核在EDA 設計領域指的是綜合之前的寄存器傳輸級(RTL) 模型;具體在FPGA 設計中指的是對電路的硬件語言描述,包括邏輯描述、網表和幫助文檔等。軟核只經過功能仿真,需要經過綜合以及佈局佈線才能使用。其優點是靈活性高、可移植性強,允許用戶自配置;缺點是對模塊的預測性較低,在後續設計中存在發生錯誤的可能性,有一定的設計風險。軟核是IP 核應用最廣泛的形式。
  固核(Firm IP Core) :固核在EDA 設計領域指的是帶有平面規劃信息的網表;具體在FPGA 設計中可以看做帶有佈局規劃的軟核,通常以RTL 代碼和對應具體工藝網表的混合形式提供。將RTL 描述結合具體標準單元庫進行綜合優化設計,形成門級網表,再通過佈局佈線工具即可使用。和軟核相比,固核的設計靈活性稍差,但在可靠性上有較大提高。 目前,固核也是IP 核的主流形式之一。
  硬核 (Hard IP Core) :硬核在EDA 設計領域指經過驗證的設計版圖;具體在FPGA 設計中指佈局和工藝固定、經過前端和後端驗證的設計,設計人員不能對其修改。不能修改的原因有兩個:首先是系統設計對各個模塊的時序要求很嚴格,不允許打亂已有的物理版圖;其次是保護知識產權的要求,不允許設計人員對其有任何改動。IP 硬核的不許修改特點使其複用有一定的困難,因此只能用於某些特定應用,使用範圍較窄。
  硬核是固化在FPGA內部的特殊硬件電路,簡單理解的話,可以把硬核看成是嵌入在FPGA內部的ASIC。如嵌入式RAM,嵌入式乘法器,PLL等。
  軟核是用FPGA的通用邏輯資源(LUT+FF)搭建而成的。從用戶使用角度來看,二者沒有什麼開發難度上的區別;性能上,一般硬核速度比軟核高,整體功耗也要低一些。

轉自:https://www.cnblogs.com/lifan3a/articles/4229952.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章