count_ones_d.v
来自「VerilogHDL_advanced_digital_design_code_」· Verilog 代码 · 共 32 行
V
32 行
module count_ones_d (bit_count, data, clk, reset);
parameter data_width = 4;
parameter count_width = 3;
output [count_width-1:0] bit_count;
input [data_width-1:0] data;
input clk, reset;
reg [count_width-1:0] count, bit_count;
reg [data_width-1:0] temp;
always @ (posedge clk)
if (reset) begin count = 0; bit_count = 0; end
else begin: bit_counter
count = 0;
temp = data;
while (temp)
@ (posedge clk)
if (reset) begin
count = 2'b0;
disable bit_counter; end
else begin
count = count + temp[0];
temp = temp >> 1;
end
@ (posedge clk);
if (reset) begin
count = 0;
disable bit_counter; end
else bit_count = count;
end
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?