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

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

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

FPGA案例之時(shí)序路徑與時(shí)序模型解析

454398 ? 來源:科學(xué)計(jì)算technomania ? 作者:貓叔 ? 2020-11-17 16:41 ? 次閱讀

時(shí)序路徑

典型的時(shí)序路徑有4類,如下圖所示,這4類路徑可分為片間路徑(標(biāo)記①和標(biāo)記③)和片內(nèi)路徑(標(biāo)記②和標(biāo)記④)。


對于所有的時(shí)序路徑,我們都要明確其起點(diǎn)和終點(diǎn),這4類時(shí)序路徑的起點(diǎn)和終點(diǎn)分別如下表。


這4類路徑中,我們最為關(guān)心是②的同步時(shí)序路徑,也就是FPGA內(nèi)部的時(shí)序邏輯。

時(shí)序模型

典型的時(shí)序模型如下圖所示,一個(gè)完整的時(shí)序路徑包括源時(shí)鐘路徑、數(shù)據(jù)路徑和目的時(shí)鐘路徑,也可以表示為觸發(fā)器+組合邏輯+觸發(fā)器的模型。


該時(shí)序模型的要求為(公式1)

Tclk ≥ Tco + Tlogic + Trouting + Tsetup - Tskew

其中,Tco為發(fā)端寄存器時(shí)鐘到輸出時(shí)間;Tlogic為組合邏輯延遲;Trouting為兩級寄存器之間的布線延遲;Tsetup為收端寄存器建立時(shí)間;Tskew為兩級寄存器的時(shí)鐘歪斜,其值等于時(shí)鐘同邊沿到達(dá)兩個(gè)寄存器時(shí)鐘端口的時(shí)間差;Tclk為系統(tǒng)所能達(dá)到的最小時(shí)鐘周期。

這里我們多說一下這個(gè)Tskew,skew分為兩種,positive skew和negative skew,其中positive skew見下圖,這相當(dāng)于增加了后一級寄存器的觸發(fā)時(shí)間。


但對于negative skew,則相當(dāng)于減少了后一級寄存器的觸發(fā)時(shí)間,如下圖所示。


當(dāng)系統(tǒng)穩(wěn)定后,都會是positive skew的狀態(tài),但即便是positive skew,綜合工具在計(jì)算時(shí)序時(shí),也不會把多出來的Tskew算進(jìn)去。

用下面這個(gè)圖來表示時(shí)序關(guān)系就更加容易理解了。為什么要減去Tskew,下面這個(gè)圖也更加直觀。


發(fā)送端寄存器產(chǎn)生的數(shù)據(jù),數(shù)據(jù)經(jīng)過Tco、Tlogic、Trouting后到達(dá)接收端,同時(shí)還要給接收端留出Tsetup的時(shí)間。而時(shí)鐘延遲了Tskew的時(shí)間,因此有:(公式2)

Tdata/_path + Tsetup < = Tskew + Tclk

對于同步設(shè)計(jì)Tskew可忽略(認(rèn)為其值為0),因?yàn)镕PGA中的時(shí)鐘樹會盡量保證到每個(gè)寄存器的延遲相同。

公式中提到了建立時(shí)間,那保持時(shí)間在什么地方體現(xiàn)呢?

保持時(shí)間比較難理解,它的意思是reg1的輸出不能太快到達(dá)reg2,這是為了防止采到的新數(shù)據(jù)太快而沖掉了原來的數(shù)據(jù)。保持時(shí)間約束的是同一個(gè)時(shí)鐘邊沿,而不是對下一個(gè)時(shí)鐘邊沿的約束。


reg2在邊沿2時(shí)刻剛剛捕獲reg1在邊沿1時(shí)刻發(fā)出的數(shù)據(jù),若reg1在邊沿2時(shí)刻發(fā)出的數(shù)據(jù)過快到達(dá)reg2,則會沖掉前面的數(shù)據(jù)。因此保持時(shí)間約束的是同一個(gè)邊沿。


在時(shí)鐘沿到達(dá)之后,數(shù)據(jù)要保持Thold的時(shí)間,因此,要滿足:(公式3)

Tdata/_path = Tco + Tlogic + Trouting ≥ Tskew + Thold

這兩個(gè)公式是FPGA的面試和筆試中經(jīng)常問到的問題,因?yàn)檫@種問題能反映出應(yīng)聘者對時(shí)序的理解。

在公式1中,Tco跟Tsu一樣,也取決于芯片工藝,因此,一旦芯片型號選定就只能通過Tlogic和Trouting來改善Tclk。其中,Tlogic和代碼風(fēng)格有很大關(guān)系,Trouting和布局布線的策略有很大關(guān)系。

編輯:hfy


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

    關(guān)注

    31

    文章

    5294

    瀏覽量

    119814
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    1995

    瀏覽量

    61011
  • 時(shí)序路徑
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    1392
收藏 人收藏

    評論

    相關(guān)推薦

    使用IBIS模型進(jìn)行時(shí)序分析

    電子發(fā)燒友網(wǎng)站提供《使用IBIS模型進(jìn)行時(shí)序分析.pdf》資料免費(fèi)下載
    發(fā)表于 10-21 10:00 ?0次下載
    使用IBIS<b class='flag-5'>模型</b>進(jìn)行<b class='flag-5'>時(shí)序</b>分析

    FPGA電源時(shí)序控制

    電子發(fā)燒友網(wǎng)站提供《FPGA電源時(shí)序控制.pdf》資料免費(fèi)下載
    發(fā)表于 08-26 09:25 ?0次下載
    <b class='flag-5'>FPGA</b>電源<b class='flag-5'>時(shí)序</b>控制

    深度解析FPGA中的時(shí)序約束

    建立時(shí)間和保持時(shí)間是FPGA時(shí)序約束中兩個(gè)最基本的概念,同樣在芯片電路時(shí)序分析中也存在。
    的頭像 發(fā)表于 08-06 11:40 ?520次閱讀
    深度<b class='flag-5'>解析</b><b class='flag-5'>FPGA</b>中的<b class='flag-5'>時(shí)序</b>約束

    FPGA 高級設(shè)計(jì):時(shí)序分析和收斂

    結(jié)果當(dāng)然是要求系統(tǒng)時(shí)序滿足設(shè)計(jì)者提出的要求。 下面舉一個(gè)最簡單的例子來說明時(shí)序分析的基本概念。 假設(shè)信號需要從輸入到輸出在FPGA 內(nèi)部經(jīng)過一些邏輯延時(shí)和路徑延時(shí)。我們的系統(tǒng)要求這個(gè)
    發(fā)表于 06-17 17:07

    Xilinx FPGA編程技巧之常用時(shí)序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧之常用時(shí)序約束詳解,話不多說,上貨。 基本的約束方法 為了保證成功的設(shè)計(jì),所有路徑時(shí)序要求必須能夠讓執(zhí)行工具獲取。最普遍的三種
    發(fā)表于 05-06 15:51

    FPGA工程的時(shí)序約束實(shí)踐案例

    詳細(xì)的原時(shí)鐘時(shí)序、數(shù)據(jù)路徑時(shí)序、目標(biāo)時(shí)鐘時(shí)序的各延遲數(shù)據(jù)如下圖所示。值得注意的是數(shù)據(jù)路徑信息,其中包括Tco延遲和布線延遲,各級累加之后得到
    發(fā)表于 04-29 10:39 ?631次閱讀
    <b class='flag-5'>FPGA</b>工程的<b class='flag-5'>時(shí)序</b>約束實(shí)踐案例

    Xilinx FPGA編程技巧之常用時(shí)序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧之常用時(shí)序約束詳解,話不多說,上貨。 基本的約束方法為了保證成功的設(shè)計(jì),所有路徑時(shí)序要求必須能夠讓執(zhí)行工具獲取。最普遍的三種
    發(fā)表于 04-12 17:39

    fpga時(shí)序仿真和功能仿真的區(qū)別

    FPGA時(shí)序仿真和功能仿真在芯片設(shè)計(jì)和驗(yàn)證過程中各自扮演著不可或缺的角色,它們之間存在明顯的區(qū)別。
    的頭像 發(fā)表于 03-15 15:28 ?1895次閱讀

    時(shí)序電路的分類 時(shí)序電路的基本單元電路有哪些

    時(shí)序電路是一種能夠按照特定的順序進(jìn)行操作的電路。它以時(shí)鐘信號為基準(zhǔn),根據(jù)輸入信號的狀態(tài)和過去的狀態(tài)來確定輸出信號的狀態(tài)。時(shí)序電路廣泛應(yīng)用于計(jì)算機(jī)、通信系統(tǒng)、數(shù)字信號處理等領(lǐng)域。根據(jù)不同的分類標(biāo)準(zhǔn)
    的頭像 發(fā)表于 02-06 11:25 ?2273次閱讀

    Vivado時(shí)序問題分析

    有些時(shí)候在寫完代碼之后呢,Vivado時(shí)序報(bào)紅,Timing一欄有很多時(shí)序問題。
    的頭像 發(fā)表于 01-05 10:18 ?1780次閱讀

    硬件電路設(shè)計(jì)之時(shí)序電路設(shè)計(jì)

    上電時(shí)序(Power-up Sequeence)是指各電源軌上電的先后關(guān)系。 與之對應(yīng)的是下電時(shí)序,但是在電路設(shè)計(jì)過程中,一般不會去考慮下電時(shí)序(特殊的場景除外)。今天,我們主要了解一下上電時(shí)
    的頭像 發(fā)表于 12-11 18:17 ?2399次閱讀
    硬件電路設(shè)計(jì)<b class='flag-5'>之時(shí)序</b>電路設(shè)計(jì)

    電源時(shí)序規(guī)格:電源導(dǎo)通時(shí)的時(shí)序工作

    電源時(shí)序規(guī)格:電源導(dǎo)通時(shí)的時(shí)序工作
    的頭像 發(fā)表于 12-08 18:21 ?765次閱讀
    電源<b class='flag-5'>時(shí)序</b>規(guī)格:電源導(dǎo)通時(shí)的<b class='flag-5'>時(shí)序</b>工作

    基于FPGA時(shí)序分析設(shè)計(jì)方案

    時(shí)鐘的時(shí)序特性主要分為抖動(dòng)(Jitter)、偏移(Skew)、占空比失真(Duty Cycle Distortion)3點(diǎn)。對于低速設(shè)計(jì),基本不用考慮這些特征;對于高速設(shè)計(jì),由于時(shí)鐘本身的原因造成的時(shí)序問題很普遍,因此必須關(guān)注。
    發(fā)表于 11-22 09:29 ?648次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>時(shí)序</b>分析設(shè)計(jì)方案

    記錄一次時(shí)序收斂的過程

    在之前的文章里面介紹了Canny算法的原理和基于Python的參考模型,之后呢在FPGA上完成了Canny算法的實(shí)現(xiàn),可是遇到了時(shí)序不收斂的問題,記錄一下。
    的頭像 發(fā)表于 11-18 16:38 ?917次閱讀
    記錄一次<b class='flag-5'>時(shí)序</b>收斂的過程

    FPGA時(shí)序約束--基礎(chǔ)理論篇

    和時(shí)鐘偏差組成的。 二、時(shí)序路徑 時(shí)序路徑是指從FPGA輸入到輸出的所有邏輯路徑組成的
    發(fā)表于 11-15 17:41