当前位置:首页 > 工业控制 > 电子设计自动化

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


  基于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所示。


参考文献
1 Xilinx Spartan II 2.5V FPGA Complete Data Sheet. Xilinx,2004
2 王道宪.CPLD/FPGA可编程逻辑器件应用与开发[M].北京:国防工业出版社, 2004
3 任晓东,文博.CPLD/FPGA高级应用开发指南[M]. 北京:电子工业出版社, 2003
4 王诚.FPGA/CPLD设计工具Xilinx ISE 5.X使用详解[M]. 北京:人民邮电出版社, 2003
5 房 磊,张焕春. FPGA的配置及接口电路[J]. 世界电子元器件, 2003(11):55~57

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

本文介绍一款小尺寸、功能强大、低噪声的单芯片同步升压转换器。文章重点介绍了该集成电路的多个特性。这些特性能够增强电路性能,并支持定制,以满足各种应用的要求。

关键字: 升压转换器 集成电路 电路

在数字化浪潮席卷全球的今天,FPGA技术正成为驱动创新的核心引擎。2025年8月21日,深圳将迎来一场聚焦FPGA技术与产业应用的盛会——2025安路科技FPGA技术沙龙。本次沙龙以“定制未来 共建生态”为主题,汇聚行业...

关键字: FPGA 核心板 开发板

在现代电子系统中,现场可编程门阵列(FPGA)凭借其开发时间短、成本效益高以及灵活的现场重配置与升级等诸多优点,被广泛应用于各种产品领域。从通信设备到工业控制,从汽车电子到航空航天,FPGA 的身影无处不在。为了充分发挥...

关键字: 可编程门阵列 FPGA 数字电源

2025年8月4日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 即日起开售Altera®的Agilex™ 3 FPGA C系列开发套件。此开...

关键字: FPGA 边缘计算 嵌入式应用

内窥镜泛指经自然腔道或人工孔道进入体内,并对体内器官或结构进行直接观察和对疾病进行诊断的医疗设备,一般由光学镜头、冷光源、光导纤维、图像传感器以及机械装置等构成。文章介绍了一款基于两片图像传感器和FPGA组成的微型3D内...

关键字: 微创 3D内窥镜 OV6946 FPGA

运用单片机和FPGA芯片作为主控制器件 , 单片机接收从PC机上传过来的显示内容和显示控制命令 , 通过命令解释和数据转换 , 生成LED显示屏所需要的数据信号和同步的控制信号— 数据、时钟、行同步和面同步 。FPGA芯...

关键字: 单片机 FPGA LED显示屏

在异构计算系统中,ARM与FPGA的协同工作已成为高性能计算的关键架构。本文基于FSPI(Fast Serial Peripheral Interface)四线模式,在150MHz时钟频率下实现10.5MB/s的可靠数据...

关键字: ARM FPGA FSPI

在电子电路设计领域,放大器是极为关键的元件,用于增强电信号的幅度,以满足各类电子设备的需求。内置增益设置电阻的放大器和分立差动放大器是两种常见类型,它们在电路结构、性能表现、成本以及设计灵活性等方面存在诸多不同。深入了解...

关键字: 放大器 电信号 电路

在全球FPGA市场被Xilinx(AMD)与Intel垄断的格局下,国产FPGA厂商高云半导体通过构建自主IP核生态与智能时序约束引擎,走出差异化高端化路径。本文深入解析高云半导体FPGA工具链的两大核心技术——全栈IP...

关键字: FPGA 高云半导体

2025年6月12日,由安路科技主办的2025 FPGA技术沙龙在南京正式召开,深圳市米尔电子有限公司(简称:米尔电子)作为国产FPGA的代表企业出席此次活动。米尔电子发表演讲,并展出米尔基于安路飞龙派的核心板和解决方案...

关键字: FPGA 核心板 开发板
关闭