今天就不說太硬的概念。說一些比較實際的做法。
binary to gray code的verilog做法。
gray code是許多人遇過,而且很多人都會做,這裏有一個小小做法,簡單,而且不複雜,可以提供大家參考。
module bin2gray( bini ,grayo ); input [4:0] bini; output [4:0]grayo; assign grayo = bin ^ {1'b0, bin[4:1]}; endmodule
以下是3-bit binary 和gray code的對照。
000 <-> 000
001 <-> 001
010 <-> 011
011 <-> 010
100 <-> 110
101 <-> 111
110 <-> 101
111 <-> 100
有興趣的人可以試著推看看,是不是這樣子就可以做gray code?
下一回,我再把gray code to binary寫出來,跟大家分享。