lead_8bits_adder2.v
上传用户:saul_905
上传日期:2013-11-27
资源大小:184k
文件大小:1k
源码类别:

VHDL/FPGA/Verilog

开发平台:

Visual C++

  1. module lead_8bits_adder(a,b,cin,sum,cout);
  2. input   [7:0]a,b;
  3. input        cin;
  4. output  [7:0]sum;
  5. output       cout;
  6. reg     [7:0]sum;
  7. reg          cout;
  8. always@(a or b or cin)
  9.         begin
  10.         sum[0]=(a[0]&b[0])|  (a[0]| b[0])&cin;
  11.         sum[1]=(a[1]&b[1])|  (a[1]| b[1])&(a[0]^b[0]^cin);
  12.         sum[2]=(a[2]&b[2])|  (a[2]| b[2])&(a[1]^b[1]^a[0]^b[0]^cin);
  13.         sum[3]=(a[3]&b[3])|  (a[3]| b[3])&(a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin);
  14.         sum[4]=(a[4]&b[4])|  (a[4]| b[4])&(a[3]^b[3]^a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin);
  15.         sum[5]=(a[5]&b[5])|  (a[5]| b[5])&(a[4]^b[4]^a[3]^b[3]^a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin);
  16.         sum[6]=(a[6]&b[6])|  (a[6]| b[6])&(a[5]^b[5]^a[4]^b[4]^a[3]^b[3]^a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin);
  17.         sum[7]=(a[7]&b[7])|  (a[7]| b[7])&(a[6]^b[6]^a[5]^b[5]^a[4]^b[4]^a[3]^b[3]^a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin);
  18.         
  19.         cout=a[7]^b[7]^a[6]^b[6]^a[5]^b[5]^a[4]^b[4]^a[3]^b[3]^a[2]^b[2]^a[1]^b[1]^a[0]^b[0]^cin;
  20.         end
  21.         
  22. endmodule