在高速數(shù)字系統(tǒng)中,跨時(shí)鐘域(CDC)數(shù)據(jù)傳輸是導(dǎo)致亞穩(wěn)態(tài)和數(shù)據(jù)丟失的主要風(fēng)險(xiǎn)源。傳統(tǒng)同步方法(如兩級(jí)觸發(fā)器)在時(shí)鐘頻率差異超過(guò)5倍或數(shù)據(jù)位寬大于8位時(shí),失效概率顯著上升。格雷碼(Gray Code)因其相鄰數(shù)值僅有一位變化的特性,成為解決多比特CDC傳輸?shù)睦硐敕桨?。本文以電機(jī)控制系統(tǒng)的位置反饋為例,系統(tǒng)闡述格雷碼編解碼在跨時(shí)鐘域傳輸中的實(shí)現(xiàn)方法與性能優(yōu)勢(shì)。
在博客中看到過(guò)一次格雷碼生成算法,我在這里也想寫(xiě)一下。原文中的算法為:假設(shè)已經(jīng)生成了k位格雷碼,那么k+1位格雷碼的生成方式為(1) 按序在k位格雷碼前插入一位0,生成一組編碼,(2)按逆序在k位格雷