跳转到内容

逻辑综合:修订间差异

维基百科,自由的百科全书
删除的内容 添加的内容
AH829留言 | 贡献
无编辑摘要
AH829留言 | 贡献
无编辑摘要
第13行: 第13行:


== 逻辑元件 ==
== 逻辑元件 ==
[[Image:Baops.gif|right|thumb|450px|一些逻辑元件的表示符号Various representations of Boolean operations]]
[[Image:Baops.gif|right|thumb|450px|一些逻辑元件的表示符号]]
在标准的设计流程中,逻辑设计是[[电子电路]]的[[功能设计]]({{lang|en|Functional design}})转换到以逻辑、算数以及控制流程的表示形式。这一步骤的成果通常是一个[[寄存器传输级]]描述。逻辑设计之后的下一步是[[电路设计]]。在现代的[[电子设计自动化]]中,逻辑设计可以通过使用基于行为级描述的[[高阶合成]]工具自动完成。<ref name="Sherwani1999">{{cite book|author=Naveed A. Sherwani|title=Algorithms for VLSI physical design automation|year=1999|edition=3rd|page=4|publisher=Kluwer Academic Publishers|isbn=978-0-7923-8393-2}}</ref>
在标准的设计流程中,逻辑设计是[[电子电路]]的[[功能设计]]({{lang|en|Functional design}})转换到以逻辑、算数以及控制流程的表示形式。这一步骤的成果通常是一个[[寄存器传输级]]描述。逻辑设计之后的下一步是[[电路设计]]。在现代的[[电子设计自动化]]中,逻辑设计可以通过使用基于行为级描述的[[高阶合成]]工具自动完成。<ref name="Sherwani1999">{{cite book|author=Naveed A. Sherwani|title=Algorithms for VLSI physical design automation|year=1999|edition=3rd|page=4|publisher=Kluwer Academic Publishers|isbn=978-0-7923-8393-2}}</ref>


逻辑功能元件通常由与、或、异或、与非等[[逻辑门]]组成,它们在数字电路中是最基本的电路元件。使用这些逻辑元件可以实现运算等功能。诸如[[加法器]]、[[乘法器]]({{lang|en|Binary multiplier}})都是由基本的逻辑元件构成的。
逻辑功能元件通常由与、或、异或、与非等[[逻辑门]]组成,它们在数字电路中是最基本的电路元件。使用这些逻辑元件可以实现运算等功能。诸如[[加法器]]、[[乘法器]]({{lang|en|Binary multiplier}})都是由基本的逻辑元件构成的。

== 高级综合或行为级的描述 ==
为了提高设计人员的工作效率,人们致力于电路的行为级描述的研究,并在2004年推出了首款商用解决方案,<ref name='EETimes'>EETimes: [http://archives.eetimes.com/high-level-synthesis-rollouts-enable-esl/110436.html High-level synthesis rollouts enable ESL]</ref>这些工具可以用来设计复杂的[[专用集成电路]]和[[现场可编程逻辑门阵列]]应用。这些工具可以在C层次到寄存器传输级之间自动工作,用来实现门级别的设计。<ref name="EETimes"/>如今,高级综合,也被称为行为级综合,主要指从高级语言,例如[[C语言]]等,来实现逻辑电路的合成,而逻辑综合则特指从电路的结构、逻辑功能向寄存器传输级的转换。


== 参考文献 ==
== 参考文献 ==

2012年7月8日 (日) 13:17的版本

电子学中,逻辑综合(英語:logic synthesis)是所需电路的抽象形式(通常是寄存器传输级),转换到以逻辑门为基础的设计目标的过程。通常,逻辑综合包括了硬件描述语言——主要是VHDLVerilog HDL。某些工具能够在可编程逻辑器件,如可编程阵列逻辑Programmable Array Logic, PAL)和现场可编程逻辑门阵列Field Programmable Gate Array, FPGA)上生成位元流,而另一些工具则可以设计专用集成电路。逻辑综合是电子设计自动化的一个方面。

历史

逻辑综合的发展可以追溯到乔治·布尔(1815-1864)对逻辑代数的研究(逻辑代数现在也被称为“布尔代数”)。1938年,克劳德·香农展示了如何使用逻辑代数来描述电路开关切换的过程。在早期,逻辑设计牵涉了对真值表的处理(如利用卡诺图)。通过将一系列规则将卡诺图上的某些项进行合并,可以得到最小化的逻辑,即逻辑式可以得到简化。通常上述的人工操作可以处于四到六个变量的卡诺图。

对逻辑最小化进行自动化的第一步是引入奎因-麦克拉斯基算法,它可以在计算机上执行。XXX。现在,更为高效的Espresso启发逻辑简化法Espresso heuristic logic minimizer)成为了这一工程的标准工具。早期的另一个研究领域是对有限状态机的简化和编码,这一工作在当时对设计者来说还不容易。逻辑综合的应用大多于数字计算机设计相关。这样,IBM贝尔实验室在逻辑综合自动化的早期扮演了关键的角色。从分立的逻辑门到可编程逻辑阵列Programmable logic arrays, PLA)促进了高校的两级逻辑最小化的发展,这是由于两级描述中的最小化条件可以减少可编程逻辑阵列的面积。

然而,两级的逻辑电路在超大规模集成电路中的重要程度受到限制。大多数的设计者使用多级逻辑。实际情况是,几乎所有电路的寄存器传输级Register-transfer level, RTL)描述或其他行为描述都是多级的。早期IBM的LSS曾被用来设计多级电路。它使用了局部的变形来简化逻辑。LSS以及Yorktown Silicon编译系统在1980年代促进了逻辑综合的研究进程。一些大学将这些研究领域公开,其中加州大学伯克利分校的SIS、加州大学洛杉矶分校的RASP以及科罗拉多大学博尔德分校的BOLD最为知名。在十几年的时间内,逻辑综合技术迅速转变成市场上销售的电子设计自动化产品。

逻辑元件

一些逻辑元件的表示符号

在标准的设计流程中,逻辑设计是电子电路功能设计Functional design)转换到以逻辑、算数以及控制流程的表示形式。这一步骤的成果通常是一个寄存器传输级描述。逻辑设计之后的下一步是电路设计。在现代的电子设计自动化中,逻辑设计可以通过使用基于行为级描述的高阶合成工具自动完成。[1]

逻辑功能元件通常由与、或、异或、与非等逻辑门组成,它们在数字电路中是最基本的电路元件。使用这些逻辑元件可以实现运算等功能。诸如加法器乘法器Binary multiplier)都是由基本的逻辑元件构成的。

高级综合或行为级的描述

为了提高设计人员的工作效率,人们致力于电路的行为级描述的研究,并在2004年推出了首款商用解决方案,[2]这些工具可以用来设计复杂的专用集成电路现场可编程逻辑门阵列应用。这些工具可以在C层次到寄存器传输级之间自动工作,用来实现门级别的设计。[2]如今,高级综合,也被称为行为级综合,主要指从高级语言,例如C语言等,来实现逻辑电路的合成,而逻辑综合则特指从电路的结构、逻辑功能向寄存器传输级的转换。

参考文献

  1. ^ Naveed A. Sherwani. Algorithms for VLSI physical design automation 3rd. Kluwer Academic Publishers. 1999: 4. ISBN 978-0-7923-8393-2. 
  2. ^ 2.0 2.1 EETimes: High-level synthesis rollouts enable ESL