📄 rs_ack_sk.v
字号:
`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 09:47:04 01/04/2008 // Design Name: // Module Name: RS_Ack_Sk // Project Name: // Target Devices: // Tool versions: // Description: //// Dependencies: //// Revision: // Revision 0.01 - File Created// Additional Comments: ////////////////////////////////////////////////////////////////////////////////////module RS_Ack_Sk(clk_125, resetn, en, ctrl_in, RS_Ack_out); input clk_125; input resetn; input en; input [3:0] ctrl_in; output RS_Ack_out; reg RS_Ack_out;
reg [3:0] last_ctrl;
parameter p_add=4'h1;
parameter p_norm=4'h2;
parameter p_eos=4'h3;
parameter p_idle=4'h5;
parameter p_dnu=4'hf;
always @(posedge clk_125 or negedge resetn)
begin
if(!resetn) last_ctrl<=4'h0;
else if(!en) last_ctrl<=last_ctrl;
else last_ctrl<=ctrl_in;
end
always @(posedge clk_125 or negedge resetn)
begin
if(!resetn) RS_Ack_out<=0;
else if(!en) RS_Ack_out<=RS_Ack_out;
else if(((ctrl_in==p_eos)||(ctrl_in==p_norm))&&(last_ctrl==p_add))
RS_Ack_out<=~RS_Ack_out;
else if(((last_ctrl==p_eos)||(last_ctrl==p_norm))&&(ctrl_in==p_idle))
RS_Ack_out<=~RS_Ack_out;
else if((ctrl_in==p_dnu)&&(last_ctrl==p_idle))
RS_Ack_out<=~RS_Ack_out;
else RS_Ack_out<=RS_Ack_out;
end
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -