逻辑综合:修订间差异
第22行: | 第22行: | ||
== 多层次逻辑的优化 == |
== 多层次逻辑的优化 == |
||
具有实用逻辑功能的电路通常使用了多层次的逻辑网络。 |
具有实用逻辑功能的电路通常使用了多层次的逻辑网络。现代的电路综合工具,可以读取、识别寄存器传输级的硬件描述语言,构建对应的多层次逻辑电路网络。 |
||
接下来,使用不 |
接下来,综合工具会使用对设计者老说不可见的技术方法,将这个逻辑电路网络进行优化。优化的内容,是在此阶段采取一些与具体半导体器件工艺无关的计算机技术,来简化逻辑函数,从而让所用的逻辑门数减少,并满足一定的时序、面积、功耗要求。这一步所完成的任务和人工利用[[卡诺图]]化简逻辑函数的目的一致,不过自动化的逻辑综合工具大大降低了人工操作的难度和错误率。 |
||
最后,优化过后的逻辑门网表将进一步接受各种验证,保证其功能符合设计人员的预期。然后,网表将被送往集成电路硬件厂商,在那里技术人员将采用器件与具体器件工艺相关的技术,根据逻辑门网表制造真实的电路,如[[专用集成电路]]。 |
|||
最后,采用器件工艺相关的技术,将上述工艺无关的电路通过已有的器件工艺转换成以实际的逻辑门组成的电路网络。这时,成本则主要考虑是在的硬件。 |
|||
== 参考文献 == |
== 参考文献 == |
2012年8月7日 (二) 12:23的版本
在电子学中,逻辑综合(英語:logic synthesis)是所需电路的抽象形式(通常是寄存器传输级),转换到逻辑门级别的电路连线网表的过程。通常,逻辑综合包括了硬件描述语言——主要是VHDL和Verilog HDL。某些工具能够在可编程逻辑器件,如可编程阵列逻辑(Programmable Array Logic, PAL)和现场可编程逻辑门阵列(Field Programmable Gate Array, FPGA)上生成数据流过程,而另一些工具则可以设计专用集成电路。逻辑综合是电子设计自动化的一个方面。
历史
逻辑综合的发展可以追溯到乔治·布尔(1815-1864)对逻辑代数的研究(逻辑代数现在也被称为“布尔代数”)。1938年,克劳德·香农展示了如何使用逻辑代数来描述电路开关切换的过程。[1]在早期,逻辑设计牵涉了对真值表的处理(如利用卡诺图)。通过将一系列规则将卡诺图上的某些项进行合并,可以得到最小化的逻辑,即逻辑式可以得到简化。人工进行上述的操作可以处于四到六个变量的卡诺图。
对逻辑最小化进行自动化的第一步是引入奎因-麦克拉斯基算法,它可以在计算机上执行。进行逻辑简化的目的是得到使用最少的逻辑器件,并精确地对表达原始逻辑式的意义。现在,更为高效的Espresso启发逻辑简化法(Espresso heuristic logic minimizer)成为了这一工程的标准工具。早期的另一个研究领域是对有限状态机的简化和编码,这一工作在当时对设计者来说还不容易。逻辑综合的应用大多于数字计算机设计相关。这样,IBM和贝尔实验室在逻辑综合自动化的早期扮演了关键的角色。从分立的逻辑门到可编程逻辑阵列(Programmable logic arrays, PLA)促进了高校的两级逻辑最小化的发展,这是由于两级描述中的最小化条件可以减少可编程逻辑阵列的面积。
然而,两级的逻辑电路在超大规模集成电路中的重要程度受到限制。大多数的设计者使用多级逻辑。实际情况是,几乎所有电路的寄存器传输级(Register-transfer level, RTL)描述或其他行为描述都是多级的。早期IBM的LSS曾被用来设计多级电路。它使用了局部的变形来简化逻辑。LSS以及Yorktown Silicon编译系统在1980年代促进了逻辑综合的研究进程。一些大学将这些研究领域公开,其中加州大学伯克利分校的SIS、[2]加州大学洛杉矶分校的RASP[3]以及科罗拉多大学博尔德分校的BOLD[4]最为知名。在十几年的时间内,逻辑综合技术迅速转变成市场上销售的电子设计自动化产品。
逻辑元件
在标准的设计流程中,逻辑设计是电子电路的功能设计(Functional design)转换到以逻辑、算数以及控制流程的表示形式。这一步骤的成果通常是一个寄存器传输级描述。逻辑设计之后的下一步是电路设计。在现代的电子设计自动化中,逻辑设计可以通过使用基于行为级描述的高阶合成工具自动完成。[5]
逻辑功能元件通常由与、或、异或、与非等逻辑门组成,它们在数字电路中是最基本的电路元件。使用这些逻辑元件可以实现运算等功能。诸如加法器、乘法器(Binary multiplier)都是由基本的逻辑元件构成的。
高级综合或行为级的描述
为了提高设计人员的工作效率,人们致力于电路的行为级描述的研究,并在2004年推出了首款商用解决方案,[6]这些工具可以用来设计复杂的专用集成电路和现场可编程逻辑门阵列应用。这些工具可以在C层次到寄存器传输级之间自动工作,用来实现门级别的设计。[6]如今,高级综合,也被称为行为级综合,主要指从高级语言,例如C语言等,来实现逻辑电路的合成,而逻辑综合则特指从电路的结构、逻辑功能向寄存器传输级的转换。
多层次逻辑的优化
具有实用逻辑功能的电路通常使用了多层次的逻辑网络。现代的电路综合工具,可以读取、识别寄存器传输级的硬件描述语言,构建对应的多层次逻辑电路网络。
接下来,综合工具会使用对设计者老说不可见的技术方法,将这个逻辑电路网络进行优化。优化的内容,是在此阶段采取一些与具体半导体器件工艺无关的计算机技术,来简化逻辑函数,从而让所用的逻辑门数减少,并满足一定的时序、面积、功耗要求。这一步所完成的任务和人工利用卡诺图化简逻辑函数的目的一致,不过自动化的逻辑综合工具大大降低了人工操作的难度和错误率。
最后,优化过后的逻辑门网表将进一步接受各种验证,保证其功能符合设计人员的预期。然后,网表将被送往集成电路硬件厂商,在那里技术人员将采用器件与具体器件工艺相关的技术,根据逻辑门网表制造真实的电路,如专用集成电路。
参考文献
- Electronic Design Automation For Integrated Circuits Handbook, by Lavagno, Martin, and Scheffer, ISBN 0-8493-3096-3 A survey of the field of Electronic design automation. The above summary was derived, with permission, from Volume 2, Chapter 2, Logic Synthesis by Sunil Khatri and Narendra Shenoy.
- A Consistent Approach in Logic Synthesis for FPGA Architectures, by Burgun Luc, Greiner Alain, and Prado Lopes Eudes, Proceedings of the international Conference on Asic (ASICON), Pekin, October 1994, pp. 104–107.
- ^ Claude Shannon. New York University.
- ^ SIS: A System for Sequential Circuit Synthesis. EECS, College of Engineering, UC Berkeley.
- ^ RASP: FPGA/CPLD Technology Mapping and Synthesis Package. UCLA.
- ^ 1966 - Computer Aided Design Tools Developed for ICs. Computer History Museum.
- ^ Naveed A. Sherwani. Algorithms for VLSI physical design automation 3rd. Kluwer Academic Publishers. 1999: 4. ISBN 978-0-7923-8393-2.
- ^ 6.0 6.1 EETimes: High-level synthesis rollouts enable ESL
延伸阅读
- Jie-Hong (Roland) Jiang, Srinivas Devadas. Logic synthesis in a nutshell. Laung-Terng Wang, Yao-Wen Chang, Kwang-Ting Cheng (编). Electronic design automation: synthesis, verification, and test. Morgan Kaufmann. 2009. ISBN 978-0-12-374364-0. chapter 6.
- Gary D. Hachtel; Fabio Somenzi. Logic synthesis and verification algorithms. Springer. 1996. ISBN 0-7923-9746-0. also as published as softcover ISBN 0-387-31004-5 in 2006
- Soha Hassoun, Tsutomu Sasao (编). Logic synthesis and verification. Kluwer. 2002. ISBN 978-0-7923-7606-4.