1.4 可编程逻辑器件

可编程逻辑器件(Programmable Logic Device,PLD)是一种半定制集成电路,在其内部集成了大量的门和触发器等基本逻辑单元电路(LEs),用户通过编程来改变PLD内部电路的逻辑关系或连线,就可以得到所需要的设计电路。可编程逻辑器件的出现,改变了传统的数字系统设计方法,其设计方法为采用EDA技术开创了广阔的发展空间,并极大地提高了电路设计的效率。

在PLD没有出现之前,数字系统的传统设计往往采用“积木”式的方法进行,实质上是对电路板进行设计,通过标准集成电路器件搭建成电路板来实现系统功能,即先由器件搭成电路板,再由电路板搭成系统。数字系统的“积木块”就是具有固定功能的标准集成电路器件,如TTL的74/54系列、CMOS的4000/4500系列芯片和一些具有固定功能的大规模集成电路等。用户只能根据需要选择合适的集成电路器件,按照此种器件推荐的电路搭成系统并调试成功。设计中,设计者没有灵活性可言,搭成的系统需要的芯片种类多且数目大。

PLD的出现,给数字系统的传统设计法带来了新的变革。采用PLD进行的数字系统设计,是基于芯片的设计或称为“自底向上”(Bottom-Up)的设计,与传统的积木式设计有本质上的不同。它可以直接通过设计PLD芯片来实现数字系统功能,将原来由电路板设计完成的大部分工作放在PLD芯片的设计中进行。这种新的设计方法能够由设计者根据实际情况和要求定义器件的内部逻辑关系和引脚,通过芯片设计实现多种数字系统功能。同时,由于引脚定义的灵活性,不但大大减轻了系统设计的工作量和难度,提高了工作效率,而且还可以减少芯片数量,缩小系统体积,降低能源消耗,提高系统的稳定性和可靠性。

硬件描述语言(HDL)给PLD和数字系统的设计带来了新的设计方法和理念,产生了目前最常用且称为“自顶向下”(Top-Down)的设计法。自顶向下的设计采用功能分割的方法,从顶层设计开始,逐次向下将设计内容进行分块和细化。在设计过程中,采用层次化和模块化方式,将使系统设计变得简捷和方便。层次化设计是分层次、分模块地进行设计描述的。描述器件总功能的模块放在最上层,称为顶层设计;描述器件某一部分功能的模块放在下层,称为底层设计;底层模块还可以再向下分层,直至最后完成硬件电子系统电路的整体设计。