当前位置: 首页 > news >正文

【Verilog】实验二 数据选择器的设计与vivado集成开发环境

目录

一、实验目的

二、实验环境

三、实验任务

四、实验原理

五、实验步骤

top.v

mux2_1.v


一、实验目的

1. 掌握数据选择器的工作原理和逻辑功能。

2. 熟悉vivado集成开发环境。

3. 熟悉vivado中进行开发设计的流程。

二、实验环境

1. 装有vivado的计算机。

2. Sword实验系统。

三、实验任务

1. 用VerilogHDL语言设计实现4位二选一数据选择器电路,完成功能仿真。

2. 设计顶层电路,关联外设,在vivado下完成综合等设计步骤,下载至Sword实验系统验证电路功能,熟悉vivado操作流程。

四、实验原理

1. 数据选择器的设计

设计二选一数据选择器,并验证该电路功能。采用三个拨动开关分别作为数据选择器的选择输入和数据输入,输出接到发光二极管上,由发光二极管显示选择器的输入状态。电路连接图如下(具体连接引脚可以自定修改):

2. 为了验证电路功能,需要设计顶层模块,实例化所设计的多路选择器模块。根据sword平台设计,led的驱动需要调用LED_P2S.ngc,这是已经封装好的代码。由于实验台的设计是将驱动led的数据并行转为串行输出,此时还需要在工程中加入时钟clk_div.v。在顶层设计中,将SW与所设计的mux的输入关联,led与所设计的mux的输出关联。完成电路功能验证。在这个过程中,熟悉vivado工具设计流程。

五、实验步骤

1. 参考VIVADO开发设计流程文档,新建工程,设计四位二选一多路选择器模块mux21_4.v(采用实验一的设计)。

2.完成该模块的功能仿真。

 3. 参照vivado开发设计流程文档,依次在工程中加入LED_P2S.ngc和LED_P2S_IO.v(用于led显示),clk_div.v(时钟模块),MUX-top.v(顶层模块),依次完成以下步骤:综合、管脚映射、实现、生成bit流文件。

4.参照vivado开发设计流程文档,将设计文件下板,运行,验证电路功能。

Run Synthesis

Run Implementation   

Generate Bitstream

这几步,均可在Project Summary查看执行的状态(是否完成)

Open target  

Auto Connect

Program device

生成bit流文件

完成下板

根据在TOP中定义的对应的开关,进行验证,观察现象

xc7k160tffg676-1

top.v

`timescale 1ns / 1psmodule 	 TOP(input  wire clk_100mhz,input  wire[15:0]SW,output wire led_clk,output wire led_clrn,output wire led_sout,output wire LED_PEN				);wire[31:0]Div;wire[15:0]LED_DATA;wire CK;clk_div       U8(clk_100mhz,1'b0,SW[2],Div,CK);LED_P2S 			  #(.DATA_BITS(16),.DATA_COUNT_BITS(4)) PLED (clk_100mhz,1'b0,Div[20],LED_DATA,led_clk,led_clrn,led_sout,LED_PEN);wire [3:0] out;mux2_1 U1 (SW[3:0],SW[7:4],SW[8],out);assign LED_DATA = ~{out[0],out[1],out[2],out[3],1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0};	endmodule

mux2_1.v

http://www.lryc.cn/news/498177.html

相关文章:

  • IDL学习笔记(三)OMI数据处理。hdf5文件读取,图像反转,GeoTiff区别,月季年均值计算提取输出,单位转换,运行时间计算
  • 深入浅出:PHP中的数据类型全解析
  • 要使用 OpenResty 创建一个接口,返回客户端的 IP 地址,并以 JSON 格式输出
  • 智慧油客:从初识、再识OceanBase,到全栈上线
  • ClickHouse守护进程
  • 智能合约
  • SQL面试题——拼多多SQL面试题 求连续段的起始位置和结束位置
  • 玩《三角洲行动》遇到游戏运行故障是什么原因?游戏运行故障要怎么解决?预防游戏运行故障问题出现
  • 基于灰色神经网络的订单需求预测
  • 记录学习《手动学习深度学习》这本书的笔记(三)
  • JS中递归函数的理解及展开运算符在递归种的运用理解
  • 人工智能学习用的电脑安装cuda、torch、conda等软件,版本的选择以及多版本切换
  • 提高身份证 OCR 识别 API 接口的准确性的方法
  • PHP面向对象
  • Tomcat新手成长之路:安装部署优化全解析(下)
  • GPT 1到4代的演进笔记
  • vitepress组件库文档项目 markdown语法大全(修正版)
  • Vue3技术开发,使用纯CSS3动手制作一个3D环绕的相册展示效果,支持传入任意图片.3D轮播相册的组件
  • LeetCode 力扣 热题 100道(十五)搜索插入位置(C++)
  • 【035】基于51单片机俄罗斯方块游戏机【Proteus仿真+Keil程序+报告+原理图】
  • NAT traversal 原理 | TCP / UDP/ P2P
  • 如何成长为一名工程技术经理
  • GEE开发之下载海拔、坡度、坡向数据
  • gozero项目迁移与新服务器环境配置,包含服务器安装包括go版本,Nginx,项目配置包括Mysql,redis,rabbit,域名
  • Scala正则表达式全面教程
  • 伺服电机为什么会变慢?
  • 61 基于单片机的小车雷达避障及阈值可调
  • 微信小程序之手机归属地查询
  • ElementUI 问题清单
  • DVWA靶场——XSS(Stored)