Re: [問題] 關於Clock Domain Crossing的基本觀念

看板Electronics作者 (Colin Shih)時間12年前 (2011/09/24 03:56), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《phifunction ()》之銘言: : 大家好 : 小弟在Clock Domain Crossing這邊有些觀念不是很清楚 : 想要請教各位大大 : 一般來說 : 只要是control signal (1-bit)在跨clock domain時 : 通常都是用兩級FF來做synchronize的動作 : 但是如果是bus的話 : 通常會用Asynchronous FIFO來處理 : 小弟不才 : 不懂為什麼在處理multi-bit的時候不能也用兩級FF來處理呢 : 找了一些paper : 好像都是直接說遇到multi-bit就是用Async. FIFO來處理 : 接著就探討FIFO的設計 : 不知道有沒有好心的大大可以指點一下小弟 > <" : 感恩不盡~~~ 對 sequ. logic, "synchronous" 指 signal transition 與 clock 具有 alignment. 無論 single bit, multi-bit bus, 經過 latch elements 而不改變邏輯 假設2-stage F/F 消除某 CDC 邏輯經過 asyn path 因 metastable 造成 latch undefine state, 此電路僅保證該 single-bit logic 經過 syncer. 非 0 即 1, 對於 multi-bit bus 而言, 不保證通過 2nd-stage F/Fs, 仍與前一 clock domain 所有邏輯相同, 故 synchronizer 不適合處理 multi-bit signals CDC 對於 multi-bit bus, 若其任意 transition period > signal CDC 時間 可用 mux-based synchronizer 處理, 使訊號完整跨過另一 clock domain 再度同步, valid bit CDC 可用 pulse-level 轉換, 不在乎 slow-to-fast 或是 fast-to-slow CDC -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.157.4

09/24 14:45, , 1F
謝謝大大詳細的回答 :)
09/24 14:45, 1F
文章代碼(AID): #1EVEI8GR (Electronics)
文章代碼(AID): #1EVEI8GR (Electronics)