ACEX 1K系列CPLD配置方法探讨
扫描二维码
随时随地手机看文章
1 引言
ACEX 1K 系列器件是Altera 公司近期推出的新型CPLD 产品。该器件基于SRAM,结合查找表(LUT)和嵌入式阵列块(EAB)提供了高密度结构,可提供10 000 到100 000 可用门,每个嵌入式阵列块增加到16 位宽可实现双端口,RAM 位增加到49125 个。其多电压引脚可以驱动2.5V、3.3V、5.0V 器件,也可以被这些电压所驱动;双向I/O 引脚执行速度可达250MHz。该器件还应用Altera 专利技术进行了重要的生产改进,进一步降低了器件的成本,提高了产品的性能价格比。因此,ACEX 1K 器件可用来实现许多逻辑复杂、信息量大的系统。但是在器件操作过程中,ACEX 1K 系列器件的配置数据存储在SRAM 单元中,由于SRAM的易失性,配置数据在每次上电时必须被重新载入SRAM。
2 配置ACEX 1K 系列器件三种方法的比较
对于ACEX 1K 系列器件,目前实现加载的方法有以下3 种:①采用PROM 并行加载;②采用单片机控制实现加载;③通过JTAG 口直接一次性实现编程数据加载。第一种方式需要占用较多的CPLD 管脚资源,虽然这些资源在加载完成后可用作一般的I/O 口,但在加载时不允许这些管脚有其他任何外来信号源;另外数据存储在PROM 与CPLD 之间的大量固定连线,如8 位数据线以及大量访问PROM 的地址线等,使得PCB 板设计不便。但是这种方式有一个好处,即PROM 的容量较大、容易购置、价格低、技术支持(编程器)较好。第二种方式采用单片机控制,由PROM 中读取并行数据,然后串行送出。由于涉及到单片机编程,对于开发者来说较为不便;另外,如果单片机仅用来实现该任务,较为浪费硬件资源。CPLD 的一个最大优点是采用计算机专用开发工具,通过JTAG 口直接一次性实现编程数据加载,但是由于ACEX 1K 器件SRAM 的易失性使数据无法永久保存,为调试带来很大的不便,特别是从事野外作业者。
目前,Altera 公司推出了相应的配置器件。在CPLD 器件配置过程中,配置数据存储在配置器件的EPROM 中,通过配置器件内部振荡器产生的时钟控制数据输出。本文以20 脚EPC2 器件(以下简称EPC2)为例阐述配置器件与ACEX 1K 系列器件的连接。
3 EPC2 器件简介
EPC2 具有Flash 配置存储器,可用来配置5.0V、3.3V、2.5V 器件。通过内置的IEEE Std.1149. 1 JTAG 接口EPC2 可以在5.0V 和3.3V 电压下进行在系统编程(ISP)。 系统编程后,调入JTAG 配置指令初始化ACEX 1K 器件。EPC2 的ISP 能力使ACEX 1K 器件的初始和更新更容易。当用EPC2 配置ACEX 1K器件时,在配置器件的内部发生带电复位延迟,最大值为200ms。Alterat 公司的QuartusⅡ和MAX+PLUSⅡ软件均支持配置器件的编程,设计中软件自动为每一个配置器件产生POF。多器件设计中,对于多个ACEX 1K 器件,软件可以将编程文件与一个或多个配置器件联合。软件允许用户选择适当的配置器件更充分地储存每一个ACEX 1K器件的配置数据。
4 器件连接及工作原理
当用一片EPC2 配置ACEX 1K 器件时,EPC2 的控制信号nCS、OE、DCLK 直接和ACEX 1K系列器件的控制信号连接。图1 给出了ACEX 1K 器件和一片EPC2 的连接关系。
EPC2 的nCS 和OE 引脚控制DATA 输出引脚的三态缓冲器,使能地址计数器和EPC2 的振荡器。nCS 引脚控制配置器件的输出。当OE 引脚接低电平时,不论nCS 为何状态,地址计数器复位,DATA 引脚输出为高阻状态。当OE 引脚接高电平时,如果nCS 保持高电平,则计数器停止计数,DATA 引脚保持高阻状态;如果nCS 接低电平,则计数器和DATA 引脚正常工作。EPC2 允许用户将nINIT_CONF 引脚与PLD 器件的nCONFIG 引脚相连来初始化PLD 器件的配置。EPC2 的DATA 引脚与ACEX 1K 系列器件的DATA0 或DATA 引脚相连。存储在EPC2 器件中的数据在其内部时钟的控制下顺序输出到DATA 脚,然后在控制信号的控制下输出到CPLD 器件的DATA0 或DATA 引脚。当配置数据的大小超过一片EPC2 的容量时,可以采用多片这时候器的nCASC 和nCS 引脚做器件间的握手信号。器件连接如图1 虚线所示。
用级联EPC2 配置ACEX 1K 器件时,EPC2 的操作与其在级联链中的位置有关。当级联链中的第一个即主EPC2 加电或复位,且nCS 脚为低电平时,主EPC2 控制配置进行。配置过程中主EPC2 向其后的从属EPC2 和CPLD 器件提供所有的时钟脉冲,并向PLD 器件提供第一个数据流。当主EPC2 中配置数据发送完毕,器件的nCASC 脚变为低电平
,使第一个从属EPC2的nCS 脚变为低电平,从而使从属EPC2 向外发送配置数据。每一片EPC2 中数据全部输出且nCASC 引脚为低电平时,器件的DATA 引脚置为高阻状态以避免和其他配置器件发生竞争。一旦所有的配置数据传送完毕,且基于查找表的CPLD 器件的CONF_DONE 脚驱动主EPC2 的nCS 脚为高电平,主EPC2 器件将额外增加16 个时钟周期来初始化CPLD 器件。随后主EPC2器件进入空闲状态。当需要另外加入EPC2 器件时,可以将欲加入的EPC2 的nCASC 引脚和级联链中的从属EPC2 的nCS 相连,DCLK、DATA 和OE 引脚并联。5 结论
从上述的阐述中,我们可以看到:采用Altera 公司的专用配置器件加载数据时,配置器件与CPLD 之间的接口线非常少,且直接连接不需要外加智能控制器;通过器件内置JTAG口能够将数据一次性写入EPROM 中加以保存,而且当CONFIG 数据量较大时,可以采用多片级联;器件可多次写入,当需要下载新数据时不需事先擦除器件中原有数据,只需将新数据直接写入即可。由此可见采用配置器件加载数据方便、可靠、易学易用。
参考文献
1 范宏波,李一民,朱红梅。采用EEPROM 对大容量FPGA 芯片数据实现串行加载,云南省昆明理工大学信电学院。 2001 年第5 期
2 ACEX 1K Programmable Logic Device Family. Altera Corporation, 2001.9
3 Configuration Devices for SRAM-Based LUT Device. Altera Corporation, 2002.2
4 Configuring SRAM-Based LUT Devices. Altera Corporation, 2002.2
5 CPLD datasheet http://www.dzsc.com/datasheet/CPLD+_1136600.html.
6 PCB datasheet http://www.dzsc.com/datasheet/PCB+_1201640.html.
7 EPROM datasheet http://www.dzsc.com/datasheet/EPROM+_1128137.html.
8 EPC2 datasheet http://www.dzsc.com/datasheet/EPC2+_2058984.html.
来源:零八我的爱0次