第三周
介绍
这是啥?
这是一个由希伯来大学的 Shimon Schocken与 Noam Nisan讲授的课程。
教你从最简单的与非门实现计算机,并在计算机上实现操作系统,最后在构建的计算机上完成俄罗斯方块的制作。
官网主页:http://www.nand2tetris.org
Coursera课程主页:https://www.coursera.org/learn/build-a-computer
我将它的视频课程搬运到了B站,方便大家学习:https://space.bilibili.com/69824765/#/channel/detail?cid=56426
如果能科学上网的话,也可以在youtube搜索Nand2Tetris。
新的东西 - Time
从这一周开始,计算机引进了一个新的东西:时间。在电路中用时钟信号表现。
触发器 Flip Flop
触发器是一种可以存储电路状态的电子元件,所以存储器实现的基本单位就是触发器。
项目中已经实现了D触发器,可以像最开始使用Nand门那样实用D触发器(DFF)。
在讨论D触发器的真值表之前,先得搞清楚一个问题:
Conbinatorial Logic vs. Sequential Logic - 组合逻辑 vs. 时序逻辑
对于组合逻辑,它相当于一个函数f(x),输入x,输出f(x)。
但是对于时序逻辑,它的作用时是持续的,如果将1秒规定为一个逻辑处理时间单位,时序逻辑将不会更改这一秒的逻辑输出,而是会作用于下一秒的输出。
可以简单的看作:f(x - 1) = f(x)