当前位置:   article > 正文

3-8译码器_如何用quartus做一个3-8译码器

如何用quartus做一个3-8译码器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

使用Quartus编写一个VHDL程序,3-8译码器

一、新建工程

新建工程:

新建VHDL文件:
在这里插入图片描述
新建完我们的VHDL文件之后,我们开始编写我们的代码了,有完整注释,看下图



module my_3_8( a , b , c , out);   //定义你的输入输出

	input a ;//输入端口 
	input b ;
	input c ;
	
	output reg [7:0]out ;    //定义输出位宽,高位在前

	//逻辑设计
	always@(a, b, c)  // 敏感信号,发生变化,档期中一个信号发生变化的时候,就会执行always块
	  
	   begin
		  case({a,b,c})
		    3'b000: out = 8'b0000_0001;   //横线表示占位符,不起作用
			3'b001: out = 8'b0000_0010; 
		    3'b010: out = 8'b0000_0100;
			3'b011: out = 8'b0000_1000;
		    3'b100: out = 8'b0001_0000;
			3'b101: out = 8'b0010_0000;
			3'b110: out = 8'b0100_0000;
			3'b111: out = 8'b1000_0000;
			default : out = 1111_11111;
		  endcase
		end
endmodule
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

以上代码是没有问题的,下面把写代码时出现的问题列举出来,记录一下。
错误 1:报错如下:
在这里插入图片描述
原因是因为语法错误:
在这里插入图片描述
always后面多了一个分号,写习惯了,啊哈哈

错误2:去掉之后还是显示还是有错误,如下,原因是我们的输出应该都是寄存器,所以我们再写的时候需要把他们都定义为寄存器。
在这里插入图片描述
在这里插入图片描述
最后没有报错,编译需要一点点时间,耐心等待。

编译完成报告分析:
在这里插入图片描述
注意我在这里使用的是Quartus 17.0.1版本,各个版本的错误分析报告可能各有不同。

程序编写完成,但是有没有问题需要编写一个测试文件仿真看一下。
接下来是我们的逻辑分析的代码编写

二、 仿真

新建的与我们之前的是一样的都是我们的 VHDL文件,我们的文件后缀建议修改为tb结尾 ,表示这是一个测试文件,为我们的ModelSim编写的。举例: my3-8tb . v
文件保存到我们的TestBench文件夹下面,表示是我们测试的代码
具体如下:在这里插入图片描述
编译没有问题,下面进行我们的仿真,需要把我们的仿真信号文件用MoudlSim软件仿真出来。在哪进行呢,看下图:
在这里插入图片描述
ok完成之后,我们可以在Tool里面直接启动ModelSim来访真了,这里注意一点:我安装完成之后这里还是显示无法打开,然后我没办法,只能是单独打开ModelSim软件进行调试仿真,网上听说的。
在这里插入图片描述
没办法打开怎么办呢,这里给出其他方案打开它
按Window键 -> 输入ModelSim
在这里插入图片描述
回车打开就行,第一次打开需要新建工程。
在这里插入图片描述
并且把它保存到你需要的位置。
2、创建完成之后弹出小窗,选择Add Existing File 添加之前在Quartus中编写的tb和vhdl文件。
在这里插入图片描述

需要添加的是同时我们的tb文件和我们代码的文件(注意是两个文件)。
如果两个文件在不同的文件夹下,可以分两次来添加。
添加完成之后有两个文件,但是中间有两个❓,表示没有编译
在这里插入图片描述
点击Compile -> All ,编译全部
在这里插入图片描述
没有错误的两个特征:
(1)❓变成 绿色对勾
在这里插入图片描述
(2)两个编译,没有错误
在这里插入图片描述
点击下方标签栏的Library,里面有一个我们新建的库叫work,,啊 我没新建过这个库啊,注意在之前创建工程的时候会选择默认创建一个work的库。在这里
在这里插入图片描述
Default Library Name如果你是第一次使用的话他就是work,会直接创建的,我们跳到下方选项栏,打开work
在这里插入图片描述
依次点击之后我们的仿真界面就已经出来了,接下来开始仿真:
在这里插入图片描述
波形在右方就完整的显示出来了,因为我们在一次信号之后选择了关闭激励,所以只有一次的波形。

好了如果你有问题,或者建议欢:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/707879
推荐阅读
相关标签
  

闽ICP备14008679号