rsc_a.v

来自「Turbo码编码器的两个分量编码器RSC」· Verilog 代码 · 共 86 行

V
86
字号
module RSC_a( clk,data_in,RSC_clr,RSC_en,out_1a);
parameter k=1784;//设置参数
input clk;//时钟
input data_in;//输入端口
input RSC_clr;//清零端口
input RSC_en;//使能端口

output out_1a;//数据输出端口

reg temp;
reg d0,d1,d2,d3;

reg out_1a;
integer i=0;



always @(posedge clk)

begin
if(RSC_clr)//清零

begin
temp<=0;
d0<=0;
d1<=0;
d2<=0;
d3<=0;
end

else if((!RSC_clr)&&(RSC_en))//编码

begin 
i=i+1;
if(i<5)//前四个时钟周期无编码输出
begin 
temp<=d2^d3;
d3<=d2;
d2<=d1;
d1<=d0;
d0<=data_in^temp;
end

else if((i>4)&&(i<(k+1))&&(RSC_en))//有编码输出

begin
out_1a<=temp^d0^d2^d3;
temp<=d2^d3;
d3<=d2;
d2<=d1;
d1<=d0;
d0<=data_in^temp;

end

else if((i>k)&&(i<=(k+4))&&(RSC_en))//数据端口无数据输入,但编码器有输出

begin

temp<=d2^d3;
d3<=d2;
d2<=d1;
d1<=d0;
d0<=temp;
out_1a<=temp^d0^d2^d3;


end
end

if ((i>(k+4))&&(!RSC_en))

begin
i<=0;
temp<=0;
d0<=0;
d1<=0;
d2<=0;
d3<=0;

end
end

endmodule

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?