【正文】
觀 ? 實(shí)體說明 : 實(shí)體命名,實(shí)體與外部環(huán)境的接口描述, 未涉及其內(nèi)部行為及結(jié)構(gòu) ? 實(shí)體功能 ? 在 結(jié)構(gòu)體 中實(shí)現(xiàn) 結(jié)構(gòu)體:實(shí)體的輸入 輸出關(guān)系,實(shí)體的結(jié)構(gòu)和行為描述 對應(yīng)一個實(shí)體說明可以有多個結(jié)構(gòu)體 , 不同的實(shí)現(xiàn)方案 EN T I TY c oun t I S 設(shè)計(jì)實(shí)體 c oun t G EN ER I C ( tpd : T ime := 10n s) 。第六章 集成電路設(shè)計(jì)的 CAD系統(tǒng) ICCAD系統(tǒng)概述 ?ICCAD系統(tǒng)的發(fā)展 ? 第一代: 60年代末:版圖編輯和檢查 ? 第二代: 80年代初:原理圖輸入 、 邏輯模擬向下 ? 第三代:從 RTL級輸入向下 , 包括行為仿真 、 行為綜合 、 邏輯綜合等 ?流行的 CAD系統(tǒng): Cadence, Mentor Graphics, Viewlogic, Compass, Panda等 ? ICCAD系統(tǒng)的理想作用:實(shí)現(xiàn)完全的自動化設(shè)計(jì) , 設(shè)計(jì)出各種各樣的電路 ?ICCAD系統(tǒng)的實(shí)際作用 ? 設(shè)計(jì)信息輸入: ?語言輸入編輯工具 ?高層次描述的圖形輸入工具: VHDL功能圖輸入 、邏輯圖 /電路圖輸入編輯 、 版圖輸入編輯 ? 設(shè)計(jì)實(shí)現(xiàn):綜合器 ? 設(shè)計(jì)驗(yàn)證:驗(yàn)證系統(tǒng) /電路符合功能 /性能要求及設(shè)計(jì)規(guī)則要求 ? 模擬器進(jìn)行模擬 ( 仿真 ) 分析 ? 設(shè)計(jì)規(guī)則的檢查 什么是模擬 ? 對于設(shè)計(jì)輸入抽象出模型 , 施加外部激勵 , 觀察輸入 , 進(jìn)行判斷 ?整個設(shè)計(jì)過程就是把高層次的抽象描述逐級向下進(jìn)行綜合、驗(yàn)證、實(shí)現(xiàn),直到物理級的低層次描述,即掩膜版圖。 ? 各設(shè)計(jì)階段相互聯(lián)系 ,例如,寄存器傳輸級描述是邏輯綜合的輸入,邏輯綜合的輸出又可以是邏輯模擬和自動版圖設(shè)計(jì)的輸入,版圖設(shè)計(jì)的結(jié)果則是版圖驗(yàn)證的輸入。 PORT( c loc k : I N B it。EN D E N T I T Y c oun t;A RCH I TE CTU RE a r c h o f c oun t I S c oun t實(shí)體的結(jié)構(gòu)體B EG I N c oun t_up : PROCESS(c loc k) 進(jìn)程體 c oun t_upV A R I A B L E c oun t_va lue : N a tur a l : = 0。 1 39。q1 = bit39。q0 = bit39。 EN D I F 。EN D A RCH I TE CTU RE a r c h 。 CO = A and B。 end process。 Architecture behavioral of half _adder is 數(shù)據(jù)流描述,未涉及具體結(jié)構(gòu) begin SUM =A+B。 end behavioral。 end ponent。 end ponent。 元件引用,生成例元 (標(biāo)號:元件名 端口映射 ) U2: AND2 port map(A,B,CO)。 VHDL語言的建模機(jī)制 —— 行為描述 ?電子實(shí)體中的 行為: 反映信號的變化、組合和傳播 行為的特點(diǎn)是信號的延遲和并行性 ? VHDL中描述行為的基本單位是 進(jìn)程,由進(jìn)程語句描述。BE GI N IF c lock=39。 T HENCoun t_ value : =( count_v al ue+1) M OD 4。Va l( count_v al ue/2) A FT E R tpd。Va l( count_v al ue M OD 2) A F T E R tpd。E ND P R OCE SS count_u p 。進(jìn)程之間是 并行 的,進(jìn)程內(nèi)部是順序 執(zhí)行的。信號的狀態(tài)可能影響與信號相關(guān)的進(jìn)程的狀態(tài) ?信號賦值: ? 模擬周期:在時(shí)刻 t, 從 一些信號更新、若干進(jìn)程被激活到進(jìn)程被掛起 ? 信號在一個模擬周期完成求值,延遲 td后更新值, td是信號延遲,也稱 DELTA延遲,在同一模擬時(shí) 刻,發(fā)生 t, t+td , t+2td, …. 多個模擬周期 ? 進(jìn)程并行: 每個進(jìn)程僅在滿足一定條件的某個時(shí)刻被激活,同一時(shí)刻可以有多個進(jìn)程被激活 對于串行機(jī),模擬時(shí)鐘在每個時(shí)刻停下,直到每個時(shí)刻被激活進(jìn)程全被處理完 ?延遲描述:反映時(shí)序,建立精確的電路硬件模型 ? 什么是延遲? ? 傳輸延遲 ? 慣性延遲: 輸入信號在指定延遲時(shí)間內(nèi)保持不變,元件的輸出端才有響應(yīng)。 end ponent。 end ponent。 元件引用,生成例元 (標(biāo)號:元件名 端口映射 ) U2: AND2 port map(A,B,CO)。 ?元件配置 元件例化語句生成例元引用的是元件,不是實(shí)體,實(shí)體結(jié)構(gòu)中的例元應(yīng)該同實(shí)在的實(shí)體設(shè)計(jì)相對應(yīng),進(jìn)行元件配置,指出使用的實(shí)體和結(jié)構(gòu)體 FOR 元件標(biāo)號 : 元件名 USE ENTITY 庫名 .實(shí)體名 (結(jié)構(gòu)名) 標(biāo)號例元所引用的元件對應(yīng)于某指定庫的某實(shí)體和某結(jié)構(gòu)體 Architecture structural_view OF full_adder IS Component half_adder PORT (in1,in2 : IN Std_logic。 End Component。 sum, carry : OUT Std_logic)。 Signal a,b,c : Std_logic。 u2: half_adder PORT MAP (c_in,b,sum,c)。 End structural_view。 End For。 End For。 End parts。 ? 信號事件:信號驅(qū)動產(chǎn)生的事件; ? 時(shí)間事件:進(jìn)程由于等待時(shí)間條件而掛起的事件 ? 激活進(jìn)程:與電路中某變化的信號相關(guān)的進(jìn)程,相應(yīng)的信號稱為敏感信號。 開始激活所有進(jìn)程讀入激勵信號記入全局事件表產(chǎn)生新的信號事件記入事件表;時(shí)間等待事件記入事件表;進(jìn)程掛起當(dāng)前時(shí)刻所有激活進(jìn)程模擬完?增加事件最小時(shí)間間隔否施加新的輸入信號根據(jù)全局事件表更新相應(yīng)的信號執(zhí)行被激活的進(jìn)程否存在被激活的進(jìn)程?是無全局 事件表空?是是用戶:語言輸入,模擬器模擬 綜合 ? 概念:從設(shè)計(jì)的高層次向低層次轉(zhuǎn)換的過程,是一種自動設(shè)計(jì)的過程 一種專家系統(tǒng) ? 分類: ? 系統(tǒng)級綜合 ? 高級綜合 ? RTL級綜合:行為綜合(軟件: Synopsys, Ambit) ? 邏輯綜合 ? 物理綜合(邏輯圖或電路圖到版圖,嚴(yán)格說應(yīng)該是同級驅(qū)動) 高級綜合 ? 設(shè)計(jì)的算法級描述轉(zhuǎn)換為 RTL級描述 ? 核心:分配( ALLOCATION) 和調(diào)度( SCHEDULING) ? 分配:給定性能、面積 /功耗條件下,確定硬件資源:執(zhí)行單元、存儲器、控制器、總線等,產(chǎn)生數(shù)據(jù)通道 ? 調(diào)度:確定這些結(jié)構(gòu)的操作次序 ?根據(jù)控制流圖和調(diào)度中產(chǎn)生的狀態(tài)信息,利用傳統(tǒng)的 RTL/邏輯綜合技術(shù)綜合出控制器部分 ?目標(biāo):找到代價(jià)最小的硬件結(jié)構(gòu),使性能最佳 ?綜合過程: 輸入的行為描述編譯 中間數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)流綜合子系統(tǒng)、控制流綜合子系統(tǒng) 數(shù)據(jù)通道和控制部分( RTL級網(wǎng)表) 模擬驗(yàn)證 RTL兩級工藝映射 工藝相關(guān)的結(jié)構(gòu) 邏輯圖自動生成 邏輯圖 模擬驗(yàn)證 綜合系統(tǒng)組成:編譯器、模擬器、數(shù)據(jù)流綜合子系統(tǒng)、控制流綜合子系統(tǒng)、工藝映射系統(tǒng)邏輯圖自動生成系統(tǒng) ? 工藝映射:已知工藝無關(guān)的結(jié)構(gòu)描述、目標(biāo)工藝及一組設(shè)計(jì)約束,在滿足設(shè)計(jì)約束條件下,在物理域上實(shí)現(xiàn)同一層次的結(jié)構(gòu)描述。 4. 利用給定的邏輯單元庫進(jìn)行工藝映射,對生成的邏輯網(wǎng)絡(luò)進(jìn)行元件配置,進(jìn)而估算速度、面積、功耗,進(jìn)行邏輯結(jié)構(gòu)的 性能優(yōu)化 5. 得到邏輯網(wǎng)表 ?綜合中的優(yōu)化問題(黑箱): 優(yōu)化目標(biāo):面積、速度、功耗、可測試性 ? 可綜合的輸入描述: VHDL、 Verilog、HardwareC 邏輯模擬 ? 邏輯模擬的基本概念:將邏輯設(shè)計(jì)輸入到計(jì)算機(jī),用軟件方法形成硬件的模型,給定輸入波形,利用模型算出各節(jié)點(diǎn)和輸出端的波形,判斷正確否 ? 主要作用:驗(yàn)證邏輯功能和時(shí)序的正確性 ?分類:根據(jù)所模擬邏輯單元規(guī)模的大小 ? 寄存器傳輸級模擬:總體操作正確性 ? 功能塊級模擬:加法器 、 計(jì)數(shù)器 、 存儲器等 ? 門級模擬:基本邏輯單元:門 、 觸發(fā)器等 ? 開關(guān)級模擬:晶體管:后仿真 主要介紹功能塊級和門級邏輯模擬 ?幾個概念 ? 什么是邏輯功能?輸入和輸出之間的邏輯關(guān)系,不考慮與時(shí)間的關(guān)系。 如果強(qiáng)度相等信號值不同,線連點(diǎn)強(qiáng)度不變,信號值未知。 元件按功能 編成子程序 , 按相互間連接關(guān)系以一定順序?qū)⒆映? 序連成總的可執(zhí)行程序 。 噪聲分析和失真分析 ? 瞬態(tài)分析 (.TRAN):以時(shí)間為變量,輸入加隨時(shí)間變化的信號,計(jì)算輸出和其節(jié)點(diǎn)電壓或支路電流的瞬態(tài)值。 電路描述語言 :描述電路結(jié)構(gòu)、元件參數(shù)、器件模型、電路運(yùn)行環(huán)境、分析類型和輸出要求等 ?電路描述前首先要畫好電路圖 , 節(jié)點(diǎn)編號 ( 接地節(jié)點(diǎn)零號 , 其他正整數(shù) ) ?SPICE的描述語言: ? 電路拓?fù)?( 網(wǎng)表 ) ? 采用模型 ( 元件屬性 ) ? 仿真內(nèi)容控制 電路描述舉例 V C CM1M2V I N123CMOS INVERTER DC TRANS. CHARACTERISTICS VCC 2 0 5 VIN 1 0 M1 3 1 2 2 MOD1 L=2U W=18U M2 3 1 0 0 MOD2 L=2U W=10U .MODEL MOD1 PMOS LEVEL=3 VTO= ?1 NSUB=2E15 UO=166 .MODEL MOD2 NMOS LEVEL=3 V