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

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

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

STA分析—時(shí)序檢查

冬至子 ? 來(lái)源:知芯有道 ? 作者:武當(dāng)沸羊羊 ? 2023-07-05 15:07 ? 次閱讀

Setup和hold時(shí)間檢查

Setup時(shí)間是,為了寄存器可靠的采樣到數(shù)據(jù),數(shù)據(jù)必須提前于采樣時(shí)鐘沿穩(wěn)定的最小時(shí)間。Hold時(shí)間是,為了寄存器可靠的采樣到數(shù)據(jù),數(shù)據(jù)必須在采樣時(shí)鐘沿后穩(wěn)定的最小時(shí)間。

如圖一所示,周期T=1ns,該寄存器的setup要求時(shí)間是Tsetup=0.1ns,hold要求時(shí)間是Thold=0.1ns。setup時(shí)間檢查機(jī)制做這樣的檢查:上一個(gè)Launch時(shí)鐘沿打出來(lái)的數(shù)據(jù)的data arrival time(數(shù)據(jù)到達(dá)時(shí)間)不能晚于T - Tsetup = 0.9ns;而hold時(shí)間檢查機(jī)制做這樣的檢查:同一個(gè)周期的Launch時(shí)鐘沿打出來(lái)的數(shù)據(jù)的data arrival time(到達(dá)時(shí)間)不能早于Thold = 0.1ns。

同時(shí)滿足setup、hold時(shí)間要求的意義即是,在時(shí)鐘采樣沿的前后一段最小時(shí)間內(nèi),數(shù)據(jù)必須保存穩(wěn)定,以供寄存器可靠的采樣到上一拍發(fā)送過(guò)來(lái)的正確數(shù)據(jù)。

圖片

**圖一 ** setup 、 hold****時(shí)間檢查示意圖

我們把上篇文章的圖再貼過(guò)來(lái):

圖片

圖二 輯電路圖(含BC工作條件下的延遲信息

下面分析FFC1寄存器的setup、hold檢查過(guò)程:

上篇文章說(shuō)過(guò),到FFC1的D端2條邏輯路徑和4個(gè)path delay,分別是FFL1->FFC1的rise delay、FFL1->FFC1的fall delay、FFL2->FFC1的rise delay、FFL2->FFC1的fall delay。

以時(shí)鐘源頭作為起點(diǎn)的path delay等于data arrival time。 根據(jù)圖一,可以看出:

0****1

FFL1到FFC1的rise delay的data arrival time

T(FFL1->FFC1-rise)

= T(Launch-clock-tree) + T(data-path-rise)

=T(C00-rise) + T(UCKBUF0-rise) + T(C01-rise) + T(UCKBUF1-rise) + T(C05-rise) + T(FFL1_CK2Q-rise) + T(C1-rise) ~ ~ + D(UNAND1_A2Z-fall) + T(C2-fall) + T(UINV2-rise) + T(C3-rise) + T(UINV3-fall) + T(C4-fall) + T(UINV4-rise) + T(C5-rise)

= (0.05 + 0.05 + 0.05 + 0.05 + 0.05) + 0.1 + 0.1 + 0.1 + 0.05 + 0.08 + 0.05 + 0.05 + 0.05 + 0.08 + 0.05

= 0.96ns;

02

FFL1到FFC1的fall delay的data arrival time

T(FFL1->FFC1-fall)

= T(Launch-clock-tree) + T(data-path-fall)

=(0.05 + 0.05 + 0.05 + 0.05 + 0.05) + 0.1 + 0.1 + 0.08 + 0.05 + 0.1 + 0.05 + 0.04 + 0.05 + 0.1 + 0.05

= 0.97ns;

03

FFL2到FFC1的rise delay的data arrival time

T(FFL2->FFC1-rise)

= T(Launch-clock-tree) + T(data-path-rise)

=T(C00-rise) + T(UCKBUF0-rise) + T(C02-rise) + T(UCKBUF2-rise) + T(C06-rise) + T(FFL2_CK2Q-rise) + T(C6-rise) ~ ~ + D(UNAND1_B2Z-fall) + T(C2-fall) + T(UINV2-rise) + T(C3-rise) + T(UINV3-fall) + T(C4-fall) + T(UINV4-rise) + T(C5-rise)

= (0.05 + 0.05 + 0.05 + 0.05 + 0.05) + 0.1 + 0.1 + 0.09 + 0.05 + 0.08 + 0.05 + 0.05 + 0.05 + 0.08 + 0.05

= 0.95ns;

04

FFL2到FFC1的fall delay的data arrival time

T(FFL2->FFC1-fall)

= T(Launch-clock-tree) + T(data-path-fall)

=(0.05 + 0.05 + 0.05 + 0.05 + 0.05) + 0.1 + 0.1 + 0.07 + 0.05 + 0.1 + 0.05 + 0.04 + 0.05 + 0.1 + 0.05

= 0.96ns;

05

FFC1的setup requirement時(shí)間

T + T(Capture-clock-tree) - T(setup)

= T + T(C00-rise) + T(UCKBUF0-rise) + T(C03-rise) + T(UCKBUF3-rise) + T(C07-rise) - T(setup)

= 1ns + (0.05 + 0.05 + 0.05 + 0.05 + 0.05) – 0.1ns

= 1.15ns

06

FFC1的hold requirement時(shí)間

T(Capture-clock-tree) + T(hold)

= T(C00-rise) + T(UCKBUF0-rise) + T(C03-rise) + T(UCKBUF3-rise) + T(C07-rise) - T(setup)

= (0.05 + 0.05 + 0.05 + 0.05 + 0.05) + 0.1ns

= 0.35ns

做setup檢查時(shí),STA會(huì)遍歷計(jì)算所有到FFC1/D端路徑的data arrival time,然后將每個(gè)值與T + T(Capture-clock-tree) - T(setup)做運(yùn)算。以slack來(lái)表示余量,setup time slack = data require time – data arrival time = {T + T(Capture-clock-tree) - T(setup)} – {T(Launch-clock-tree) + T(data-path)}。只有當(dāng)所有Slack值都為正時(shí),才滿足setup時(shí)間要求。

類似的,做hold檢查時(shí),也是將每個(gè)data arrival time的值與T(Capture-clock-tree) + T(hold)做比較,以slack來(lái)表示余量,hold time slack = data arrival time - data require time = {T(Launch-clock-tree) + T(data-path)} - {T(Capture-clock-tree) + T(hold)}。只有當(dāng)所有Slack值都為正時(shí),才滿足hold時(shí)間要求。

上述4個(gè)path delay的Setup time slack分別為:

Setup time slack(1) = 1.15ns – 0.96ns = 0.19ns

Setup time slack (2) = 1.15ns – 0.97ns = 0.18ns

Setup time slack (3) = 1.15ns – 0.95ns = 0.20ns

Setup time slack (4) = 1.15ns – 0.96ns = 0.19ns

4條path delay的hold slack time分別為:

Hold time slack(1) = 0.96ns – 0.35ns = 0.61ns

Hold time slack(2) = 0.97ns – 0.35ns = 0.62ns

Hold time slack(3) = 0.95ns – 0.35ns = 0.60ns

Hold time slack(4) = 0.96ns – 0.35ns = 0.61ns

由于所有slack值都為正,故setup和hold時(shí)間檢查都滿足了。

時(shí)序路徑概念

STA分析時(shí),所有時(shí)序路徑都有起點(diǎn)和終點(diǎn),起點(diǎn)包括輸入端口和時(shí)序單元的時(shí)鐘端口,終點(diǎn)包括輸出端口和時(shí)序單元的數(shù)據(jù)輸入端口。所以總共有4種路徑集合,即:

a. 從輸入端口到輸出端口(IN To OUT);

b. 從輸入端口到時(shí)序單元的數(shù)據(jù)輸入端口(IN To REG);

c. 從時(shí)序單元的時(shí)鐘端口到時(shí)序單元的數(shù)據(jù)輸入端口(REG To REG);

d. 從時(shí)序單元的時(shí)鐘端口到輸出端口(REG To OUT)。

4種時(shí)序路徑請(qǐng)見圖三:

圖片

圖三 時(shí)序路徑

Timing Arc 概念

如圖三所示,每個(gè)cell都存在多條Timing Arc,如UNAND1存在A->Z和B->Z這2條Timing Arc。FFC1也存在CK->Q和CK->D 2條Timing Arc。

其中UNAND1的A->Z和B->Z是組合路徑Timing Arc。FFC1的CK->Q是edge Timing Arc,F(xiàn)FC1的CK->D又含setup arc和hold arc。

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

    關(guān)注

    31

    文章

    5275

    瀏覽量

    119678
  • FFC
    FFC
    +關(guān)注

    關(guān)注

    0

    文章

    58

    瀏覽量

    17598
  • STA
    STA
    +關(guān)注

    關(guān)注

    0

    文章

    51

    瀏覽量

    18930
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

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

    VIVADO時(shí)序約束及STA基礎(chǔ)

    時(shí)序約束的目的就是告訴工具當(dāng)前的時(shí)序狀態(tài),以讓工具盡量?jī)?yōu)化時(shí)序并給出詳細(xì)的分析報(bào)告。一般在行為仿真后、綜合前即創(chuàng)建基本的時(shí)序約束。Vivad
    的頭像 發(fā)表于 03-11 14:39 ?9596次閱讀

    靜態(tài)時(shí)序分析STA的優(yōu)點(diǎn)以及缺點(diǎn)分別有哪些呢

    靜態(tài)時(shí)序分析STA是什么?靜態(tài)時(shí)序分析STA的優(yōu)點(diǎn)以及缺點(diǎn)分別有哪些呢?
    發(fā)表于 11-02 07:51

    靜態(tài)時(shí)序分析在高速 FPGA設(shè)計(jì)中的應(yīng)用

    介紹了采用STA (靜態(tài)時(shí)序分析)對(duì)FPGA (現(xiàn)場(chǎng)可編程門陣列)設(shè)計(jì)進(jìn)行時(shí)序驗(yàn)證的基本原理,并介紹了幾種與STA相關(guān)聯(lián)的
    發(fā)表于 05-27 08:58 ?70次下載
    靜態(tài)<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>在高速 FPGA設(shè)計(jì)中的應(yīng)用

    時(shí)序分析基本概念——STA概述簡(jiǎn)析

    時(shí)序分析基本概念介紹——STA概述,動(dòng)態(tài)時(shí)序分析,主要是通過(guò)輸入向量作為激勵(lì),來(lái)驗(yàn)證整個(gè)設(shè)計(jì)的時(shí)序
    的頭像 發(fā)表于 12-14 17:01 ?2.9w次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>基本概念——<b class='flag-5'>STA</b>概述簡(jiǎn)析

    靜態(tài)時(shí)序分析基礎(chǔ)與應(yīng)用

    STA的簡(jiǎn)單定義如下:套用特定的時(shí)序模型(Timing Model),針對(duì)特定電路分析其是否違反設(shè)計(jì)者給定的時(shí)序限制(Timing Constraint)。以
    發(fā)表于 04-03 15:56 ?10次下載

    FPGA進(jìn)行靜態(tài)時(shí)序分析

    靜態(tài)時(shí)序分析簡(jiǎn)稱STA,它是一種窮盡的分析方法,它按照同步電路設(shè)計(jì)的要求,根據(jù)電路網(wǎng)表的拓?fù)浣Y(jié)構(gòu),計(jì)算并檢查電路中每一個(gè)DFF(觸發(fā)器)的建
    發(fā)表于 09-01 10:45 ?3185次閱讀
    FPGA進(jìn)行靜態(tài)<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>

    正點(diǎn)原子FPGA靜態(tài)時(shí)序分析時(shí)序約束教程

    靜態(tài)時(shí)序分析檢查芯片時(shí)序特性的一種方法,可以用來(lái)檢查信號(hào)在芯片中的傳播是否符合時(shí)序約束的要求。
    發(fā)表于 11-11 08:00 ?62次下載
    正點(diǎn)原子FPGA靜態(tài)<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>與<b class='flag-5'>時(shí)序</b>約束教程

    基本的時(shí)序約束和STA操作流程

    一、前言 無(wú)論是FPGA應(yīng)用開發(fā)還是數(shù)字IC設(shè)計(jì),時(shí)序約束和靜態(tài)時(shí)序分析STA)都是十分重要的設(shè)計(jì)環(huán)節(jié)。在FPGA設(shè)計(jì)中,可以在綜合后和實(shí)現(xiàn)后進(jìn)行
    的頭像 發(fā)表于 08-10 09:33 ?5501次閱讀
    基本的<b class='flag-5'>時(shí)序</b>約束和<b class='flag-5'>STA</b>操作流程

    FPGA靜態(tài)時(shí)序分析詳解

    靜態(tài)時(shí)序分析簡(jiǎn)稱STA,它是一種窮盡的分析方法,它按照同步電路設(shè)計(jì)的要求,根據(jù)電路網(wǎng)表的拓?fù)浣Y(jié)構(gòu),計(jì)算并檢查電路中每一個(gè)DFF(觸發(fā)器)的建
    的頭像 發(fā)表于 09-27 14:45 ?2723次閱讀

    STA-0.靜態(tài)時(shí)序分析概述

    靜態(tài)時(shí)序分析(Static Timing Analysis, 以下統(tǒng)一簡(jiǎn)稱 **STA** )是驗(yàn)證數(shù)字集成電路時(shí)序是否合格的一種方法,其中需要進(jìn)行大量的數(shù)字計(jì)算,需要依靠工具進(jìn)行,但
    的頭像 發(fā)表于 06-27 11:43 ?877次閱讀
    <b class='flag-5'>STA</b>-0.靜態(tài)<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>概述

    靜態(tài)時(shí)序分析的相關(guān)概念

    ??本文主要介紹了靜態(tài)時(shí)序分析 STA。
    的頭像 發(fā)表于 07-04 14:40 ?1226次閱讀
    靜態(tài)<b class='flag-5'>時(shí)序</b><b class='flag-5'>分析</b>的相關(guān)概念

    什么是時(shí)序路徑timing path呢?

    今天我們要介紹的時(shí)序分析概念是 **時(shí)序路徑** (Timing Path)。STA軟件是基于timing path來(lái)分析timing的。
    的頭像 發(fā)表于 07-05 14:54 ?1978次閱讀
    什么是<b class='flag-5'>時(shí)序</b>路徑timing path呢?

    STA分析-從一個(gè)案例開始

    靜態(tài)時(shí)序分析STA)是用來(lái)分析數(shù)字電路是否滿足時(shí)序目標(biāo)的技術(shù)手段之一。比如,檢查CPU電路是否
    的頭像 發(fā)表于 07-05 15:01 ?1630次閱讀
    <b class='flag-5'>STA</b><b class='flag-5'>分析</b>-從一個(gè)案例開始

    STA分析—延遲計(jì)算

    從上篇文章,我們可以很明顯的看出STA的兩大因素,一個(gè)是延遲計(jì)算,一個(gè)是約束檢查。
    的頭像 發(fā)表于 07-05 15:04 ?2418次閱讀
    <b class='flag-5'>STA</b><b class='flag-5'>分析</b>—延遲計(jì)算