EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)

这篇具有很好参考价值的文章主要介绍了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)。对该工程进行仿真测试(必须)

使用软件: Vivado
开发板: EGO1采用Xilinx Artix-7系列XC7A35T-1CSG324C FPGA

第一题及生成的IP核见链接:
第一题:实现8选1的数据选择器74HC151

问题分析

74HC151及其功能表如下图所示:
EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)

  1. 当EN_L=0时,74HC151的输出逻辑表达式可以写为:
    Y=(C’B’A’) · D0+(C’B’A)· D1+(C’BA’)· D2+(C’BA)· D3+(CB’A’)· D4+(CB’A)· D5+(CBA’)· D6+(CBA)· D7
  2. 将给定的逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)写为:
    f=w’x’y’z+w’x’yz+w’xyz’+w’xyz+wx’yz+wxy’z+wxyz’
    3.逻辑函数式对应1中的逻辑表达式写成如下格式:
    f=(w’x’y’)· z+(w’x’y)· z+(w’xy’)· 0+(w’xy)· (z+z’)+(wx’y’)· 0+(wx’y)· z+(wxy’)· z+(wxy1)· z’

Y与f式相对应即可得出74HC151的输入:
令 C=w、B=x、A=y、D0=z、D1=z、D2=0、D3=1、D4=0、D5=z、D6=z、D7=z’

如下图所示:
EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)

代码实现

  1. Verilog代码
`timescale 1ns / 1ps
//
// Create Date: 2022/09/16 12:42:49
// Design Name: 
// Module Name: f_74hc151_ip
// Revision 0.01 - File Created
// Additional Comments:
// 
//

//文章有用的话记得给靓仔点个赞表示鼓励哟~
module f_74hc151_ip(w,x,y,z,f);
input w,x,y,z;
output f;
wire Y;
wire Y_;
wire[7:0] D;
// D = {D7,D6,D5,D4,D3,D2,D1,D0};
assign D[0]=z,D[1]=z,D[2]=0,D[3]=1,D[4]=0,D[5]=z,D[6]=z,D[7]=~z;
//运行出错:assign D = {~z,z,z,0,1,0,z,z};
assign f=Y;
v_74hc151_0 uut(
.E_(0),
.S({w,x,y}),
.D(D),
.Y(Y),
.Y_(Y_)
);
endmodule

  1. 仿真文件
`timescale 1ns / 1ps
//
// Create Date: 2022/09/16 12:58:16
// Design Name: 
// Module Name: sim_74hc151_ip
// Revision 0.01 - File Created
// Additional Comments:
// 
//

//文章有用的话记得给靓仔点个赞表示鼓励哟~
module sim_74hc151_ip(

    );
reg a,b,c,d;
wire f;
f_74hc151_ip tt(a,b,c,d,f);
initial begin
    a=0;b=0;c=0;d=0;
end
always #10 {a,b,c,d} = {a,b,c,d}+1;

endmodule

仿真结果:
EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)
3. 约束文件文章来源地址https://www.toymoban.com/news/detail-450059.html

## Switch
set_property PACKAGE_PIN P5 [get_ports w]
set_property IOSTANDARD LVCMOS33 [get_ports w]
set_property PACKAGE_PIN P4 [get_ports x]
set_property IOSTANDARD LVCMOS33 [get_ports x]
set_property PACKAGE_PIN P3 [get_ports y]
set_property IOSTANDARD LVCMOS33 [get_ports y]
set_property PACKAGE_PIN P2 [get_ports z]
set_property IOSTANDARD LVCMOS33 [get_ports z]
## LED
set_property PACKAGE_PIN F6 [get_ports f]
set_property IOSTANDARD LVCMOS33 [get_ports f]
  1. 运行结果
    下图展示了wxyz=0110(=6)时的结果,LED灯 F6点亮,一般仿真正确则运行也会正确,其他情况显示与仿真结果一致。
    EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)

到了这里,关于EGO1—使用8选1数据选择器实现四输入逻辑函数 f=∑wxyz(1,3,6,7,11,13,14)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA学习心得分享——交通灯(EGO1)

      学期快结束了,学了一个学期FPGA课程,通过自己思索加上老师的指导我完成了自己第一份交通灯的作业,我希望把经验分享给学习Verilog遇到困难的同学,更希望大家都能顺利完成自己的作业。   灯能左右改变方向,作品能够模拟红、黄、绿、左右转弯灯等形式,按键可以

    2024年02月07日
    浏览(46)
  • 学号滚动显示verilog代码vivado软件ego1开发板

    名称:学号滚动显示verilog代码vivado软件ego1开发板 软件:VIVADO 语言:Verilog 代码功能: 学号滚动显示 Course Outline实验要求  》用EGO1实验板卡上的8个7段数码管滚动显示你的学号;  》例如:李佳一(LJY)学号2019040509;  》滚动显示16个字符为: HEULJY2019040509HEULJY201904. 》实验提示  》

    2024年02月03日
    浏览(46)
  • 数码管移位循环显示数字verilog代码ego1开发板

    名称:数码管移位循环显示数字verilog代码ego1开发板 软件:VIVADO 语言:Verilog 代码功能: 采用EGO1中的两组数码管,让该8个数码管循环显示:01234567,12345678,23456789.... 电路的输入信号en进行启动或暂停;用按键控制循环,按一下显示下一组数。 FPGA代码Verilog/VHDL代码资源下载

    2024年02月03日
    浏览(39)
  • vivado序列检测器verilog代码ego1开发板验证

    名称:vivado序列检测器verilog代码ego1开发板验证 软件:VIVADO 语言:Verilog 代码功能: 设计一个111序列检测器。 要求:当检测到3个或3个以上的1时,输出为1,其他输入情况输出为0. 画出状态转移图,完成 Verilog描述。 本代码已在ego1开发板验证,开发板如下,其他开发板可以修改管

    2024年02月03日
    浏览(53)
  • vivado数字秒表verilog代码ego1开发板电子秒表跑表

    名称:vivado数字秒表verilog代码ego1开发板电子秒表跑表 软件:VIVADO 语言:Verilog 代码功能: 数字秒表设计 1、秒表的设计精确到10毫秒(0.01秒) 2、可通过按键控制秒表启动、暂停、复位 3、数码管显示分、秒、毫秒 本代码已在ego1开发板验证,开发板如下,其他开发板可以修

    2024年02月03日
    浏览(61)
  • VIVADO三层电梯控制器VHDL代码ego1开发板

    名称:VIVADO三层电梯控制器VHDL代码ego1开发板 软件:VIVADO 语言:VHDL 代码功能: 3层电梯控制 (1)电梯运行规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下

    2024年02月04日
    浏览(46)
  • VIVADO弹球游戏VGA显示Verilog代码EGO1开发板游戏

    名称:VIVADO弹球游戏VGA显示Verilog代码EGO1开发板游戏 软件:VIVADO 语言:Verilog 代码功能: 设计一个弹球游戏,并在VGA显示器上显示 1、可以控制游戏开始,开始时数码管显示0分 2、使用按键控制球拍的运动,当控制球拍接住球时,分数加1 3、弹球触碰屏幕边缘或者球拍时可以

    2024年02月03日
    浏览(37)
  • 电话拨号显示器verilog代码ego1开发板vivado软件

    名称:电话拨号显示器verilog代码ego1开发板vivado软件 软件:VIVADO 语言:Verilog 代码功能: 电话拨号显示 1、具体0~9的数字按键 2、有开始、拨出、接通、删除按键 3、按下“开始”按键后,可以按数字键进行拨号,每按一次数字,整体号码左移一位,输入错误时可以删除 4、输

    2024年02月04日
    浏览(49)
  • 基于ego1开发板的万年历自动数字日历设计verilog代码

    名称:基于ego1开发板的万年历自动数字日历设计verilog代码 软件:VIVADO 语言:Verilog 代码功能: 自动数字日历设计  设计自动数字日历,用七段数字显示器显示年(后2位)、月、日和星期数,在计日脉冲的作用下,自动完成1-12月的月、日及星期的计数和显示。 FPGA代码Verilog/VHDL代码

    2024年02月03日
    浏览(42)
  • 电子拔河比赛游戏机的设计Verilog代码vivado ego1开发板

    名称:电子拔河比赛游戏机的设计Verilog代码vivado  ego1开发板(文末获取) 软件:vivado 语言:Verilog 代码功能: 电子拔河比赛游戏机的设计 时中间的LED亮。比赛时双方通过按扭使中间亮的LED向己方移动,当亮至某    电子拔河游戏机供2~3人玩耍。由一排LED表示拔河的“电子绳”

    2024年01月21日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包