1、7.3 复杂可编程逻辑器件(CPLD),7.3.1 CPLD的结构,7.3.2 CPLD编程简介,7.3 复杂可编程逻辑器件(CPLD),与PAL、GAL相比,CPLD的集成度更高,有更多的输入端、乘积项和更多的宏单元;,每个块之间可以使用可编程内部连线(或者称为可编程的开关矩阵)实现相互连接。,CPLD器件内部含有多个逻辑块,每个逻辑块都相当于一个GAL器件;,7.3.1 CPLD的结构,更多成积项、更多宏单元、更多的输入信号。,通用的CPLD器件逻辑块的结构,Xilnx XG500: 90个36变量的乘积项,宏单元36个,Altera MAX7000:80个36变量的乘积项,宏单元16个,
2、XG500系列乘积项分配和宏单元,可编程 数据分配器,可编程数据选择器,宏输出,可编程内部连线,可编程内部连线的作用是实现逻辑块与逻辑块之间、逻辑块与I/O块之间以及全局信号到逻辑块和I/O块之间的连接。,连线区的可编程连接一般由E2CMOS管实现。,当E2CMOS管被编程为导通时,纵线和横线连通;未被编程为截止时,两线则不通。,I/O单元是CPLD外部封装引脚和内部逻辑间的接口。每个I/O单元对应一个封装引脚,对I/O单元编程,可将引脚定义为输入、输出和双向功能。,I/O单元,数据选择器提供OE号。 OE=1, I/O引脚为输出,7.3.2 CPLD编程简介,编程过程(Download或Co
3、nfigure):将编程数据写入这些单元的过程。,用户在开发软件中输入设计及要求。,检查、分析和优化。完成对电路的划分、布局和布线,编程的实现:由可编程器件的开发软件自动生成的。,生成编程数据文件,写入CPLD,计算机根据用户编写的源程序运行开发系统软件,产生相应的编程数据和编程命令,通过五线编程电缆接口与CPLD连接。,将电缆接到计算机的并行口,通过编程软件发出编程命令,将编程数据文件(*JED)中的数据转换成串行数据送入芯片。,编程条件,(1)专用编程电缆;(2)微机;(2)CPLD编程软件。,将多个CPLD器件以串行的方式连接起来,一次完成多个器件的编程。这种连接方式称为菊花链连接。,多个CPLD器件串行编程,