精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

芯片設計里的Multi-Bit FF方法討論

sanyue7758 ? 來源:艾思后端實現 ? 2023-05-08 09:34 ? 次閱讀

在現代的芯片設計里邊,工程師在優化功耗和面積上無所不有其極,這里討論的multi-bit FF 就是其中的一種方法或者稱之為一種流程。

MBIT FF vs signle bit FF

Multi-bit顧名思義就是將通常單bit的FF,封裝為一個多bit的FF,下面一起來看一下他們之間的異同:

單bit的asyn-clear scan-FF

b8b64c7c-ed1d-11ed-90ce-dac502259ad0.png

針對這種單bit的asyn-clear scan-FF,vendor提供了幾種多bit的asyn-clear scan-FF,

multi-bit2 asyn-clear scan-FF

b8e0964e-ed1d-11ed-90ce-dac502259ad0.png

multi-bit4 asyn-clear scan-FF

b90f1ae6-ed1d-11ed-90ce-dac502259ad0.png

multi-bit6 asyn-clear scan-FF

b9372e82-ed1d-11ed-90ce-dac502259ad0.png

multi-bit8 asyn-clear scan-FF

b958565c-ed1d-11ed-90ce-dac502259ad0.png

從cell的原理圖上看,multi-bit和signle-bit的區別很小,可以簡單理解為將多個signle-bit的FF并排放到了一起,對于scan chain,也天然的安裝順序連接到一起,簡單總結如下

b9a45fc0-ed1d-11ed-90ce-dac502259ad0.png

可以看到,這里會有三類pin是共享關系

clock pin

clean/reset pin

SI/SE pin

所以:由于scan是后插入的,這個對于multi-bit的封裝不敏感外,當且僅當某一組FF在功能上的clock和reset-clear是共享driver的時候,這一組FF才可以被二次封裝成為multi-bit FF

MBIT的優勢

由于MBIT對一些common pin的共享機制,由此帶來的優勢有:

基于共享機制,晶體管級別的面積優化

common pin的使用,減少layout連線損耗

clock tree的leaf變少,降低clock tree長度和功耗

在cell級別,以T12工藝為例,同樣功能(Scan D Flip-Flop with Async Clear, drive strenth: X1)的signle bit和MBIT的比較如下(PS:用多個單bit 直接搭建多bit 結構進行功耗面積的比對)

b9ddcd1e-ed1d-11ed-90ce-dac502259ad0.png

如果將signle bit 例化多次進行橫比,MBIT大體上都會在面積上:7.4% ~ 12.96%的提高幅度,功耗上:-3.93% ~ 7.32%左右的提升 在了解了multi-bit的機理后,這里需要一起梳理一下multi-bit的流程。

MBIT的流程

RTL 階段對MBIT的推進

在讀入RTL之前,DC里邊通過配置 hdlin參數:hdlin_infer_multibit 來對管理multi-bit的RTL階段的識別,

b9f1f55a-ed1d-11ed-90ce-dac502259ad0.png

上述三種方式,僅僅影響RTL mapping階段的multi-bit的識別和創建,言下之意:只對第一個compile_ultra (mapping)的結果有影響。 這里推薦的方案是:default_none

如果使用never:這個會完全忽略前端設計人員的意圖,可能會丟失directives的信息傳遞

如果使用default_all:這個會導致DC 會有一些自己研判的方法,會將multi-bit進行自己研判的替換,這里不會丟失設計者的directives,但是可能會對一些總線或者二維數組進行替換,這里會導致兩類問題

timing:在第一圈compile_ultra的時候,timing信息并非完整,此時進行multi-bit的替換,勢必會導致后續時需優化的障礙。過早打包可能還需要二次拆包

register的命名行為。如果RTL是這樣的二維數組定義


reg [7:0] mem[255:0] 正常情況下,DC會把這類二位數組mapping成:

mem_reg[255][7] mem_reg[255][6] ...... mem_reg[255][0] ...... mem_reg[0][7] mem_reg[0][6] ...... mem_reg[0][0] 如果,這個時候如果使用了default_all,DC analyze會對此類數組格式進行multi-bit封裝,最終DC compile_ultra生成的instance名字會變得比較奇怪,如下:

# use 4bit register bank mem_reg[255][7:4] ...... mem_reg[255][3:0] ...... mem_reg[0][7:4] ...... mem_reg[0][3:0]

這種命名方式會給formal帶來一些的障礙,也有可能帶來潛在的timing 隱患 小結:在RTL解析階段,把RTL directives和hdlin_infer_multibit =default_none結合使用,既尊重原著意思,也可以實現比較可控的multi-bit 替換。如果設計人員不確定哪些一定或者一定不需要去做multi-bit 替換,這里依然使用hdlin_infer_multibit =default_none,這樣在第一個RTL步驟,就之后對于RTL 設計人員的需求,在RTL 分析時進行multi-bit 綁定,但是并不一定會產生替換,前提是timing和控制都能滿足要求。

R2G里的MBIT的流程

從上面的描述可以看到,MBIT的替換主要是為了面積/功耗收益的同時,時序不受影響(不出violation)。所以在physical aware 的DCT完成后,進行替換,是比較合適的時機:

mapping和邏輯優化基本完成:ICG的影響已經帶入,MBIT的控制共享比較清晰

由于是physical aware的DCT,時序信息也基本清楚,這里整體進行MBIT替換可以最大限度的利用MBIT的優勢,如果后期(APR)有時序壓力,可以使用de-banking來進行降解MBIT,也是有二次操作空間

compile_ultra可以根據需求進行MBIT替換,但是需要遵循下列規則:

ba196cb6-ed1d-11ed-90ce-dac502259ad0.png

基于上述原理,用戶可以使用下面的簡單流程在綜合里邊進行MBIT的替換

ba98a544-ed1d-11ed-90ce-dac502259ad0.png

對MBIT操作的核心命令是:identify_register_banks,這個命令在第一步compile_ultra完成后,可以對DCT/DCG里的FF進行MBIT替換,除過cell之間的相同clock和控制位,identify_register_banks命令會將物理位置相近的FF進行MBIT替換,所以,從S家的R2G策略上將,為了保持良好的繼承性,用戶需要使用DCG流程+ ICC/ICC2 DEF flow(read_def + place_opt -skip_initial_placement)來完成MBIT的替換應用。

只有這樣才能把DCG替換FF的物理優勢繼承下來 當然,用戶也可以在ICC/ICC2 進行MBIT的替換,但是由于替換策略都是類似的,也是一定要有cell的初始布局后,才能進行替換,基本流程如下:

bac918c8-ed1d-11ed-90ce-dac502259ad0.png
這里的流程近似可以看作把place_opt進行了拆分,在第一步coarse placement 后,加入了MBIT的替換,用戶需要手動sorce 這個 腳本(和identify_register_banks類似的用法)進行MBIT替換,而后再繼續執行place_opt剩余的步驟。 無論是在synthesis還是layout階段,MBIT替換的方式主要是基于兩點:

timing

物理位置

只有在timing 有余量,并且物理位置接近的register,才會觸發工具的MBIT替換動作,這樣可以最大限度的降低對當前數據庫的影響,同時也能利用起MBIT的面積和功耗優勢

DC 中 MBIT 替換實例

以DCG為例,在第一步compile_ultra完成后,使用identify_register_banks進行MBIT 替換

替換前:

badf7e1a-ed1d-11ed-90ce-dac502259ad0.png

替換后:可以看到,新創建的MBIT位于原始兩個single bit的中間

bb26aff6-ed1d-11ed-90ce-dac502259ad0.png

命令運行日志:

bb86eab0-ed1d-11ed-90ce-dac502259ad0.png

這里會打印:

single bit cell 刪除信息

MBIT pin 連接信息

可以看到 這里的CLK/RB 等控制信號都是需要 同源的,工具也有內建的防錯機制,如果目標single bit的控制端有不同,會以PSYN-1203 的告警進行打印,確保功能不被影響:

bba4e542-ed1d-11ed-90ce-dac502259ad0.png

注:用戶可以通過set_multibit_option 來控制compile_ultra 命令的行為,這樣在綜合增量優化步驟里邊,工具可以根據set_multibit_option配置的情形,來做banking和de-banking的操作。

MBIT的命名和管腳映射

工具是通過 identify_register_banks 產生MBIT的替換腳本,對于總線,通常是按照升序的策略進行命名的,當然,由于這個是后處理腳本,用戶也可以自己進行修改,但是通常沒必要改變默認行為,以免對后續formal產生影響。簡單命令如下:

bbbc6d20-ed1d-11ed-90ce-dac502259ad0.png

對于合成后的MBIT cell,對應的Q輸出,也是沿用升序的方式:


A[0].Q -> MBIT_A[0]__A[1]__A[2]__A[3].Q1 A[1].Q -> MBIT_A[0]__A[1]__A[2]__A[3].Q2 A[2].Q -> MBIT_A[0]__A[1]__A[2]__A[3].Q3 A[3].Q -> MBIT_A[0]__A[1]__A[2]__A[3].Q4 MBIT通過這樣的命名方式,對于后續的formal mapping和gate-sim等工作是有一定幫助的。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片設計
    +關注

    關注

    15

    文章

    1001

    瀏覽量

    54812
  • RTL
    RTL
    +關注

    關注

    1

    文章

    385

    瀏覽量

    59703
  • DCT
    DCT
    +關注

    關注

    1

    文章

    56

    瀏覽量

    19852
  • PIN管
    +關注

    關注

    0

    文章

    36

    瀏覽量

    6313

原文標題:芯片設計里的Multi-Bit FF探究

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

收藏 人收藏

    評論

    相關推薦

    GC4344 24位音頻DAC 24位音頻數模轉換芯片 CS4344替代料GC4344

    4344 是一款立體聲音頻數模轉換芯片,內部集成數字插值濾波器、multi-bit 數模轉換器、輸出模擬濾波器。4344 支持大部分的音頻數據格式。 4344是基于一個線性模擬低通濾波器的四階
    發表于 04-21 15:29

    24bit,192KHz 雙通道數模轉換電路(MS4344)

    的 音頻數據格式。MS4344基于一個帶線性模擬低通濾波器的四階 multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率和主 時鐘頻率,在2KHz 和200KHz 之間自動調節采樣率
    發表于 01-10 17:10

    瑞盟MS5281D-24bit/192KHz雙通道差分音頻數模轉換芯片-頌揚恒(瑞盟一級代理)

    的四階multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率和主時鐘頻率,在2KHz 和200KHz之間自動調節采樣率。 MS5281D可以工作在3.3V和5V下。這些特性使它成為DVD播放
    發表于 12-29 11:22

    MS4344的相關資料下載

    multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率和主時鐘頻率,在2KHz 和200KHz 之間自動調節采樣率。MS4344可以工作在3.3V和5V下。這些特性使它成為DVD播放 解碼器、數字通信設備等無線設備的理想選擇。MS4344 采用 MSOP10 封
    發表于 01-07 07:19

    GC4344 是一款立體聲數模轉換芯片,24位DAC

    GC4344 是一款立體聲數模轉換芯片,內含插值濾波器、multi-bit 數模轉換器、輸出模擬濾波器。GC4344 支持大部分的音頻數據格式。GC4344 基于一個帶線性模擬低通濾波器的四階
    發表于 11-06 14:34

    FF現場總線系統設計與應用

    FF現場總線系統設計與應用一文圍繞FF現場總線系統工作流程、執行程序、實施原則等問題展開討論。還具體涉及到 FF現場總線 閥門定位器的設計過程與接線方式。
    發表于 07-15 17:27 ?55次下載
    <b class='flag-5'>FF</b>現場總線系統設計與應用

    立體聲數模轉換芯片MS4344規格書

    multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率和主 時鐘頻率,在2KHz 和200KHz 之間自動調節采樣率。 MS4344可以工作在3.3V和5V下。這些特性使它成為DVD播放 解碼器、數
    發表于 01-14 10:21 ?7次下載

    立體聲數模轉換芯片MS5281D規格書

    的四階multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率 和主時鐘頻率,在2KHz 和200KHz 之間自動調節采樣率。 MS5281D可以工作在3.3V和5V下。這些特性使它成為DVD 播放解
    發表于 01-14 10:23 ?5次下載

    Multi-bit Flip Flop(MBFF)修復技巧

    對于一些Timing比較Critical的Path,如果發現上面有一些Multi-bit Flip Flop(MBFF),那么可以考慮用這種方式來修復。
    的頭像 發表于 11-09 10:31 ?3407次閱讀

    DP4344音頻轉換芯片ACD/DAC完全兼容CS4344音頻解碼

    192K雙通道24位DA轉換器芯片DP4344低成本替換CS4344,支持2通道輸出! 簡介 DP4344是一款完整的2通道輸出數模轉換芯片,內含插值濾波器、Multi-Bit數模轉換器、輸出模擬
    發表于 02-06 15:18 ?1906次閱讀
    DP4344音頻轉換<b class='flag-5'>芯片</b>ACD/DAC完全兼容CS4344音頻解碼

    低功耗設計之multi-bit cell技術簡介

    所謂multi-bit cell,可以理解成把多個完全相同的cell合并在一個cell,如下圖所示,集成2bitmulti-bit cell的clock inverter是共享的,
    的頭像 發表于 02-12 10:52 ?4720次閱讀

    DP7344 192K 雙通道24位DA轉換器芯片

    產品概述 DP7344 是一款完整的2 通道輸出數模轉換芯片, 內含插值濾波器、Multi-Bit 數模轉換器、輸出模擬濾波器,并支持大部分的音頻數據格式。 DP7344 基于一個帶線性模擬
    發表于 03-30 09:38 ?593次閱讀

    MS4344—24bit,192KHz 雙通道DAC,兼容CS4344

    低通濾波器的四階multi-bitΔ-Σ調制器,而且本芯片可以通過檢測信號頻率和主 時鐘頻率,在2KHz 和200KHz 之間自動調節采樣率。 ? ? ? MS4344可以工作在3.3V和5V下。這些
    發表于 05-17 19:09 ?1041次閱讀
    MS4344—24<b class='flag-5'>bit</b>,192KHz 雙通道DAC,兼容CS4344

    芯片設計Multi-Bit FF探究

    在現代的芯片設計里邊,工程師在優化功耗和面積上無所不有其極,這里討論multi-bit FF 就是其中的一種方法或者稱之為一種流程。
    發表于 06-09 16:57 ?1405次閱讀
    <b class='flag-5'>芯片</b>設計<b class='flag-5'>里</b>的<b class='flag-5'>Multi-Bit</b> <b class='flag-5'>FF</b>探究

    立體聲數模轉換芯片GC4344的性能有哪些?

    GC4344 是一款立體聲數模轉換芯片,內含插值濾波器、multi-bit 數模轉換器、輸出模擬濾波器。GC4344 支持大部分的音頻數據格式。GC4344 基于一個帶線性模擬低通濾波器的四階
    的頭像 發表于 12-06 15:15 ?694次閱讀
    立體聲數模轉換<b class='flag-5'>芯片</b>GC4344的性能有哪些?