数字系统设计实验二:Verilog HDL门级描述方式

您所在的位置:网站首页 verilog三输入与门 数字系统设计实验二:Verilog HDL门级描述方式

数字系统设计实验二:Verilog HDL门级描述方式

2024-01-09 07:19| 来源: 网络整理| 查看: 265

1.问题主干: 用Verilog HDL门级描述方式描述如下图所示的电路。 在这里插入图片描述

2.问题分析: 由上述电路图可以分析得到,共有4个三输入与门(其中有一个只有两个输入,实际是而输入与门),一个四输入或门,以及两个反相器。 门级的电路描述风格是不需要知道关系表达式的,在已知电路的前提下,通过简单的调用基本门ip即可实现这个电路的描述,并且代码与电路描述是一一对应的。 在代码中实现这个门级电路比较简单,反相器:not(a_n,a);三输入与门:and(out,a,b,c);三输入或门:or(out,a,b,c,d)。

3. 程序内容: .v文件:

`timescale 1ns / 1ps // // Company: // Engineer: jefferym // // Create Date: 2022/03/18 10:40:31 // Design Name: // module gate_test(D0,D1,D2,D3,S1,S2,Z); input [0:0] S1,S2,D0,D1,D2,D3; output [0:0] Z;//默认这些数据类型为wire,在基本门的表述中,输入输出都应该是wire wire [0:0] T0,T1,T2,T3;//中间变量 wire [0:0] S1_N,S2_N; not not1(S1_N,S1), not2(S2_N,S2); and and1(T0,D0,S2_N,S1_N), and2(T1,D1,S1_N,S1), and3(T2,D2,S2_N,S1), and4(T3,D3,S2); or or1(Z,T0,T1,T2,T3); endmodule

tb文件:

`timescale 1ns / 1ps module tb(Z); output [0:0] Z; reg [0:0] S1,S2,D0,D1,D2,D3;//下面将对这些输入进行在过程语句中进行赋值,因此必须为reg gate_test my_gate_test(D0,D1,D2,D3,S1,S2,Z);//这里可以写作.D0(D0),也可以按顺序赋值,这样必须严格按照顺序来写 reg [5:0] cnt=6'b1;//计数变量,用于产生六位的测试信号 initial begin D0=0;D1=0;D2=0;D3=0;S1=0;S2=0; for(cnt=1;cnt


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3