PLD的编程与配置
发布时间:2013/10/21 20:09:03 访问次数:1520
当利用PLD开发系统完成数字系统设计后,HA17903就需要将PLD编程或配置数据下载到PLD中,以便最后获得满足设计要求的数字系统。
PLD制造工艺和结构不同,器件编程或配置的方式也就不同。
(1)根据与计算机端接口分类
①串口下载:下载电缆的一端连接到PC的9针标准串行RS-232接口(COM口),另一端连接到PLD下载控制端。
②并口下载:下载电缆的一端连接到PC的25针标准并行接口(LPT口),另一端连接到PLD下载控制端。
③USB接口下载:下载电缆的一端连接到PC的USB口。另一端连接到PLD下载控制端。
(2)根据PI。D制造工艺分类
①CPLD编程:对采用EPROM、E2 PROM和Flash工艺的CPLD器件,由于这类器件存储的编程数据是非失性的,所以只需简单地利用专门的下载电缆,将编程数据下载到编程器即可。
②FPGA配置:对采用SRAM工艺的FPGA器件,它的配置数据存储在SRAM中。由于SRAM具有编程数据的易失性,所似需将配置数据存储在外部的E2 PROM、Flash存储器或计算机硬盘中,每次系统上电时,必须重新配置数据,只有在数据配置正确的情况下系统才能正常工作。
(3)根据下载过程状态分类
①主动配置方式:在这种配置模式下,由PLD引导配置操作过程,并控制外部存储器和初始化过程。
②被动配置方式:在这种配置模式下,由外部计算机或单片机控制配置过程。
(4)根据配置数据传送方式分类
①串行配置方式:在这种配置模式下,配置数据以串行位流方式向PI。D提供数据。
②并行配置方式:在这种配置模式下,配置数据以并行字节方式向PLD提供数据。
CPLDlFPGA在器件正常使用和编程数据下载工作状态是不同的,一般分为以下3种:
①用户状态:此时PLD器件处于正常工作状态,完成预定逻辑功能。
②配置状态:此时PLD处于编程数据下载的过程,其用户I/O端口无效。
③初始化状态:此时PLD内部的各类寄存器复位或置位,让I/O引脚为使器件正常工作做好准备。
最后必须指出,各种PLD的编程工作都需要在开发系统的支持下进行。开发系统的硬件部分由计算机和编程器组成,软件部分是专用的编程语言和相应的编程软件。开发系统种类很多,性能差别很大,各有一定的适用范围。因此在设计数字系统选择PLD的具体型号的同时,必须考虑到所使用的开发系统能否支持所选PLD型号器件的编程工作。
当利用PLD开发系统完成数字系统设计后,HA17903就需要将PLD编程或配置数据下载到PLD中,以便最后获得满足设计要求的数字系统。
PLD制造工艺和结构不同,器件编程或配置的方式也就不同。
(1)根据与计算机端接口分类
①串口下载:下载电缆的一端连接到PC的9针标准串行RS-232接口(COM口),另一端连接到PLD下载控制端。
②并口下载:下载电缆的一端连接到PC的25针标准并行接口(LPT口),另一端连接到PLD下载控制端。
③USB接口下载:下载电缆的一端连接到PC的USB口。另一端连接到PLD下载控制端。
(2)根据PI。D制造工艺分类
①CPLD编程:对采用EPROM、E2 PROM和Flash工艺的CPLD器件,由于这类器件存储的编程数据是非失性的,所以只需简单地利用专门的下载电缆,将编程数据下载到编程器即可。
②FPGA配置:对采用SRAM工艺的FPGA器件,它的配置数据存储在SRAM中。由于SRAM具有编程数据的易失性,所似需将配置数据存储在外部的E2 PROM、Flash存储器或计算机硬盘中,每次系统上电时,必须重新配置数据,只有在数据配置正确的情况下系统才能正常工作。
(3)根据下载过程状态分类
①主动配置方式:在这种配置模式下,由PLD引导配置操作过程,并控制外部存储器和初始化过程。
②被动配置方式:在这种配置模式下,由外部计算机或单片机控制配置过程。
(4)根据配置数据传送方式分类
①串行配置方式:在这种配置模式下,配置数据以串行位流方式向PI。D提供数据。
②并行配置方式:在这种配置模式下,配置数据以并行字节方式向PLD提供数据。
CPLDlFPGA在器件正常使用和编程数据下载工作状态是不同的,一般分为以下3种:
①用户状态:此时PLD器件处于正常工作状态,完成预定逻辑功能。
②配置状态:此时PLD处于编程数据下载的过程,其用户I/O端口无效。
③初始化状态:此时PLD内部的各类寄存器复位或置位,让I/O引脚为使器件正常工作做好准备。
最后必须指出,各种PLD的编程工作都需要在开发系统的支持下进行。开发系统的硬件部分由计算机和编程器组成,软件部分是专用的编程语言和相应的编程软件。开发系统种类很多,性能差别很大,各有一定的适用范围。因此在设计数字系统选择PLD的具体型号的同时,必须考虑到所使用的开发系统能否支持所选PLD型号器件的编程工作。
上一篇:可编程数据选择器MUX
上一篇:编程器简介