<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ASIC和FPGA的RTL編碼樣式

jf_78858299 ? 來源:OpenFPGA ? 作者:碎碎思 ? 2023-03-31 14:45 ? 次閱讀

SystemVerilog的RTL綜合子集

SystemVerilog既是一種硬件設計語言,也是一種硬件驗證語言。IEEE SystemVerilog官方標準沒有區分這兩個目標,也沒有指定完整SystemVerilog語言的可綜合子集。相反,IEEE讓提供RTL綜合編譯器的公司來定義特定產品支持哪些SystemVerilog語言結構。

由于缺乏SystemVerilog綜合標準,每個綜合編譯器可能支持SystemVerilog標準的不同子集。這意味著設計工程師在編寫用于綜合的SV模型時需要小心。必須參考要使用的綜合編譯器的文檔,并遵循為一個綜合編譯器編寫的編譯器模型的語言子集,使用不同的綜合編譯器可能需要根據綜合器特性進行修改。

接下來看下今天的主角-FPGA建模概念

FPGA的建模

本文的目的是了解SystemVerilog建模風格如何受到ASIC和FPGA技術的影響。有關ASIC和FPGA實現的詳細信息以及這些技術的適當應用留給其他工程書籍討論。然而,為了實現RTL建模最佳實踐的目標,理解ASIC和FPGA的基本概念非常重要。

標準單元ASIC

ASIC是專用集成電路的縮寫。與可執行多種功能(如微處理器)的通用IC不同,ASIC設計用于執行特定任務(因此得名為“application specific”)。控制器、音頻格式轉換和視頻處理是適用于ASIC的示例。ASIC還可以包括一個或多個嵌入式處理器,以便執行特定任務同時可以進行通用操作。帶有嵌入式處理器的ASIC通常被稱為片上系統(SoC,主流設計)。

提供ASIC的公司稱為ASIC供應商(ASIC vendors)。其中一些供應商提供ASIC技術并進行ICs實際制造和生產的一部分。其他ASIC供應商為ASIC提供技術,但將制造和生產留給其他公司。

大多數ASIC技術使用標準單元(standard cells),這些單元是預先設計的邏輯塊,由一到幾個邏輯門組成。ASIC單元庫可能有幾百個標準單元,如AND、NAND、OR、NOR、Exclusive-OR, Exclusive-NOR,2-to-l MUX- 2選1 MUX、D型觸發器、鎖存器等。每個單元都有明確的電氣特性,如傳播延遲、建立和保持時間以及寄生電容。

設計ASIC涉及從庫中選擇合適的單元,并將它們連接在一起以執行所需的功能。在整個過程中使用EDA軟件工具進行設計。ASIC設計的典型流程如圖1-5所示:

圖片

圖1-5:典型的基于RTL的ASIC設計流程圖1-5所示的步驟是:

  • 1、當然,第一步是說明設計的意圖。
  • 2、所需的功能在抽象的RTL建模級別進行建模。在這個階段,重點是功能,而不是物理實現。
  • 3、仿真并驗證功能。
  • 4、綜合,將RTL功能映射到適合目標ASIC類型的標準單元。綜合的輸出稱為門級網表(gate-level netlist),該綜合過程在后面有更詳細的描述。
  • 5、仿真或邏輯等價檢查器(Logic Equivalence Checkers)(形式驗證的一種形式)用于驗證門級實現在功能上等同于RTL功能。
  • 6、時鐘樹合成用于在整個設計中均勻分布時鐘驅動。通常,掃描鏈插入到工具中以增加設計的可測試性。
  • 7、Place and route(放置和布線)軟件計算如何在實際硅中布局,以及如何布線。place and route軟件的輸出是一個圖形數據系統文件(GDSII,發音為gee dee ess two)。GDSII是一種二進制格式,其中包含有關實際在硅中構建IC所需的幾何形狀(多邊形polygons)和其他數據的信息。
  • 8、進行設計規則檢查(DRC),以確保ASIC制造廠定義的所有規則均得到遵守,如加載門扇出,
  • 9、在考慮互連網絡和時鐘樹傾斜的延遲效應后,執行靜態時序分析(STA)以確保滿足建立/保持時間。
  • 10、最后一步是將GDSII文件和其他數據發送給制造廠,用于制造ASIC。將這些文件傳遞給制造廠被稱為“taping out”ASIC,因為在ASIC設計的早期,是使用磁帶將這些文件發送給鑄造廠:

在本文中,ASIC設計流程中的這些步驟已被概括。有許多細節被遺漏了,并不是所有的公司都遵循這個確切的流程。有時,步驟9(靜態時序分析)在設計流程的早期執行,并且可能在流程中執行多次。

本文的重點是用于仿真和合成的RTL建模,圖1-5中的步驟2和步驟3。此級別的建模處于設計過程的前端。時鐘樹、掃描鏈和時序分析等設計細節將在設計流程的后面介紹,不在本文的范圍之內。在RTL級別,設計工程師專注于實現所需的功能;而不是實施細節。然而,理解在建模、仿真和合成的前端步驟之后會發生什么仍然很重要。RTL編碼風格會影響設計流程中后期使用的工具的有效性。

還有其他類型的ASIC技術不使用標準單元,如全定制、門陣列和結構化ASIC。SystemVerilog可以以類似的方式用于設計這些其他類型的ASIC,盡管所涉及的軟件工具可能有所不同。所使用的綜合編譯器——以及這些編譯器支持的SystemVerilog語言結構——可能與這些其他技術非常不同。

FPGA

FPGA是現場可編程門陣列(Field Programmable Gate Array)的縮寫。FPGA是一種集成電路,包含固定數量的邏輯塊,可在IC制造后進行重新配置(而ASIC的內容和布局必須在制造前確定)。從歷史上看,FPGA不能包含ASIC那么多的功能,只能以較慢的時鐘速度運行,這是RTL級設計時的重要考慮因素。FPGA技術的最新進展顯著縮小了FPGA和ASIC之間的差異。通常,FPGA可用于實現與ASIC相同的功能。

FPGA包含一系列稱為可配置邏輯塊(CLB)的小型邏輯元件。一些FPGA供應商將這些塊稱為邏輯陣列塊(LABs)。典型的CLB可能包含一個或多個查找表(LUT)、一些多路復用器(MUX)和存儲元件(如D型觸發器)。大多數FPGA中的查找表都是用邏輯運算(如AND、OR和XOR)編程的小型RAM。從LUT中選擇所需的操作允許以多種方式使用CLB,從簡單的AND或XOR門到更復雜的組合功能。某些FPGA中的CLB還可能具有其他功能,例如加法器。MUX允許組合結果直接從CLB輸出(異步輸出),或在存儲單元中輸出(同步輸出)。

FPGA使用包含數百或數千個CLB的陣列進行制造,以及可“編程”到所需CLB配置的可配置互連-FPGA還包含I/O焊盤,可配置為連接到CLB陣列的一列或一行。

復雜FPGA的典型設計流程如圖1-6所示。

圖片

圖1-6:典型的基于RTL的FPGA設計FPGA的前端設計流程類似于ASIC,但后端不同。FPGA的后端部分與ASIC的主要區別在于FPGA的布局和布線。對于ASIC,place and route軟件決定IC的制造方式。對于FPGA,綜合和布局布線軟件詳細說明了如何對FPGA進行編程。本文重點介紹前端步驟2和3,RTL建模和仿真,其中ASIC和FPGA設計之間幾乎沒有區別。

ASIC和FPGA的RTL編碼樣式

理想情況下,相同的RTL代碼可以同時用于ASIC或FPGA。在“RTL級別”工作時,工程重點是設計和驗證功能,而不必關心實施細節。綜合編譯器的作用是將RTL功能映射到特定的ASIC或FPGA技術。

對于ASIC和FPGA來說,大多數(但不是全部)RTL代碼都能很好地綜合。然而,這種普遍性也有例外。RTL模型的一些方面需要考慮設計是在ASIC還是FPGA中進行綜合,這些方面包括:

  • 復位。大多數ASIC單元庫包括同步和異步復位觸發器。設計工程師可以使用被認為最適合設計的復位類型來編寫RTL模型,一些FPGA沒有那么靈活,只有一種復位類型的觸發器(通常是同步的)。雖然綜合編譯器可以將帶有異步復位的RTL模型映射到門級同步復位中,或者反之亦然,但需要額外的邏輯門。許多FPGA還支持ASIC不具備的全局復位功能和預置上電上電觸發器的狀態。后面會更詳細地討論復位建模。
  • 向量/矢量大小。ASIC在最大矢量寬度和矢量運算方面基本不受限制。在大向量上進行復雜操作需要大量邏輯門,但大多數ASIC中使用的標準單元架構可以適應這些操作。FPGA在這方面比較嚴格。由于可用CLB的數量或CLB之間互連路由的復雜性,預定義的CLB數量及其在FPGA中的位置可能會限制在非常大的向量上實現復雜操作的能力。ASIC和FPGA之間的這種差異意味著,即使在RTL抽象級別,設計工程師也必須牢記設計的功能會受到設備的限制。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • IEEE
    +關注

    關注

    7

    文章

    349

    瀏覽量

    46398
  • asic
    +關注

    關注

    34

    文章

    1160

    瀏覽量

    119321
  • 硬件
    +關注

    關注

    11

    文章

    2929

    瀏覽量

    64930
  • Verilog
    +關注

    關注

    28

    文章

    1327

    瀏覽量

    109397
  • System
    +關注

    關注

    0

    文章

    162

    瀏覽量

    36583
收藏 人收藏

    評論

    相關推薦

    ASICFPGA的優勢與劣勢

    ASICFPGA具有不同的價值主張,在作出選擇前必須仔細評估。兩種種技術對比。這里介紹了ASICFPGA 的優勢與劣勢。
    發表于 03-31 17:30 ?5415次閱讀
    <b class='flag-5'>ASIC</b>和<b class='flag-5'>FPGA</b>的優勢與劣勢

    典型的基于RTLASIC設計流程分析

    FPGA的前端設計流程類似于ASIC,但后端不同。FPGA的后端部分與ASIC的主要區別在于FPGA的布局和布線。對于
    的頭像 發表于 06-20 16:24 ?4799次閱讀
    典型的基于<b class='flag-5'>RTL</b>的<b class='flag-5'>ASIC</b>設計流程分析

    到底什么是ASICFPGA?

    Programmable Gate Array,現場可編程門陣列。 FPGA這些年在行業里很火,勢頭比ASIC還猛,甚至被人稱為“萬能芯片”。 其實,簡單來說,FPGA就是可以重構的芯片。它可以根據
    發表于 01-23 19:08

    FPGA_ASIC高性能數字系統設計

    FPGA/ASIC高性能數字系統設計 狀態機與數據路徑 1 有限狀態機 1.1 基本概念 1.2 狀態機分類 1.3 狀態機描述方法 1.4 狀態機的編碼風格 1.5 可綜合的fsm編碼
    發表于 03-02 09:35

    cogoask講解fpgaASIC是什么意思

    cogoask講解fpgaASIC是什么意思FPGA入門知識,什么是FPGA?FPGA是英文Field Programmable Gat
    發表于 02-27 17:46

    ASIC設計-FPGA原型驗證

    1ASIC 驗證技術.................................................11.1 ASIC 設計流程
    發表于 09-18 15:26

    怎么利用Synphony HLS為ASICFPGA架構生成最優化RTL代碼?

    相比,能夠為通信和多媒體應用提供高達10倍速的更高的設計和驗證能力。Synphony HLS為ASICFPGA的應用、架構和快速原型生成最優化的RTL。Synphony HLS解決方案架構圖
    發表于 08-13 08:21

    ASICFPGA有什么區別

      1、概念區別:  ASIC(專用集成電路)是一種在設計時就考慮了設計用途的IC?! ?b class='flag-5'>FPGA(現場可編程門陣列)也是一種IC。顧名思義,只要有合適的工具和適當的專業基礎,工程師就可以對FPGA
    發表于 12-01 17:41

    FPGAASIC,異曲同工還是南轅北轍?

    問題,畢竟ASIC設計中可以自由配置scratchpad的大小?! 【C上所述,FPGAASIC在面向AI的專用設計中,雖然表面都是寫RTL,但是在具體架構和思想上已經有了較大的差異
    發表于 03-28 11:14

    ASIC設計轉FPGA時的注意事項

    FPGA原型驗證和其他驗證方法是不同的,任何一種其他驗證方法都是ASIC驗證中的一個環節,而FPGA驗證卻是一個過程。由于FPGAASIC
    發表于 09-10 17:22 ?999次閱讀

    FPGA對比 ASIC你看好誰?

    FPGA vs. ASIC 你看好誰?
    的頭像 發表于 01-15 16:10 ?4153次閱讀

    H.265/HEVC超低延遲編碼/解碼FPGA/ASIC IP

    H.265/HEVC低延遲編碼/解碼FPGA/ASIC IP, 整體延遲30ms以內,恒速編碼不掉幀
    發表于 02-24 15:01 ?852次閱讀

    FPGA、ASIC技術對比

    FPGA要取代ASIC了,這是FPGA廠商喊了十多年的口號??墒?,FPGA地盤占了不少,ASIC也依舊玩得愉快。那么,這兩位仁兄到底有啥不一
    的頭像 發表于 03-31 14:41 ?1248次閱讀
    <b class='flag-5'>FPGA</b>、<b class='flag-5'>ASIC</b>技術對比

    什么是FPGA原型驗證?如何用FPGAASIC進行原型驗證

    FPGA原型設計是一種成熟的技術,用于通過將RTL移植到現場可編程門陣列(FPGA)來驗證專門應用的集成電路(ASIC),專用標準產品(ASSP)和片上系統(SoC)的功能和性能。
    發表于 04-10 09:23 ?1017次閱讀

    SRRC證書樣式和代碼編碼規則即將施行

    為優化無線電發射設備型號核準證書樣式和代碼編碼規則,根據《無線電發射設備管理規定》,近日,工業和信息化部修訂發布了《無線電發射設備型號核準證書樣式》和《無線電發射設備型號核準代碼編碼
    的頭像 發表于 10-14 16:50 ?395次閱讀
    SRRC證書<b class='flag-5'>樣式</b>和代碼<b class='flag-5'>編碼</b>規則即將施行
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>