Gray code

binary to gray

 1 odule 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=i+1)
12         Gry[i]=Bin[i]^Bin[i+ 1 ];
 13      Gry[i]= Bin[i];
 14  end 
15  
16  /* Another simple implementation is as follows: */ 
17  // assign Gray = (Bin >> 1) ^ Bin; 
18  
19  endmodule

grey to binary

 1 module gry2bin(Gry,Bin);
 2 parameter length = 8; 
 3 input [length-1:0] Gry; 
 4 output [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=i-1)        
12         Bin[i]=Bin[i+1]^Gry[i];
13 end
14 endmodule

 

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325948257&siteId=291194637