CN111563056A - 一种fpga配置文件的下载装置 - Google Patents

一种fpga配置文件的下载装置 Download PDF

Info

Publication number
CN111563056A
CN111563056A CN202010488895.3A CN202010488895A CN111563056A CN 111563056 A CN111563056 A CN 111563056A CN 202010488895 A CN202010488895 A CN 202010488895A CN 111563056 A CN111563056 A CN 111563056A
Authority
CN
China
Prior art keywords
parallel port
fpga
system controller
downloading
interface module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010488895.3A
Other languages
English (en)
Inventor
魏育成
赵军辉
张超
徐成华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongke Jiudu Beijing Spatial Information Technology Co ltd
Original Assignee
Zhongke Jiudu Beijing Spatial Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongke Jiudu Beijing Spatial Information Technology Co ltd filed Critical Zhongke Jiudu Beijing Spatial Information Technology Co ltd
Priority to CN202010488895.3A priority Critical patent/CN111563056A/zh
Publication of CN111563056A publication Critical patent/CN111563056A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0012High speed serial bus, e.g. IEEE P1394

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种FPGA配置文件的下载装置,包括装置本体,装置本体包括并口输入端、电源转换器、并口下载接口模块、系统控制器;并口输入端与计算机的并口数据端双向连接;系统控制器分别与并口输入端、并口下载接口模块双向连接;并口下载接口模块的输出端与FPGA双向连接;并口下载接口模块通过VDD与电源转换器的输入端相连接;电源转换器的输出端分别与晶振、系统控制器相连接。本发明通过计算机的并口数据端对FPGA进行被动并行模式下的配置文件下载和配置文件回读,以及被动串行模式下的配置文件下载,具有硬件电路设计简单、所需元器件采购成本低、人机接口友好、使用简便、工作可靠稳定等优点,可广泛推广使用。

Description

一种FPGA配置文件的下载装置
技术领域
本发明涉及一种FPGA配置文件的下载装置,尤其涉及一种被动并行模式下通过计算机并口对FPGA进行配置文件的下载装置,属于现场可编程门阵列(Field ProgrammableGate Arrays,FPGA)的配置下载技术领域。
背景技术
FPGA是一种可编程使用的信号处理器件,用户可通过改变配置信息对其功能进行定义,以满足设计需求。FPGA的主要特征有:(1)具有可编程逻辑功能模块结构;(2)具有可编程输入/输出模块结构;(3)具有可编程互连资源结构;(4)具有专用EDA(ElectronicDesign Automation,电子设计自动化)软件对其进行配置和下载。
与传统数字电路系统相比,FPGA具有可编程、高集成度、高速和高可靠性等优点。通过配置器件内部的逻辑功能和输入/输出端口,将原来电路板级的设计工作放在芯片中进行,提高了电路性能,大大减轻了印刷电路板设计的工作量和难度,有效提高了设计的灵活性和效率。与ASIC(Application Specific Integrated Circuit,专用集成电路)相比,FPGA具有显著的优势:开发周期短、前期投资风险小、产品上市速度快、市场适应能力强和硬件升级空间大。当产品定型和扩大产量后,在FPGA中实现的设计也可迅速定制为ASIC进行投产。FPGA的优势并不仅限于原始设计,在新工艺节点上,用FPGA转换和重新实现已有ASIC产品,使产品升级更容易。
FPGA实现的逻辑功能由用户对其进行编程下载来确定,对FPGA进行编程需使用专门的配置文件下载装置。目前,针对现有技术的FPGA的下载装置多为USB型下载装置,但USB接口控制协议与所需配套软件的编写均较为复杂,且需要采用专门的USB协议转换芯片,硬件系统开发成本较高。
发明内容
为了解决上述技术所存在的不足之处,本发明提供了一种FPGA配置文件的下载装置。
为了解决以上技术问题,本发明采用的技术方案是:一种FPGA配置文件的下载装置,包括装置本体,装置本体包括并口输入端、电源转换器、并口下载接口模块、系统控制器;并口输入端与计算机的并口数据端双向连接;并口输入端用于接收并发送计算机输出的符合IEEE1284协议的FPGA配置文件;系统控制器分别与并口输入端、并口下载接口模块双向连接;并口下载接口模块的输出端与FPGA双向连接,并口下载接口模块用于下载并输出系统控制器生成的FPGA配置信息,接收并输出FPGA产生的回读数据;并口下载接口模块通过VDD与电源转换器的输入端相连接;电源转换器的输出端分别与晶振、系统控制器相连接。
进一步地,系统控制器通过并口输入端与计算机的控制模块相连接,控制模块用于向FPGA发送指令和配置文件,并接收FPGA的回读文件;控制模块包括配置模式选择单元、下载文件选择单元、下载单元、下载进度显示单元、配置文件回读单元。
进一步地,并口输入端通过分压电阻与系统控制器相连接,分压电阻将并口输入端提供的十五路数据信号进行分压处理,并输出给系统控制器。
进一步地,系统控制器采用EP1C3T100C8型控制芯片;系统控制器接收晶振输出的时钟信号,接收通过分压电阻输出的八位并行配置数据和七路控制信号,并将其转换为FPGA所需的配置信息;在回读模式下,系统控制器接收并口下载接口模块提供的FPGA回读数据。
进一步地,晶振与系统控制器相连接;晶振的时钟信号为20MHz方波信号,用于系统控制器自身的时钟;系统控制器还与状态指示器相连接,状态指示器用于指示系统控制器的使用状态。
进一步地,并口下载接口模块通过读取FPGA器件的TDO输出波形来获取FPGA器件的工作状态,并口下载接口模块将FPGA器件的工作状态传回计算机的控制模块,计算机的控制模块根据FPGA器件的状态信息来控制并口下载接口模块的下一步操作。
本发明通过计算机的并口数据端对FPGA进行被动并行模式下的配置文件下载和配置文件回读,以及被动串行模式下的配置文件下载,具有硬件电路设计简单、所需元器件采购成本低、人机接口友好、使用简便、工作可靠稳定等优点,可广泛推广使用。
本发明通过计算机的并口数据端对FPGA芯片进行被动并行和被动串行模式下的配置文件下载,同时支持被动并行模式下的回读操作。该装置具有硬件系统开发成本低、配套软件编写简单、数据传输稳定性高的优点。该装置对于FPGA芯片的调试与应用有重要意义,是自研FPGA芯片应用推广过程中不可缺少的配套装置。
附图说明
图1为本发明的电路原理框图。
图2为系统控制器的组成原理框图。
图3为计算机的并口数据端与控制模块端口的位置示意图。
图4为分压电阻示意图。
图5为FPGA配置流程示意图。
图6为FPGA回读流程示意图。
图7为状态指示器的工作原理图。
图8为被动并行模式下配置过程的数据流向图。
图9为被动并行模式下回读过程的数据流向图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示的一种FPGA配置文件的下载装置,包括装置本体,装置本体包括并口输入端、电源转换器、并口下载接口模块、系统控制器;并口输入端与计算机的并口数据端双向连接;并口输入端用于接收并发送计算机输出的符合IEEE1284协议的FPGA配置文件;系统控制器分别与并口输入端、并口下载接口模块双向连接;并口下载接口模块的输出端与FPGA双向连接,并口下载接口模块用于下载并输出系统控制器生成的FPGA配置信息,接收并输出FPGA产生的回读数据;并口下载接口模块通过VDD与电源转换器的输入端相连接;电源转换器的输出端分别与晶振、系统控制器相连接。
如图3所示,计算机,输出符合IEEE1284协议的FPGA配置文件,同时在被动并行模式接收回读数据;计算机并行接口具有应用广泛和数据传输稳定的优点。目前计算机上配备的并行接口一般为25芯的DB25型并口,IEEE1284标准称为IEEE1284—A并口。所谓“并行”是指8位数据同时通过并行线进行传输,这样有助于提高数据的传输速度。
系统控制器通过并口输入端与计算机的控制模块相连接,控制模块用于向FPGA发送指令和配置文件,并接收FPGA的回读文件;控制模块包括配置模式选择单元、下载文件选择单元、下载单元、下载进度显示单元、配置文件回读单元。配置模式选择单元,用于选择FPGA的配置模式,FPGA的配置模式分为被动并行模式和被动串行模式;下载文件选择单元,用于在下载配置文件前选择配置文件的存储路径;下载单元,用于控制计算机的并口数据端开始进行配置文件下载;下载进度显示单元,用于显示配置文件向计算机的并口数据端发送的进度;配置文件回读单元,接收计算机的并口数据端回读到的FPGA配置信息。
如图4所示,并口输入端通过分压电阻输出的8位并行配置数据和7路控制信号,并将其转换为FPGA所需的配置信息;在回读模式下,并口输入端向计算机传输并口下载接口模块提供的8位并行回读数据。并口输入端通过分压电阻与系统控制器相连接,分压电阻将并口输入端提供的15路数据信号进行分压处理,并输出给系统控制器。由于EP1C3T100C8芯片输入IO电流驱动强度为2mA,分压电阻的阻值应为1kΩ。
基于SRAM工艺的FPGA芯片由编程点存储的配置信息决定所要实现的电路功能,而编程点存储内容的配置则通过FPGA芯片的配置结构来实现。配置文件是实际写入FPGA芯片内部配置寄存器和编程点的配置信息,由同步位、数据头(配置命令字)、数据字(有效数据)组成。数据头是配置指令的操作数,指出需要读写的总线控制寄存器地址;数据字是写入总线控制寄存器的操作码,用以指定需要执行的操作信息。
系统控制器采用EP1C3T100C8型控制芯片;系统控制器分别与分压电阻、晶体振荡器以及并口下载接口模块相连接,系统控制器接收晶体振荡器输出的时钟信号,接收通过分压电阻输出的八位并行配置数据和七路控制信号,并将其转换为FPGA所需的配置信息;在回读模式下,系统控制器接收并口下载接口模块提供的FPGA回读数据。
如图2所示,系统控制器主要由EP1C3T100C8芯片、PROM芯片、JTAG接口和主动串行AS接口构成。其中,JTAG接口主要用于开发阶段的EP1C3T100C8芯片调试,主动串行AS接口主要用于PROM芯片的配置烧写。当设计完成后,EP1C3T100C8芯片的配置程序可以在PROM芯片中固化,通过将EP1C3T100C8芯片设置为主动串行模式,上电后即可自动读取PROM芯片的数据,完成程序加载和启动。EP1C3T100C8芯片输入输出IO的驱动模式设置为LVCMOS,电流驱动强度设置为2mA,输入IO电平设置为3.3V,输出IO电平由被配置FPGA芯片的IO电平决定。
晶振与系统控制器相连接晶振的时钟信号为20MHz方波信号,用于系统控制器自身的时钟;系统控制器还与状态指示器相连接,状态指示器用于指示系统控制器的使用状态。如图7所示,当配置过程完成后,计算机控制模块给出的DONE_I_P信号由低变高,FPGA启动完成后,DONE信号输出由低变高,此时LED点亮,提示用户FPGA已成功完成配置操作。
并口下载接口模块与系统控制器连接,下载并输出系统控制器生成的FPGA配置信息,接收并输出FPGA产生的回读数据。在对FPGA器件进行配置文件下载时,并口下载接口模块通过读取FPGA器件的TDO输出波形来获取FPGA器件的工作状态,并口下载接口模块将FPGA器件的工作状态传回计算机的控制模块,计算机的控制模块根据FPGA器件的状态信息来控制并口下载接口模块的下一步操作。
电源转换器与并口下载接口模块连接,完成电压转换,用于晶振和系统控制器的供电。电源转换器接收并将并口下载接口模块提供的3.3V直流电压转换产生1.5V直流电压,并将其提供给系统控制器,用于系统控制器工作所需的1.5V VCCINT直流电源供电。
如图5所示,配置流程由5个主要的步骤组成,它们分别是芯片复位、冻结与清零、初始化、装载配置文件、解冻与启动。如图6所示,回读流程由5个主要的步骤组成,它们分别是加载CFG_IN指令、选择回读内容、装载回读命令、加载CFG_OUT指令、接收回读数据。配置流程与回读流程均由计算机的控制模块控制。如图8、图9所示,在配置过程中,RDWR_I为低电平,配置文件由计算机传输给FPGA;在回读过程中,RDWR_I为高电平,回读数据由FPGA传输给计算机。
上述功能模块均为市场上常见功能模块或可简单实现的模块,本领域相关技术人员均熟悉其具体实现方法,因此,在本发明中不再对各模块的具体结构和实现方法一一赘述。
上述实施方式并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的技术方案范围内所做出的变化、改型、添加或替换,也均属于本发明的保护范围。

Claims (6)

1.一种FPGA配置文件的下载装置,其特征在于:包括装置本体,所述装置本体包括并口输入端、电源转换器、并口下载接口模块、系统控制器;所述并口输入端与计算机的并口数据端双向连接;并口输入端用于接收并发送计算机输出的符合IEEE1284协议的FPGA配置文件;所述系统控制器分别与并口输入端、并口下载接口模块双向连接;所述并口下载接口模块的输出端与FPGA双向连接,并口下载接口模块用于下载并输出系统控制器生成的FPGA配置信息,接收并输出FPGA产生的回读数据;并口下载接口模块通过VDD与电源转换器的输入端相连接;所述电源转换器的输出端分别与晶振、系统控制器相连接。
2.根据权利要求1所述的FPGA配置文件的下载装置,其特征在于:所述系统控制器通过并口输入端与计算机的控制模块相连接,控制模块用于向FPGA发送指令和配置文件,并接收FPGA的回读文件;所述控制模块包括配置模式选择单元、下载文件选择单元、下载单元、下载进度显示单元、配置文件回读单元。
3.根据权利要求2所述的FPGA配置文件的下载装置,其特征在于:所述并口输入端通过分压电阻与系统控制器相连接,分压电阻将并口输入端提供的十五路数据信号进行分压处理,并输出给系统控制器。
4.根据权利要求3所述的FPGA配置文件的下载装置,其特征在于:所述系统控制器采用EP1C3T100C8型控制芯片;系统控制器接收晶振输出的时钟信号,接收通过分压电阻输出的八位并行配置数据和七路控制信号,并将其转换为FPGA所需的配置信息;在回读模式下,系统控制器接收并口下载接口模块提供的FPGA回读数据。
5.根据权利要求4所述的FPGA配置文件的下载装置,其特征在于:所述晶振与系统控制器相连接;晶振的时钟信号为20MHz方波信号,用于系统控制器自身的时钟;所述系统控制器还与状态指示器相连接,状态指示器用于指示系统控制器的使用状态。
6.根据权利要求5所述的FPGA配置文件的下载装置,其特征在于:所述并口下载接口模块通过读取FPGA器件的TDO输出波形来获取FPGA器件的工作状态,并口下载接口模块将FPGA器件的工作状态传回计算机的控制模块,计算机的控制模块根据FPGA器件的状态信息来控制并口下载接口模块的下一步操作。
CN202010488895.3A 2020-06-02 2020-06-02 一种fpga配置文件的下载装置 Pending CN111563056A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010488895.3A CN111563056A (zh) 2020-06-02 2020-06-02 一种fpga配置文件的下载装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010488895.3A CN111563056A (zh) 2020-06-02 2020-06-02 一种fpga配置文件的下载装置

Publications (1)

Publication Number Publication Date
CN111563056A true CN111563056A (zh) 2020-08-21

Family

ID=72072545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010488895.3A Pending CN111563056A (zh) 2020-06-02 2020-06-02 一种fpga配置文件的下载装置

Country Status (1)

Country Link
CN (1) CN111563056A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084125A (zh) * 2020-08-26 2020-12-15 中科亿海微电子科技(苏州)有限公司 一种现场可编程门阵列配置文件下载装置及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084125A (zh) * 2020-08-26 2020-12-15 中科亿海微电子科技(苏州)有限公司 一种现场可编程门阵列配置文件下载装置及方法

Similar Documents

Publication Publication Date Title
CN102609286B (zh) 一种基于处理器控制的fpga配置程序远程更新系统及其方法
CN109542478A (zh) 一种更新SPI Flash内FPGA程序的系统及方法
US20070220499A1 (en) USB tool stick with multiple processors
CN101419485A (zh) 一种功能可变的可穿戴计算机主板
CN102520961B (zh) 片外在线可编程的soc系统及其控制方法
CN107977212A (zh) 支持多种通讯方式的高速烧录器
CN109408924B (zh) 基于dsp芯片的fpga配置方法
CN107526614B (zh) Fpga开发板的通信方法
CN113270137B (zh) 一种基于fpga嵌入式软核的ddr2测试方法
CN115033444B (zh) 基于8051core在线调试电路控制装置
CN111190855A (zh) 一种fpga多重远程配置系统及方法
CN1996244A (zh) 一种通过个人计算机进行固件下载的方法及装置
CN111563056A (zh) 一种fpga配置文件的下载装置
CN112084125A (zh) 一种现场可编程门阵列配置文件下载装置及方法
CN108920197B (zh) 一种提高fpga串行被动加载速率的加载电路及加载方法
US7418528B2 (en) Multimode, multiline data transfer system and method of operating the same
CN111475362A (zh) 一种多核同构dsp处理器测试系统及方法
CN212112456U (zh) 一种fpga配置文件的下载装置
CN102375749B (zh) 一种采用i2c总线快速下载和更新固件的方法
CN112187341B (zh) 一种基于fpga的数据模拟源及其搭建与控制方法
US20060206763A1 (en) Debugging system, semiconductor integrated circuit device, microcomputer, and electronic apparatus
CN111061659A (zh) 一种总线切换方法及相关装置
US20220308645A1 (en) Processing system, related integrated circuit, device and method
CN103902298A (zh) 一种指令集固件刷写状态信息的设置方法和装置
CN113419979A (zh) 一种usb多媒体集线器控制芯片

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination