跨時鐘域電路設計——亞穩態及雙鎖存器

一、同步電路

定義:電路中所有受時鐘控制的單元,全部由一個統一的時鐘控制。

優點:在同步設計中,EDA工具可以保證電路系統的時序收斂,避免電路設計中的競爭冒險。

缺點:時鐘樹綜合需要加入大量延遲單元,使電路面積和功耗大大增加。

?

二、異步電路

定義:電路數據傳輸可以在任一時刻發生,沒有一個統一的時鐘控制。

優點:模塊化特點突出,對信號延遲不敏感,沒有時鐘偏斜問題,低功耗的特性

缺點:設計復雜,缺少相應EDA工具支持

?

同步電路和異步電路的區別在于電路觸發是否與驅動時鐘同步,從行為上講,就是所有電路是否在同一時鐘沿下同步地處理數據。(《XilinxFPGA設計權威指南》P86~P91 )

即所說的同一個時鐘域或不同時鐘域,主要是針對時鐘源點來區分的。比如有好幾個時鐘,都是從一個PLL出來的,那這些時鐘的相位和倍數都是可控的,我們認為它們之間是同步時鐘。

目前大多大規模ASIC和SOC中,都采用全局異步,局部同步的方法。

?

三、方案概述

?

?

四、亞穩態

定義:觸發器無法在規定時間內達到一個可確認的狀態。

??

無法預測輸出的電平,也無法預測何時輸出才能穩定。

亞穩態無法從根本上消除,但可以采取一定的措施使其造成的影響降低。

?

五、快慢轉換

?

六、雙鎖存器

實際上為兩個觸發器。在一個信號進入另一個時鐘域之前,用兩個鎖存器連續鎖存兩次。

優點:結構簡單,易實現,面積消耗小。

缺點:增加兩級觸發器延時。從快時鐘域到慢時鐘域,易采樣丟失。

適用場景:慢時鐘域轉到快時鐘域。data_delta>clk_slow+2*clk_fast+path_delay,確保所有數據變化均能采集到。

結論:兩級觸發器已經將MTBF變得足夠大,再多觸發器影響電路效率。增加寄存器同步的方法為降低亞穩態出現的概率。

verilog代碼如下:

?

六、跨時鐘域電路設計參考書目

1.SOC設計方法與實現(第三版)郭煒等.

2.FPGA深度解析 樊繼明,陸錦宏.?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253884.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253884.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253884.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux setsockopt詳解

1.closesocket(一般不會立即關閉而經歷TIME_WAIT的過程)后想繼續重用該socket: BOOL bReuseaddrTRUE; setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL)); 2. 如果要已經處于連接狀態的soket在調用closes…

[TOOLS] 移動端調試進行時 - whistle

1、本地安裝、啟動whistle 安裝實操請查看官方文檔不贅述 復制代碼 2、手機設置代理 實操請查看官方文檔 !!!注意:代理ip填寫whistle右上角online選項中的ip 復制代碼 3、whistle上設置對應rules、weinre whistle設置代理(!!!注意支持tunnel協議): rules…

函數動態參數實現format

變量賦值一種是字符串格式化,一種是通過format的方式 1.字符串格式化 s"i am %s,age %d"%(Jasper,23)print(s)打印輸出:i am Jasper,age 232.format格式化 s"i am {name},age {age}".format(namejasper,age23)print(s)或 s2"i …

跨時鐘域電路設計——單bit信號

前面提到了簡單的雙電平鎖存器,下面是一些單bit同步電路。 一、慢時鐘域向快時鐘域 邊沿檢測同步器 將慢時鐘域的脈沖搬移并縮小為快時鐘域的脈沖。 既可以檢測上升沿,也可以檢測下降沿。 如上圖,慢時鐘下一個有效脈沖的最短周期為慢時鐘的…

數據同步 rsync+notify架構

rsync 同步命令,非常好用 notify是監控本地文件的變化的 、安裝配置 1. 安裝rsync,inotify-tools sudo apt-get install rsync inotify-tools 2. 拷貝rsync配置文件 mkdir /etc/rsync cp /usr/share/doc/rsync/examples/rsyncd.conf /etc/rsync/ 3. 服…

OC_KVC與KVO簡單介紹

KVC KVC概述 KVC 即 Key-value coding 鍵值編碼,是指iOS的開發中,可以允許開發者通過Key名直接訪問對象的屬性,或者給對象的屬性賦值。 KVC案例 interface Person : NSObjectproperty (nonatomic,assign) int age; property (nonatomic,copy)…

C語言100例01 PHP版(練習)

題目:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少? 程序分析:可填在百位、十位、個位的數字都是1、2、3、4。組成所有的排列后再去 掉不滿足條件的排列。 代碼: 1 for($i1;$i&l…

嵌入式根文件系統制作

1:文件系統分類: 基于flash的文件系統:flash有兩種,一種是NOR,另一種NAND。NOR型 FLASH主要用于存放程序。NAND型 FLASH主要用于存放數據。NOR的特點是可在芯片內執行。這樣應用程序可以直接在flash內存內運行,不必再把代碼讀到…

跨時鐘域電路設計——結繩法

信號從快時鐘域到慢時鐘域過渡時,慢時鐘可能無法對快時鐘變化太快的信號進行采樣。 之前的同步器法對兩個時鐘間的關系有要求,結繩法適用于任何時鐘域之間的過渡。 結繩法的原理是將快時鐘信號的脈沖周期延長,等到慢時鐘周期采樣后再“解繩”…

我之理解---計時器setTimeout 和clearTimeout

今天在寫個圖片切換的問題 有動畫滯后的問題,才動手去查setTimeout 和clearTimeout。之前寫的圖片播放器也有類似的問題,有自動start按鈕 和stop按鈕, 其他都正常,問題出在每次多次快速的點擊start按鈕時,圖片播放的速…

002服務提供者Eureka

1、POM配置 和普通Spring Boot工程相比&#xff0c;僅僅添加了Eureka、Spring Boot Starter Actuator依賴和Spring Cloud依賴管理 <dependencies><!--添加Eureka Server依賴--><dependency><groupId>org.springframework.cloud</groupId><art…

使用Busybox構造cramfs根文件系統

使用Busybox構造cramfs根文件系統 11.1、下載Busybox&#xff0c;如果系統中沒有mkcramfs工具則還要下載mkcramfs壓縮工具。本文件系統使用Busybox-1.10.1&#xff0c;cramfs-1.1。壓縮文件Busybox-1.10.1.tar.bz2&#xff0c;cramfs-1.1.tar.gz。 22.解壓文件&#xff1a; tar…

關于二維碼分塊上色(彩色二維碼)的算法研究

原文:關于二維碼分塊上色&#xff08;彩色二維碼&#xff09;的算法研究眾所周知&#xff0c;二維碼通常是黑白的&#xff0c;而且是由若干個長方形或正方形小塊平鋪而成。但從人們的審美角度來看&#xff0c;常見的黑白二維碼不免讓人審美疲勞。本文試著從分塊上色的角度對二維…

20145309信息安全系統設計基礎第12周學習總結后篇

指針與聲明 聲明 1、C語言中變量的聲明 類型&#xff08;type&#xff09; 聲明符&#xff08;declarator&#xff09; 2、最簡單的聲明是變量 3、指針數組 指針數組是一個數組數組里的元素都是指針例&#xff1a;int *daytab[13]4、數組指針 數組指針是一個指針指針指向一個類…

跨時鐘域電路設計——多bit信號FIFO

多個bit信號的跨時鐘域僅僅通過簡單的同步器同步時不安全的。 如下圖&#xff1a; 雖然信號都同步到目的時鐘域&#xff0c;可完成的功能卻與設計的初衷不相符。 解決方案之一為對信號進行格雷碼編碼&#xff0c;但此方案只適用于連續變化的信號。另一種方案為增加新的控制信號…

嵌入式linux系統中設備驅動程序

嵌入式linux系統中設備驅動程序是內核的一部分&#xff0c;完成對設備初始、讀寫操作和控制等功能。驅動程序隱藏了硬件設備的具體細節&#xff0c;對不同的設備提供一致的接口&#xff0c;這些接口通過file_Operation結構來定義&#xff0c;設計驅動程序的大部分工作就是根據硬…

WPF 打印實例

原文:WPF 打印實例在WPF 中可以通過PrintDialog 類方便的實現應用程序打印功能&#xff0c;本文將使用一個簡單實例進行演示。首先在VS中編輯一個圖形&#xff08;如下圖所示&#xff09;。 將需要打印的內容放入同一個<Canvas>中&#xff0c;并起名為“printArea”&…

mongodb 物理刪除數據

剛開始用mongodb的時候&#xff0c;感覺很好用&#xff0c;速度很快&#xff0c;不過后面就遇到一個問題&#xff0c;數據物理內存一直增加&#xff0c;刪除表也不管用。 然后網上找了各種辦法&#xff0c;最后發現一個辦法管用&#xff0c;就是物理刪除存儲數據。 操作如下&am…

計數排序、桶排序和基數排序

計數排序 當輸入的元素是 n 個 0 到 k 之間的整數時&#xff0c;它的運行時間是 Θ(n k)。計數排序不是比較排序&#xff0c;排序的速度快于任何比較排序算法。 由于用來計數的數組C的長度取決于待排序數組中數據的范圍&#xff08;等于待排序數組的最大值與最小值的差加上1&a…

靜態時序分析——基礎概念

一、簡述 靜態時序分析是檢查系統時序是否滿足要求的主要手段。以往時序的驗證依賴于仿真&#xff0c;采用仿真的方法&#xff0c;覆蓋率跟所施加的激勵有關&#xff0c;有些時序違例會被忽略。此外&#xff0c;仿真方法效率非常的低&#xff0c;會大大延長產品的開發周期。靜…