澳门在线中的N位加法器设计

下一个澳门在线 / VHDL项目是 完整的协处理器 专为加密应用程序而设计。协处理器具有标准指令和专用于安全性的专用功能单元。协处理器主要在VHDL中实现,但N位加法器在澳门在线中设计。 N位加法器的澳门在线代码稍后将在VHDL设计中实例化。在下一篇文章中,将介绍协处理器中主要模块的实现。发布协处理器的每个部分后,将介绍完整的协处理器设计和实现。

这篇文章提出 澳门在线代码 为协处理器设计的N位加法器。用于N位加法器的澳门在线代码是通过使用结构建模来完成的。 

使用结构建模的N位加法器的澳门在线代码


如上图所示,只需将1 Half Adder和N-1 Full Adder串联即可实现N位加法器。设计用于N位加法器的澳门在线代码,以便可以为每个实例独立初始化N值。为此,用于N位加法器的澳门在线代码使用澳门在线中的Generate语句创建完整的加法器链,以实现N位加法器。


使用结构建模的N位加法器的澳门在线代码:


// hzgifts.cn: FPGA projects, 澳门在线项目, VHDL projects
// 澳门在线 project: 澳门在线代码 for N-bit Adder 
// Top Level 澳门在线代码 for N-bit Adder using Structural Modeling
module N_bit_adder(input1,input2,answer);
parameter N=32;
input [N-1:0] input1,input2;
   output [N-1:0] answer;
   wire  carry_out;
  wire [N-1:0] carry;
   genvar i;
   generate 
   for(i=0;i<N;i=i+1)
     begin: generate_N_bit_Adder
   if(i==0) 
  half_adder f(input1[0],input2[0],answer[0],carry[0]);
   else
  full_adder f(input1[i],input2[i],carry[i-1],answer[i],carry[i]);
     end
  assign carry_out = carry[N-1];
   endgenerate
endmodule 

// hzgifts.cn: FPGA projects, 澳门在线项目, VHDL projects
// 澳门在线 project: 澳门在线代码 for N-bit Adder 
// 澳门在线代码 for half adder 
module half_adder(x,y,s,c);
   input x,y;
   output s,c;
   assign s=x^y;
   assign c=x&y;
endmodule // half adder

// hzgifts.cn: FPGA projects, 澳门在线项目, VHDL projects
// 澳门在线 project: 澳门在线代码 for N-bit Adder 
// 澳门在线代码 for full adder 
module full_adder(x,y,c_in,s,c_out);
   input x,y,c_in;
   output s,c_out;
 assign s = (x^y) ^ c_in;
 assign c_out = (y&c_in)| (x&y) | (x&c_in);
endmodule // full_adder

N位加法器的Testbench 澳门在线代码:

// hzgifts.cn: FPGA projects, 澳门在线项目, VHDL projects
// 澳门在线 project: 澳门在线代码 for N-bit Adder 
// Testbench 澳门在线代码 for N-bit Adder 
module tb_N_bit_adder;
 // Inputs
 reg [31:0] input1;
 reg [31:0] input2;
 // Outputs
 wire [31:0] answer;

 // Instantiate the Unit Under Test (UUT)
 N_bit_adder uut (
  .input1(input1), 
  .input2(input2), 
  .answer(answer)
 );

 initial begin
  // Initialize Inputs
  input1 = 1209;
  input2 = 4565;
  #100;
  // Add stimulus here
 end
      
endmodule

N位加法器的仿真波形:

使用结构建模的N位加法器的澳门在线代码
通过为N位加法器运行Testbench 澳门在线代码,我们可以验证N位加法器的正确性。仿真波形表明,N位加法器可以正确运行。
推荐的 澳门在线项目:
2. FIFO存储器的澳门在线代码
3. 用于16位单周期MIPS处理器的澳门在线代码
4. 澳门在线 HDL中的可编程数字延迟计时器
5. 用于数字电路中基本逻辑组件的澳门在线代码
6. 用于32位无符号除法器的澳门在线代码
7. 用于定点矩阵乘法的澳门在线代码
8. 澳门在线 HDL中的车牌许可证识别
9. 提前进位乘法器的澳门在线代码
10。 微处理器的澳门在线代码
11。 4x4乘法器的澳门在线代码
12 停车场系统的澳门在线代码
13 使用澳门在线 HDL在FPGA上进行图像处理
14。 如何使用澳门在线 HDL将文本文件加载到FPGA中
15 交通信号灯控制器的澳门在线代码
16。 FPGA上的闹钟的澳门在线代码
17。 比较器设计的澳门在线代码
18岁 D触发器的澳门在线代码
19 Full Adder的澳门在线代码
20 带testbench的计数器的澳门在线代码
21 16位RISC处理器的澳门在线代码
22 用于在FPGA上反跳按钮的澳门在线代码
23。 如何为双向/输入端口编写澳门在线 Testbench
30岁  澳门在线中的N位加法器设计
31。 澳门在线和VHDL:通过示例解释
32。 FPGA上时钟分频器的澳门在线代码
33。 如何在澳门在线中生成时钟使能信号
34。 用于PWM发生器的澳门在线代码
35岁 澳门在线编码与软件编程
FPGA 澳门在线 VHDL课程

没意见:

发表评论

热门FPGA项目