设为首页 加入收藏

TOP

我的 FPGA 学习历程(03)—— 使用 Quaruts 自带仿真工具
2017-10-10 12:30:26 】 浏览:10929
Tags:FPGA 学习 历程 使用 Quaruts 自带 仿真 工具

        在上一篇中详细的介绍了怎样创建原理图工程,这篇同样使用原理图工程新建一个多路选择器,目的是学习使用图形输入的仿真工具输入仿真激励。

       新建工程,并绘制以下的原理图。

_thumb21

       编译项目,会多出一个警告: Critical Warning (169085): No exact pin location assignment(s) for 4 pins of 4 total pins,其大致意思是在目标器件上有四个引脚没有被分配,由于这次我们只用到仿真,不需要下载文件到板子上,因此没有必要去分配管脚。

       编译成功后新建一个 University Program VWF (仿真波形文件),

_thumb2

双击主界面 Project Navigator  Files 标签下的 waveform.vwf 文件打开仿真波形文件编辑器,如下:

波形文件编辑器

接下来在仿真波形文件编辑器中添加管脚,依次点击 Edit –>  Insert –> Insert Node or Bus,再点击下图中的 Node Finder...

_thumb5

点击 List,图为仿真引脚的选择工具,这里我们需要添加所有的引脚。完成后点 OK。

_thumb11

再点一次 OK

_thumb12

完成引脚添加工作,接下来在 Edit --> Set End Time 中设定仿真时间,由于该编辑器的一个格子是 10 ns,这里我们设为 100 ns。

_thumb1

选择需要修改的时间段,修改为需要的高低电平,修改到下面这个样子就可以了(*^__^*)。

_thumb3

接下来点击 Simulation –> Run Function Simulator 进行逻辑仿真。仿真结果如下:

可以看到,当 s = 0 时, y = a;当 s = 1 时,y = b。

_thumb111

       仿真验证了我们的设计是正确的。O(∩_∩)O 同样还可以使用 verilog 语言描述一个多路选择器,verilog 代码如下,各位可以试试。

module mymux 
(
    input wire a,       //这里是逗号
    input wire b,
    input wire s,
    output reg y        //这里没有逗号
);                      //这里是分号

//**************************************************//
    always @ (*)        //敏感信号列表,初学者打星号就可以了
    begin
        if(s==1'b0)   //两个等号表示判断是否相等
            y = a;
        else
            y = b;
    end
//*************************************************//

endmodule
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇摄像头驱动OV7725学习笔记连载(.. 下一篇我的 FPGA 学习历程(04)—— 练..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目