zoukankan      html  css  js  c++  java
  • 我的 FPGA 学习历程(03)—— 使用 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
  • 相关阅读:
    HMS Core携手AppGallery赋能越南游戏发行商
    如何在React Native项目中集成华为远程配置服务
    华为应用市场AGC研习社|如何提升投放转化,实现获量增长?
    教你用三种方式打造一款简单的网络播放器
    基于Cocos SDKHub接入华为HMS Game服务—接入华为应用升级服务
    手把手教您快速运行Unity华为游戏(GameService)
    做好复购预测,触达用户消费的核心痛点
    华为 HMS Core:以技术撬动生态的顽强生命力
    Cocos平台 | 快速集成AGC云函数服务
    DOM操作技术
  • 原文地址:https://www.cnblogs.com/SummerSunnyDay/p/4968634.html
Copyright © 2011-2022 走看看