lcytms
发表于 2016-12-18 23:13:26
1154
完成了它的建模。
写它的验证。
1155
进行实例化。
做好接线的准备。
这个时候我们声明成reg,现在我们知道了,根本的原因是我们用行为语句来驱动它。
由于它是行为语句的左侧,所以它要声明成reg。
1156
最后呢,我们做forever。
四种情况,set、保持、reset、保持。
写停机。
lcytms
发表于 2016-12-18 23:22:17
1157
取名字,做仿真设置。
这种取名字做设置的方式带有个人色彩,但是在quartus的处理方式下面呢,仍然要人工地去处理这件事情。
所以说在这一点上,业界对Quartus也是有些批评,说它不够方便,所见即所得,what you see is what you get,那个做的并不是特别好。
1158
象ISE就所见即所得,就做得很好。
但是这一点虽然Quartus有少许的进步,但是他们还是坚持我做我的,你说你的。
它有它的好处,好处在什么地方呢?
它的运行速度很快。
这点确实,业界也是一致公认。
虽然它的操作有些不便,如果我们不上这门课程,谁知道nativelink在这里有一个链接关系呢!
但所见即所得,象ISE就不需要,在页面里面你就找得到。
Quartus这些工具,你必须看说明书才知道怎么用。
ISE呢,是所见即所得,不必要看说明书也能找到,在页面上就能够顺藤摸瓜,就能知道什么地方应该有一个点,应该有一个链接。
Quartus就一定要看说明书,不看说明书,谁知道nativelink在这个地方还有一个链接关系呢!
lcytms
发表于 2016-12-18 23:23:37
1159
检查仿真波形。
这一拍是做设置的一拍。
现在这一拍,输入端的set已经被撤销掉了,这个状态仍然被双稳态记忆下来。
lcytms
发表于 2016-12-18 23:25:26
1200
就是我们刚才说的,剑桥大学举的这个例子,一个凹槽里面的一个球,这个时候呢,外部电路轻微的抖动,都使得这个电路保持到原来的状态。
也就是说这个1状态是一直维持住的,除非掉电了。
现在在这一拍,我们做了一个reset,reset就使得系统变成1,这个双稳态电路输出0状态。
0状态的输入撤销了以后,这个状态仍然得到记忆。
后面是周而复始。
由此呢,我们用功能,用function证明了这段代码。
当然,这段代码的描述问题,没有问题,一定是做了结构化的描述。
描述了how to do,我们是用或非门来实现的。
1201
上午先到这,下午我会接着说与非门,以及RS锁存器的与非门,由与非门构成的D锁存器,由D锁存器构成D触发器,由D触发器构成行为语句的描述,寄存器的描述。
这个过程我会给大家做出来,上午先到这。
午休
fpga_wuhan
发表于 2016-12-23 15:36:48
EDA建模、HDL描述语言
lcytms
发表于 2016-12-25 22:02:56
1332
上午我们讨论了数据类型和结构化的二选一多路器,组合逻辑,时序逻辑我们做到了RS锁存器。
下午会接着把RS锁存器由或非门构成的,改成由与非门构成的。
RS锁存器,改成D锁存器,由D锁存器进化到D触发器,继而行为的寄存器描述。
lcytms
发表于 2016-12-25 22:04:40
1333
之后下午呢,我们争取做能够下板的一个实验,做一个七段数码管的驱动。
我现在就做由或非门改成与非门。
RS锁存器,这个是由或非门构成的,现在呢,我们把它改成与非门。
lcytms
发表于 2016-12-25 22:05:56
1334
与非门是负逻辑。负逻辑形成与非门,构成D类型,数据类型。
这个是数字电路里面的一般做法。
仍然是RS锁存器,刚才我们讨论的是由或非门构成,这次是由与非门构成。
lcytms
发表于 2016-12-25 22:09:23
1335
交叉耦合的与非门。
或非门上面是R,下面是S,这个上面是S,下面是R,但是是负逻辑。
我们来写真值表。
有两个输入,所以说是四种情况,输入01时,输出为10。
lcytms
发表于 2016-12-25 22:10:55
1336
对称的逻辑,不用分析,一定是01。
因为这段电路是完全对称的。
现在呢,我们来讨论保持的时候,会发生什么?
保持的时候,因为都是负逻辑,也就是它们都是假值的时候,输入为11的时候。