比较器的Verilog代码

此项目是比较器的Verilog代码。在该项目中,在Verilog HDL中设计并实现了一个简单的2位比较器。 给出了真值表,K-Map和比较器的最小化方程。 比较器的Verilog代码由ModelSim仿真,并给出了仿真波形。2位比较器的规格如下:输入:2位A和B用于比较;输出:A_greater_B:如果A> B,则为高,否则为低;A_equal_B:如果A = B,则为高,否则为低;A_less_B:如果A

预览截图

应用介绍

此项目是比较器的Verilog代码。

在该项目中,在Verilog HDL中设计并实现了一个简单的2位比较器。 给出了真值表,K-Map和比较器的最小化方程。 比较器的Verilog代码由ModelSim仿真,并给出了仿真波形。

2位比较器的规格如下:

输入:2位A和B用于比较

输出:

A_greater_B:如果A> B,则为高,否则为低

A_equal_B:如果A = B,则为高,否则为低

A_less_B:如果A <B,则为高,否则为低

K-Map表和比较器的相应方程式(对应的表在预览区显示):

A_greater_B = B0  B1 A0 + B1 A1 + A1 A0 B0 

                       = A0 B0 (B1 + A1) + + B1 A1

A_equal_B = (B1 A1+A1 B1) (B0 A0+A0 B0)

A_less_B = A0  A1 B0 + A1 B1 + B1 B0 A0

附件中包括:比较器的真值表、K-Map表和比较器的相应方程式表、比较器的Verilog代码。

本人在下方展示了比较器的Verilog代码;如想了解更多请下载附件。

// FPGA projects using Verilog/ VHDL  
 // fpga4student.com : FPGA projects, Verilog projects, VHDL projects
 // Verilog code for 2-bit comparator   
 module comparator(input [1:0] A,B, output A_less_B, A_equal_B, A_greater_B);  
 wire tmp1,tmp2,tmp3,tmp4,tmp5, tmp6, tmp7, tmp8;  
 // A = B output   
 xnor u1(tmp1,A[1],B[1]);  
 xnor u2(tmp2,A[0],B[0]);  
 and u3(A_equal_B,tmp1,tmp2);  
 // A less than B output   
 assign tmp3 = (~A[0])& (~A[1])& B[0];  
 assign tmp4 = (~A[1])& B[1];  
 assign tmp5 = (~A[0])& B[1]& B[0];  
 assign A_less_B = tmp3 | tmp4 | tmp5;  
 // A greater than B output   
 assign tmp6 = (~B[0])& (~B[1])& A[0];  
 assign tmp7 = (~B[1])& A[1];  
 assign tmp8 = (~B[0])& A[1]& A[0];  
 assign A_greater_B = tmp6 | tmp7 | tmp8;  
 endmodule   
 `timescale     10 ps/ 10 ps  
 // FPGA projects using Verilog/ VHDL  
 // fpga4student.com  
 // Verilog testbench code for 2-bit comparator   
 module tb_comparator;  
 reg [1:0] A, B;  
 wire A_less_B, A_equal_B, A_greater_B;  
 integer i;  
 // device under test  
 comparator dut(A,B,A_less_B, A_equal_B, A_greater_B);  
 initial begin  
      for (i=0;i<4;i=i+1)  
      begin   
           A = i;  
           B = i + 1;  
           #20;  
      end   
      for (i=0;i<4;i=i+1)  
      begin   
           A = i;  
           B = i;  
           #20;  
      end   
      for (i=0;i<4;i=i+1)  
      begin   
           A = i+1;  
           B = i;  
           #20;  
      end   
 end   
 endmodule   

文件列表(部分)

名称 大小 修改日期
D触发器的Verilog代码——附件.txt0.73 KB2020-04-01

立即下载

相关下载

[算术逻辑单元(ALU)的Verilog代码] 此项目是算术逻辑单元(ALU)的Verilog代码。上一次,在VHDL中设计并实现了算术逻辑单元(ALU)。 提出了用于ALU的完整VHDL代码。现在,apollocode提供了ALU的Verilog代码。 还提供了用于ALU的testbench Verilog代码以进行仿真。附件中包括:ALU的Verilog代码、ALU的Testbench Verilog代码、ALU的仿真波形。了解更多请下载附件。
[16位RISC处理器的Verilog代码] 此项目是16位RISC处理器的Verilog代码。在此Verilog项目中,提供了用于16位RISC处理器的Verilog代码。RISC处理器是基于其指令集和哈佛式数据路径结构而设计的。 然后,RISC处理器在Verilog中实现,并使用Xilinx ISIM进行验证。附件中包括:RISC处理器的指令集、处理器控制单元设计、ALU控制单元设计、RISC处理器的Verilog代码等等;了解更多请下载附件。
[Full Adder的Verilog代码] 此项目是Full Adder的Verilog代码。在此Verilog项目中,提供了Full Adder的Verilog代码。 Full Adder的行为和结构Verilog代码均已实现。附件中包括:使用行为代码的完整加法器的Verilog代码、完整加法器的Verilog代码,使用结构代码。想了解的更多请下载附件。
[比较器的Verilog代码] 此项目是比较器的Verilog代码。在该项目中,在Verilog HDL中设计并实现了一个简单的2位比较器。 给出了真值表,K-Map和比较器的最小化方程。 比较器的Verilog代码由ModelSim仿真,并给出了仿真波形。2位比较器的规格如下:输入:2位A和B用于比较;输出:A_greater_B:如果A> B,则为高,否则为低;A_equal_B:如果A = B,则为高,否则为低;A_less_B:如果A [D触发器的Verilog代码] 此项目是D触发器的Verilog代码。D触发器是数字逻辑电路中的基本组件。 此项目中提供了D触发器的Verilog代码。 实现了两种类型的D型触发器,即上升沿D型触发器和下降沿D型触发器。附件文件中包括:上升沿D型触发器的Verilog代码、带有同步复位的上升沿D触发器的Verilog代码、具有异步复位高电平的上升沿D触发器的Verilog代码、具有异步复位低电平的上升沿D触发器的Verilog代码等等。了解更多请下载附件。
[4x4乘法器的Verilog代码] 此项目是4x4乘法器的Verilog代码。该项目将使用Verilog HDL实现4x4乘法器。所使用的技术是移位/相加算法,但不同的功能是使用两相自计时系统,以将乘法时间减少一半。此附件文件包括:乘法器的Verilog代码、4x4乘法器的仿真结果。注意:一旦确定了启动信号,乘法器便开始执行乘法。 通过创建2个相位时钟,它将乘法时间减少了一半。结束信号,通知乘法器乘法已经完成并且结果准备就绪。

评论列表 共有 0 条评论

暂无评论

微信捐赠

微信扫一扫体验

立即
上传
发表
评论
返回
顶部