那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

數字電路設計驗證流程

發燒友研習社 ? 來源:電子報 ? 作者:h1654155268.1688 ? 2022-06-02 10:01 ? 次閱讀

數字電路設計驗證流程

數字集成電路芯片的設計流程由一系列的設計實現和驗證測試過程組成(圖1)。首先是功能定義,它描述了對芯片功能和性能參數的要求,我們使用系統設計工具設計出方案和架構,劃分好芯片的模塊功能。

然后是代碼設計,我們使用硬件描述語言(HDL,如Verilog)將模塊功能表示出來,形成電腦能理解的代碼(行為級、RTL級)。經過仿真驗證后,進行邏輯綜合,把代碼翻譯成低一級別的門級網表,它對應于特定的面積和參數,并再次做仿真驗證。這兩個仿真可以是用電路模型驗證邏輯功能(邏輯仿真),也可以用FPGA硬件電路來驗證(原型仿真),其速度更快,與實際電路更接近。

設計和仿真驗證是反復迭代的過程,直到驗證結果完全符合規格要求。驗證還包括靜態時序分析、形式驗證等,以檢驗電路的功能在設計轉換和優化的過程中保持不變。可測性設計(DFT、ATPG)也在這一步完成。

下一步就是數字電路后端實現中最為關鍵的布局布線,它實現電路模塊(如宏模塊、存儲器、引腳等)的布圖規劃、布局,實現電源時鐘、標準單元之間信號線的布線。

在布局布線過程中及完成之后,需要對版圖進行各種驗證,包括形式驗證、物理驗證,如版圖與邏輯電路圖的對比、設計規則檢查、電氣規則檢查等。最終輸出GDS數據,轉交芯片代工廠,在晶圓上進行加工,再進行封裝和測試,就得到了我們實際看見的芯片。

f5d51b08-e209-11ec-ba43-dac502259ad0.png

圖1數字電路設計驗證流程

數字后端實現過程

本文所指的后端實現工具主要是指布圖規劃(Floorplan)和布局布線(Place&Route)兩個階段所使用到的工具集合。目前芯片設計公司使用的主要軟件有SynopsysICC2/FusionCompiler,CadenceEncounter/Innovus,MentorGraphicsNitro-Soc等。

f5f74494-e209-11ec-ba43-dac502259ad0.png

圖2數字后端實現過程

數字后端的設計過程,是把邏輯綜合映射后的電路網表轉換為GDS的過程,也就是把電路從邏輯網表轉換為幾何版圖的過程。業界各個工具系統的實現大同小異,一般可以細分為設計環境建立、布圖規劃、布局、時鐘樹綜合、布線、調試完善等步驟(圖2)。

01

設計環境建立

設計環境的建立是把后端設計所需的數據讀入到數據庫,然后檢查數據的完整性與一致性。后端設計的輸入數據包括門級網表、設計約束和工藝庫文件三部分。其中,門級網表(GLN,GateLevelNetlist)是邏輯綜合工具把設計從RTL(RegisterTransferLevel)映射到GLN所得,它同時滿足時序、面積、功耗等約束。設計約束SDC(SynopsysDesignConstraints)則描述了時鐘、延遲、電源、面積、設計規則、工作條件等等對芯片的約束條件。工藝庫主要是時序庫文件和模型庫文件,如物理抽象庫文件LEF、物理詳細庫文件GDS/OASIS、時序庫文件.lib、RLC模型文件.rlc、EM規則文件、DEF文件等等。

02

布圖規劃Floorplan

布圖規劃是后端實現中需要手工活的惟一階段,其它階段都是通過修改腳本和約束,然后讓工具自動完成的。布圖規劃的好壞,直接決定了后續布局布線的收斂、芯片的面積性能功耗。Floorplan一般都是由經驗豐富的設計師來完成。現在Cadence、谷歌也在探索使用AI來實現Floorplan。它包括初始化、布放宏模塊和布放輸入輸出腳等過程。我們需要根據設計前端所給的數據流向,了解設計中各個模塊之間的交互、各個時鐘之間的關系等信息,以規劃模塊的位置和模塊接口的位置。模塊形狀與設計類型相關,也影響到繞線資源的使用,這在前端中只考慮邏輯功能不同,需要仔細規劃。低功耗設計則需要提前規劃好各個電源域的劃分區域、隔離島等。在布放電源地時,需要根據芯片功耗估算,添加芯片核心的電源地;根據SSO、ESD、EM估算,添加輸入輸出腳的電源地。輸入輸出腳添加完成后,根據宏模塊、IP、IO的面積就可以估算出芯片的面積了。

03

電源及電源網絡分析

在現代低功耗芯片設計中,電源設計是非常重要的一步,包括分析計算所有單元的功耗、靜態IRDrop和電遷移EM分析。它可以在多個階段進行,如布圖后、電源地布線后、全局布局后、詳細布線后等。它分析電源設計是否合規。分析計算過程包括線網活動因子計算、電源分析、電源網分析、電網電阻分析、阻抗失配分析、IRDrop分析、EM分析等等。

04

靜態時序分析

通過建立和使用靜態時序分析器,以驗證設計符合所有的設計約束,如滿足在所有要求操作條件下的建立和保持時間,或者識別出違反時序的原因所在。靜態時序分析主要包括數據準備、分析條件設置、生成時序報告、分析報告。所需要的數據(電路網表、時序庫、約束文件、寄生模型及外部寄生文件)在第一步已經讀入到數據庫中,這里也可以補充讀取。分析條件則是在一個或多個模式下,考慮PVT、RCX、OCV、CRPR等諸多因素進行設置。根據分析所需,控制分析器執行適當的命令,得到時序分析報告。對報告進行分析后,執行相應的操作。例如,從時序路徑分析報告中,可以看到設計的關鍵路徑,進而執行增量式的修改以符合時序需求。

05

定義電源結構

這一步是為電源的繞線創建禁區,創建電源帶、電源環、標準單元rail等,定義如何連接到宏模塊的電源腳等,完成電源的繞線,報告電源的狀況。

06

布局及優化設計

這一過程包括為布局和優化作準備(布局指南和布局分組)、進行無優化的布局、插入備用單元(為ECO做準備)和Tap單元、管理掃描鏈(重排或拆分)、進行布局和優化、分析布局和優化結果,決定是否需要迭代。傳統的時序驅動的布局算法通常會留下很多時序違反,因為它們不能僅僅由布局修正。時序違反由布局后優化工具找到后,它就會做很多修改,以符合時序約束的要求,如修改單元尺寸、插入緩沖、分解驅動等,這些操作會逐步降低原始布局的質量。因此,為滿足時序和擁擠約束的目標,需要進行多次布局迭代和優化。我們工具的布局和優化引擎是并行的,從宏固定的預布局開始,就能得到一個最好時序質量和最低擁擠程度的全布局。布局和設計優化也能在一個布局好的設計上增量式地進行。

07

時鐘樹綜合

布局之后,就是布線工作。我們要首先完成時鐘網絡的布線,因為它們比普通數據通路上的線網更重要。在數字電路中,時序元件的數據傳輸是由時鐘控制的。時鐘頻率決定了數據處理和傳輸的速度,時鐘頻率也就決定了電路的最終性能。決定時鐘頻率的主要因素有兩個,一是組合邏輯部分的最長電路延時,二是時序元件內的時鐘偏斜(clockskew)。

組合邏輯部分可以優化的延時不多,時鐘偏斜成為影響電路性能的制約因素。時鐘樹綜合的一個主要目的就是減小時鐘偏斜。時鐘信號是數字芯片中最長最復雜的信號,從一個時鐘源到達各個時序元件的終端節點,能形成了一棵樹狀的結構。從時鐘源的扇出很大,負載很大,需要一個時鐘樹結構,通過一級級的器件去驅動最終的葉子節點。時鐘樹綜合的另一個目的,就是要使同一個時鐘信號到達各個終端節點的時間相同。采用的辦法也很簡單:在時鐘信號線網上插入buffer或者inverter來平衡信號的延遲。時鐘樹綜合的準備包括標記可用于時鐘樹的buffer/inverter、定義時鐘結構規則(如繞線、時鐘單元周邊間距、buffer等)、生成時鐘skew約束(即定義各種skew組和時序約束),然后綜合時鐘樹,再對綜合結果進行分析和優化,如修復setup時間違反、額外的功耗和面積收復等等。

08

布線及設計優化

這一步雖然是一個自動化進行的步驟,但也需要創建布線指南,以指導布線器的運作。過程包括全局布線、總線布線、詳細布線、手動優化、添加防護、金屬填充、天線效應修復、光刻修復、繞線到bump等等。

09

工程改動要求ECO

(EngineeringChangeOrder)

ECO是在一個完成或接近完成的設計上,進行一個增量式的改變。可能是對設計網表、布局或繞線作一個小的改變,而設計的主體部分中不變的部分無須重建。ECO可能涉及到所有層的改變,或者僅僅涉及到金屬層的改變。假若修改的門數不到整體的5%,那么ECO是值得的。另外,使用usefulskew來進行手工的時鐘樹ECO,也是一項重要的技能。

10

時序調試

時序調試的目的,是找到一個方法去修復所有約束違反。我們需要用不同的選項去運行時序分析器,分析各種時序報告,識別可能的時序問題,在GUI和版圖上同時查看關鍵路徑,提升設計的時序。時序的優化貫穿著整個數字電路后端設計全過程。

11

數據導出

設計的最后一步,就是電路版圖數據GDS的導出。GDS描述了晶體管大小和物理位置、連線的寬度和位置等制造芯片所需的全部信息。對GDS的要求是功能與RTL一致、性能滿足指標、規格滿足代工廠要求、功耗性能面積(PPA)優良。EDA工具強調的是A,Automation,也就是自動化。這在數字集成電路后端設計工具中表現尤為突出。要處理規模大至數十億晶體管的電路,對所涉及算法的性能、效率、資源占用等都有極高的要求。目前,我們正在努力探索在數字芯片全流程中應用最新AI技術云計算技術等,以滿足各種現代芯片的設計要求。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電路
    +關注

    關注

    173

    文章

    5966

    瀏覽量

    172967
  • 仿真
    +關注

    關注

    50

    文章

    4124

    瀏覽量

    133999
  • 數字電路
    +關注

    關注

    193

    文章

    1629

    瀏覽量

    80824

原文標題:【限時福利】一文讀懂數字集成電路芯片設計流程

文章出處:【微信號:發燒友研習社,微信公眾號:發燒友研習社】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    數字電路有哪些特點和作用

    在電子技術領域,數字電路具有一系列鮮明的特點,這些特點使其在眾多應用場景中發揮關鍵作用,推動著現代科技不斷向前發展。 信號的離散性是數字電路最為突出的特點之一。數字電路所處理的數字信號
    的頭像 發表于 02-04 17:17 ?84次閱讀

    數字電路與控制系統關系

    在現代技術領域,數字電路和控制系統是兩個不可或缺的組成部分。數字電路作為電子技術的基礎,為控制系統提供了必要的硬件支持。而控制系統則是利用這些硬件來實現對各種機械設備或過程的精確控制。 數字電路
    的頭像 發表于 01-24 09:43 ?128次閱讀

    數字電路編程語言介紹

    文本形式描述電路的行為和結構。 并行性和并發性 :數字電路編程語言支持并行和并發操作的描述,這是數字電路設計中的基本特性。 模塊化 :這些語言支持模塊化設計,允許設計師將復雜的電路分解
    的頭像 發表于 01-24 09:39 ?163次閱讀

    數字電路與模擬電路的區別

    在電子工程領域,數字電路和模擬電路是兩種截然不同的技術。它們在處理信號、設計方法、應用領域以及性能特點上有著明顯的差異。 一、信號處理方式 1.1 模擬電路 模擬電路處理的是連續變化的
    的頭像 發表于 01-24 09:36 ?157次閱讀

    模擬電路數字電路的區別

    在現代電子技術中,模擬電路數字電路是兩種截然不同的電路類型,它們各自有著獨特的特點和應用場景。 一、信號處理方式 模擬電路: 模擬電路處理
    的頭像 發表于 01-24 09:22 ?189次閱讀

    BJT在數字電路中的應用

    數字電路設計中,BJT因其獨特的電氣特性和成本效益而被廣泛使用。BJT可以作為開關使用,控制電流的流動,從而實現邏輯功能。 1. BJT作為開關 在數字電路中,BJT最常見的應用之一是作為開關
    的頭像 發表于 12-31 16:34 ?358次閱讀

    如何使用 Verilog 進行數字電路設計

    使用Verilog進行數字電路設計是一個復雜但有序的過程,它涉及從概念設計到實現、驗證和優化的多個階段。以下是一個基本的步驟指南,幫助你理解如何使用Verilog來設計數字電路: 1. 明確設計需求
    的頭像 發表于 12-17 09:47 ?365次閱讀

    數字電路可以處理模擬信號嗎

    數字電路主要處理數字信號,即離散的、二進制的信號。然而,在某些情況下,數字電路也可以處理模擬信號,即連續的、非二進制的信號。 數字電路與模擬信號
    的頭像 發表于 08-11 11:08 ?790次閱讀

    數字電路是對什么信號進行傳輸的

    數字電路是一種電子系統,它使用數字信號進行信息傳輸和處理。數字信號是由離散的電壓水平或電流水平表示的信號,通常用二進制代碼表示。與模擬電路不同,數字
    的頭像 發表于 08-11 11:00 ?928次閱讀

    數字電路中的亞穩態是什么

    數字電路的設計與實現中,亞穩態是一個不可忽視的現象。它可能由多種因素引發,對電路的穩定性和可靠性產生嚴重影響。本文將深入探討數字電路中亞穩態的概念、產生原因、影響以及應對策略,以期為讀者提供全面而深入的理解。
    的頭像 發表于 05-21 15:29 ?1410次閱讀

    數字電路和模擬電路的區別與聯系

    數字電路和模擬電路是電子電路的兩個主要分支,它們在電子技術中具有不同的應用和工作原理。本文將詳細討論數字電路和模擬電路的區別與聯系。 首先,
    的頭像 發表于 04-21 10:29 ?3163次閱讀

    數字電路仿真元件符號是什么

    數字電路仿真元件通常用符號來表示。這些符號是通過簡潔和易于理解的圖形來表示元件的特性和功能。符號是數字電路設計和仿真過程中非常重要的一部分,幫助工程師和設計者有效地溝通和理解電路的功能。在本文
    的頭像 發表于 04-21 09:20 ?2527次閱讀

    珠海南方集成電路設計服務中心引進芯華章全流程驗證工具

    為更好地推動EDA工具國產化,加快構建產業生態體系,3月13日,芯華章科技宣布與珠海南方集成電路設計服務中心(珠海ICC)達成戰略合作,后者將引進芯華章智V驗證平臺及數字驗證
    的頭像 發表于 03-13 10:01 ?603次閱讀

    數字電路與邏輯設計

    電子發燒友網站提供《數字電路與邏輯設計.ppt》資料免費下載
    發表于 03-11 09:21 ?9次下載

    兩位格雷碼減法器數字電路設計

    目前,針對數字電路研究的主要目標都是為了提高電路的運算速度、降低電路的功耗和減少電路邏輯輸出的誤差,因此延時、功耗和誤差是數字電路三個最重要
    的頭像 發表于 02-19 13:36 ?1245次閱讀
    兩位格雷碼減法器<b class='flag-5'>數字電路設計</b>
    24葬书-葬法| 真人百家乐试玩游戏| 威尼斯人娱乐场五星| 線上投注| 基础百家乐官网的玩法技巧和规则 | 真人百家乐官网分析软件是骗局| 百家乐筹码多少钱| 卫辉市| 百家乐佛牌| 赌百家乐官网赢的奥妙| 百家乐官网规则博彩正网| 百家乐娱乐平台官网网| 视频百家乐官网游戏| 大发888充值| 凯斯网百家乐官网的玩法技巧和规则| 九游棋牌游戏大厅| 百家乐试玩网站| 肥西县| 赌片百家乐的玩法技巧和规则 | 娱乐网百家乐的玩法技巧和规则| 澳门百家乐官网打法百家乐官网破解方法 | 百家乐官网技巧微笑心法| 大发888娱乐城网址| 嘉年华百家乐官网的玩法技巧和规则| e世博娱乐| 百家乐赢家打法| 网上百家乐官网赌法| 大发888贴吧| 百家乐技术方式| 金宝博百家乐官网现金| 百家乐怎么玩会| 百家乐官网有没有破解之法| 六合彩网址大全| 百家乐游乐园| 粤港澳百家乐官网娱乐场| 莆田棋牌游戏| 百家乐太阳城小郭| 网上百家乐官网官方网站| 大发888官网 888| 澳门百家乐怎玩| 百家乐官网娱乐软件|