• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

8b/10b编码器设计Verilog代码Quartus仿真

08/11 09:17
323
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240R21RPI30.doc

共1个文件

名称:8b/10b编码器设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

8b/10b编码器设计

8b/10b编码是将8位符号映射到10位符号,以实现直流平衡,同时提供足够多的状态来实现时钟恢复。这意味着在一个至少20位的字符串中,1和0的计数之差不超过2,并且在一排中不超过5个1或0。

1、具有时钟、复位信号

2、8位并行输入;

3、10bit 串行输出。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. 仿真文件

5. 仿真图

部分代码展示:

module?b8_b10(
input?clk,
input?reset_p,//复位
input?[7:0]?bit_8_in,//8位并行输入
output?reg?bit_10_serial//10bit?串行输出
);
//8bit转换为10bit
reg?[11:0]?bit_12_parallel=12'd0;
wire?[9:0]?bit_10_parallel;
always@(*)
case(bit_8_in)//根据码表映射
8'h00:bit_12_parallel<=12'h346;//先用12bit表示,方便用16进制
8'h01:bit_12_parallel<=12'h351;
8'h02:bit_12_parallel<=12'h352;
8'h03:bit_12_parallel<=12'h0A3;
8'h04:bit_12_parallel<=12'h354;
8'h05:bit_12_parallel<=12'h0A5;
8'h06:bit_12_parallel<=12'h0A6;
8'h07:bit_12_parallel<=12'h0B8;
8'h08:bit_12_parallel<=12'h358;
8'h09:bit_12_parallel<=12'h0A9;
8'h0a:bit_12_parallel<=12'h0AA;
8'h0b:bit_12_parallel<=12'h08B;
8'h0c:bit_12_parallel<=12'h0AC;
8'h0d:bit_12_parallel<=12'h08D;
8'h0e:bit_12_parallel<=12'h08E;
8'h0f:bit_12_parallel<=12'h345;
default:;
endcase
assign?bit_10_parallel=bit_12_parallel[9:0];//取低十位
///////////////////////////
//串行输出
reg?[3:0]?data_cnt=4'd0;
always@(posedge?clk?or?posedge?reset_p)
if(reset_p)
data_cnt<=4'd0;
else
if(data_cnt>=4'd10)

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=938

  • 2-240R21RPI30.doc
    下载

相关推荐