99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

時(shí)序分析的基本步驟介紹

lPCU_elecfans ? 來源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-10-13 10:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

時(shí)序分析的基本步驟

一個(gè)合理的時(shí)序約束,可以分為以下步驟:

時(shí)序約束整體的思路與之前我說的方法基本一致。整體的思路如下:

1. 先是約束時(shí)鐘,讓軟件先解決內(nèi)部時(shí)序問題;(在這一步驟中可以適當(dāng)加入時(shí)序例外,以便時(shí)序通過)

2. 然后再加入IO的延遲約束;

3. 最后針對(duì)沒有過的時(shí)序,添加時(shí)序例外。

在《vivado使用誤區(qū)與進(jìn)階》中,提到了一種叫 UltraFAST 的設(shè)計(jì)方法。針對(duì)下圖中所說的根據(jù)迭代結(jié)果添加必要的例外約束(步驟1),為什么是添加必要的呢?是因?yàn)殡m然是跨時(shí)鐘域,但是有時(shí)候就算不約束,時(shí)序也能過。當(dāng)碰到時(shí)序不過的時(shí)候,現(xiàn)階段可以去針對(duì)該部分路徑進(jìn)行時(shí)序例外約束,以便后續(xù)繼續(xù)分析。需要注意的是,就算沒有報(bào)時(shí)序?yàn)槔?,現(xiàn)階段也一定要去留意那些跨時(shí)鐘的路徑(通過clock_interaction),確認(rèn)代碼有沒有做相應(yīng)的跨時(shí)鐘域處理。針對(duì)跨時(shí)鐘域的代碼處理后面會(huì)提到。

定義時(shí)鐘約束

時(shí)鐘主要可以分為主時(shí)鐘以及衍生時(shí)鐘。

創(chuàng)建主時(shí)鐘。典型的主時(shí)鐘根包括有以下幾種情況:輸入端口、千兆位收發(fā)器輸出引腳以及某些硬件原語輸出管腳。

約束實(shí)例 :

create_clock -name SysClk -period 10 -waveform {0 5} [get_ports sysclk]

GT 收發(fā)器輸入引腳,例如已恢復(fù)的時(shí)鐘。

約束實(shí)例 :

create_clock -name txclk -period 6.667 [get_pin gt0/TXOUTCLK]

創(chuàng)建生成時(shí)鐘

自動(dòng)衍生時(shí)鐘

大部分生成時(shí)鐘都由 Vivado 設(shè)計(jì)套件時(shí)序引擎自動(dòng)衍生獲得,該引擎可識(shí)別時(shí)鐘修改模塊 (CMB)及其對(duì)主時(shí)鐘所執(zhí)行的變換。賽靈思 7 系列器件中,CMB 是 :

? MMCM*/ PLL*

? BUFR

? PHASER*

如果 Vivado 設(shè)計(jì)套件時(shí)序引擎所選擇的自動(dòng)衍生時(shí)鐘名稱并不合適,您可以使用 create_generated_clock 命令強(qiáng)行定義自己的名稱,此時(shí)無需指定波形轉(zhuǎn)換。該約束應(yīng)剛好位于約束文件中定義主時(shí)鐘的約束之后。例如,由 MMCM 實(shí)例生成的時(shí)鐘的默認(rèn)名稱是 net0,您可以添加如下約束強(qiáng)制將其設(shè)定為自己的名稱(例如fftClk):

create_generated_clock -name fftClk [get_pins mmcm_i/CLKOUT0]

生成時(shí)鐘源自另一個(gè)現(xiàn)有時(shí)鐘(主時(shí)鐘)。通常用來描述由邏輯模塊在主時(shí)鐘上執(zhí)行的波形變換。由于生成時(shí)鐘的定義取決于主時(shí)鐘特性,因此必須首先定義主時(shí)鐘。要明確定義生成時(shí)鐘,必須使用 create_generated_clock 命令。

create_generated_clock -name GC1 -source [get_pins gen_clk_reg/C] -divide_by 2 [get_pins gen_clk_reg/Q]

跨時(shí)終域處理

跨時(shí)鐘域處理,主要是為了避免亞穩(wěn)態(tài)的傳播(注意亞穩(wěn)態(tài)不能消除,但是可以采用一定的方式,降低其傳播的風(fēng)險(xiǎn))。觸發(fā)器進(jìn)入亞穩(wěn)態(tài)的時(shí)間可以用參數(shù)MTBF(Mean Time Between Failures)來描述,MTBF即觸發(fā)器采樣失敗的時(shí)間間隔,表示為:

例如針對(duì)單bit數(shù)據(jù)的跨時(shí)鐘域處理,是為了讓MTBF增大,使得進(jìn)入一個(gè)可接受范圍。

*跟大家探討一個(gè)問題,為什么打兩拍就可以降低亞穩(wěn)態(tài)的傳播呢?

我想到的一個(gè)場景如下:

信號(hào)a經(jīng)過跨時(shí)鐘處理后變成了a’;這樣就可以確保在時(shí)序滿足的前提下,同一個(gè)時(shí)鐘域中的1、2、3模塊接收到的a’的值是一致的,如果不做跨時(shí)鐘域處理,由于布局布線的延遲不一樣,不能確保到達(dá)1、2、3模塊的值是一致的,從而導(dǎo)致邏輯混亂,引起系統(tǒng)的不穩(wěn)定現(xiàn)象。

IO的延遲約束

輸入延遲

外部器件發(fā)送數(shù)據(jù)到FPGA系統(tǒng)模型如下圖所示。對(duì)FPGA的IO口進(jìn)行輸入最大最小延時(shí)約束是為了讓FPGA設(shè)計(jì)工具能夠盡可能的優(yōu)化從輸入端口到第一級(jí)寄存器之間的路徑延遲,使其能夠保證系統(tǒng)時(shí)鐘可靠的采到從外部芯片到FPGA的信號(hào)。

輸入延時(shí)即為從外部器件發(fā)出數(shù)據(jù)到FPGA輸入端口的延時(shí)時(shí)間。其中包括時(shí)鐘源到FPGA延時(shí)和到外部器件延時(shí)之差、經(jīng)過外部器件的數(shù)據(jù)發(fā)送Tco,再加上PCB板上的走線延時(shí)。如下圖所示,為外部器件和FPGA接口時(shí)序。

最大輸入延時(shí)(input delay max)為當(dāng)從數(shù)據(jù)發(fā)送時(shí)鐘沿(lanuch edge)經(jīng)過最大外部器件時(shí)鐘偏斜(Tclk1),最大的器件數(shù)據(jù)輸出延時(shí)(Tco),再加上最大的PCB走線延時(shí)(Tpcb),減去最小的FPGA時(shí)鐘偏移(FTsu)的情況下還能保證時(shí)序滿足的延時(shí)。這樣才能保證FPGA的建立時(shí)間,準(zhǔn)確采集到本次數(shù)據(jù)值,即為setup slack必須為正,計(jì)算公式如下式所示:

Setup slack =(Tclk + Tclk2(min))–(Tclk1(max)+Tco(max)+Tpcb(max)+FTsu)≥0(1)

最小輸入延時(shí)(input delay min)為當(dāng)從數(shù)據(jù)發(fā)送時(shí)鐘沿(lanuch edge)經(jīng)過最小外部器件時(shí)鐘偏斜(Tclk1),最小器件數(shù)據(jù)輸出延時(shí)(Tco),再加上最小PCB走線延時(shí)(Tpcb),此時(shí)的時(shí)間總延時(shí)值一定要大于FPGA的最大時(shí)鐘延時(shí)和建立時(shí)間之和,這樣才能不破壞FPGA上一次數(shù)據(jù)的保持時(shí)間,即為hold slack必須為正,計(jì)算公式如下式所示:

Hold slack =(Tclk1(min)+ Tco(min)+ Tpcb(min))–(FTh + Tclk2(max))≥ 0(2)

我們很容易就可以從公式(1)和(2)推到出(3)

Tclk – Ftsu ≥Tclk1 -Tclk2 + Tco+ Tpcb ≥ FTh(3)

在公式(3)中,我們發(fā)現(xiàn)Tclk 、Ftsu以及FTh,對(duì)于工具來說是已知的,而Tclk1 - Tclk2 + Tco + Tpcb正是我們需要告知綜合工具的延遲量。

從我們推到出的公式,我們可以得到:

Input_delay_max = Tclk – Ftsu;

Input_delay_min = FTh;

輸出延遲

FPGA輸出數(shù)據(jù)給外部器件模型如下圖所示。對(duì)FPGA的IO口進(jìn)行輸出最大最小延時(shí)約束是為了讓FPGA設(shè)計(jì)工具能夠盡可能的優(yōu)化從第一級(jí)寄存器到輸出端口之間的路徑延遲,使其能夠保證讓外部器件能準(zhǔn)確的采集到FPGA的輸出數(shù)據(jù)。

輸出延時(shí)即為從FPGA輸出數(shù)據(jù)后到達(dá)外部器件的延時(shí)時(shí)間。其中包括時(shí)鐘源到FPGA延時(shí)和到外部器件延時(shí)之差、PCB板上的走線延時(shí)以及外部器件的數(shù)據(jù)建立和保持時(shí)間。如所示,為FPGA和外部器件接口時(shí)序圖。

最大輸出延時(shí)(output delay max)為當(dāng)從FPGA數(shù)據(jù)發(fā)出后經(jīng)過最大的PCB延時(shí)、最小的FPGA和器件時(shí)鐘偏斜,再加上外部器件的建立時(shí)間。約束最大輸出延時(shí),是為了約束IO口輸出,從而使外部器件的數(shù)據(jù)建立時(shí)間,即為setup slack必須為正,計(jì)算公式如下式所示:

Setup slack =(Tclk + Tclk2(min))–(Tclk1(max)+FTco(max)+Tpcb(max)+Tsu)≥0(4)

最小輸出延時(shí)(output delay min)為當(dāng)從FPGA數(shù)據(jù)發(fā)出后經(jīng)過最小的PCB延時(shí)、最大的FPGA和器件時(shí)鐘偏斜,再減去外部器件的建立時(shí)間。約束最小輸出延時(shí),是為了約束IO口輸出,從而使IO口輸出有個(gè)最小延時(shí)值,防止輸出過快,破壞了外部器件上一個(gè)時(shí)鐘的數(shù)據(jù)保持時(shí)間,導(dǎo)致hlod slack為負(fù)值,不能正確的鎖存到數(shù)據(jù),最小輸出延時(shí)的推導(dǎo)計(jì)算公式如下式所示:

Hold slack =(Tclk1(min)+ FTco(min)+ Tpcb(min))–(Th + Tclk2(max))≥ 0(5)

我們很容易就可以從公式(4)和(5),發(fā)現(xiàn)這兩條公式與前面推導(dǎo)輸入延遲如出一轍。只不過現(xiàn)在FPGA變成了輸出器件,而Tsu、Th是下游器件的參數(shù),綜合工具并不知情,需要我們告訴他。除了FTco以外,其他參數(shù)都需要我們告訴工具。

由公式(4)我們可以推導(dǎo)出:

FTco(max)+ Tpcb(max)–(Tclk2(min)– Tclk1(max)+Tsu ≤Tclk

那么output delay max= Tpcb(max)–(Tclk2(min)– Tclk1(max)+Tsu

同理我們由公式(5)可以推導(dǎo)出:

FTco(min)+ Tpcb(min)–(Tclk2(max)– Tclk1(min))– Th ≥ 0

那么output delay min =Tpcb(min)–(Tclk2(max)– Tclk1(min))– Th

為了幫助學(xué)員能夠更深入地掌握FPGA系統(tǒng)設(shè)計(jì)與實(shí)際應(yīng)用。編者給大家準(zhǔn)備了FPGA系列學(xué)習(xí)電子書籍,包括了CPLD/Verilog編程語言基礎(chǔ)與設(shè)計(jì),數(shù)字IC、基本邏輯、組合邏輯等基礎(chǔ)電路,Vivado平臺(tái)開發(fā)與調(diào)試、集成開發(fā)環(huán)境使用及相關(guān)技巧,F(xiàn)PGA數(shù)字信號(hào)處理、數(shù)字圖像處理及各種FPGA實(shí)戰(zhàn)項(xiàng)目設(shè)計(jì)案例等等。

1.Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程

本書從算法和計(jì)算的基本概念出發(fā),講述如何用硬線邏輯電路實(shí)現(xiàn)復(fù)雜數(shù)字邏輯系統(tǒng)的方法。全書共分三部分。部分內(nèi)容共18章;二部分共12個(gè)上機(jī)練習(xí)實(shí)驗(yàn)范例;三部分是Verilog硬件描述語言參考手冊(cè),可供讀者學(xué)習(xí)、查詢之用。本書2版后,在語法篇中增加了IEEE Verilog1364-2001標(biāo)準(zhǔn)簡介,以反映Verilog語法的新變化。

2.數(shù)字電路與邏輯設(shè)計(jì)

本書系統(tǒng)地闡述了邏輯電路的基礎(chǔ)理論--邏輯函數(shù)及其數(shù)學(xué)工具;重點(diǎn)討論了邏輯電路的設(shè)計(jì)方法和分析方法;詳細(xì)介紹了通用性強(qiáng)的幾類中、大規(guī)模集成器件,并結(jié)合實(shí)例介紹了它們?cè)诟黝I(lǐng)域中的應(yīng)用;對(duì)可編程邏輯器件及其硬件描述語言也進(jìn)行了系統(tǒng)介紹。


全書共10章,主要內(nèi)容有:邏輯函數(shù)、集成邏輯門、組合邏輯電路、集成觸發(fā)器、時(shí)序邏輯電路、硬件描述語言、半導(dǎo)體存儲(chǔ)器、可編程邏輯器件、脈沖單元電路、模數(shù)及數(shù)模轉(zhuǎn)換技術(shù)等。各章均附有內(nèi)容提要、小結(jié)、思考題和習(xí)題。

3.Vivado從此開始

本書涵蓋了Vivado的四大主題:設(shè)計(jì)流程、時(shí)序約束、設(shè)計(jì)分析和Tcl腳本的使用,結(jié)合實(shí)例深入淺出地闡述了Vivado的使用方法,精心總結(jié)了Vivado在實(shí)際工程應(yīng)用中的一些技巧和注意事項(xiàng),既包含圖形界面操作方式,也包含相應(yīng)的Tcl命令。本書語言流暢,圖文并茂。全書共包含405張圖片、17個(gè)表格、172個(gè)Tcl腳本和39個(gè)HDL代碼,同時(shí),本書配有41個(gè)電子教學(xué)課件,為讀者提供了直觀而生動(dòng)的資料。本書可供電子工程領(lǐng)域內(nèi)的本科高年級(jí)學(xué)生和研究生學(xué)習(xí)參考,也可供FPGA工程師和自學(xué)者參考使用。

4.Xilinx新一代FPGA設(shè)計(jì)套件Vivado應(yīng)用指南

本書系統(tǒng)論述了新一代FPGA設(shè)計(jì)套件Vivado的性能、使用方法以及FPGA的開發(fā)方法。全書內(nèi)容包括Vivado設(shè)計(jì)套件的特性,全面可編程FPGA器件的架構(gòu),使用Vivado套件創(chuàng)建復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì)項(xiàng)目,仿真系統(tǒng)功能,RTL分析產(chǎn)生網(wǎng)表文件,性能要求的時(shí)序約束及綜合,布局布線及靜態(tài)時(shí)序分析和生成位流文件等全部設(shè)計(jì)過程,基于項(xiàng)目和非項(xiàng)目批作業(yè)兩種用Tcl指令的設(shè)計(jì)模式,同步設(shè)計(jì)技術(shù)、HDL編碼技術(shù)、時(shí)序收斂和HI.S優(yōu)化DSP算法等關(guān)鍵技術(shù),并以實(shí)例介紹了嵌入式系統(tǒng)的設(shè)計(jì)方法等。

責(zé)任編輯人:CC

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

    關(guān)注

    2

    文章

    127

    瀏覽量

    23796

原文標(biāo)題:FPGA工程師進(jìn)階必學(xué):時(shí)序分析的基本步驟和整體設(shè)計(jì)思路

文章出處:【微信號(hào):elecfans,微信公眾號(hào):電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    同步時(shí)序邏輯電路

    同步時(shí)序邏輯電路:本章系統(tǒng)的講授同步時(shí)序邏輯電路的工作原理、分析方法和設(shè)計(jì)方法。從同步時(shí)序邏輯電路模型與描述方法開始,介紹同步
    發(fā)表于 09-01 09:06 ?0次下載

    時(shí)序約束與時(shí)序分析 ppt教程

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

    時(shí)序分析基本概念介紹——時(shí)序庫Lib,除了這些你還想知道什么?

    時(shí)序分析基本概念介紹——時(shí)序庫Lib。用于描述物理單元的時(shí)序和功耗信息的重要庫文件。lib庫是最基本的時(shí)
    的頭像 發(fā)表于 12-15 17:11 ?1.3w次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>基本概念<b class='flag-5'>介紹</b>——<b class='flag-5'>時(shí)序</b>庫Lib,除了這些你還想知道什么?

    時(shí)序邏輯電路分析有幾個(gè)步驟(同步時(shí)序邏輯電路的分析方法)

    分析時(shí)序邏輯電路也就是找出該時(shí)序邏輯電路的邏輯功能,即找出時(shí)序邏輯電路的狀態(tài)和輸出變量在輸入變量和時(shí)鐘信號(hào)作用下的變化規(guī)律。上面講過的時(shí)序
    發(fā)表于 01-30 18:55 ?12.8w次閱讀
    <b class='flag-5'>時(shí)序</b>邏輯電路<b class='flag-5'>分析</b>有幾個(gè)<b class='flag-5'>步驟</b>(同步<b class='flag-5'>時(shí)序</b>邏輯電路的<b class='flag-5'>分析</b>方法)

    關(guān)于Vivado時(shí)序分析介紹以及應(yīng)用

    時(shí)序分析在FPGA設(shè)計(jì)中是分析工程很重要的手段,時(shí)序分析的原理和相關(guān)的公式小編在這里不再介紹,這
    發(fā)表于 09-15 16:38 ?7512次閱讀
    關(guān)于Vivado<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b><b class='flag-5'>介紹</b>以及應(yīng)用

    時(shí)序分析基本概念介紹

    今天我們要介紹時(shí)序分析概念是Combinational logic. 中文名組合邏輯單元。這是邏輯單元的基本組成器件。比如我們常見的and, or, not, nand,nor等門電路。
    的頭像 發(fā)表于 05-14 17:27 ?6010次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>基本概念<b class='flag-5'>介紹</b>

    時(shí)序約束的步驟分析

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

    時(shí)序分析的靜態(tài)分析基礎(chǔ)教程

    本文檔的主要內(nèi)容詳細(xì)介紹的是時(shí)序分析的靜態(tài)分析基礎(chǔ)教程。
    發(fā)表于 01-14 16:04 ?14次下載
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>的靜態(tài)<b class='flag-5'>分析</b>基礎(chǔ)教程

    介紹時(shí)序分析的基本概念lookup table

    今天要介紹時(shí)序分析基本概念是lookup table。中文全稱時(shí)序查找表。
    的頭像 發(fā)表于 07-03 14:30 ?2172次閱讀
    <b class='flag-5'>介紹</b><b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>的基本概念lookup table

    時(shí)序分析概念min pulse width介紹

    今天我們要介紹時(shí)序分析概念是 **min pulse width** ,全稱為最小脈沖寬度檢查。這也是一種非常重要的timing arc check,經(jīng)常用在時(shí)序器件或者memory
    的頭像 發(fā)表于 07-03 14:54 ?4228次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>概念min pulse width<b class='flag-5'>介紹</b>

    AOCV時(shí)序分析概念介紹

    今天我們要介紹時(shí)序分析概念是 **AOCV** 。全稱Stage Based Advanced OCV。我們知道,在OCV分析過程中,我們會(huì)給data path,clock path
    的頭像 發(fā)表于 07-03 16:29 ?2561次閱讀
    AOCV<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>概念<b class='flag-5'>介紹</b>

    介紹時(shí)序分析基本概念MMMC

    今天我們要介紹時(shí)序分析基本概念是MMMC分析(MCMM)。全稱是multi-mode, multi-corner, 多模式多端角分析模式。
    的頭像 發(fā)表于 07-04 15:40 ?3386次閱讀
    <b class='flag-5'>介紹</b><b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>基本概念MMMC

    時(shí)序分析Slew/Transition基本概念介紹

    今天要介紹時(shí)序分析基本概念是Slew,信號(hào)轉(zhuǎn)換時(shí)間,也被稱為transition time。
    的頭像 發(fā)表于 07-05 14:50 ?4449次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>Slew/Transition基本概念<b class='flag-5'>介紹</b>

    PLC時(shí)序圖的設(shè)計(jì)步驟

    電器硬件的工作中而引申出來的,借用它可以分析與確定相關(guān)的邏輯量間的時(shí)序關(guān)系。采用時(shí)序圖法設(shè)計(jì) PLC 程序的一般步驟如下:
    的頭像 發(fā)表于 10-05 09:55 ?6394次閱讀

    集成電路設(shè)計(jì)中靜態(tài)時(shí)序分析介紹

    本文介紹了集成電路設(shè)計(jì)中靜態(tài)時(shí)序分析(Static Timing Analysis,STA)的基本原理、概念和作用,并分析了其優(yōu)勢(shì)和局限性。 ? 靜態(tài)
    的頭像 發(fā)表于 02-19 09:46 ?615次閱讀