首页 > 其他分享 >实验1 熟悉 VIVADO 编译环境

实验1 熟悉 VIVADO 编译环境

时间:2024-08-24 14:57:09浏览次数:8  
标签:仿真 set 编译 get VIVADO 熟悉 property ports

一  实验目的

1.熟悉VIVADO的编译环境

2.熟悉在 VIVADO 环境下运用 Verilog HDL 语言的编程开发流程,包括源程序的编写、编译、模拟仿真及程序下载。

  实验内容

1. VIVADO 环境下源程序的编写、编译

2. 模拟仿真

3. 程序下载

  实验要求

1.在VIVADO环境下完成三人表决器电路的设计及仿真

2.在完成配置程序的下载,并在EGo1开发板上对程序进行最终验证

  实验原理

输入信号

输出信号

a

b

c

f

0

0

0

0

1

0

0

0

0

1

0

0

0

0

1

0

1

1

0

1

0

1

1

1

1

0

1

1

1

1

1

1

  实验步骤

1.创建一个新项目,参考实验一完成相关配置。

2.输入设计,创建Design Source文件。

三人表决器的Verilog参考程序

module test1(

    input a,

    input b,

    input c,

    output f

    );

    assign f=a&b|a&c|b&c;

endmodule

3.创建Simulation文件,编写仿真文件

仿真文件的参考程序

`timescale 1ns / 1ps

module test11;

    reg a,b,c;

    wire f;

    test1 uut(a,b,c,f);

    initial begin

            a=0;b=0;c=0;

     end

        always #10 {a,b,c}={a,b,c}+1;   

endmodule

4.进行Run Behavioral Simulation仿真,观察仿真结果

5.创建Constraints文件,编写约束文件

## Switiches

set_property PACKAGE_PIN U3 [get_ports a]

set_property IOSTANDARD LVCMOS33 [get_ports a]

set_property PACKAGE_PIN U2 [get_ports b]

set_property IOSTANDARD LVCMOS33 [get_ports b]

set_property PACKAGE_PIN V2 [get_ports c]

set_property IOSTANDARD LVCMOS33 [get_ports c]

##led

set_property PACKAGE_PIN K2 [get_ports f]

set_property IOSTANDARD LVCMOS33 [get_ports f]

6.进行综合、实现生成比特流文件,连接开发板进行验证

  实验数据记录

1.仿真波形

a,b,c三位输入,f一位输出,观察仿真波形可知,当a,b,c中任意两个值及以上为1时,f输出为1,完成了三人表决器的逻辑设计。

2.EGO1开发板

SW7、SW6、SW5三位输入,LD2_0输出,观察可知,当SW7、SW6、SW5中任意两个拨码开关及以上为1时,led灯点亮,完成了三人表决器的功能。

标签:仿真,set,编译,get,VIVADO,熟悉,property,ports
From: https://blog.csdn.net/weixin_60936674/article/details/141499494

相关文章

  • 【CUDA编程笔记】thrust::device_vector<float> signal无法编译问题记录
    thrust::device_vectorsignal无法编译问题记录CUDA编程笔记一、问题记录正常编译时,无法编译二、源码#include<thrust/host_vector.h>#include<thrust/device_vector.h>#include<thrust/generate.h>#include<thrust/sort.h>#include<thrust/copy.h>#includ......
  • vivado SLEW
    SLEW为配置了I/O标准的输出缓冲区指定了输出缓冲区转换速率支持可编程输出转换速率。架构支持所有架构。适用对象•端口(get_Ports)°连接输出或双向端口•单元(get_cell)°输出缓冲器(所有OBUF变体)价值观•慢速(默认)•中等:适用于UltraScale体系结构,仅适用于高性能(HP)I/O。......
  • 程序设计语言基础-编译过程概述+表达式
    程序设计语言分类面向机器的语言由0、1组成的机器指令序列或汇编语言(如:moveax,bx),可读性差,难以修改和维护。面向应用程序的语言如,Java、C、C++、Python、Delphi、PASCAL等,更接近人类语言,提高程序设计效率。程序设计语言分类生成目标代码过程编译程序词法分析输入源程......
  • 【OpenHarmony】openharmony移植到RK3568------获取源码编译OpenHarmony源码
    一、源码获取源码获取有好几种方式,在这里直接在镜像网站下载源码,点击下面连接下载全量版本的OpenHarmony4.1https://repo.huaweicloud.com/openharmony/os/4.1-Release/code-v4.1-Release.tar.gz将源码放到自己建立的目录下解压,我放入的是这个目录/home/wzz/work/0H4.1......
  • Ubuntu安装arm交叉编译环境
    本地机是x86架构,目标机是arm64架构。CPU架构描述x86_64 /x86/amd6464位AMD/英特尔CPU的别称AArch64 /arm64/ARMv8/ARMv964位ARMCPU的别称i38632位AMD/英特尔CPUAArch32 /arm/ARMv1 到 ARMv732位ARMCPU的别称......
  • [每周一更]-(第111期):从零开始:如何在 CentOS 上源码编译安装 PHP 7.4
    文章目录系统信息:0、安装版本:1、下载/解压2、安装依赖3、配置autoconf4、配置参数5、编译和安装6、验证安装的插件6.1、配置php.ini6.2、配置opcache7、错误7.1Failedtoconnectto2a03:2880:f10e:83:face:b00c:0:25de:Networkisunreachable7.1.1禁用yum使用I......
  • 如何在Windows下使用make编译Makefile
    最近有小伙伴咨询我去编译运行一个程序。我一开始以为是CMakeLists,结果发现是makefile。 什么是Makefile‌Makefile是一种用于自动化构建和管理程序的工具‌,它定义了项目中文件的依赖关系和构建步骤,帮助程序员自动化编译、链接和打包程序,从而提高软件开发效率。Makefile的主......
  • 【Android笔记】Android APK编译打包流程
    前言本文将介绍Android从一个项目打包成APK的过程,其中涉及AndroidJava和Kotlin文件、资源文件、清单文件、依赖jar包和so库等在打包过程中处理。步骤总体的打包流程如下图,下面就介绍下详细的打包步骤。1、将aidl文件编译成java文件在构建过程中,Gradle会调用AIDL编......
  • 利用源生成器,在编译阶段生成映射代码,减少运行时反射
    利用源生成器,在编译阶段生成映射代码,减少运行时反射这里有一个Product类和ProductDto类,实现对象自身的拷贝,或者Product映射ProductDtoGenMapperAttribute标注了类型需要生成映射方法,同时要求实现IAutoMap接口(由生成器自动实现)构造函数可选参数为目标类型,默认是自身MaoToAttr......
  • 20240819编译 链接 单片机执行的第一个语句
    2024年8月中旬在宝鸡出差,在B站上学习了下。在linux操作系统中,gdb是调试器,gcc是编译器。Linux操作系统将main.elf文件加载到内存中以后,操作系统为其分配进程,然后main函数就开始执行了。输入layoutasm则显示出来汇编代码 键入“starti”的时候 进入到程序里面的第一......