FPGA 是新一代面向用户的可编程逻辑器件它的功能密度远远超过其他 PLD 器件,一块 FPGA 可以替代( 100-200 )片标准器件或者( 20-40 )片 GAL 器件, 其I/O 引脚数多达 100 余条。所以一片 FPGA 芯片可以替代多个逻辑功能复杂的逻辑部件,或者一个小型数字系统。自 FPGA 问世以来,它已在许多领域获得了广泛的应用。逻辑单元型结构( LCA ,Logic Cell Array )的 FPGA 由三部分组成,即逻辑单元阵列 CLB (configurable logic block )、I/O 单元、互联资源。这种类型结构的特点是通过对 CLB 编程实现逻辑功能;通过对 I/O 单元编程确定输入或输出结构;通过对互联资源编程实现 CLB 之间、CLB 与I/O 单元之间、I/O 单元之间的互联关系,从而实现用户所需要的逻辑功能。PAL 结构扩展型 FPGA 则是在 PLA 基础上加以改进和扩展,大幅度增加了寄存器数量和 I/O 引脚数,增设了可编程互联资源,改善了互联模式,改进了阵列结构使得芯片的利用率大大提高。 CPLD 器件的结构是一种与阵列可编程、或阵列固定的与或阵列形式。 PAL 、 GAL都采用这种形式,但CPLD 同它们相比,增加了内部连线对逻辑宏单元和 I/O 单元也有重大改进。一般情况下, CPLD 器件中包含三种结构:可编程逻辑宏单元、可编程 I/O 单元、可编程内部连线。部分 CPLD 器件内还集成了 RAM 、FIF O 或双口 RAM 等存储器,以适应 DSP 应用设计的要求。 CPLD 器件具有同 FPGA 器件相似的集成度和易用性,在速度上还有一定的优势,因此,在可编程逻辑器件技术的竞争中它与 FPGA 并驾齐驱,成为两支领导可编程器件技术发展的力量之一。 FPGA/CPLD 之间存在一些区别,主要有如下几方面。