FPGA小例子
AND ---与门;OR --- 或门;INV --- 非门;NAND --- 与非门;NOR --- 或非门;XOR --- 异或门;XNOR ---同或门;MUX --- 数据选择器;
1.使用一个inv和一个二选一mux实现 异或。
module xor_rill (
input a,
input b, output z
); assign z = a?(~b):b; endmodule
2. 三态门(常用于inout端口)。
3. 用波形表示D触发器的功能
4. 亚稳态
4.1 何为亚稳态
(1)在时钟上升沿时,D在发生变化,如果D input输出为1则;
(2)在时钟上升沿时,D在发生变化,如果D input输出为0则 ;
(3)在时钟上升沿时,D在发生变化,在中间思考跳转很久,但不知道Dinput跳到0还是1(此状态出现概率非常低,但会出现)到下一个时钟还没有思考好是0还是1,没有出现稳定状态,这就是亚稳态 ;
4.2 危害 :会导致挂死,除了复位,完全不能工作。
4.3 什么时候会出现
(1)时序不满足
(2)异步接口或跨时钟域信号
4.4如何解决
(1)单比特信号
(2)多比特信号
(3)多比特,但数据流小,用fifo不划算,使用使能信号
5. 用逻辑门和CMOS电路实现 ab + cd
(1)首先给出CMOS构成的与非门电路
(2)用与非门实现逻辑ab+cd
这里化简的时候用到了反演律~(a&b) = ~a | ~b;
6. 给了reg的setup,hold时间,求中间组合逻辑的delay范围
假设时钟周期为period,则:
Delay < period - setup – hold
7. 用 D 触发器实现 2 倍分频的逻辑电路
8.用D触发器做个4进制的计数器
9.请画出微机接口电路中,典型的输入设备与微机接口逻辑示意图 (数据接口、控制接口、锁存器 /缓冲器)
10. 时钟周期为 T,触发器 D1 的建立时间最大为 T1max,最小为 T1min。组合逻 辑电路最大延迟为 T2max,最小为 T2min。问,触发器 D2 的建立时间 T3 和保 持时间 T4 应满足什么条件
11. 给出某个一般时序电路的图,有 Tsetup、Tdelay、 Tck->q,还有 clock 的 delay, 写出决定最大时钟的因素,同时给出表达式
T+Tclkdealy>Tsetup+Tco+Tdelay ;
12. 画出 CMOS 电路的晶体管级电路图,实现 Y=A*B+C(D+E)
带入非门和与非门:
13. 利用 4 选 1 数据选择器实现 F(x,y,z)=xz+yz’
14. 用逻辑门画出 D 触发器
15. A、 B、C、 D、E 进行投票,多数服从少数,输出是 F(也就是如果 A、B 、C、D 、E 中 1 的个数比 0 多,那么 F 输出为 1 ,否则 F 为 0) ,用与非门实现,输入 数目没有限制
记 A 赞成时 A=1,反对时 A=0 ;B 赞成时 A=1,反对时 B=0 ;C、 D、E 亦 是如此。由于共 5 人投票且少数服从多数,因此只要有三人投赞成票即可,其他人的投票结果并不需要考虑。基于以上分析,下图给出用与非门实现的电路:
16. 实现 N 位 Johnson Counter,N=5
FPGA小例子的更多相关文章
- springmvc入门的第一个小例子
今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...
- java即时通信小例子
学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...
- Runtime的几个小例子(含Demo)
一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.) 1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); [runti ...
- bootstrap 模态 modal 小例子
bootstrap 模态 modal 小例子 <html> <head> <meta charset="utf-8" /> <title ...
- INI配置文件分析小例子
随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...
- JavaScript小例子:复选框全选
JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...
- 【zTree】 zTree使用的 小例子
使用zTree树不是第一次了 但是 还是翻阅着之前做的 对照着 使用起来比较方便 这里就把小例子列出来 总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先 在 ...
- js小例子(标签页)
运用js写的一个小例子,实现点击不同的标签出现不同的内容: <!DOCTYPE html> <html> <head> <meta chaset=" ...
- sbrk与brk的使用小例子
sbrk() 和 brk() - Unix的系统函数 sbrk()和brk() 系统的底层会维护一个位置,通过位置的移动完成内存的分配和回收.映射内存时 以一个内存页作为基本单位. void* ...
随机推荐
- Java并发编程的4个同步辅助类
Java并发编程的4个同步辅助类(CountDownLatch.CyclicBarrier.Semphore.Phaser) @https://www.cnblogs.com/lizhangyong/ ...
- Kafka简单使用
前言 这几天在写 shell 脚本,学到不少,但是没啥心得之类的,有空可以写个总结(但是大概率不会发表) 现在不算很忙,想再学一点 消息队列相关知识 目前比较出名的也就 RabbitMQ 和 Kafk ...
- 适合前端学习JS的网站
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript
- intellij idea创建maven项目
1.安装好JDK,Tomcat,安装好maven: 2.配置maven全局变量:file->Other Settings ->Default Settings->Build,Exec ...
- 无法执行该VI,必须使用LabVIEW完整版开发系统才可以解决该错误
该错误99%是因为你在某个vi中使用了外部系统组件,比如api,.net组件,ActiveX组件,com组件,所有不是Labview原生的接口,在你打包后,在其他没有安装这些组件的电脑上运行,就会出现 ...
- Redis哈希表总结
本文及后续文章,Redis版本均是v3.2.8 在文章<Redis 数据结构之dict><Redis 数据结构之dict(2)>中,从代码层面做了简单理解.总感觉思路的不够条理 ...
- Scala的泛型
类比java中的泛型: 上界(协变).下界(逆变) scala中泛型采用中括号声明 val array = Array[Int](,,,) array() //声明什么类型就返回什么类型 //test ...
- String hashcode的兴趣试玩
今天突然看到Hashcode和equals,==比较时,一时兴起,想了解一下hashcode生成规则,为什么hashcode相同,无法说明对象相等,但用equals说明相同,却可以推出对象的hashc ...
- nginx 配置laravel框架域名配置
server { listen 80; server_name admin.meiquick.local.com; #charset koi8-r; # access_log /var/log/ngi ...
- 【mybatis】-- springboot整合mybatis
1.添加依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>m ...