0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

邏輯綜合在整個IC設(shè)計流程RTL2GDS中的位置

sanyue7758 ? 來源:處芯積律 ? 2023-03-27 10:51 ? 次閱讀

根據(jù)摩爾定律的發(fā)展,晶體管的Poly的最小柵極長度已經(jīng)到達(dá)了1nm甚至更小,集成電路的規(guī)模越來越大,集成度越來越高。因而,設(shè)計者已經(jīng)無法像最原始的手動將HDL(Verilog/VHDL)等描述語言轉(zhuǎn)化為電路圖并描述元件間互聯(lián)來產(chǎn)生一個門級網(wǎng)表。所以各種用于ASIC設(shè)計的EDA工具(DC,Genus等)也應(yīng)運而生。

04417bba-cb29-11ed-bfe3-dac502259ad0.png

圖1 邏輯綜合在整個IC設(shè)計流程RTL2GDS之間的位置

在整個ASIC設(shè)計的流程中,需要前端設(shè)計工程師完成可實現(xiàn)功能的RTL代碼,最后到用于流片的GDSII則是包含芯片制造廠家的工藝信息,這中間邏輯綜合起到了很重要的橋接作用。綜合工具會根據(jù)我們使用的芯片廠商提供的標(biāo)準(zhǔn)單元庫文件的信息,將HDL的RTL代碼轉(zhuǎn)化為帶工藝信息的門級電路網(wǎng)表(netlist),進行formal形式驗證,確保綜合過后與RTL階段功能邏輯一致后,綜合階段時序沒風(fēng)險后再交付給后端工程師來進行布局布線。

小編以S家的DC為例子分享一些在設(shè)計過程中需要進行的時鐘結(jié)構(gòu)分析(以經(jīng)典的reg2reg為例子),約束設(shè)置,邏輯綜合。

首先作為一個優(yōu)秀的邏輯綜合工程師,SDC約束/UPF/CPF約束是少不了寫的,尤其是對一些端口和Critical path,一個“干凈”的網(wǎng)表是后端的完美開局!約束包括環(huán)境約束和設(shè)計約束,設(shè)計約束又分 為時序約束和設(shè)計規(guī)則約束。整個綜合的過程,最關(guān)鍵的部分就是制定一個正確的約束,特別是時序約束。約束定義的好壞影響到綜合結(jié)果的優(yōu)劣。

045b96c6-cb29-11ed-bfe3-dac502259ad0.png

圖2 Reg2Reg的經(jīng)典STA路徑

我們以對Clock的約束為例子, Clock latency通常指的就是從Clock pin(source)或IO pad中傳遞到sink點CP端的延遲,在綜合階段由于是未傳播的,因此Skew的值通常是前后兩級寄存器對應(yīng)的source到CP端的Cell Delay或單純Net delay計算的差值,并包含在uncertainty內(nèi)。

Clock_transiton的值要根據(jù)工藝來進行調(diào)整,通常在28nm以下的工藝,Clock_transition的值要取在對應(yīng)時鐘周期的十分之一內(nèi),具體情況要根據(jù)lib內(nèi)的查找表來定。下面簡單寫下在SDC中對input clock—i_clk時需要注意的約束

046fe928-cb29-11ed-bfe3-dac502259ad0.png

同時,異步復(fù)位信號造成網(wǎng)表內(nèi)的部分寄存器的Q—>rstn端發(fā)生setup Violation也是一個邏輯綜合工程師會經(jīng)常遇到的問題,這種異步的復(fù)位端時序檢查我們需要添加MutiCyle來進行檢查上的放松。MutiCyle的放松約束包括:同頻時鐘,快到慢,慢到快等等,不同情況MutiCyle的約束書寫也不盡相同:

04831cfa-cb29-11ed-bfe3-dac502259ad0.png

介紹完綜合工程師需要掌握的部分重要約束的書寫,ICer們再跟著小編來看看邏輯綜合的每個階段,到底在干什么吧!

電路的綜合一般分為三個步驟,分別是轉(zhuǎn)化(Translation)、邏輯優(yōu)化(Logic Optimizaion)映射(Mapping)。

轉(zhuǎn)化(Translation):把描述RTL級的HDL語言(verilog),在約束下轉(zhuǎn)化成綜合工具內(nèi)部的統(tǒng)一用門級描述的電路(Generic Boolean Gates),即HDL—>netlist

邏輯優(yōu)化(Logic Optimization):把統(tǒng)一用門級描述的電路進行優(yōu)化,改善路徑和門。

映射(Mapping):把優(yōu)化了的統(tǒng)一門級描述。以DC為例,DC使用工藝庫(lib庫)將電路映射出來,得到.ddc文件,該文件包含如映射的門電路信息與網(wǎng)表,.v格式的網(wǎng)表,延時信息(sdf)【sdf文件主要包括cell, net delay信息和cell的hold,setup,recover,removel等邊沿應(yīng)該滿足的要求等信息】,工作約束(sdc)【包含clk的信息,以及驅(qū)動,輸入輸出延時,最大最小延遲約束,特殊路徑等】等信息。.ddc中包含的網(wǎng)表是實際意義上的綜合過后的網(wǎng)表文件(類似PT中的session,innovus內(nèi)的enc),.v的網(wǎng)表是用于進行后仿的文件。

0495be28-cb29-11ed-bfe3-dac502259ad0.png

在上面的過程中,約束對于綜合而言非常重要,如果不施加約束,綜合工具會產(chǎn)生非優(yōu)化(no-opt)的網(wǎng)表,無法滿足要求。綜合是約束驅(qū)動(Constraint driven)的,給定的約束是綜合的目標(biāo),約束一般是在對整個系統(tǒng)進行時序分析得到的,綜合工具會對電路進行優(yōu)化以滿足約束的要求。綜合以時序路徑為基礎(chǔ)進行優(yōu)化。

綜合的具體過程

1. 準(zhǔn)備RTL代碼,經(jīng)過前端仿真后才能用于綜合;

2. 定義庫,設(shè)定好所需要用到的綜合庫等多種庫;

04be0586-cb29-11ed-bfe3-dac502259ad0.png

3. 讀入設(shè)計,綜合工具讀入RTL代碼并進行分析;

04d11cfc-cb29-11ed-bfe3-dac502259ad0.png

4. 定義設(shè)計環(huán)境,設(shè)定設(shè)計的工作環(huán)境、端口的驅(qū)動和負(fù)載、線負(fù)載模型等;

5. 設(shè)置設(shè)計約束(關(guān)鍵),主要是定義時鐘和I/O的約束,約束要適當(dāng),只有正確的約束才能得到正確的結(jié)果;

04e848dc-cb29-11ed-bfe3-dac502259ad0.png

6. 設(shè)置綜合策略,top-down和bottom-up兩種策略(就是文件目錄順序不一樣),根據(jù)需求進行選擇;

7. 優(yōu)化設(shè)計,綜合工具可以根據(jù)約束對電路進行優(yōu)化,也可認(rèn)為加入命令改變優(yōu)化方法;

0661b9a0-cb29-11ed-bfe3-dac502259ad0.png

8. 分析和解決設(shè)計的問題,在設(shè)計綜合后,根據(jù)報告分析設(shè)計中出現(xiàn)的問題,并修訂問題;

9. 保存設(shè)計數(shù)據(jù),綜合結(jié)束后,保存各種數(shù)據(jù)以供后續(xù)布局布線使用(需先通過formal驗證)

06747626-cb29-11ed-bfe3-dac502259ad0.png

好了,今天這期的邏輯綜合內(nèi)容小編就介紹到這里了,下期小編將會以一個帶載入UPF流程的Genus的SYN Flow為切入點,進行實戰(zhàn)中的綜合Flow的解析!





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • IC設(shè)計
    +關(guān)注

    關(guān)注

    38

    文章

    1297

    瀏覽量

    104048
  • EDA工具
    +關(guān)注

    關(guān)注

    4

    文章

    268

    瀏覽量

    31817
  • HDL
    HDL
    +關(guān)注

    關(guān)注

    8

    文章

    327

    瀏覽量

    47407
  • ASIC技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

    7594
  • UPF
    UPF
    +關(guān)注

    關(guān)注

    0

    文章

    50

    瀏覽量

    13531

原文標(biāo)題:搞芯片,不懂邏輯綜合是啥?

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    IC設(shè)計流程簡介

    單元,ATPG,以及邊界掃描電路BoundScan,測試Memory的BIST。流程:【邏輯設(shè)計--子功能分解--詳細(xì)時序框圖--分塊邏輯仿真--電路設(shè)計(算法的行為級,RTL級描述)
    發(fā)表于 12-19 16:20

    IC設(shè)計流程

    GDSⅡ的設(shè)計流程: 這個可以理解成半定制的設(shè)計流程,一般用來設(shè)計數(shù)字電路。 整個流程如下(左側(cè)為流程
    發(fā)表于 01-11 13:49

    淺談IC設(shè)計邏輯綜合

    淺談IC設(shè)計邏輯綜合引言在IC設(shè)計流程,
    發(fā)表于 05-16 20:02

    IC設(shè)計流程介紹

    上)對綜合后的網(wǎng)表進行驗證。常用的就是等價性檢查方法,以功能驗證后的HDL設(shè)計為參考,對比綜合后的網(wǎng)表功能,他們是否在功能上存在等價性。這樣做是為了保證在邏輯綜合過程
    發(fā)表于 08-13 17:05

    IC設(shè)計流程介紹

     1.1 從RTLGDSⅡ的設(shè)計流程: 這個可以理解成半定制的設(shè)計流程,一般用來設(shè)計數(shù)字電路。整個流程
    發(fā)表于 08-16 09:14

    IC驗證在現(xiàn)代IC設(shè)計流程位置和作用

    現(xiàn)代IC(Integrated circuit,集成電路)前端的設(shè)計流程。通常的IC設(shè)計是從一份需求說明書開始的,這份需求說明書一般來自于產(chǎn)品經(jīng)理(有些公司可能沒有單獨的職位,而是由其他職位兼任
    發(fā)表于 12-01 14:39

    基于google skywater 130nm opensource PDK的快捷方法

    openLANE的RTL2GDS fow,基于google skywater 130nm opensource PDK
    發(fā)表于 12-21 06:58

    請問在整個設(shè)計流程如何控制IC的功耗?

    請問在整個設(shè)計流程如何控制IC的功耗?
    發(fā)表于 04-14 07:35

    時序邏輯等效性的RTL設(shè)計和驗證流程介紹

    關(guān)于時序邏輯等效性的RTL設(shè)計和驗證流程介紹。
    發(fā)表于 04-28 06:13

    DC邏輯綜合

    芯片綜合的過程:芯片的規(guī)格說明,芯片設(shè)計的劃分,預(yù)布局,RTL 邏輯單元的綜合,各邏輯單元的集成,測試,布局規(guī)劃,布局布線,最終驗證等步驟。
    發(fā)表于 12-29 16:28 ?25次下載
    DC<b class='flag-5'>邏輯</b><b class='flag-5'>綜合</b>

    全定制和半定制簡易IC設(shè)計流程介紹

    一般的IC設(shè)計流程可以分為兩大類:全定制和半定制,這里我換一種方式來說明。 1.1 從RTLGDSⅡ的設(shè)計流程: 這個可以理解成半定制的設(shè)
    發(fā)表于 10-20 11:38 ?25次下載
    全定制和半定制簡易<b class='flag-5'>IC</b>設(shè)計<b class='flag-5'>流程</b>介紹

    IC設(shè)計流程之全定制和半定制

    一個完整的半定制設(shè)計流程應(yīng)該是:RTL代碼輸入、功能仿真、邏輯綜合、形式驗證、時序/功耗/噪聲分析,布局布線(物理綜合)、版圖驗證。
    發(fā)表于 11-24 09:17 ?1.2w次閱讀

    邏輯綜合與物理綜合

    利用工具將RTL代碼轉(zhuǎn)化為門級網(wǎng)表的過程稱為邏輯綜合。綜合一個設(shè)計的過程,從讀取RTL代碼開始,通過時序約束關(guān)系,映射產(chǎn)生一個門級網(wǎng)表。
    的頭像 發(fā)表于 11-28 16:02 ?2744次閱讀

    什么是邏輯綜合邏輯綜合流程有哪些?

    邏輯綜合是將RTL描述的電路轉(zhuǎn)換成門級描述的電路,將HDL語言描述的電路轉(zhuǎn)換為性能、面積和時序等因素約束下的門級電路網(wǎng)表。
    的頭像 發(fā)表于 09-15 15:22 ?5323次閱讀
    什么是<b class='flag-5'>邏輯</b><b class='flag-5'>綜合</b>?<b class='flag-5'>邏輯</b><b class='flag-5'>綜合</b>的<b class='flag-5'>流程</b>有哪些?

    GDS文件在芯片制造流程的應(yīng)用

    本文詳細(xì)介紹了集成電路設(shè)計和制造中所使用的GDS文件的定義、功能和組成部分,并介紹了GDS文件的創(chuàng)建流程、優(yōu)缺點以及應(yīng)用前景。 GDS文件在集成電路設(shè)計和制造
    的頭像 發(fā)表于 11-24 09:59 ?443次閱讀