在傳遞讀寫時(shí)鐘域的指針使用格雷碼來(lái)傳遞,如何把二進(jìn)制轉(zhuǎn)換為格雷碼,格雷碼是如何判斷讀空寫滿呢?
二進(jìn)制碼轉(zhuǎn)換成二進(jìn)制格雷碼,其法則是保留二進(jìn)制碼的最高位作為格雷碼的最高位,而次高位格雷碼為二進(jìn)制碼的高位與次高位相異或,而格雷碼其余各位與次高位的求法相類似。
這樣就可以實(shí)現(xiàn)二進(jìn)制到格雷碼的轉(zhuǎn)換了,總結(jié)就是移位并且異或,verilog代碼實(shí)現(xiàn)就一句:assign wgraynext = (wbinnext>>1) ^ wbinnext。
因?yàn)楦窭状a與二進(jìn)制計(jì)數(shù)的有區(qū)別,我們可以得出以下的結(jié)論:
當(dāng)高2bit的相反,后幾位的bit相同時(shí),寫滿;
當(dāng)寫指針等于讀指針時(shí),讀空。
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
801瀏覽量
41771 -
Verilog
+關(guān)注
關(guān)注
28文章
1352瀏覽量
110469 -
格雷碼
+關(guān)注
關(guān)注
2文章
34瀏覽量
13238
原文標(biāo)題:異步FIFO格雷碼與空滿
文章出處:【微信號(hào):ALIFPGA,微信公眾號(hào):FPGA極客空間】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
什么是格雷碼
![什么是<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>](https://file1.elecfans.com//web2/M00/A6/10/wKgZomUMO42AL4wqAAAHu2AgwlY811.jpg)
二進(jìn)制格雷碼與自然二進(jìn)制碼的互換
什么是BCD碼、8421碼、余三碼、格雷碼
格雷碼的規(guī)則和應(yīng)用問(wèn)題?
格雷碼簡(jiǎn)介及格雷碼與二進(jìn)制的轉(zhuǎn)換程序
格雷碼運(yùn)算研究
循環(huán)格雷碼VHDL源程序
格雷碼轉(zhuǎn)二進(jìn)制方法
![<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>轉(zhuǎn)<b class='flag-5'>二進(jìn)制</b>方法](https://file1.elecfans.com//web2/M00/A6/10/wKgZomUMO42AMLjwAAANsi2Y9Os205.jpg)
二進(jìn)制轉(zhuǎn)格雷碼公式
![<b class='flag-5'>二進(jìn)制</b>轉(zhuǎn)<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>公式](https://file.elecfans.com/web1/M00/46/4E/o4YBAFqY83GAWb8zAAGd2NNC4oI308.png)
FPGA學(xué)習(xí)系列:33. 二進(jìn)制轉(zhuǎn)格雷碼轉(zhuǎn)二進(jìn)制的設(shè)計(jì)
將格雷碼轉(zhuǎn)換為二進(jìn)制編碼器的方法
![將<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b><b class='flag-5'>轉(zhuǎn)換為</b><b class='flag-5'>二進(jìn)制</b>編碼器的方法](https://file.elecfans.com//web2/M00/40/C1/pYYBAGJzf72AGjhPAABGkNpJmEU485.png)
評(píng)論