数字电路主要由相互连接的晶体管组成。我们设计和分析这些电路的帮助下一个层次结构:理论上,我们可以解释一个中央处理单元(CPU)的晶体管,但它是更容易组织晶体管逻辑门,逻辑门成条或寄存器或计时模块,注册到内存中银行,等等。
这种层次化的结构使我们能够通过互连图有效地表示数字电路。我们称之为原理图。这种描述数字电路的可视化方法是直观的,但随着复杂性的增加,它变得不切实际。另一种描述数字电路的方法是使用一种文本语言,这种语言是专门用来清晰而简洁地捕捉数字设计的定义特征的。
这样的语言是存在的,它们被称为硬件描述语言(hdl)。
hdl做什么?
最流行的硬件描述语言是Verilog和硬件描述语言(VHDL).它们被广泛地与fpga,这是专门设计的数字设备,以促进创建定制的数字电路。
硬件描述语言允许您使用文字和符号描述电路,然后开发软件可以将文本描述转换为加载到FPGA中的配置数据,以实现所需的功能。
一个HDL代码的例子
下面是一个HDL代码示例:
1 entity Circuit_1为
2端口(a:在STD_LOGIC;
3 b:在STD_LOGIC;
4 out1:输出STD_LOGIC);
5 Circuit_1结束;
-----------------------------------------------------
Circuit_1的行为为
8日开始
9 out1 <= (a and b);
10年底行为;
本规范描述的电气行为可以直观地表示为:
编程语言vs.硬件描述语言
许多人在开始学习硬件描述语言时已经熟悉了编程语言。hdl类似于高级编程像C这样的语言或Python,但重要的是要理解其中的根本区别:HDL代码中的语句涉及并行操作,而编程语言则表示顺序操作。
当我们编写计算机程序或固件模块时,我们知道处理器将按照从上到下的组织方式,一次执行一行代码。
在HDL代码中,我们描述的是数字硬件,尽管相应的代码行是使用自顶向下的组织编写的,但是这个硬件的不同部分可以同时运行。
进一步的阅读
关于硬件描述语言,你想了解什么?在下面的评论中分享你的问题。