隨著實習面試的臨近、秋招的逐步靠近,愈發(fā)覺得知識需要成系統(tǒng),讓它們串接起來。不然,太容易忘了
1、單比特信號
1.1電平同步
當我們需要在兩個時鐘域間傳輸一個電平信號,這里的電平信號表示信號能夠維持一定的時間(如在原時鐘域內(nèi)至少維持兩個周期),可以采用兩個觸發(fā)器打拍。
類似下面這種,持續(xù)一定時間,能在亞穩(wěn)態(tài)穩(wěn)定后采樣到穩(wěn)定的值,即第一個周期可能同步失敗,但第二個周期有機會采樣穩(wěn)定的值,不發(fā)生亞穩(wěn)態(tài)
1.2、脈沖同步
當信號在發(fā)送端時鐘域內(nèi)只能持續(xù)一個周期時,可以稱為脈沖信號。要注意的是,發(fā)送的是脈沖,收到的也應該是脈沖。
為了讓脈沖能夠被接收端采樣,可以將脈沖信號在發(fā)送時鐘域內(nèi)變成電平信號。即采樣到in_pulse為1,則翻轉Q,將脈沖變成邊沿。
只要脈沖有足夠的間隔,就能保證接收端能夠邊沿檢測,從而輸出一個接收時鐘周期的脈沖
1.3 握手
很顯然,上面兩種方式不存在接收方對發(fā)送方的反饋。
也可以使用握手協(xié)議,確保一筆一筆的完成傳輸,只有完成一筆傳輸,才會改變數(shù)據(jù)。
見:握手信號傳輸跨時鐘域數(shù)據(jù)
1.4 展寬
當信號寬度不夠,可以使用展寬的方法,如在發(fā)送域打拍,然后取或
2、多bit
2.1 異步FIFO
使用異步FIFO傳輸數(shù)據(jù)--格雷碼計數(shù)器實現(xiàn)
使用異步FIFO傳輸數(shù)據(jù)--對以前的強烈批判
2.2 多路復用
DMUX數(shù)據(jù)有效會搭配一個標志信號data_ready,對標志信號進行同步,將同步后的標志信號作為MUX的選通信號。
在發(fā)送時鐘域內(nèi),標志信號和數(shù)據(jù)是同步的,在同步器內(nèi),標志信號同步有延遲。這樣即使數(shù)據(jù)和標志信號在接收時鐘上升沿附近變化,data_ready可能發(fā)生亞穩(wěn)態(tài),亞穩(wěn)態(tài)結束后,同步后的標志信號可以正常工作。而數(shù)據(jù)在這些延遲內(nèi),能夠達到穩(wěn)定,即接收方采樣的data是不變的,當然不會違反建立保持時間
這要求當data_ready=1時,data要保持
換種方式,我們可以將標志信號作為于觸發(fā)器使能端。道理是類似的,en=0,并不會使能觸發(fā)器的采樣
2.3 握手
和單bit類似,協(xié)議讓數(shù)據(jù)維持足夠的時間
2.4 雙口RAM
雙口RAM可以同時讀寫
增加讀寫控制邏輯,很像異步FIFO,不多說
3、收斂
當出現(xiàn)信號的合流時,如下圖所示,dataa和datab將經(jīng)過組合邏輯變成1bit。由于組合邏輯的延遲不同,可能出現(xiàn)毛刺,可能傳輸?shù)藉e誤的信號,
解決辦法就是發(fā)送方再打拍
還要注意的是,兩級同步后,也應該避免多比特使用組合邏輯,原因在于亞穩(wěn)態(tài)恢復的數(shù)據(jù)不確定
4、發(fā)散
當信號要作用于接收方的不同邏輯時,即有多個扇出,由于傳播延時和不同的亞穩(wěn)態(tài)解決時間meta-stable settling time,輸出也可能不同。
因此只能先同步然后使用,避免分別同步使用
審核編輯:湯梓紅
-
脈沖
+關注
關注
20文章
884瀏覽量
95539 -
fifo
+關注
關注
3文章
387瀏覽量
43551 -
信號
+關注
關注
11文章
2780瀏覽量
76629 -
Mux
+關注
關注
0文章
38瀏覽量
23352 -
時鐘域
+關注
關注
0文章
52瀏覽量
9529
原文標題:跨時鐘域梳理
文章出處:【微信號:Hack電子,微信公眾號:Hack電子】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論