如果本次课程对应的 Coursera 的视频打不开,可以点击下面链接
P1W1U1.4 - Hardware Description Language
经过了上几节的课程,这节我们终于可以开始实践了,可惜在实践前。我们又要先介绍一下 我们需要用到的工具和语言。
这节先说语言。我们后面几周的工作都离不开的一种硬件描述语言,如下图蓝色区域的部分。
我们去实现一个复杂的逻辑门时,起码会提供 下图上部分 的一种 逻辑门的符号,或者语言描述等,总之都能归纳成真值表。
然后利用真值表 经过。最终我们就可以得到对应的HDL(下图蓝色区域)来模拟实现对应的逻辑门。
:
1.真值表(下图右上) ==> 布尔表达式
(转换参考 Unit1.2 里 教的方法,简述:真值表里挑出out为1的行,挑出的每行里 ab用and连,遇到0加not,最后挑出的行用or连)
2.布尔表达式(下图左下) ==> 逻辑门示意图
(这个只能靠经验自己观察琢磨了,多看例子了)
3.逻辑门示意图 ==> HDL(下图右下)
(后面讲解)
逻辑门的图示 转 HDL:
首先在逻辑门上 标示出 a、b、out。
然后为了避免每个逻辑门的 标识重复,需要再给虚框内每个需要的逻辑门的输入或输出端,确定好自定义的名字(比如上方的Not的out 就可以改为 nota。),我们要保留虚框外面的 a 、b、out不变,因为它们是提供给外部其它逻辑门交互的接口。
对应下面蓝色区域,HDL的语言可以分两大块,一块(interface)是定义要编写的逻辑门的名称和外部接口(a、b、out),另一块(implementation)是要写的实现代码。
那么实现代码,就是从图示的左往右依次写完每个逻辑门的输入和输出(理论上,你可以不按顺序写,但是从左往右写可读性更好)。
这里大概介绍了一下本课程的HDL 和 默认编写规范,
课程里用到的硬件描述语言,是老师围绕课程以简单、方便、高效理解、为原则设计的。
另外一些专业领域会用到的硬件描述语言,比如我听说过的有 VHDL 和 Verilog。关于HDL的文档可以参考下图链接
这节课我们学会了写 逻辑门 的 HDL语言了。
那么下节课就是讲如何在模拟器的使用,如何加载文件、调试、测试我们的设计了。