EGO1—实现8选1的数据选择器74HC151
数字设计 FPGA 应用,第三章组合逻辑设计和 VIVADO 进阶,课程设计性质的作业题1
第一题:构建工程,实现 8 选 1 的数据选择器 74HC151,编写仿真代码进行测试,将该工程并生成 IP 核。(必须)
使用软件: Vivado
开发板: EGO1采用Xilinx Artix-7系列XC7A35T-1CSG324C FPGA
74HC151
151及其功能真值表
代码实现
1. verilog 代码
`timescale 1ns / 1ps
//
// Module Name: v_74hc151
// Revision 0.01 - File Created
// Additional Comments:
//
////文章有用的话记得给靓仔点个赞表示鼓励哟~
module v_74hc151(E_,S,D,Y,Y_);
/*
E_:使能
S[2]:选择
D[7]:输入
Y、Y_:输出
*/
input E_;
input[2:0] S;
input[7:0] D;
output Y,Y_;
reg Y=0;
reg Y_=1;
always @(E_ or S or D)
begin
if(E_ == 1)beginY=0;Y_=1;end
elsebegincase (S)0:Y=D[0];1:Y=D[1];2:Y=D[2];3:Y=D[3];4:Y=D[4];5:Y=D[5];6:Y=D[6];7:Y=D[7];endcaseendY_=~Y;//按位取反
end
endmodule
2. 仿真代码
`timescale 1ns / 1ps
//
// Module Name: sim_74hc151
// Revision 0.01 - File Created
// Additional Comments:
//
////文章有用的话记得给靓仔点个赞表示鼓励哟~
module sim_74hc151();
reg E_;
reg[2:0] S;
reg[7:0] D;
wire Y,Y_;
v_74hc151 simt(E_,S,D,Y,Y_);
initial begin
E_=1;
S=0;
D=0;
# 100 //延时100ns
E_=0;
D=8'b01010101;
end
always #20 S=S+1;
endmodule
仿真结果
3. 约束文件
注意:生成bit流文件时报错可能是约束语句出现问题
使能控制:E_采用拨码开关:P5
选择控制:S采用拨码开关:P4,P3,P2
输入控制:D采用DIP开关:U3,U2,V2,V5,V4,R3,T3,T5
输出显示:Y采用LED灯F6,Y_采用LED灯G4
## Switch
set_property PACKAGE_PIN P5 [get_ports E_]set_property IOSTANDARD LVCMOS33 [get_ports E_]set_property PACKAGE_PIN P4 [get_ports {S[2]}]set_property IOSTANDARD LVCMOS33 [get_ports {S[2]}]
set_property PACKAGE_PIN P3 [get_ports {S[1]}]set_property IOSTANDARD LVCMOS33 [get_ports {S[1]}]
set_property PACKAGE_PIN P2 [get_ports {S[0]}]set_property IOSTANDARD LVCMOS33 [get_ports {S[0]}]set_property PACKAGE_PIN U3 [get_ports {D[7]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[7]}]
set_property PACKAGE_PIN U2 [get_ports {D[6]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[6]}]
set_property PACKAGE_PIN V2 [get_ports {D[5]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[5]}]
set_property PACKAGE_PIN V5 [get_ports {D[4]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[4]}]
set_property PACKAGE_PIN V4 [get_ports {D[3]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[3]}]
set_property PACKAGE_PIN R3 [get_ports {D[2]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[2]}]
set_property PACKAGE_PIN T3 [get_ports {D[1]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[1]}]
set_property PACKAGE_PIN T5 [get_ports {D[0]}]set_property IOSTANDARD LVCMOS33 [get_ports {D[0]}]## LED
set_property PACKAGE_PIN F6 [get_ports Y]set_property IOSTANDARD LVCMOS33 [get_ports Y]
set_property PACKAGE_PIN G4 [get_ports Y_]set_property IOSTANDARD LVCMOS33 [get_ports Y_]
E_=0,S=3’b000,D=8’b00000001时:
E_=1时:
生成IP核
- 在菜单栏选择“Tools”—>“Create and Package New IP…”–>“Next”
- 选择第一个选项,然后点击“Next”
- 默认名字和地址即可,继续点击“Next”
- 看到IP核相关信息,点击“Finish”即可完成IP核创建。
EGO1—实现8选1的数据选择器74HC151相关推荐
- EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)
数字设计 FPGA 应用,第三章组合逻辑设计和 VIVADO 进阶,课程设计性质的作业题2 第二题:再建一个工程,调用该 IP 核实现 4 输入逻辑函数f=∑wxyz(1,3,6,7,11,13,14 ...
- Verilog——74HC151八选一数据选择器并扩展为16选1数据选择器
Verilog--74HC151八选一数据选择器并扩展为16选1数据选择器 74HC151的仿真 设计思路 采用行为级建模,根据74HC151八选一数据选择器的功能表编程即可. 代码实现 设计模块 / ...
- 【数字逻辑 Verilog】全面剖析数据选择器——从基础到拓展,从理论到设计的实现,从表面到本质
0 前言 0.1 使用环境 EDA工具:Vivado 2017.4 硬件描述语言:Verilog HDL 0.2 涉及知识 数字逻辑 Verilog 1 基础模块:一位四选一数据选择器 1.1 设计部 ...
- 2017.0311.数字电路与系统-数据选择器分配器的理解
数据选择器 1.这里讲解一个特殊情况,如果给定的函数是F(A,B,C,D)拥有四个变量,要求我们采用74151八选一数据选择器来实现四变量的函数.74151八选一数据选择器的地址端只有三个,和四个变量 ...
- FPGA(3)验证数字逻辑(与门、与非门、二选一数据选择器、2-4译码器、半加器、全加器)
目录 一.验证与门 二.验证与非门 三.验证二选一数据选择器 四.验证2-4译码器 五.验证半加器 六.验证全加器 0.初始化定义 1.第一个半加器 2.第二个半加器 3.得到最终进位Co 代码 0决 ...
- VHDL四选一数据选择器和基本触发器的设计
主要内容: 本设计主要是利用超高速硬件描述语言VHDL对四选一数据选择器和基本触发器电路进行编程实现. 四选一数据选择器应该具备的功能:在选择信号的作用下,从输入通道中选择某一个通道的数据作为输出. ...
- Verilog二选一数据选择器
//二选一数据选择器module mux2_1(a0,a1,s,f) input a0,a1,s; output f;//默认是wire(线)变量 assign f=(s)?a1:a0;//assig ...
- FPGA(1)--VHDL--6选1数据选择器
文章目录 一.实验目的 二.实验内容 三.实验设计 四.实验结果及仿真 五.实验思考与总结 一.实验目的 掌握用VHDL语句进行组合电路设计的方法,并熟悉程序的编译.调试与波形图的仿真. 二.实验内容 ...
- Quartus II使用说明(Verilog HDL二选一数据选择器 )
<可编程数字逻辑电路设计>课程中Quartus II软件的使用说明 VHDL和Verilog HDL不一样. 1.新建文件夹,里面包含5个子文件夹(doc/img/prj/rtl/test ...
最新文章
- Mongodb数据分片的实现
- #include NOIP2009 Junior 细胞分裂 ——using namespace wxl;
- [leetcode] 108.有序数组转换为二叉搜索树
- cesium billboard 设置距离控制可见度
- Linux命令-目录处理命令:mkdir
- web api 权限控制
- 通过data目录恢复数据库数据(mysql5.7.22)
- python逻辑取反运算符_python学习笔记------逻辑运算符
- 计算机网络概述的功能 组成,计算机网络的概述
- Linux开放mysql权限给任意主机远程登陆
- 基于JSP和sql server小区物业管理系统毕业论文
- Linux 安装mongodb数据库
- EAS BOS序时簿界面排序
- OSChina 十一乱弹 —— 前女友 is Null
- 《统计学习方法》课后习题参考答案
- 用Python 统计、分析2020年江苏省事业单位招聘岗位 Excel 表格信息
- HTML基础DW使用教程
- 搜狗输入法自定义短语设置
- AI人工智能入门(浅析AlphaGo的实现)
- python的SMTP