FPGA Verilog HDL 系列实例--------二进制与格雷码的转换
2012-12-12 14:51
330 查看
Verilog HDL 之 二进制与格雷码的转换
格雷码的特点:相邻的两个码组之间仅有一位不同。
普通二进制码与格雷码之间可以相互转换。下面将作简要的介绍。
8位二进制码转格雷码
二进制码转换为格雷码:从最右边一位起,一次与左边一位“异或”,作为对应格雷码该位的值,最左边的一位不变(相当于最左边是0)。
8位格雷码转二进制码
格雷码转换为二进制码:从左边第二位起,将每一位与左边一位解码后的值“异或”,作为该解码后的值(最左边的一位依然不变)。
格雷码的特点:相邻的两个码组之间仅有一位不同。
普通二进制码与格雷码之间可以相互转换。下面将作简要的介绍。
8位二进制码转格雷码
二进制码转换为格雷码:从最右边一位起,一次与左边一位“异或”,作为对应格雷码该位的值,最左边的一位不变(相当于最左边是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=i+1) 12 Gry[i]=Bin[i]^Bin[i+1]; 13 Gry[i]=Bin[i]; 14 end 15 endmodule
8位格雷码转二进制码
格雷码转换为二进制码:从左边第二位起,将每一位与左边一位解码后的值“异或”,作为该解码后的值(最左边的一位依然不变)。
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=i-1) 12 Bin[i]=Bin[i+1]^Gry[i]; 13 end 14 endmodule
相关文章推荐
- FPGA Verilog HDL 系列实例--------二进制与格雷码的转换
- 【连载】 FPGA Verilog HDL 系列实例--------4位二进制加减法计数器
- FPGA Verilog HDL 系列实例--------4位二进制加减法计数器
- FPGA Verilog HDL 系列实例--------D 触发器
- 【连载】 FPGA Verilog HDL 系列实例--------顺序脉冲发生器
- 【转载】FPGA Verilog HDL 系列实例-------- 电子琴 电子钟
- FPGA Verilog HDL 系列实例
- FPGA Verilog HDL 系列实例--------寄存器
- 【连载】 FPGA Verilog HDL 系列实例--------十进制加减法计数器
- 【连载】 FPGA Verilog HDL 系列实例--------七段数码管扫描显示
- FPGA Verilog HDL 系列实例--------数据选择器
- 【连载】 FPGA Verilog HDL 系列实例--------数据选择器
- FPGA Verilog HDL 系列实例--------步进电机驱动控制
- 【连载】 FPGA Verilog HDL 系列实例--------步进电机驱动控制
- FPGA Verilog HDL 系列实例--------3-8译码器
- 【连载】 FPGA Verilog HDL 系列实例--------8-3 BCD七段显示译码器
- FPGA Verilog HDL 系列实例--------双向移位寄存器
- FPGA Verilog HDL 系列实例--------8-3优先编码器
- 【连载】 FPGA Verilog HDL 系列实例--------直流电机PWM控制
- 【连载】 FPGA Verilog HDL 系列实例--------交通灯的控制