【FPGA实验4】举重比赛机制

这篇具有很好参考价值的文章主要介绍了【FPGA实验4】举重比赛机制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

举重比赛有三名裁判,当运动员将杠铃举起后,须有两名或两名以上裁判认可,方可判定试举成功,若用A、B、C分别代表三名裁判的意见输入,同意为1,否定为0;F为裁判结果输出,试举成功时F=1,试举失败时F=0。

一、分析与Verilog代码
真值表:
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

因而可以得到 F = (A&&B) || (A&&C) ||(B&&C)

Verilog代码:
module test(
   input wire A,
   input wire B,
   input wire C,
   output wire F);
   

 reg result=0;
 
 always @(A,B,C)

    result = (A&&B) || (A&&C) ||(B&&C);

 assign F = result;

endmodule
二、软件仿真
tb文件:
module test_tb();

wire result;
reg [3:0] count;
reg A, B, C;
reg clk;

always #5 clk=~clk;

initial begin
    clk<=0;
    A<=0;
    B<=1;
    C<=1;
    count<=1'b0;
end

always @ (posedge clk) begin
    if (count == 4'd2) begin
        A<=~A;
    end
    else if(count ==4'd4)begin
        B<=~B;
        
    end
    else begin
        C=~C;
    end
    if (count==4'd4)begin
        count<=4'b0;
        end
        else begin
    count<=count+1'b1;
    end

end

test u_test(
    .A      (A),
    .B      (B),
    .C      (C),
    .F      (result)
);


endmodule
仿真结果:

当同一时刻,A、B、C中有大于等于两个为高电平时,输出为高电平。

【FPGA实验4】举重比赛机制,# FPGA学习笔记,fpga开发

三、硬件箱实现

裁判A、B、C通过按键K1、K2、K3输入自己的结果,若通过,则绿色的LED灯L2亮起;若不通过,LED不亮。

1、代码调整

由于led是低电平驱动,所以需要对代码的最后做一点小的修改:

 assign F = result;

↓ ↓ ↓

 assign F = !result;

整体代码如下:

module test(
   input wire A,
   input wire B,
   input wire C,
   output wire F);
   

 reg result=0;
 
 always @(A,B,C)

    result = (A&&B) || (A&&C) ||(B&&C);

 assign F = result;

endmodule
2、实现

编译没有问题后可以查看一下RTL图:

【FPGA实验4】举重比赛机制,# FPGA学习笔记,fpga开发
接着进行引脚分配,引脚分配结果如下:

【FPGA实验4】举重比赛机制,# FPGA学习笔记,fpga开发
分配完引脚之后再编译一次,接着进行sof文件的烧录。

用下载线将按键接口JX22连接到JP5,将按键接口JX5连接到JP1,JTAG接口用下载线连接到电脑的USB口。

(为什么要这样接线可以参考《【FPGA实验2】二进制转为格雷码》中的【三、实验箱实验】➡️【3、引脚分配】。)

4、实验结果

【FPGA实验1.5】举重裁判机制

Foever young,always tearful. 😏文章来源地址https://www.toymoban.com/news/detail-734825.html

到了这里,关于【FPGA实验4】举重比赛机制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • FPGA(verilog)频率计实验——学习历程①

            本文利用verilog语言完成频率计实验,由于是第一次发文,文章格式以及描述语言请谅解,内容仅供参考,烦请各路大神指正。 数码管动态显示模块 分频模块 频率测试模块 顶层调用模块 module seg_led(     input clk,     input rst_n,     input [19:0]         data,//6个数

    2024年02月06日
    浏览(46)
  • FPGA 学习笔记:Vivado 工程更改FPGA 型号

    FPGA 不同系列,型号有些区别,并且不同型号FPGA 工程生成的 bit 文件,无法下载 当前最好的方式是每个型号都重新创建一个工程,不过这样多少有点繁琐,Vivado可以更改FPGA型号 设置里面,可以查看当前的FPGA型号 也可以通过【Window】 - 【Project Summary】,查看当前工程的FPGA

    2024年02月11日
    浏览(40)
  • 学习FPGA之四:FPGA开发方法

            FPGA是一个很特殊的芯片,可能在2个月前,我还对它一无所知。我们熟知的芯片都是CPU,GPU,或者知道ASIC的概念。但实际上,FPGA已经走过了30个年头,它目前已经成为一个包含各种先进电路,逻辑单元,接口,芯片封装,制造等技术的“集大成者”。在硬件不断发

    2024年02月06日
    浏览(54)
  • Fpga开发笔记(一):高云FPGA芯片介绍,入手开发板套件、核心板和底板介绍

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/135551179 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中… 上一篇:没有了 下一篇:《Fpga开

    2024年02月02日
    浏览(39)
  • 《FPGA至简设计原理与应用》学习笔记1 —— FPGA基础

    视频:https://www.bilibili.com/video/BV14K4y1u7kH/ 资料:https://www.aliyundrive.com/s/E9H7Mc5hqhu FPGA是什么东西? FPGA全称Field-Programmable Gate Array,即现场可编程门阵列 简而言之FPGA是一个可以通过 编程 来 改变内部结构 的芯片。 如果要实现相应的功能,需要通过编程即使用硬件描述语言进行

    2024年02月08日
    浏览(46)
  • FPGA 开发必备:从零开始学习 FPGA 设计

    FPGA 开发必备:从零开始学习 FPGA 设计 FPGA 是一种可编程逻辑器件,可以在不用重新设计硬件电路的情况下修改其功能。它是数字电路设计中最重要的组成部分之一。FPGA 的广泛应用领域包括通信、计算机、图像处理、音频处理等。 要想成为一名合格的 FPGA 工程师,你需要了

    2024年02月07日
    浏览(59)
  • FPGA — FIFO学习笔记

    使用软件: Vivado 参考文档 :FIFO Generator v13.2 FIFO(Fist In Fist Out),即为先进先出,常被用于数据的缓存或高速异步数据的交互,与普通存储器区别是没有外部读写地址线,使用简单,缺点是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像

    2024年02月16日
    浏览(37)
  • FPGA学习笔记

    FPGA(Field Programmable Gate Array)现场可编程逻辑门阵列,ASIC(Application Specific Integrated Circuit)即专用集成电路。 比速度 相同的工艺和设计,在FPGA上的速度应该比ASIC跑得慢。因为FPGA内部是基于通用的结构,也就是LUT(lookuptable),它可以实现加法器,组合逻辑等等,而ASIC,一般

    2024年02月11日
    浏览(32)
  • FPGA学习笔记(2)

    程序语句 assign assign 语句是连续赋值语句,一般是将一个变量的值不间断地赋值给另一变量,格式一般为:         assign a = b (逻辑运算符)c…; assign 语句的功能属于组合逻辑的范畴,应用范围可以概括为一下几点: (1)持续赋值; (2)连线; (3)对 wire 型变量赋值

    2024年02月08日
    浏览(30)
  • FPGA千兆网口数据传输MDIO接口——FPGA学习笔记3

            是当今现有局域网采用的最通用的通信协议标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。成本低,通信速率高,抗干扰能力强。 标准以太网:10Mbit/s 快速以太网:100Mbit/s 千兆以太网:1000Mbit/s ......... 以太网和千兆网口其实不完全相同。

    2024年03月24日
    浏览(45)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包