CN107168923A - 一种配置多个fpga的装置及方法 - Google Patents

一种配置多个fpga的装置及方法 Download PDF

Info

Publication number
CN107168923A
CN107168923A CN201710192566.2A CN201710192566A CN107168923A CN 107168923 A CN107168923 A CN 107168923A CN 201710192566 A CN201710192566 A CN 201710192566A CN 107168923 A CN107168923 A CN 107168923A
Authority
CN
China
Prior art keywords
fpga
configuration
control circuit
external control
pins
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
CN201710192566.2A
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.)
Shandong Chaoyue Numerical Control Electronics Co Ltd
Original Assignee
Shandong Chaoyue Numerical Control Electronics 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 Shandong Chaoyue Numerical Control Electronics Co Ltd filed Critical Shandong Chaoyue Numerical Control Electronics Co Ltd
Priority to CN201710192566.2A priority Critical patent/CN107168923A/zh
Publication of CN107168923A publication Critical patent/CN107168923A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7803System on board, i.e. computer system on one or more PCB, e.g. motherboards, daughterboards or blades

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开一种配置多个FPGA的装置及方法,包括外部控制电路和多个FPGA,以及,S1:对每个FPGA配置接口进行初始化;S2:通过外部控制电路对每个FPGA的配置信号进行加载数据前的准备操作;S3:根据配置的顺序需要进行片选FPGA,并进行相应配置文件的加载;S4:任一FPGA配置文件加载完成后,根据需要配置FPGA的个数重复步骤S3;S5:所有FPGA均加载完相应的配置文件后,外部控制电路等待done信号变高,done信号变高后,配置完成。本发明避免了由于时延导致配置数据传输不正确的可能性,实现多FPGA的准确、高效配置。

Description

一种配置多个FPGA的装置及方法
技术领域
本发明涉及数据通信领域,尤其涉及FPGA配置,具体涉及一种采用并行被动模式以不同配置文件分别配置多个FPGA的装置及方法。
背景技术
随着对数据处理的功能复杂度要求日益提高,多FPGA的应用日益广泛。当多个FPGA分别实现不同的功能时,各FPGA的配置文件也不同。在配置效率方面,若要采用串行的方式实现多个FPGA的不同配置,配置效率低,而较常用的配置多FPGA的方法,由于过多的指令周期所带来的时延可能会导致配置数据传输不正确。
发明内容
为解决上述问题,本发明提供一种采用并行被动模式以不同配置文件配置多个FPGA的方法,能够实现不同配置文件的高效、准确、灵活加载。
本发明的技术方案是:一种配置多个FPGA的装置,包括多个FPGA,还包括外部控制电路,外部控制电路分别与每个FPGA连接。
进一步地,所述外部控制电路为微处理器或CPLD芯片。
进一步地,所述外部控制电路的DATA[7:0]引脚、CLOCK引脚、READ/WRITE引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚分别与每个FPGA的D[7:0]引脚、CCLK引脚、RDWR_B引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚连接。
一种配置多个FPGA的方法,包括外部控制电路和多个FPGA;
还包括以下步骤:
S1:对每个FPGA配置接口进行初始化;
S2:通过外部控制电路对每个FPGA的配置信号进行加载数据前的准备操作;
S3:根据配置的顺序需要进行片选FPGA,并进行相应配置文件的加载;
S4:任一FPGA配置文件加载完成后,根据需要配置FPGA的个数重复步骤S3;
S5:所有FPGA均加载完相应的配置文件后,外部控制电路等待done信号变高,done信号变高后,配置完成。
进一步地,步骤S1中,初始化包括对数据管脚、信号管脚的初始化操作。
进一步地,步骤S2中,配置信号包括PROGARM_B信号、RDWR_B信号、INIT_B信号、CCLK信号。
进一步地,步骤S2中进行加载数据前的准备操作具体包括以下步骤:
S2.1:通过外部控制电路给FPGA时钟信号,然后给PROGRAM_B信号一个周期的低电平,之后将其拉高,边给时钟信号边判断INIT_B信号是否为高,若为低则继续等待判断;
S2.2:INIT_B信号为高后,外部控制电路给FPGA一个周期的时钟信号,然后将RDWR_B信号拉低,使其写使能,至此完成配置数据加载前的准备工作。
进一步地,步骤S3中进行相应配置文件的加载具体包括以下步骤:
S3.1:确定片选出的FPGA的配置文件的存储位置;
S3.2:将存储的配置文件数据根据具体情况进行字节顺序的转换操作后,将其赋值给数据线相应的GPIO寄存器,每赋值完一个字节,外部控制电路给FPGA一个周期的时钟信号。
进一步地,步骤S5还包括:当所有FPGA完成配置数据加载后,外部控制电路边给时钟信号边判断done信号是否变高,当done信号变高后,说明多个FPGA均配置完成。
本发明提供的配置多个FPGA的装置及方法,在数据加载方面,并非像传统方法一样对每个数据管脚进行依次赋值,而是直接向数据线相应的GPIO寄存器进行赋值操作,这样不仅可以大大减少指令周期,而且避免了由于时延导致配置数据传输不正确的可能性,从而实现多FPGA的准确、高效配置。且本发明可对多个FPGA配置顺序进行灵活选择,从而实现多FPGA的灵活配置。
附图说明
图1是本发明具体实施例配置多个FPGA信号连接示意图。
图2是本发明具体实施例配置多个FPGA的方法流程图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
如图1所示,本发明提供的配置多个FPGA的装置,包括多个FPGA,还包括外部控制电路,外部控制电路分别与每个FPGA连接,外部控制电路为微处理器或CPLD芯片。外部控制电路的DATA[7:0]引脚、CLOCK引脚、READ/WRITE引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚分别与每个FPGA的D[7:0]引脚、CCLK引脚、RDWR_B引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚连接。
如图2所示,本实施例以8位传输数据位宽,配置三个FPGA为例对配置多个FPGA的方法进一步说明。
本方法包括以下步骤:
S1:对每个FPGA配置接口进行初始化;初始化包括对数据管脚、信号管脚的初始化操作;
S2:通过外部控制电路对每个FPGA的配置信号进行加载数据前的准备操作;配置信号包括PROGARM_B信号、RDWR_B信号、INIT_B信号、CCLK信号;
进行加载数据前的准备操作具体包括:
S2.1:通过外部控制电路给FPGA时钟信号,然后给PROGRAM_B信号一个周期的低电平,之后将其拉高,边给时钟信号边判断INIT_B信号是否为高,若为低则继续等待判断;
S2.2:INIT_B信号为高后,外部控制电路给FPGA一个周期的时钟信号,然后将RDWR_B信号拉低,使其写使能,至此完成配置数据加载前的准备工作;
S3:根据配置的顺序需要进行片选FPGA,并进行相应配置文件的加载;
进行相应配置文件的加载具体包括:
S3.1:确定片选出的FPGA的配置文件的存储位置;
S3.2:将存储的配置文件数据根据具体情况进行字节顺序的转换操作后,将其赋值给数据线相应的GPIO寄存器,每赋值完一个字节,外部控制电路给FPGA一个周期的时钟信号;
S4:任一FPGA配置文件加载完成后,根据需要配置FPGA的个数重复步骤S3;
S5:所有FPGA均加载完相应的配置文件后,外部控制电路等待done信号变高,done信号变高后,配置完成;在该步骤中,当所有FPGA完成配置数据加载后,外部控制电路边给时钟信号边判断done信号是否变高,当done信号变高后,说明多个FPGA均配置完成。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

Claims (9)

1.一种配置多个FPGA的装置,包括多个FPGA,其特征在于,还包括外部控制电路,外部控制电路分别与每个FPGA连接。
2.根据权利要求配置多个FPGA的装置,其特征在于,所述外部控制电路为微处理器或CPLD芯片。
3.根据权利要求1或2所述的配置多个FPGA的装置,其特征在于,所述外部控制电路的DATA[7:0]引脚、CLOCK引脚、READ/WRITE引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚分别与每个FPGA的D[7:0]引脚、CCLK引脚、RDWR_B引脚、PROGARM_B引脚、INIT_B引脚、DONE引脚连接。
4.一种配置多个FPGA的方法,其特征在于,包括外部控制电路和多个FPGA;
还包括以下步骤:
S1:对每个FPGA配置接口进行初始化;
S2:通过外部控制电路对每个FPGA的配置信号进行加载数据前的准备操作;
S3:根据配置的顺序需要进行片选FPGA,并进行相应配置文件的加载;
S4:任一FPGA配置文件加载完成后,根据需要配置FPGA的个数重复步骤S3;
S5:所有FPGA均加载完相应的配置文件后,外部控制电路等待done信号变高,done信号变高后,配置完成。
5.根据权利要求4所述的配置多个FPGA的方法,其特征在于,步骤S1中,初始化包括对数据管脚、信号管脚的初始化操作。
6.根据权利要求4所述的配置多个FPGA的方法,其特征在于,步骤S2中,配置信号包括PROGARM_B信号、RDWR_B信号、INIT_B信号、CCLK信号。
7.根据权利要求6所述的配置多个FPGA的方法,其特征在于,步骤S2中进行加载数据前的准备操作具体包括以下步骤:
S2.1:通过外部控制电路给FPGA时钟信号,然后给PROGRAM_B信号一个周期的低电平,之后将其拉高,边给时钟信号边判断INIT_B信号是否为高,若为低则继续等待判断;
S2.2:INIT_B信号为高后,外部控制电路给FPGA一个周期的时钟信号,然后将RDWR_B信号拉低,使其写使能,至此完成配置数据加载前的准备工作。
8.根据权利要求4所述的配置多个FPGA的方法,其特征在于,步骤S3中进行相应配置文件的加载具体包括以下步骤:
S3.1:确定片选出的FPGA的配置文件的存储位置;
S3.2:将存储的配置文件数据根据具体情况进行字节顺序的转换操作后,将其赋值给数据线相应的GPIO寄存器,每赋值完一个字节,外部控制电路给FPGA一个周期的时钟信号。
9.根据权利要求4所述的配置多个FPGA的方法,其特征在于,步骤S5还包括:当所有FPGA完成配置数据加载后,外部控制电路边给时钟信号边判断done信号是否变高,当done信号变高后,说明多个FPGA均配置完成。
CN201710192566.2A 2017-03-28 2017-03-28 一种配置多个fpga的装置及方法 Pending CN107168923A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710192566.2A CN107168923A (zh) 2017-03-28 2017-03-28 一种配置多个fpga的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710192566.2A CN107168923A (zh) 2017-03-28 2017-03-28 一种配置多个fpga的装置及方法

Publications (1)

Publication Number Publication Date
CN107168923A true CN107168923A (zh) 2017-09-15

Family

ID=59848779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710192566.2A Pending CN107168923A (zh) 2017-03-28 2017-03-28 一种配置多个fpga的装置及方法

Country Status (1)

Country Link
CN (1) CN107168923A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107908823A (zh) * 2017-10-23 2018-04-13 北京中电华大电子设计有限责任公司 一种存储多个fpga文件的装置及加载方法
CN114238207A (zh) * 2021-12-09 2022-03-25 讯牧信息科技(上海)有限公司 多片fpga的配置方法和多片fpga系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593169A (zh) * 2008-05-30 2009-12-02 国际商业机器公司 可配置逻辑阵列的配置管理器和配置方法
CN103927279A (zh) * 2013-01-16 2014-07-16 京信通信系统(中国)有限公司 Fpga配置方法及系统、处理器
CN106547716A (zh) * 2016-11-01 2017-03-29 中国人民解放军国防科学技术大学 一种面向低管脚数的扩展总线配置系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593169A (zh) * 2008-05-30 2009-12-02 国际商业机器公司 可配置逻辑阵列的配置管理器和配置方法
CN103927279A (zh) * 2013-01-16 2014-07-16 京信通信系统(中国)有限公司 Fpga配置方法及系统、处理器
CN106547716A (zh) * 2016-11-01 2017-03-29 中国人民解放军国防科学技术大学 一种面向低管脚数的扩展总线配置系统及方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107908823A (zh) * 2017-10-23 2018-04-13 北京中电华大电子设计有限责任公司 一种存储多个fpga文件的装置及加载方法
CN114238207A (zh) * 2021-12-09 2022-03-25 讯牧信息科技(上海)有限公司 多片fpga的配置方法和多片fpga系统

Similar Documents

Publication Publication Date Title
CN107273329B (zh) 虚拟gpio
US8296469B2 (en) Scalable method and apparatus for link with reconfigurable ports
CN105051706B (zh) 用于具有pcie协议栈的低功率phy的操作的设备、方法和系统
CN101627376B (zh) 用于无需sas扩展器的改进的sata设备交互的装置和方法
CN103454996A (zh) 主从机系统及其控制方法
US20210011875A1 (en) Configuration via high speed serial link
CN103559152A (zh) 基于pcie协议的cpu访问本地总线的装置及方法
CN102262604B (zh) 一种并发访问方法、系统及接口装置
US9043528B2 (en) Bridge between a peripheral component interconnect express interface and a universal serial bus 3.0 device
CN106250340A (zh) 一种硬件控制电路及其控制方法
CN107678988A (zh) 一种多功能串口装置及实现方法
CN107111564A (zh) 用于对连接器进行串接的适配器
CN102866979A (zh) 一种同步串行接口信号传感器数据采集装置
CN103098039A (zh) 高速外围器件互连总线端口配置方法及设备
CN107168923A (zh) 一种配置多个fpga的装置及方法
CN106302071A (zh) 一种适配器、网络设备以及端口配置的方法
US6459297B1 (en) System for programming field programmable devices
CN117278890B (zh) 光模块访问方法、装置、系统、电子设备及可读存储介质
CN107506323A (zh) 一种热插拔处理方法及装置
CN113946480A (zh) 一种i2c总线的检测装置和方法
CN206757602U (zh) 一种基于SoC支持多个SPI接口标准组的装置
CN104050121A (zh) 双收双发可编程arinc429通讯接口芯片
Szecówka et al. USB receiver/transmitter for FPGA implementation
CN103488601B (zh) 一种时钟延时、数据访问方法、系统及设备
CN102929828B (zh) 同时支持标准和非标准i2c接口的数据传输方法及装置

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170915

RJ01 Rejection of invention patent application after publication