一种基于FPGA/CPLD的程序下载器制造技术

技术编号:7629678 阅读:474 留言:0更新日期:2012-08-02 13:30
本发明专利技术公开了一种基于FPGA/CPLD的程序下载器,包括主机、传输装置和通过编程方式构造硬件结构的可配置器件,所述传输装置与所述主机以及所述通过编程方式构造硬件结构的可配置器件分别连接,其中,所述传输装置包括USB控制模块、协议转换模块、缓冲器模块和输出端口;所述USB控制模块与所述主机的USB接口连接,所述协议转换模块与所述USB控制模块连接,所述缓冲器模块与所述协议转换模块连接,所述协议转换模块与所述输出端口连接,所述输出端口与所述通过编程方式构造硬件结构的可配置器件的输入端口连接。

【技术实现步骤摘要】

本专利技术涉及一种可编程逻辑器件的编程工具,尤其是一种基于FPGA/CPLD的程序下载器
技术介绍
FPGA和CPLD均为可编程逻辑器件,其逻辑功能按照用户对器件编程来确定,因此集成度很高,足以满足设计一般的数字系统的需要,可以由设计人员自行编程而把一个数字系统集成在一片器件上,而不必去请芯片制造厂商设计和制作专用集成电路芯片,从而降低了设计研发成本推动了数字系统的发展。对FPGA/CPLD器件进行编程需要使用专用的程序下载器,现有FPGA/CPLD程序下载器的硬件电路一般由USB控制芯片和器件本身共同完成USB协议到IEEE1149. I协议的转换,硬件电路固化,并且必须在线下载,实际应用对同时下载多个FPGA/CPLD器件以及下载不同型号FPGA/CPLD器件存在限制。此外FPGA/CPLD器件的特性使其在数字电路系统广泛使用,在一块电路板或者一个阵列系统中常常集成了多个FPGA/CPLD器件,在此情势下使用现有的程序下载器会非常麻烦,需要对每个FPGA/CPLD器件进行单独编程。虽然针对这种情况推出了支持多器件的程序下载器,如“ JTAG下载方式下FPGA逻辑代码的下载方法”(中国专利公开号CN102043747)公开的专利技术方案,其在FPGA/CPLD程序下载器后续增加了 CPLD芯片,用来支持多FPGA的程序下载,但只支持在JTAG下载方式下FPGA逻辑代码的下载,这样会造成硬件电路复杂,成本高,体积大,不便于携带且应用单一。
技术实现思路
针对现有的FPGA/CPLD程序下载器所存在的上述问题,本专利技术提供一种支持多器件同时下载的基于FPGA/CPLD的程序下载器。本专利技术解决技术问题所采用的技术手段为一种基于FPGA/CPLD的程序下载器,包括主机、传输装置和通过编程方式构造硬件结构的可配置器件,所述传输装置与所述主机以及所述通过编程方式构造硬件结构的可配置器件分别连接,其中,所述传输装置包括USB控制模块、协议转换模块、缓冲器模块和输出端口 ;所述USB控制模块与所述主机的USB接口连接,所述协议转换模块与所述USB控制模块连接,所述缓冲器模块与所述协议转换模块连接,所述协议转换模块与所述输出端口连接,所述输出端口与所述通过编程方式构造硬件结构的可配置器件的输入端口连接;所述USB控制模块用于与所述主机之间进行数据传输;所述协议转转换模块用于在所述USB控制模块和所述输出端口之间进行协议转换; 所述缓冲器模块用于在所述USB控制模块与所述输出端口之间进行数据缓冲。上述基于FPGA/CPLD的程序下载器,其中,所述传输装置的协议转换模块主要由可编成逻辑器件以编程方式形成。上述基于FPGA/CPLD的程序下载器,其中,所述输出端口有多个,多个所述输出端口与多个通过编程方式构造硬件结构的可配置器件连接,所述缓冲器模块包括数据隔离与协调部件,所述缓冲器模块的数据隔离与协调部件用于在对多个通过编程方式构造硬件结构的可配置器件进行数据传输时隔离与协调各个端口的数据信号。上述基于FPGA/CPLD的程序下载器,其中,还包括储存模块,所述储存模块与所述协议转换模块连接,所述储存模块用于储存经所述协议转换模块转换后的数据并于所述 USB控制模块与所述主机的USB接口断开连接时将储存的数据发送至所述输出端口。上述基于FPGA/CPLD的程序下载器,其中,所述主机为PC机。上述基于FPGA/CPLD的程序下载器,其中,所述USB控制模块主要由CYC768013A芯片形成。上述基于FPGA/CPLD的程序下载器,其中,所述通过编程方式构造硬件结构的可配置器件为FPGA器件或者CPLD器件。上述基于FPGA/CPLD的程序下载器,其中,所述协议转换模块为IEEE1149. I协议转换器件。上述基于FPGA/CPLD的程序下载器,其中,所述缓冲器模块主要由MAX3378芯片形成。上述基于FPGA/CPLD的程序下载器,其中,所述输出端口主要为符合JTAG标准的端口。上述基于FPGA/CPLD的程序下载器,其中,所述储存模块主要由FLASH储存器件形成。本专利技术的有益效果是支持多种电压的FPGA/CPLD器件;支持器件种类多;支持NIOS调试,支持NIOS下的 FLASH烧写;支持AS、PS和JTAG等下载模式;与传统的FPGA/CPLD程序下载器相比,硬件电路简化,稳定性增强,且小巧灵活,支持多FPGA或CPLD的同时下载;可充分利用FPGA的并行处理能力使得USB时序到JTAG时序的转换速率可以完全满足USB高速端口的480M/S的通信速率;支持FPGA/CPLD器件的离线程序下载。附图说明图I是本专利技术一种基于FPGA/CPLD的程序下载器的结构示意图。具体实施例方式下面结合附图和具体实施例对本专利技术作进一步说明,但不作为本专利技术的限定。如图I所示,本专利技术一种基于FPGA/CPLD的程序下载器,包括主机、传输装置和通过编程方式构造硬件结构的可配置器件,传输装置与主机以及通过编程方式构造硬件结构的可配置器件分别连接,其中,传输装置包括USB控制模块、协议转换模块、缓冲器模块和输出端口 ;USB控制模块与主机的USB接口连接,协议转换模块与USB控制模块连接,缓冲器模块与协议转换模块连接,协议转换模块与输出端口连接,输出端口与通过编程方式构造硬件结构的可配置器件的输入端口连接;USB控制模块用于与主机之间进行数据传输; 协议转转换模块用于在USB控制模块和输出端口之间进行协议转换;缓冲器模块用于在USB控制模块与输出端口之间进行数据缓冲。主机可以是PC机、笔记本电脑或其他嵌入式设备,可配置器件为FPGA/CPLD器件;USB控制模块接收主机的USB接口输出USB数据,USB 控制模块用于将USB数据转换为8位并行数据随之输出;协议转换模块接收USB控制模块输出的8位并行数据,将其转换为符合IEEE1149. I标准的编程的数据和指令同时输出,至此FPGA模块就完成了对程序固化文件的USB时序到JTAG时序的转换,传输装置的协议转换模块主要由可编成逻辑器件以编程方式形成,较优的选择是以ALTERA公司的Cyclone IV系列的EP4CE6E22I7L芯片形成协议转换模块,EP4CE6E22I7L芯片具有低供电、低功耗和高性能,它的并行处理能力使得USB时序到JTAG时序的转换速率可以完全满足USB高速端口的480M/S的通信速率的要求。缓冲器模块接收FPGA模块输出的符合IEEEl 149. I标准的编程的数据和指令,对其进行缓冲,使其能够支持I. 8V,2. 5V,3. 3V和5. OV的不同供电电压的FPGA/CPLD器件下载,输出端口可以有多个,多个输出端口与多个FPGA/CPLD器件连接, 缓冲器模块包括数据隔离与协调部件,缓冲器模块的数据隔离与协调部件用于在对多个 FPGA/CPLD器件进行数据传输时隔离与协调各个端口的数据信号。缓冲器模块较优的可选用MAX3378芯片,MAX3378芯片在系统中的选用数量可根据待下载程序的FPGA/CPLD器件数量的不同而灵活选用;最后FPGAl (CPLD1)、FPGA2 (CPLD2)、……,FPGAn (CPLDn)接收缓冲器输出至输出端口的相应的 TMS_1、TC本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:胡金平贺姗姗叶华
申请(专利权)人:上海三一精机有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术