学习笔记之三人表决器FPGA
学习笔记之三人表决器FPGA
新手入门,多多包涵,不足错误之处,望指出
三人表决器,顾名思义就是三人投票,只要达到两票以上,就取胜。
设a,b,c为三个投票的人,输出的为f,投为1,不投为0,两票以上为1,否则为0;其逻辑情况如下表列出:
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 | 0 |
1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 |
我们将这种逻辑关系用verilog语言来表示,过程快用always语句,当然也可以用assign语句来表示,只需求出它的逻辑关系式。
Verilog设计代码如下
module bjq3(a,b,c,f);input a,b,c;output f;reg f;always@(*)
begincase({a,b,c})3'b000 : f = 1'b0;3'b001 : f = 1'b0;3'b010 : f = 1'b0;3'b011 : f = 1'b1;3'b100 : f = 1'b0;3'b101 : f = 1'b1;3'b110 : f = 1'b1;3'b111 : f = 1'b1;default : f = 1'b0;endcase
end
endmodule
RTL级生成电路:
如图所示,直接生成了一个ROM,输入口为a,b,c;输出口为f。
接下来我们需要写一个测试文件,我的测试文件如下:
`timescale 1ns / 1ps
module sim_bjq3();reg a;reg b;reg c;wire f;bjq3 il(.a(a),.b(b),.c(c),.f(f)
);
initial
begina = 0;b = 0;c = 0;foreverbegin#({$random}%100)a = ~a;#({$random}%100)b = ~b;#({$random}%100)c = ~c;end
end
endmodule
测试文件我用了随机函数,当然自己设值也是可以的。
仿真图如下:
从仿真图我们可以看出,它与我们想要实现的功能一致。
学习笔记之三人表决器FPGA相关推荐
- linux系统管理学习笔记之三----软件的安装
linux系统管理学习笔记之三----软件的安装 2009-12-29 19:10:02 标签:linux 系统管理 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...
- 2010年SQLite学习笔记之三
2010年SQLite学习笔记之三 一.如何备份数据库 先打开数据库test.db E:/sqlite/tool/sqlite-3_6_22>sqlite3 D:/Test/debug/tes ...
- 学习笔记:FPGA之三人表决器
三人表决器的逻辑功能框架图 verilog代码: module A4_Vote4 {//输入端口KEY1,KEY2,KEY3,//输出端口LED1,LED2,LED3,SEG_DATA,SEG_EN ...
- 三人表决器_数电小实验之三人表决器
数电小实验 20级会员们的模电实验已经结束了,他们的培训计划已经从模电实验进行到了数电实验.他们将学习到一个新的知识--逻辑电路. 接下来让我们一起深入了解本次任务吧! 实验:三人表决器的设计和搭建 ...
- 《FPGA设计实战演练》学习笔记(一)FPGA板级基础五要素电路介绍及注意事项(最小系统)
目录 基础五要素(类似最小系统板) 电源电路 核心电压 I/O电压 辅助电压 常见的供电方案 GND的注意事项 时钟电路 复位电路 配置电路 外设电路 学习书籍:FPGA设计实战演练 逻辑篇吴厚航 编 ...
- 富爸爸系列 -- 《财务自由》学习笔记之三
112,经验的价值 推荐方式,人们在进入I象限之前先在B象限工作的另一个原因.无论投资房地产.企业.股票还是债券,都需要一种潜在的"综合性"商业意识,这种意识对于成为一名成功的投资 ...
- 处理器指令编码可重定义的方法_RISC-V学习笔记1 《基于FPGA与RISC-V的嵌入式系统设计》第3章 RISC-V指令集...
今天读了顾长怡的<基于FPGA与RISC-V的嵌入式系统设计>第3章 RISC-V指令集,做了一些简单的笔记. 1.这本书既然要基于RISC-V讲嵌入式系统设计,就必须要介绍RISC-V的 ...
- 快速软件开发 学习笔记 之三
第4章 风险管理 软件经理必须悉心学习风险管理,才能在项目中避免项目失控.正如Tom Gilb所说:"如果你不主动击败风险,它们就会主动击败你."一个成功的软件项目,应该着眼于事前 ...
- TensorFlow学习笔记之三(神经网络的优化)
文章目录 1. 使用激活函数去线性化(为什么要用激活函数) 实验证明线性模型的局限性 常用激活函数 2. 神经网络复杂度:用网络层数和网络参数的个数表示 3. 损失函数(loss):预测值(y)与已知 ...
最新文章
- 研究生第一篇科研论文常犯问题总结
- Mysql函数:Last_insert_id()语法讲解
- DL之DCGNN:基于TF利用DCGAN实现在MNIST数据集上训练生成新样本
- 计算机在我国开始被应用于,计算机应用推动自动化与信息化的发展
- python表白小程序(1)源码下载
- 基于51单片机LCD1602电子时钟实物制作
- iOS开发实用技术之推送-应用间跳转-社交分享
- pytorch保存.pth文件
- Passware Kit Enterprise破解版下载及使用方法
- Excel对比条形图
- 浏览器打开苏宁易购证书错误
- 陕西守护星-智慧井口综合安检
- 基于php的外卖订餐系统开题报告_校园网上订餐系统的设计与实现(PHP,MySQL)
- Word Embedding 知识总结
- Learning Enriched Features for Real Image Restoration and Enhancement Paddle模型复现93号(1)
- 【Linux】su 和 sudo 命令
- 网传美团今年应届生年薪 35w+,严重倒挂老员工,为什么互联网大厂校招的薪资一年比一年高?...
- 云南富宁港的建设之路
- android 中获取所有有效网卡和对应的IP地址
- 华为智慧屏鸿蒙系统缺点,华为智慧屏用户评论及华为智慧屏电视真实体验优缺点情况...