您的位置 首页 电路

根据CPLD的FPGA快速装备电路的规划

介绍了采用CPLD和Flash器件对FPGA实现快速并行配置,并给出了具体的硬件电路设计和关键模块的内部编程思路。

依据SRAM工艺的FPGA(现场可编程门阵列)具有集成度高、逻辑功用强等特色;运用FPGA进行数字电路规划,不光能减小电路的体积,进步体系运转的牢靠性,并且其先进的开发工具可使电路规划和体系调试周期大大缩短;FPGA可无限次重复擦写,可使数字体系在线从头装备,规划愈加灵敏,功用愈加强壮,且易于更改和晋级。因为FPGA中静态随机存储器(SRAM)掉电后数据会丢掉,体系每次上电后需从头装备数据,怎么快速、高效地将装备数据写入方针器材,并且保证其在掉电后再次上电能主动牢靠地康复装备,就成为整个体系的要害所在。本文就依据CPLD的FPGA并行数据装备办法和装备电路的规划进行开端的研讨,并给出详细的硬件电路规划和要害模块的内部编程思路。

1 FPGA数据装备办法比较

完结FPGA的数据装备办法有许多,但依据器材类型和运用场合,Xilinx公司为其FPGA系列产品供给了多种数据装备办法,归纳起来主要有以下四种[3]:①选用JTAG办法加载;②选用主串办法加载;③选用从串办法加载;④选用并行办法加载。

JTAG办法数据加载办法是依据IEEE1149.1和IEEE1532的装备形式,经过TDI、TDO、TMS和TCK四根信号线接到FPGA上的相应引脚完结数据加载。这种办法电路结构简略、作业牢靠、无需外接PROM等存储器材进行数据装备,但需求专用的数据装备电缆,因而该办法适用于数字体系的开发阶段。

主串办法数据加载办法是经过串行办法读取专用PROM存储介质中数据,完结FPGA的在线装备的,其装备时钟由FPGA内部送出。这种办法电路完结较为简略,但该装备办法有必要运用Xilinx公司出产的专用PROM,运用不灵敏。

从串办法数据加载办法类似于主串办法,但装备时钟由FPGA外部供给,需求规划专用电路操控整个装备进程。

并行办法数据加载办法是经过并行办法读取通用Flash或E2PROM等存储介质中的数据,完结FPGA的在线装备的。因为选用并行办法,八位数据可一同被写入FPGA,数据装备速度最快。其装备时钟由外部供给,需求规划专用电路操控整个装备进程。常用的装备操控器可所以各类处理器、微操控器或可编程逻辑器材,现在运用较多的是选用单片机和E2PROM构成操控电路。跟着FPGA规划和功用的不断提高,其装备文件越来越大,对装备速度的要求也越来越高,所以快速的并行装备办法必将得到越来越广泛的运用。

2 FPGA并行办法数据装备原理

选用并行办法进行FPGA数据装备时,其相关装备引脚可分为专用装备引脚和非专用装备引脚。专用装备引脚包含:装备形式引脚M2、M1、M0;装备时钟引脚CCLK;装备逻辑异步复位引脚;发动操控引脚DONE。这些引脚只在装备时起效果,装备完结后不能作其它用处。非专用装备引脚包含:数据接口D0~D7、片选信号CS、写信号、BUSY、等引脚,这些引脚在装备时作为信号通道运用,装备完结后还可作为一般I/O口运用。数据装备时序如图1所示。当为低电平时,FPGA内部数据初始化,初始化完结后,DONE信号变为低电平,一同信号主动置为低电平,开端清空装备存储器。装备存储器清空后,信号从头被置为高电平,一同器材对形式引脚进行采样,确认以并行办法加载装备数据。当信号都为低电平时,就能够经过数据接口D0~D7进行数据装备。图1明晰地表明晰并行装备的全进程。

3 体系规划

3.1 体系组成

并行办法的FPGA数据装备体系由上位机、可编程逻辑器材(CPLD)、Flash、FPGA等组成,其结构如图2所示。操控器材对整个体系的功用具有重要影响,低成本的处理器、微操控器作业频率较低,在对速度要求较高的场合,会成为体系速度的瓶颈,不能发挥并行装备的速度优势,并且仅作为装备操控器运用又形成资源的糟蹋。选用CPLD作为操控器,Flash作为存储器材,不仅能满意速度和功用的要求,并且硬件电路更为简练。


并行数据装备体系的上位机能够选用PC机、工控机等,主要对CPLD进行简略的功用操控,并对体系数据进行处理。CPLD是整个体系规划的中心,其主要功用是进行装备操控和地址生成。Flash闪存是装备文件的存储器材,由专用开发工具生成FPGA装备文件,预先烧写进Flash中。FPGA是体系中装备的方针器材,本体系选用六片Spartan II系列中的Xilinx XC2S200。

3.2 硬件规划

3.2.1 芯片选型

装备电路中CPLD选用XC9500系列中的XC9536芯片,宏单元数目为36个,选用快闪存储技能,最高作业频率可达100MHz。PC44封装的XC9536包含时钟端口在内共有34个通用I/O口,能够满意体系的要求。装备存储器选用Winbond公司的W29C040-90,其512K×8bit的容量能够顺次寄存三个不同的装备文件,存取周期可达90ns。Spartan II系列FPGA的装备时钟最高可达66 MHz,但考虑到闪存的存取时间约束,装备晶振选用8MHz有源晶振。

3.2.2 原理图

装备电路接口如图3所示,并行装备的多片FPGA的操控信号CCLK、、DONE、和BUSY以及数据线DATA(7:0)并行衔接,经过别离设置片选信号CS(0:5)完结各器材的顺次装备,直到一切FPGA都装备完结后才进入START-UP阶段,经过八个时钟周期推迟后一同进入作业状况。


图中Flash的存储区被分配成三个区域,别离存储不同的装备文件。其使能信号和地址信号由CPLD供给,当EN为高时,在时钟信号的下降沿对应A(18:0)的八位数据就出现在数据线D(7:0)上。CPLD的效果主要是:①完结与上位机通讯,接纳指令并将作业状况反应到上位机;②经过置PROG低电平操控FPGA的初始化进程;③初始化完结后,操控各FPGA的装备进程。

在数据装备进程中,相应FPGA的信号应置低电平,若CS信号已被设置,则的状况就不能改动,否则将引起一个Abort进程[1],使装备进程中止。为保证在CCLK上升沿采到正确的数据,在CCLK下降沿改动数据线D(7:0)上的数据。在CCLK的上升沿,若BUSY信号为低电平,数据在此时钟周期内被接纳;若BUSY为高电平,数据不能被接纳,直到BUSY变低后的第一个时钟周期才干持续接纳数据。因而,这时的装备数据需求一向坚持。

需求留意的是,多片FPGA的START-UP进程是一同进行的,为完结这一功用,在由Xilinx的开发工具ISE[4]中生成装备文件时,需求修正相应的特点。

3.3 软件规划

CPLD的规划是本体系中最重要的部分,它所完结的功用模块包含接口模块、操控模块、地址发生器模块。接口模块完结与上位机的通讯,接纳上位机的指令并作相应处理,一同将作业状况反应给上位机;操控模块供给操控时序指令,操作整个装备进程;地址发生器模块为读取闪存数据供给数据地址。内部各功用模块选用VHDL硬件描绘言语完结,操控主程序用mealy状况机完结。操控主程序的状况搬运图如图4所示,其间状况Start是初始状况,Init是初始化进程,Clear RAM进程清空装备存储器,Config是装备进程,Wait进程是装备多片FPGA的中心进程。


操控模块依据上位机的操控指令完结FPGA的初始化、装备等进程,并将运转成果回传给上位机。由VHDL硬件描绘言语生成的原理图符号如图5所示,其间,CLK是装备时钟,RESET是发动信号,DONE、是FPGA的反应信号,CEND是地址发生器模块计数完毕标志,EN是计数答应信号;、是操控信号,TRUE、FALSE是状况信号,反应给上位机;CS(0:3)是多片FPGA的片选信号。操控模块的ModelSim仿真成果如图6所示。



声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/dianlu/196563.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部