div.v.bak
来自「用verlog语言编的一些基础实验,适合于FPGA/CPLD的初学者。内容包括8」· BAK 代码 · 共 86 行
BAK
86 行
module div(a,b,c,en);
input[2:0] a,b;
output[7:0] c;
reg[7:0] c;
output[7:0] en;
reg[3:0] c_tmp;
reg[2:0] temp_reg;
integer i;
assign en=0;
always@(a or b or temp_reg)
begin
temp_reg=0;
c_tmp=0;
if(b==0)
c_tmp=4'he;
else begin
if(a[2]>=b) begin
c_tmp[2]=1;
temp_reg[2]=a[2]-b;
end
else begin
c_tmp[2]=0;
temp_reg[2]=a[2];
end
if({temp_reg[2],a[1]}>=b) begin
c_tmp[1]=1;
temp_reg[2:1]={temp_reg[2],a[1]}-b;
end
else begin
c_tmp[1]=0;
temp_reg[2:1]={temp_reg[2],a[1]};
end
if({temp_reg[2:1],a[0]}>=b) begin
c_tmp[0]=1;
temp_reg=0;
end
else begin
c_tmp[0]=0;
temp_reg=0;
end
end
end
always@(c_tmp)
begin
case(c_tmp)
4'b0000:
c=8'b0000_0011;
4'b0001:
c=8'b1001_1111;
4'b0010:
c=8'b0010_0101;
4'b0011:
c=8'b0000_1101;
4'b0100:
c=8'b1001_1001;
4'b0101:
c=8'b0100_1001;
4'b0110:
c=8'b0100_0001;
4'b0111:
c=8'b0001_1111;
4'b1000:
c=8'b0000_0001;
4'b1001:
c=8'b0001_1001;
4'b1010:
c=8'b0001_0001;
4'b1011:
c=8'b1100_0001;
4'b1100:
c=8'b0110_0011;
4'b1101:
c=8'b1000_0101;
4'b1110:
c=8'b0110_0001;
4'b1111:
c=8'b0111_0001;
endcase
end
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?