在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

修改寄存器默認值的方法

我快閉嘴 ? 來源:ExASIC ? 作者:ExASIC ? 2022-09-28 14:13 ? 次閱讀

一、DFF的類型介紹

寄存器默認值,也叫復位值,是當reset或者set有效時寄存器輸出的值。對于一個DFF來說,如下圖,當reset為0時,Q輸出0;當set為0時,Q輸出為1(外部使用時保證reset與set不同時為0)。

65302b4e-3ef0-11ed-9e49-dac502259ad0.png

(圖一)

也就是說,當需要復位值為1時,把set拉低;當需要復位值為0時,把reset拉低,如下圖。一般來說寄存器的默認值不是1就是0,所以接死掉的reset和set pin就可以省掉。

6546d1b4-3ef0-11ed-9e49-dac502259ad0.png

(圖二)

因此,stdcell庫里的dff可以分成以下幾種:

DFFSR,同時帶set和reset pin

DFFR,只帶reset pin

DFFS,只帶set pin

另外,QN是Q的取反,很多時候只需要用到其中的一個,所以QN也不一定有。總結成下表:

帶QN 不帶QN
DFFSRN DFFSR
DFFRN DFFR
DFFSN DFFS

(表一)

二、修改默認值的方法

方法一:如果DFF同時帶RN和SN,交換RN和SN的連線

這種方法最簡單,premask和postmask eco都適用。但一般自動綜合工具是不會同時用同時帶RN和SN的DFF的,因為這樣面積不是最優(yōu)。所以需要在綜合階段人為強制讓綜合工具只用同時帶RN和SN的DFF,如果面積不是瓶頸的情況下。

方法二:如果只帶RN或者SN,換DFF類型(Premask ECO)

在Premask ECO時,我們完全可以像重新綜合的網(wǎng)表一樣直接換DFF類型。這種方法對于premask eco非常友好,不需要增加邏輯單元,也不會惡化時序。

方法三:如果只帶RN或者SN,互換DFF(Postmask ECO)

在Postmask ECO時,我們沒辦法隨意替換DFF類型。因為DFF的個數(shù)和類型是固定的,這時只能修改金屬層。

如果修改默認值的兩個dff,一個需要“0變1”,另一個需要“1變0”,且這兩個dff物理位置很近,那么可以互換這兩個dff的連線。如果是同一個時鐘域、復位域,那么就只需要交換D、RN(SN)、Q/QN這三組pin。

這個方法除了上面提到的限制,還有如果“0變1”和“1變0”的dff個數(shù)不相等,那么就無法完全交換成功。

方法四:如果只帶RN或者SN,D和Q端插inverter(Postmask ECO)

這是一種普遍適用的方法,只需要在D和Q端各插一個inverter。如果帶QN,又可以省一個inverter。如下圖,通過反相器可以等價變換只帶RN或SN的DFF。

65532176-3ef0-11ed-9e49-dac502259ad0.png

(圖三)

656ca272-3ef0-11ed-9e49-dac502259ad0.png

(圖四)

這種替換方法操作簡單,易實現(xiàn),不會帶來連線擁擠,利于DRC收斂。因為不需要修改時鐘pin,不會動到時鐘樹,只需要數(shù)據(jù)通路插入一個inverter,所以對時序影響也非常小。

但這個方法也會帶來一個問題,就是在做LEC(邏輯等價性檢查)時,需要讓工具開啟phase inversion的檢測,不然會報很多虛假non equal。

三、使用GOF來自動修改寄存器的默認值

方法二:換DFF類型(Premask ECO)

set_top("digital_top");run_lec;fix_design();run_lec();report_eco;

GOF默認就是用換DFF類型的方法,所以自動ECO腳本比較簡潔,讀進library和design后,先run_lec確認待eco的點是否正確,接下來做ECO,做完后再運行一次run_lec確認是否eco成功。

方法四:D和Q端插inverter(Postmask ECO)

set_top("digital_top");set_flop_default_eco(1);run_lec;fix_design();set_top("digital_top");set_mapping_method("-phase");run_lec();report_eco;

與方法二相比,需要設置修改寄存器的方式后,再做ECO。做完ECO后需要設置phase inversion,讓工具自動檢測phase inversion的keypoint,以防虛假的non equal。

審核編輯:湯梓紅

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

    關注

    31

    文章

    5363

    瀏覽量

    121198
  • dff
    dff
    +關注

    關注

    0

    文章

    26

    瀏覽量

    3451

原文標題:談談修改寄存器默認值的幾種方法和實現(xiàn)

文章出處:【微信號:ExASIC,微信公眾號:ExASIC】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如果使用HSM更改SMU寄存器默認值

    啟動完成(在 HSM 內核中運行),它會跳轉到引導加載程序軟件(在 Tricore 中運行),然后我們找到了 SMU 寄存器默認值(SUMAG0/1/2 等.,) 已更改,如下所示。 但是 HSM
    發(fā)表于 01-29 06:31

    stm32 SPI接口為什么無法修改寄存器?如何解決?

    ADS131M04,現(xiàn)在碰到現(xiàn)象是SPI讀到的寄存器數(shù)據(jù)均為正常默認值,寫進入待機模式命令回復的數(shù)據(jù)是0X0022,也是正確的,修改CLOCK寄存器后立即讀回來參數(shù)也是正確的,但是再讀
    發(fā)表于 11-27 07:18

    AFE4404沒有接外部時鐘,4404寄存器的為初始,能夠通過IIC修改寄存器嗎?

    1、首先AFE4404寄存器默認使用外部時鐘,CLK引腳是否必須要先接一個時鐘,通過修改寄存器改為內部時鐘,然后再停止外部時鐘?? 2、假如沒有接外部時鐘,4404
    發(fā)表于 12-06 06:35

    adxl355無法寫入配置寄存器,一直是默認值,為什么?

    Debug可以看到讀的id都正常,但再給相關寄存器寫入后,無法正常配置。一直是默認值
    發(fā)表于 12-19 08:46

    AFE4400的CNTROL0寄存器的SPI_READ位設置成1才能讀取寄存器,讀完了想修改寄存器怎么辦?

    AFE4400的CNTROL0寄存器的SPI_READ位設置成1才能讀取寄存器,那讀完了想修改寄存器怎么辦呢,這個時候是read
    發(fā)表于 01-14 08:09

    AD7195配置寄存器默認值與實際不同

    急求:AD7195配置寄存器默認值0X000117 +-39.06mv,實際0X000116實際測量范圍+-78.125。G0位修改后,還是0。
    發(fā)表于 01-15 06:37

    怎樣將LIS3DH寄存器的內容重置為開機默認值呢?

    我正在使用 LIS3DH 加速度計。我想通過軟件方法將所有寄存器內容重置為開機默認值。我知道重啟電源會將寄存器的內容重置為默認值,但我正在尋
    發(fā)表于 12-22 06:04

    IMX6在啟動時寄存器并不總是默認值的原因?

    )。 很快:看起來設備在從 mmc 啟動數(shù)據(jù)后進入 USB 下載模式。看上面的題目。它有很多有趣的圖片。))現(xiàn)在我嘗試用 uuu 讀取不同的寄存器。并且發(fā)現(xiàn)有些寄存器沒有默認值,并且
    發(fā)表于 03-31 06:31

    可以修改單片機寄存器默認值嗎?

    可以修改單片機寄存器默認值
    發(fā)表于 10-23 07:20

    使用FPGA通過SPI總線控制AD9266寄存器,可以回讀寄存器默認值,但是無法改變寄存器怎么解決?

    使用FPGA通過SPI總線控制AD9266寄存器,可以回讀寄存器默認值,但是無法改變寄存器。 不知道有沒有人遇到過同樣的問題。 程序是
    發(fā)表于 12-13 08:29

    STM32單片機修改寄存器的位操作方法(全網(wǎng)最全)

    使用 C語言對寄存器賦值時,我們常常要求只修改寄存器的某幾位的,且其它的寄存器位不變,這個時候我們就需要用到 C 語言的位操作
    發(fā)表于 11-19 09:06 ?33次下載
    STM32單片機<b class='flag-5'>修改寄存器</b>的位操作<b class='flag-5'>方法</b>(全網(wǎng)最全)

    修改寄存器默認值方法有哪些

    寄存器默認值,也叫復位,是當reset或者set有效時寄存器輸出的。對于一個DFF來說,如下圖,當reset為0時,Q輸出0;當set為
    的頭像 發(fā)表于 01-30 16:30 ?2478次閱讀
    <b class='flag-5'>修改寄存器</b><b class='flag-5'>默認值</b>的<b class='flag-5'>方法</b>有哪些

    修改寄存器默認值有幾種方法

    寄存器默認值,也叫復位,是當reset或者set有效時寄存器輸出的。對于一個DFF來說,如下圖,當reset為0時,Q輸出0;當set為
    的頭像 發(fā)表于 05-05 14:28 ?2609次閱讀
    <b class='flag-5'>修改寄存器</b><b class='flag-5'>默認值</b>有幾種<b class='flag-5'>方法</b>?

    應用筆記|直接修改寄存器來輸出內部時鐘的方法

    關鍵字:MCO,手動修改寄存器 目錄預覽 1 在特殊情況下使能 MCO 功能的方法 2 具體實現(xiàn) 3 總結 1. 在特殊情況下使能 MCO 功能的方法 在對某些不容易復現(xiàn)的問題進行代碼調時,需要觀察
    的頭像 發(fā)表于 06-13 17:35 ?986次閱讀
    應用筆記|直接<b class='flag-5'>修改寄存器</b>來輸出內部時鐘的<b class='flag-5'>方法</b>

    直接修改寄存器來輸出內部時鐘的方法

    電子發(fā)燒友網(wǎng)站提供《直接修改寄存器來輸出內部時鐘的方法.pdf》資料免費下載
    發(fā)表于 09-19 15:43 ?0次下載
    直接<b class='flag-5'>修改寄存器</b>來輸出內部時鐘的<b class='flag-5'>方法</b>
    主站蜘蛛池模板: 人人洗澡人人洗澡人人 | 日本番囗 | 啪啪色视频 | 日本a级免费 | 亚洲视频入口 | 亚洲区在线播放 | 中文字幕区 | 毛片免费高清免费 | 亚洲人免费视频 | 国产精品久久久久久福利 | 亚色在线| 九九热免费在线观看 | 国产亚洲精品激情都市 | 真实子伦视频不卡 | 国产亚洲欧美日韩俺去了 | 免费观看国产网址你懂的 | 国产成人亚洲综合a∨婷婷 国产成人一区二区三中文 国产成人一区二区在线不卡 | 在线观看亚洲人成网站 | 国产三级国产精品国产普男人 | 亚洲欧美在线精品一区二区 | 九九re| 国产福利资源在线 | 手机免费在线视频 | 黄色片网站大全 | 深夜视频免费在线观看 | 日本三级香港三级三级人!妇久 | 小雪被撑暴黑人黑人与亚洲女人 | 黄色1级视频 | 国产经典一区 | 亚洲欧美一区二区三区在线播放 | 在线免费观看毛片网站 | 91激情网 | 么公的好大好硬好深好爽在线视频 | 亚洲已满18点击进入在线观看 | 免费人成黄页在线观看日本 | 国产拍拍拍精品视频 | japan高清视频乱xxxxx | 午夜三级网 | 天天操夜夜添 | bt在线天堂| 女上男下边吃奶边做视频成都 |