欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

時序違例的修正與時序優(yōu)化的思考方向

電子工程師 ? 來源:未知 ? 作者:工程師李察 ? 2018-09-15 08:23 ? 次閱讀

時序邏輯電路示意圖如下。前后兩級寄存器之間有一個組合邏輯運算電路。

時序違例的修正與時序優(yōu)化的思考方向

假設(shè)寄存器的建立時間要求為tsetup, 保持時間要求為thold, 輸出延時為tcq(這些參數(shù)只要工藝庫或者器件確定了,就是確定的);組合邏輯電路的運算延時為tlogic; 兩級寄存器之間的clk線路延時為tclk_delay;clk的隨機抖動為tjitter;tcycle為時鐘周期。故電路必須滿足如下建立時間,保持時間要求:

tsetup_slack=tcycle-(tcq+tlogic) -tsetup+tclk_delay-tjitter>0

thold_slack=tcq+tlogic-thold-tclk_delay-tjitter>0

當(dāng)tsetup_slack要求不滿足時,我們可以選擇增大tcycle。當(dāng)然這就使得電路的整體時鐘頻率下降,從而速度下降。

從另一個角度考慮,我們可以通過減少tlogic來使得電路的建立時間裕量滿足要求。 達(dá)到這個目的,只有兩個辦法:

第一是優(yōu)化,簡化組合邏輯電路,使得電路的延時下降。如果是ASIC設(shè)計,我們可以結(jié)合卡諾圖,布爾邏輯等式代換,狄摩根定律等去對邏輯電路盡量做到優(yōu)化。如果是FPGA設(shè)計,我們可以結(jié)合FPGA器件的底層單元(例如查找表(LUT))的基本邏輯功能去做邏輯優(yōu)化。

例如,在做ASIC的時候,要實現(xiàn)如下邏輯功能:

輸入 輸出
A C D B
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0

經(jīng)過卡諾圖化簡得到布爾表達(dá)式如下:

B=C’D+A’D+ACD’

還可以進(jìn)一步化簡

B=C’D+A’D+ACD’=(A’+C’)D+ACD’=(AC)’D+ACD’=(AC)^D

最后發(fā)現(xiàn)只要一個與門,后面跟一個異或門就可以實現(xiàn)這個邏輯。

(1)所以我們在寫verilog的時候如果用門級電路去描述這個邏輯電路時:

assign B = (A&D)^D;

或者用結(jié)構(gòu)化的方式去描述時:

and(AC,A,C);

xor(B,AC,D);

其綜合對應(yīng)出來的電路便可能是最簡單的,當(dāng)然這跟綜合庫有關(guān)。

(2)但是如果我們用行為級的方式去描述這個邏輯時,例如如下。

always @( * )

if( {A,C,D} == 3b001 || {A,C,D} == 3b011 || {A,C,D}==101 ||{A,C,D} == 3b110)

B = 1b1;

else

B = 0;

那么其綜合得到的電路就是不可控的了,雖然EDA工具會對其做優(yōu)化。因此這樣綜合出來的電路如果不是最簡的,那么其延時就大。

所以在描述電路的時候,如果時序要求很高,最好要考慮邏輯化簡和器件適應(yīng)。

第二種方式便是利用流水線技術(shù),使得兩級寄存器之間組合邏輯電路的運算量減少,從而使得tlogic減少。

例如對于一個組合邏輯電路,其功能是實現(xiàn)8bit數(shù)的全加器。我們可以將其劃分成兩個4bit數(shù)的全加器。如下圖,原本是要實現(xiàn)兩個8bit數(shù)A[7:0],B[7:0],外加一個進(jìn)位位c_in相加的,如下。

assign{c_out,sum[7:0]} =A[7:0] + B[7:0] +c_in ;

現(xiàn)在變成了前面一個全加器實現(xiàn)

assign {c_out1,sum1[3:0]} = A[3:0] + B[3:0] + c_in ;

后面一個全加器實現(xiàn)

assign{c_out,sum2[3:0]} = A[7:4] + B[7:4] + c_out1 ;

最后再將sum1,sum2合并得到sum,如下。

assign sum = {sum2,sum1};

時序違例的修正與時序優(yōu)化的思考方向

第一個全加器算出{c_out1,sum1[3:0]} = A[3:0] + B[3:0] + c_in 之后,在時鐘有效沿到來時,將c_out1,sum1[3:0],A[7:4],B[7:4] 送到中間一級寄存器暫存;然后第二個電路做{c_out,sum2[3:0]} = A[7:4] + B[7:4] + c_out1 運算,并將結(jié)果sum1,sum2合并得到sum。這樣一來每兩級寄存器之間的全加器變成了4bit的全加器,電路延時肯定得到降低了。從而tlogic降低。

當(dāng)然還可以進(jìn)一步優(yōu)化,使得流水級數(shù)更多。一般來說保持時間不會出現(xiàn)違例情況,因為寄存器的輸出延時tcq,一般要大于thold。如果出現(xiàn)違例,從式子

thold_slack=tcq+tlogic-thold-tclk_delay-tjitter>0

我們可以考慮適當(dāng)增加tlogic,或者后端布局布線時去減少tclk_delay。

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

    關(guān)注

    13

    文章

    494

    瀏覽量

    42730
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5372

    瀏覽量

    121316
  • 時序
    +關(guān)注

    關(guān)注

    5

    文章

    392

    瀏覽量

    37449

原文標(biāo)題:時序違例的修正與時序優(yōu)化的思考方向

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

收藏 人收藏

    評論

    相關(guān)推薦

    優(yōu)化高速接口的時序裕量

    本文將對源同步定時如何優(yōu)化高速接口時序裕量進(jìn)行討論。時序預(yù)算是對系統(tǒng)正常工作所需時序參數(shù)或時序要求的計算。
    發(fā)表于 03-20 10:46 ?2707次閱讀
    <b class='flag-5'>優(yōu)化</b>高速接口的<b class='flag-5'>時序</b>裕量

    靜態(tài)時序的分析原理及詳細(xì)過程

    靜態(tài)時序分析是檢查IC系統(tǒng)時序是否滿足要求的主要手段。以往時序的驗證依賴于仿真,采用仿真的方法,覆蓋率跟所施加的激勵有關(guān),有些時序違例會被忽
    的頭像 發(fā)表于 11-25 11:03 ?1w次閱讀
    靜態(tài)<b class='flag-5'>時序</b>的分析原理及詳細(xì)過程

    UltraFast設(shè)計方法時序收斂快捷參考指南

    資源利用率、邏輯層次和時序約束。 2時序基線設(shè)定:在每個實現(xiàn)步驟后檢查并解決時序違例,從而幫助布線后收斂時序。 3
    的頭像 發(fā)表于 11-05 15:10 ?5079次閱讀
    UltraFast設(shè)計方法<b class='flag-5'>時序</b>收斂快捷參考指南

    vivado:時序分析與約束優(yōu)化

    能夠有一些時序問題,我們再通過時序分析的方法對它進(jìn)行優(yōu)化。我們這里把原本的100M時鐘改成了200M時鐘,具體步驟如下: 一:更改時鐘之后進(jìn)行綜合,并打開timing analysis 二:通過
    發(fā)表于 08-22 11:45

    出現(xiàn)時序違例的原因及解決辦法

      如果出現(xiàn)了時序違例,我們會關(guān)注兩點:  為什么會出現(xiàn)時序違例?  如何解決?  首先我們要搞清楚時序是在哪個階段
    發(fā)表于 01-08 17:10

    時序約束與時序分析 ppt教程

    時序約束與時序分析 ppt教程 本章概要:時序約束與時序分析基礎(chǔ)常用時序概念QuartusII中的時序
    發(fā)表于 05-17 16:08 ?0次下載

    后端時序修正基本思路

    后端時序修正基本思路,后端對時序的影響從0.18開始,在整體影響中的比重也在隨著工藝的變化而變得敏感。
    發(fā)表于 10-26 09:28 ?2964次閱讀
    后端<b class='flag-5'>時序</b><b class='flag-5'>修正</b>基本思路

    基于FPGA時序優(yōu)化設(shè)計

    現(xiàn)有的工具和技術(shù)可幫助您有效地實現(xiàn)時序性能目標(biāo)。當(dāng)您的FPGA 設(shè)計無法滿足時序性能目標(biāo)時,其原因可能并不明顯。解決方案不僅取決于FPGA 實現(xiàn)工具為滿足時序要求而優(yōu)化設(shè)計的能力,還取
    發(fā)表于 11-18 04:32 ?3357次閱讀

    時序約束的步驟分析

    FPGA中的時序問題是一個比較重要的問題,時序違例,尤其喜歡在資源利用率較高、時鐘頻率較高或者是位寬較寬的情況下出現(xiàn)。建立時間和保持時間是FPGA時序約束中兩個最基本的概念,同樣在芯片
    的頭像 發(fā)表于 12-23 07:01 ?2189次閱讀
    <b class='flag-5'>時序</b>約束的步驟分析

    如何閱讀時序報告?

    生成時序報告后,如何閱讀時序報告并從時序報告中發(fā)現(xiàn)導(dǎo)致時序違例的潛在問題是關(guān)鍵。 首先要看Design Timing Summary在這個
    的頭像 發(fā)表于 08-31 13:49 ?6383次閱讀
    如何閱讀<b class='flag-5'>時序</b>報告?

    一文知道時序路徑的構(gòu)成

    更為具體的時序報告信息如何從中獲取,或者如何根據(jù)時序報告發(fā)現(xiàn)導(dǎo)致時序違例的潛在原因呢?
    的頭像 發(fā)表于 09-04 10:24 ?1838次閱讀

    Vivado時序案例分析之解脈沖寬度違例

    BY Hemang Divyakant Parikh 有多種類型的時序違例可歸類為脈沖寬度違例。 - 最大偏差違例(詳見 此處 ) - 最小周期違例
    的頭像 發(fā)表于 11-19 13:48 ?5776次閱讀
    Vivado<b class='flag-5'>時序</b>案例分析之解脈沖寬度<b class='flag-5'>違例</b>

    如何降低面積和功耗?如何優(yōu)化電路時序?

    1、如何降低功耗? (1) 優(yōu)化方向: 組合邏輯+時序邏輯+存儲 (2) 組合邏輯: ??(a)通過算法優(yōu)化的方式減少門電路 ??(b)模塊復(fù)用、資源共享 (3)
    發(fā)表于 02-11 15:30 ?2次下載
    如何降低面積和功耗?如何<b class='flag-5'>優(yōu)化</b>電路<b class='flag-5'>時序</b>?

    FPGA時序約束:如何查看具體錯誤的時序路徑

    ? ? 1、時序錯誤的影響 ? ? ? 一個設(shè)計的時序報告中,design run 時序有紅色,裕量(slack)為負(fù)數(shù)時,表示時序約束出現(xiàn)違例
    的頭像 發(fā)表于 03-17 03:25 ?1122次閱讀

    時序約束出現(xiàn)時序違例(Slack為負(fù)數(shù)),如何處理?

    時序約束出現(xiàn)時序違例(Slack為負(fù)數(shù)),如何處理?
    的頭像 發(fā)表于 07-10 15:47 ?5585次閱讀