集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
楼主: lcytms

跟李凡老师学FPGA之D02:EDA建模、HDL描述语言(20160424课堂笔记)

[复制链接]
 楼主| lcytms 发表于 2016-12-25 22:35:54 | 显示全部楼层
1352
        这个就是D锁存器。
        我们先把端口声明出来。
        这个时候一定要交换为顶层,仿真我们才能做得下去。
        Ctrl+S、Ctrl+K。
        然后我们同样用门级原语,第一个是它的反向器not,u1。
  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:37:59 | 显示全部楼层
1353
        然后是与非门,u2。
        四个与非门,u3、u4、u5。
        声明中间信号,d_n、s_n、r_n。
        写参数。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:39:19 | 显示全部楼层
1354
        写参数。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:41:09 | 显示全部楼层
1355
        Ctrl+S、Ctrl+K。
        这次我们写成验证的时候呢,我们特地加一段毛刺,锁存器的毛刺现象、冒险和竞争现象,就是数字电路里面讨论比较充分的一个部分。
        新建verilog,另存为d_latch_tb.v。
        写时标。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:42:42 | 显示全部楼层
1356
        做好装配的准备。
        写时钟,一定要记住,初始化的时候,1比0好。
        既然写了时钟,我们就写它的周期。
        我们写一个25MHz的时钟,周期40ns,半周期20ns。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:43:48 | 显示全部楼层
1357
        初始化时钟为1,d为0。
        然后写forever,我写一段毛刺。
        就是d,data信号本身就有毛刺。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:45:09 | 显示全部楼层
1358
        我们可以看得到这种穿透现象。
        然后写一个停机。
  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:46:55 | 显示全部楼层
本帖最后由 lcytms 于 2016-12-25 22:47 编辑

1359
        做仿真设置。
        运行仿真。
        所以说,我们这段课程呢,实际上对我们建模的学习,是对数字电路的复习。
        观察仿真波形。
        clk为高电平的时候,也就是使能信号为高电平的时候,数据穿透了,d是什么,q就是什么。
        当使能信号从高到低跳变的瞬间,这个信号被锁存了下来。
   

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:50:29 | 显示全部楼层
1400
        变成高电平的时候是穿透的,变成低电平的时候被锁存住了。
        这种逻辑在FPGA里面,称之为电平敏感的逻辑。
        因为使能信号是电平触发的,当它为高电平的时候,数据穿透。
        为低电平的时候,数据保持。
        因为这是一个电平敏感。
        当然我们现在只是做一个复习,同时我们也是看到数据流、行为、结构化怎么写。
        现在我们讨论的这些时序逻辑,全都是结构化,全都讨论了how to do。
1401
        现在我们进一步地把它转变成沿敏感,也就是说这个触发,完全是沿信号的触发,而不是电平信号的触发。
        现在锁存的瞬间是电平,但是为高电平的时候却穿透了。
        我们知道,完全的沿敏感才能有效屏蔽。
        在数字电路里面,它是用什么方式来解决这个问题呢?
        本身这个D锁存器就是沿锁存,但是呢,由于在高电平的时候,它是穿透的,所以说,数字电路的解决方案就是维持阻塞,今天的寄存器就是这么做的。
        这样的话呢,我们把D类型的锁存器变成D类型的触发器。
1402
        D类型的Flip flop,缩写是DFF,D触发器。
        这个DFF呢,就是我们现在说的register,寄存器。
        DFF称之为寄存器,就是说具有注册登记保持的功能。
        这个呢,是同步电路里面的一个名词,register。
        电路的名词,就是DFF。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2016-12-25 22:51:52 | 显示全部楼层
1403
        维持阻塞怎么构成呢?
        有两个类似的结构,就是D锁存器。
        这个是它的从机,然后它的前级构成一个主机,也是D锁存器。
        主机,从机,这边的Q,这边的D,直接相连。
        这边的Q输出端,就是触发器的Q输出端。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-12-24 11:17 , Processed in 0.067932 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表