设计一个多功能的1位加法器,有控制信号M、S2、S1、S0。_verilog加法器有符号
设计一个多功能的1位加法器,有控制信号M、S2、S1、S0。由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“verilog加法器有符号”。
设计一个多功能的1位加法器,有控制信号M、S2、S1、S0。
当M=1,做算术运算:
在S2、S1、S0的控制下能完成两个1位二进制数A、B的以下算术运算: A加B,A加1,A加B加低位来的进位,B加1,A加,A加0,A加A,A加加1。当M=0,做逻辑运算:
在S2、S1、S0的控制下能完成两个1位二进制数A、B的以下逻辑运算:A+B,A·B,,,,等。
用VHDL编程并仿真(时序)。
library ieee;
use ieee.std_logic_1164.all;
entity adder is
port(m,s2,s1,s0,a,b,ci:in std_logic;
f,co:out std_logic);
end adder;
architecture behave of adder is
signal f_i:std_logic_vector(3 downto 0);
begin
f_i
proce(f_i)
begin
case f_i is
when “1000”=> f
when “1001”=> f
when “1010”=> f
when “1011”=> f
when “1100”=> f
when “1101”=> f
when “1110”=> f
when “1111”=> f
when “0000”=> f
when “0001”=> f
when “0010”=> f
when “0011”=> f
when “0100”=> f
when “0101”=> f
when “0110”=> f
when “0111”=> f
when others=> f
end case;
end proce;
end behave;