全减器接口如下图所示:
其中,A是被减数,B是减数,Ci是来自低位的借位,D是差,Co是向高位的借位。
全减器的真值表如下图所示:
因此,根据真值表可以使用case语句来完成全减器的实现:
module decoder1(input A,input B,input Ci ,output regD,output reg Co );always@(*)begincase({A,B,Ci})3'b000:{D,Co} =2'b00;3'b001:{D,Co} =2'b11;3'b010:{D,Co} =2'b11;3'b011:{D,Co} =2'b01;3'b100:{D,Co} =2'b10;3'b101:{D,Co} =2'b00;3'b110:{D,Co} =2'b00;3'b111:{D,Co} =2'b11;default: {D,Co} =2'b00;endcaseendendmodule