總線半握手跨時鐘域處理
簡要概述:
在上一篇講了單bit脈沖同步器跨時鐘處理,本文講述控制信號基于脈沖同步機制的總線單向握手跨時鐘域處理。由于是單向握手,所以比全握手同步效率高一些。
總線半握手同步器應用場景:
適用有脈沖控制信號的總線跨時鐘域處理,不適用電平控制信號。慢到快,快到慢均可,大多數應用于快到慢的場景,尤其是頻率比較大時,同步時間不僅要滿足單bit脈沖同步器的同步時間,還要保證脈沖同步后采集是更新前總線數據。
總線半握手同步器原理框圖:
總線半握手同步器跨時鐘域原理圖如下所示,內部使用了脈沖同步器跨時鐘處理機制來處理總線對應的控制信號。因為總線數據沒有參與同步過程,所以需要輸入的總線數據在控制信號變化時才更新,其他時間鎖存原來的值。這樣使得同步后的控制信號信號能采集到對應的總線數據。
總線半握手總線同步器仿真測試 :
場景:快到慢, 源時鐘100Mhz 目的時鐘 25Mhz ,RATIO 比例設置為4(實際展寬了5倍)。
從上圖中可以看出,源總線對應的控制信號src_vld_d1間隔是有要求的,同步之后的脈沖src_vld_sync 必須在前后兩個脈沖之間,否則會導致前級同步后的脈沖采集到下級鎖存的數據,如圖紅色箭頭,本應采集數據是8’h10而實際誤采集了8’h1e。
總線半握手與總線全握手對比:
1.效率:全握手不管快到慢還是慢到快其同步時間為6個慢速時鐘。
半握手快到慢其同步時間為4個慢速時鐘。(100Mhz->25Mhz)
2.接口:全握手沒有對應的控制信號,握手信號上電解復位后即可工作起來,
半握手信號有對應有脈沖控制信號,內部通過脈沖同步器握手。
3.應用:全握手適用總線沒有對應控制信號的場景,比如一些靜態配置信號。
半握手適用總線有對應控制信號的場景,比如慢速的數據流信號。
易錯點:把控制信號(脈沖)和總線拼接后,錯誤使用全握手同步器處理,而沒有使用內有脈沖采樣機制的半握手同步器處理。
原文標題:CDC(三)總線半握手跨時鐘域處理
文章出處:【微信公眾號:FPGA自習室】歡迎添加關注!文章轉載請注明出處。
責任編輯:haq
-
同步器
+關注
關注
1文章
95瀏覽量
14617
原文標題:CDC(三)總線半握手跨時鐘域處理
文章出處:【微信號:FPGA_Study,微信公眾號:FPGA自習室】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論