dingdake的個(gè)人空間 http://selenalain.com/space-uid-83605.html [收藏] [復制] [RSS]

博客

Verilog HDL 之 二進(jìn)制與格雷碼的轉換

已有 2803 次閱讀2012-10-12 09:31 | 二進(jìn)制, 格雷碼

格雷碼的特點(diǎn):相鄰的兩個(gè)碼組之間僅有一位不同。

普通二進(jìn)制碼與格雷碼之間可以相互轉換。下面將作簡(jiǎn)要的介紹。

8位二進(jìn)制碼轉格雷碼

  二進(jìn)制碼轉換為格雷碼:從最右邊一位起,一次與左邊一位“異或”,作為對應格雷碼該位的值,最左邊的一位不變(相當于最左邊是0)。

復制代碼
1 modele bin2gry(Gry,Bin)
2 parameter length = 8;
3 output [length-1:0] Gry;
4 input [length-1:0] Bin;
5
6 reg [length-1:0] Gry;
7 integer i;
8
9 always @ (Bin)
10 begin
11 for(i=0;i<length-1;i++)
12 Gry[i]=Bin[i]^Bin[i+1];
13 Gry[i]=Bin[i];
14 end
15 endmodule
復制代碼

 

8位格雷碼轉二進(jìn)制碼

  格雷碼轉換為二進(jìn)制碼:從左邊第二位起,將每一位與左邊一位解碼后的值“異或”,作為該解碼后的值(最左邊的一位依然不變)。

復制代碼
1 modele gry2bin(Gry,Bin)
2 parameter length = 8;
3 output [length-1:0] Gry;
4 input [length-1:0] Bin;
5
6 reg [length-1:0] Bin;
7 integer i;
8 always @ (Gry)
9 begin
10 Bin[length-1]=Gry[length-1];
11 for(i=length-2;i>=0;i--)
12 Bin[i]=Bin[i+1]^Gry[i];
13 end
14 endmodule
復制代碼

 

 

評論 (0 個(gè)評論)

facelist

您需要登錄后才可以評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
返回頂部
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页