格雷碼是一種循環(huán)二進制編碼,特點是相鄰數(shù)變化時只有一位數(shù)據(jù)跳變。
- 4位二進制和格雷碼對應(yīng)如下:
1、二進制到格雷碼轉(zhuǎn)換
- Verilog實現(xiàn)
1module bin_to_gray
2#(
3 parameter WIDTH = 4
4)
5(
6 input [WIDTH-1:0] in,
7 output [WIDTH-1:0] out
8);
9
10assign out = in ^ (in >> 1);
11
12endmodule
- 仿真波形:
2、格雷碼轉(zhuǎn)二進制
- Verilog實現(xiàn):
1module gray_to_bin
2#(
3 parameter WIDTH = 4
4)
5(
6 input [WIDTH-1:0] in,
7 output [WIDTH-1:0] out
8);
9
10// assign out[0] = ^in[3:0];
11// assign out[1] = ^in[3:1];
12// assign out[2] = ^in[3:2];
13// assign out[3] = in[3];
14
15genvar i;
16generate
17 assign out[WIDTH-1] = in[WIDTH-1];
18 for(i=0; i1; i=i+1) begin
19 assign out[i] = ^in[WIDTH-1:i];
20 end
21endgenerate
- 仿真波形:
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
二進制
+關(guān)注
關(guān)注
2文章
807瀏覽量
42315 -
仿真
+關(guān)注
關(guān)注
52文章
4283瀏覽量
135789 -
Verilog
+關(guān)注
關(guān)注
29文章
1367瀏覽量
112251 -
格雷碼
+關(guān)注
關(guān)注
2文章
34瀏覽量
13397 -
二進制編碼
+關(guān)注
關(guān)注
0文章
8瀏覽量
3247
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
什么是格雷碼
格雷碼(Gray code),又叫循環(huán)二進制碼或反射二進制碼 在數(shù)字系統(tǒng)中只能識別0和1,各種數(shù)據(jù)要轉(zhuǎn)換
發(fā)表于 11-11 09:34
?7780次閱讀

二進制格雷碼與自然二進制碼的互換分析
其中采用循環(huán)二進制編碼的絕對式編碼器,其輸出信號是一種數(shù)字排序,不是權(quán)重碼,每一位沒有確定的大小,不能直接進行比較大小和算術(shù)運算,也不能直接轉(zhuǎn)換成其他信號,要經(jīng)過一次碼變換,變成自然二進制碼
二進制格雷碼與自然二進制碼的互換
。而絕對式編碼器是直接輸出數(shù)字量的傳感器,它是利用自然二進制或循環(huán)二進制(格雷碼)方式進行光電轉(zhuǎn)換
發(fā)表于 03-08 14:16
二進制代碼與格雷碼相互轉(zhuǎn)換
格雷碼(Gray Code,簡稱G碼)是典型的循環(huán)碼,它是由二進制碼(Binary,簡稱 B
發(fā)表于 05-02 18:46
?42次下載
二進制到格雷碼轉(zhuǎn)換的Verilog HDL源代碼
電子發(fā)燒友網(wǎng)核心提示: 本例程是Verilog HDL源代碼:關(guān)于基本組合邏輯功能中二進制到格雷碼轉(zhuǎn)換的功能實現(xiàn)源代碼。注意:程序運行在不同
發(fā)表于 10-15 11:52
?3864次閱讀
二進制轉(zhuǎn)格雷碼公式
在一組數(shù)的編碼中,若任意兩個相鄰的代碼只有一位二進制數(shù)不同,則稱這種編碼為格雷碼(Gray Code),另外由于最大數(shù)與最小數(shù)之間也僅一位數(shù)不同,即“首尾相連”,因此又稱循環(huán)

FPGA學(xué)習(xí)系列:33. 二進制轉(zhuǎn)格雷碼轉(zhuǎn)二進制的設(shè)計
設(shè)計背景:典型的二進制格雷碼(Binary Gray Code)簡稱格雷
評論