zoukankan      html  css  js  c++  java
  • 【ZYNQ Ultrascale+ MPSOC FPGA教程】第九章Vivado下按键实验

    原创声明:

    本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处。

    适用于板卡型号:

    AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EG

    实验Vivado工程为“key_test”。

    按键是FPGA设计当中最常用也是最简单的外设,本章通过按键检测实验,检测开发板的按键功能是否正常,并了解硬件描述语言和FPGA的具体关系,学习Vivado RTL ANALYSIS的使用。

    1.按键硬件电路

    开发板按键部分电路

    从图中可以看到,电路的按键松开时是高电平,按下时是低电平。

    开发板LED部分电路

    而LED部分,高电平灭,低电平亮

    2. 程序设计

    这个程序没有设计的很复杂,通过简单的硬件描述语言看透硬件描述语言和FPGA硬件的联系。首先我们将按键输入经过一个非门后再经过2组D触发器。经过D触发器的信号,会在D触发器时钟输入的上升沿锁存然后再送到输出。

    在进行硬件描述语言编码之前,我们已经把硬件构建完成,这是一个正常的开发流程。有了硬件设计思路无论是通过画图还是通过Verilog HDL、VHDL都能完成设计,根据设计的复杂程序和对某种语言的熟悉程序来选择工具。

    3. 创建Vivado工程

    3.1 首先建立按键的测试工程,添加verilog测试代码,完成编译分配管脚等流程。

    `timescale1ns/1ps
    module key_test
    (
    	input                 clk,//system clock 25Mhz on board
    	input[3:0]           key,//input four key signal,when the keydown,the value is 0
    	output[3:0]           led        //LED display ,when the siganl low,LED lighten
    );
    
    reg[3:0] led_r;//define the first stage register , generate four D Flip-flop 
    reg[3:0] led_r1;//define the second stage register ,generate four D Flip-flop
    always@(posedge clk)
    begin
    	led_r <=  key;//first stage latched data
    end
    
    always@(posedge clk)
    begin
    	led_r1 <= led_r;//second stage latched data
    end
    
    assign led = led_r1;
    
    endmodule
    

    3.2 我们可以使用RTL ANALYSIS工具查看设计

    3.3 分析RTL图,可以看出两级D触发器,和预期设计一致。

     

    4. 板上验证

    Bit文件下载到开发板以后,开发板上的"PL LED"处于亮状态,按键“PL KEY1”按下“PL LED1”灭。

  • 相关阅读:
    RecyclerView 数据刷新的几种方式 局部刷新 notify MD
    【图片】批量获取几万张图片
    RV BaseRecyclerViewAdapterHelper 总结 MD
    RecyclerView.ItemDecoration 间隔线
    Kotlin【简介】Android开发 配置 扩展
    Kotlin 特性 语法糖 优势 扩展 高阶 MD
    一个十分简洁实用的MD风格的UI主框架
    折叠伸缩工具栏 CollapsingToolbarLayout
    FloatingActionButton FAB 悬浮按钮
    Glide Picasso Fresco UIL 图片框架 缓存 MD
  • 原文地址:https://www.cnblogs.com/alinx/p/14297397.html
Copyright © 2011-2022 走看看