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

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

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

在timing path中為何ICG的delay跟一個(gè)組合邏輯似的?

冬至子 ? 來源:志芯 ? 作者:Jack Xu ? 2023-11-23 17:21 ? 次閱讀

ICG結(jié)構(gòu)知識(shí)

ICG timing check 的瓶頸

在不人工干預(yù)的情況下,tool默認(rèn)會(huì)嘗試把reg1的CK pin和Reg2的CK pin做平。但是靜態(tài)時(shí)序分析時(shí),reg1→ICG也會(huì)做時(shí)序check;所以,ICG會(huì)天然存在一個(gè)很大的clock skew,導(dǎo)致建立時(shí)間違例。

image.png

如何解決呢?

在place階段,在ICG的CK pin設(shè)置一個(gè)負(fù)的latency,這個(gè)負(fù)的latency的值可以大概等于CTS之后T3的delay大??;這樣就可以讓tool在給reg1的CK pin的樹長(zhǎng)識(shí)別時(shí),會(huì)盡力將T1(即reg1的launch path)做短至少T3(ICG→reg2的時(shí)鐘樹長(zhǎng)度)的大小。

Place階段工具也會(huì)考慮時(shí)鐘樹skew引入的時(shí)序問題,讓某些cell盡可能的靠近和不要在path上過多插入delay。

Innovus命令:

set_cloCK_latency -0.300 [get_pins ICG/CK]

在CTS階段,在Reg1的CK pin上設(shè)置一個(gè)insert delay,這就是所謂的floating pin,這個(gè)insert delay的值大概也等于CTS后T3(ICG→reg2的時(shí)鐘樹長(zhǎng)度)的大小。

Innovus命令:

set_ccopt_property insertion_delay 0.300 -pin reg1/CK

在timing path中為何ICG的delay跟一個(gè)組合邏輯似的

如下圖所示,ICG在reg2icg的timing path中只體現(xiàn)一個(gè)組合邏輯的delay。其實(shí)icg就是一個(gè)組合邏輯。

image.png

芯片工作時(shí),時(shí)鐘電平本身一直在高低變化,因?yàn)榫д癫粫?huì)停止振動(dòng);但I(xiàn)CG的ENABLE信號(hào)是固定在高電平1(開啟模塊時(shí)鐘)或者低電平0(關(guān)斷模塊時(shí)鐘)。

ICG的兩個(gè)輸入端一個(gè)是ENABLE信號(hào),一個(gè)是clock信號(hào),因?yàn)镋NABLE的電平是固定的(例如固定在高電平1),所以每個(gè)時(shí)鐘周期內(nèi)鎖存器向后面輸出的信號(hào)一直是固定的(信號(hào)電平等于ENABLE 信號(hào)電平),ICG的delay大概就是一個(gè)鎖存器環(huán)路的delay(結(jié)合鎖存器結(jié)構(gòu)一看便知)。

為何在timing path中ICG一般不體現(xiàn)timing borrow

ICG可以是latch + AND組成;或reg + AND組成。肯定要用一個(gè)時(shí)序器件,因?yàn)镮CG的ENABLE信號(hào)是上一級(jí)reg產(chǎn)生的,這樣就和ICG組成了兩級(jí)同步電路,可以規(guī)避亞穩(wěn)態(tài)的風(fēng)險(xiǎn)。

為什們ICG一般用latch + AND組合,而不是reg + AND組合呢?我個(gè)人理解,一方面latch的面積更小,功耗更低;另一方面,ICG上很容易有建立時(shí)間違例,latch有半個(gè)時(shí)鐘周期的timing borrow可以用,可以作為ICG時(shí)序瓶頸的“緊急鑰匙”。

那為什么ICG 的timing borrow一般不打開呢?因?yàn)槿绻蜷_了,ICG就由邊沿觸發(fā)check變成電平觸發(fā)check,采集到亞穩(wěn)態(tài)的概率增大,可能導(dǎo)致clock信號(hào)不穩(wěn)定,影響電路狀態(tài)。

在INNOVUS中怎么打開ICG timing check的timing borrow:

image.png

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

    關(guān)注

    8

    文章

    906

    瀏覽量

    41542
  • 同步電路
    +關(guān)注

    關(guān)注

    1

    文章

    60

    瀏覽量

    13315
  • 時(shí)鐘樹
    +關(guān)注

    關(guān)注

    0

    文章

    55

    瀏覽量

    10773
  • CTS
    CTS
    +關(guān)注

    關(guān)注

    0

    文章

    35

    瀏覽量

    14117
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    組合邏輯太多了

    我的代碼通道得到了奇怪的邏輯,而且有些人認(rèn)為它很明顯,因?yàn)槟承┑胤降?b class='flag-5'>組合邏輯太多了。我更改了些代碼并添加了少量DFF,然后邏輯似乎是正確的
    發(fā)表于 05-15 06:42

    【技巧分享】時(shí)序邏輯組合邏輯的區(qū)別和使用

    時(shí)鐘上升沿信號(hào)后才會(huì)輸出信號(hào)c。 波形圖層面,我們可以畫出時(shí)序圖來分析,如下圖所示。可以看出第一個(gè)時(shí)鐘時(shí)a=1,b=2,此時(shí)組合邏輯立刻得出c=3,是
    發(fā)表于 03-01 19:50

    FPGA何時(shí)用組合邏輯或時(shí)序邏輯

    FPGA的最小單元往往是由LUT(等效為組合邏輯)和觸發(fā)器構(gòu)成。 進(jìn)行FPGA設(shè)計(jì)時(shí),應(yīng)該采用組合邏輯設(shè)計(jì)還是時(shí)序
    發(fā)表于 03-06 16:31

    Timing Groups and OFFSET Const

    Timing Groups and OFFSET Constraints: •Use the Constraints Editor to create groups of path
    發(fā)表于 01-11 08:55 ?4次下載

    Path-Specific Timing Constrain

    Path-Specific Timing Constraints:Constraining Between Risingand Falling Clock Edges•
    發(fā)表于 01-11 08:56 ?10次下載

    Skew Correction Using Delay Li

    Abstract: This application note describes using delay lines to correct system timing or "skew
    發(fā)表于 04-22 11:21 ?1291次閱讀
    Skew Correction Using <b class='flag-5'>Delay</b> Li

    個(gè)簡(jiǎn)單的組合邏輯編寫

    個(gè)簡(jiǎn)單的組合邏輯編寫 實(shí)驗(yàn)內(nèi)容:完成實(shí)驗(yàn)內(nèi)容:
    發(fā)表于 02-08 14:37 ?1015次閱讀

    邏輯分析儀Timing-State存儲(chǔ)方式的應(yīng)用

    本內(nèi)容介紹了邏輯分析儀Timing-State存儲(chǔ)方式的應(yīng)用
    發(fā)表于 09-22 14:26 ?14次下載
    <b class='flag-5'>邏輯</b>分析儀<b class='flag-5'>中</b><b class='flag-5'>Timing</b>-State存儲(chǔ)方式的應(yīng)用

    組合邏輯電路設(shè)計(jì)步驟詳解(教程)

    組合邏輯電路的設(shè)計(jì)與分析過程相反,本文小編主要大家介紹下關(guān)于組合邏輯電路的設(shè)計(jì)步驟,順便回顧
    發(fā)表于 01-30 16:46 ?12.2w次閱讀
    <b class='flag-5'>組合</b><b class='flag-5'>邏輯</b>電路設(shè)計(jì)步驟詳解(教程)

    EDA技術(shù)組合邏輯電路的設(shè)計(jì)概述

    組合邏輯電路的設(shè)計(jì)就是將實(shí)際的,有因果關(guān)系的問題用個(gè)較合理、經(jīng)濟(jì)、可靠的邏輯電路來實(shí)現(xiàn)。般來
    發(fā)表于 01-21 16:46 ?2954次閱讀
    EDA技術(shù)<b class='flag-5'>在</b><b class='flag-5'>組合</b><b class='flag-5'>邏輯</b>電路<b class='flag-5'>中</b>的設(shè)計(jì)概述

    不同VT cell的delay差異

    Path1容易出現(xiàn)hold問題,path2容易出現(xiàn)setup問題;如果在path1和path2的commen part修timing就會(huì)導(dǎo)致
    的頭像 發(fā)表于 10-18 09:36 ?4248次閱讀

    組合邏輯電路的危害

    本文介紹開發(fā)組合邏輯電路時(shí)可能發(fā)生的意外開關(guān)事件,稱為危險(xiǎn)。 本文是關(guān)于使用邏輯門進(jìn)行組合電路設(shè)計(jì)和仿真的介紹性系列文章的第二部分。在上
    的頭像 發(fā)表于 01-27 14:18 ?1728次閱讀
    <b class='flag-5'>組合</b><b class='flag-5'>邏輯</b>電路<b class='flag-5'>中</b>的危害

    數(shù)字電路組合邏輯電路設(shè)計(jì)步驟詳解

    數(shù)字電路組合邏輯電路的設(shè)計(jì)與分析過程相反,本文小編主要大家介紹下關(guān)于組合
    的頭像 發(fā)表于 02-03 09:56 ?5808次閱讀

    如何做條合格的path?同path物理設(shè)計(jì)不同階段的變化

    Delay值是多少才算合格呢?這篇開始講解路徑(Path)的概念,以及衡量Path Delay是否合格的標(biāo)準(zhǔn)----建立時(shí)間(setup
    的頭像 發(fā)表于 06-27 14:12 ?1229次閱讀
    如何做<b class='flag-5'>一</b>條合格的<b class='flag-5'>path</b>?同<b class='flag-5'>一</b>條<b class='flag-5'>path</b><b class='flag-5'>在</b>物理設(shè)計(jì)不同階段的變化

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

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