上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.4.2 逻辑综合和优化
EDA 工具的使用大大简化了电路设计的工作,提高了效率,但很多使用可编程语言的工程师并不能很好地理解 VHDL 是如何转化成可实现的硬件电路的,从而导致很多使用软件编程思想的代码,这种设计不是不能综合成实际的硬件电路就是效率极其低下,功耗面积等性能指标均不理想。因此,笔者希望从事 VHDL 设计的工程师对电路的逻辑综合和优化过程有一定的了解,但没有必要去仔细研究这些编译算法的原理,因为一旦选定了要使用的EDA 设计软件,其基本的编译综合和优化算法也就固定了,很有经验的工程师也只是通过一系列软件提供的高级GUI接口对这些算法做一个简单的折中控制。
通过前面的介绍,读者应该可以理解综合器的功能,即将 HDL 语言针对硬件结构进行编译、综合、优化和转换,最终获得电路的门级甚至更低层的描述文件,形成一个用做中间衔接的网表文件。这种文件不仅可以用做 CPLD/FPGA 的电路综合,它同样适用于 ASIC 门阵列结构的设计。
值得注意的是,VHDL语言相对于Verilog而言更偏向于高层系统,即VHDL仿真器往往面向高层次的系统仿真,可以不针对任何硬件系统对 VHDL 描述的系统进行可行性的评估测试。因此,基于这一层仿真的许多 VHDL 语句是不能被综合的,如 Wait 语句。换句话说,就是这类语句无法在硬件系统中实现。此时,综合期将会忽略掉这些语句,这也就可能导致所设计系统的功能无法实现、不正确或者效率低下。