CN109902054A - 基于树莓派和fpga的配置电路及方法 - Google Patents

基于树莓派和fpga的配置电路及方法 Download PDF

Info

Publication number
CN109902054A
CN109902054A CN201711293023.6A CN201711293023A CN109902054A CN 109902054 A CN109902054 A CN 109902054A CN 201711293023 A CN201711293023 A CN 201711293023A CN 109902054 A CN109902054 A CN 109902054A
Authority
CN
China
Prior art keywords
fpga
raspberry
raspberry pie
configuration
chip
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
CN201711293023.6A
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.)
Nanjing University of Science and Technology
Original Assignee
Nanjing University of Science and Technology
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 Nanjing University of Science and Technology filed Critical Nanjing University of Science and Technology
Priority to CN201711293023.6A priority Critical patent/CN109902054A/zh
Publication of CN109902054A publication Critical patent/CN109902054A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于树莓派和FPGA的配置电路。该系统包括一片树莓派Raspberry Pi 3的板子、一片Flash芯片和Xilinx系列的FPGA芯片。该电路可以通过树莓派采用两种配置方式来配置FPGA。一种是从并模式,由树莓派直接配置FPGA;另一种是SPI模式,先由树莓派将.mcs文件传到Flash,上电时Flash会自动加载.mcs文件到FPGA,完成FPGA的配置流程。此外,树莓派自带的WiFi固件和以太网口联网可以实现远程的系统升级,能为使用者提供后续的更新和改进。本发明设计灵活,两种配置方案使得该信号处理板适用的场合更加广泛;可以实现远程的系统升级,实现在线更新下载,方便完善和改进工作。

Description

基于树莓派和FPGA的配置电路及方法
技术领域
本发明涉及通信技术领域,特别是一种基于树莓派和FPGA的配置电路及方法。
背景技术
现在的电路系统要求利用更少的空间及更低的成本来实现更多的功能,此外Xilinx每一代的FPGA都有更高的性能和更丰富的功能,给这种电路系统要求带来了可能。随着嵌入式系统越来越受欢迎,众多设计师想要减少使用的元件数并且增加灵活性。为了实现这些目标,使用微处理器来配置FPGA慢慢流行了起来。
尽管Flash PROM为Xilinx FPGA提供了易于使用的预构建配置解决方案,但使用固化Flash程序后,一旦做成产品,修改程序变得繁琐,从而难以对产品进行后期的维护和更新。
发明内容
本发明的目的在于提供一种基于树莓派和FPGA的配置电路及方法,使得系统更加灵活和通用。
实现本发明目的的技术解决方案为:一种基于树莓派和FPGA的配置电路,包括一块树莓派Raspberry Pi 3的板子、一片Flash芯片和Xilinx系列的FPGA芯片;采用两种配置方式配置FPGA芯片,并且利用树莓派Raspberry Pi 3自带的WiFi固件和以太网口实现在线的系统升级;
树莓派Raspberry Pi 3配置FPGA芯片总计用到了20个GPIO口,其中17个连接到FPGA,分别是M[2:0]、DONE、CCLK、DATA[7:0],用来直接配置FPGA;另外还有4个GPIO口接到Flash芯片,4个GPIO口用的是树莓派Raspberry Pi 3专用的SPI传输接口,分别是SPI_CLK、SPI_CE、SPI_MOSI、SPI_MISO,其中CCLK与SPI_CLK共用同一个GPIO口。
进一步地,采用两种配置方式配置FPGA芯片,具体为:
通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片,或者是树莓派Raspberry Pi 3将文件传输到Flash芯片,再由Flash芯片在上电的时候加载到FPGA。
进一步地,利用树莓派Raspberry Pi 3自带的WiFi固件和以太网口实现在线的系统升级,具体为:
通过树莓派Raspberry Pi 3自带的WiFi固件,联网即可下载安装包,再由树莓派Raspberry Pi 3下载到FPGA芯片,实现版本的升级;
在没有WiFi的情况下,通过网线接入以太网口实现联网。
一种基于树莓派和FPGA的配置方法,采用两种配置方式配置FPGA芯片,
第一种配置方式为:采用从并配置模式,通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片;该模式下,树莓派实现的功能:产生时钟CCLK、传送配置数据到FPGA和检测FPGA回传的DONE信号;
第二种配置方式为:采用SPI配置模式,通过先由树莓派Raspberry Pi 3传给Flash芯片,再由Flash芯片加载到FPGA芯片;该模式下,树莓派Raspberry Pi 3通过SPI传输方式将.mcs文件传到Flash芯片,然后再由Flash芯片在上电的时候加载到FPGA。
进一步地,所述第一种配置方式,具体如下:
树莓派Raspberry Pi 3配置FPGA采用的是从并模式,M[2:0]=110,占用了14根引脚,包括数据线8根,6根配置线:DONE、CCLK、树莓派Raspberry Pi 3从SD卡中读取.bit文件然后发给FPGA芯片,流程如下:
(1)如果从并总线上只有一个器件,拉低
(2)如果不需要读反馈,拉低
(3)被拉高时,M[2:0]的值被采样;
(4)拉低之前拉低;
(5)拉低,进入从并模式界面;
(6)拉低后的第一个CCLK的上升沿,加载第一个字节;
(7)后续字节流在每个CCLK的上升沿加载;
(8)当最后一个字节加载完毕后,器件进入STARTUP流程;
(9)STARTUP流程持续至少8个CCLK周期;
(10)STARTUP流程期间,DONE信号被拉高;
(11)配置完成后,拉高
(12)拉高后,拉高。
进一步地,所述第二种配置方式,具体如下:
树莓派Raspberry Pi 3写串行Flash芯片,再由Flash芯片上电加载配置FPGA芯片,Flash芯片的4个SPI引脚全部与树莓派Raspberry Pi 3相连,所有指令都通过这4个脚串行移位输入,在SPI串行Flash芯片配置模式下,M[2:0]=001,FPGA上电后,通过外部SPI串行Flash芯片PROM完成配置,配置时钟由FPGA芯片提供,流程如下:
(1)先拉低信号,接着拉低
(2)被拉高时,M[2:0]的值被采样;
(3)拉低,进入SPI模式界面;
(4)MOSI开始发送命令到Flash,先写8bit的Read CMD,再写24bit的Address;
(5)MISO开始接收Flash发送过来的bit流;
(6)配置完成后,拉高MOSI和DONE。
本发明与现有技术相比,其显著优点为:(1)设计灵活,两种配置方案使得该信号处理板适用的场合更加广泛;(2)可以实现远程的系统升级,实现在线更新下载,方便完善和改进工作。
附图说明
图1是本发明基于树莓派和FPGA的配置电路的连接框图。
图2是本发明中树莓派配置FPGA所用的时序图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
基于嵌入式处理器的配置解决方案可以支持高级FPGA配置应用程序,并减少电路板的设计面积,因而深受开发工程师的欢迎。树莓派是一款基于ARM的微型电脑主板,它的外形只有一张信用卡的大小。以MicroSD卡为内存硬盘,卡片主板周围有4个USB接口和一个以太网接口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,具备所有PC的基本功能。同时树莓派自带的WiFi固件和以太网口能够方便地将微处理器连接到网络,继而可以实现在线的下载。
结合图1,本发明基于树莓派和FPGA的配置电路,包括一块树莓派Raspberry Pi3的板子、一片Flash芯片和Xilinx系列的FPGA芯片;采用两种配置方式配置FPGA,并且利用树莓派带的WiFi固件和以太网口实现在线的系统升级;
树莓派配置FPGA总计用到了20个GPIO口,其中17个连接到FPGA,分别是M[2:0]、DONE、CCLK、DATA[7:0],用来直接配置FPGA,除了CCLK之外,其余引脚没有特别的约束条件,接到树莓派的通用引脚即可。另外还有4个GPIO口接到Flash,用的是树莓派专用的SPI传输接口,分别是SPI_CLK、SPI_CE、SPI_MOSI、SPI_MISO,其中CCLK与SPI_CLK共用的同一个GPIO口。
进一步地,采用两种配置方式配置FPGA芯片,具体为:
通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片,或者是树莓派Raspberry Pi 3将文件传输到Flash芯片,再由Flash芯片在上电的时候加载到FPGA。。
进一步地,利用树莓派Raspberry Pi 3自带的WiFi固件和以太网口实现在线的系统升级,具体为:通过树莓派Raspberry Pi 3自带的WiFi固件,联网即可下载安装包,再由树莓派Raspberry Pi 3下载到FPGA芯片,实现版本的升级;
在没有WiFi的情况下,通过网线接入以太网口实现联网。
本发明基于树莓派和FPGA的配置方法,采用两种配置方式配置FPGA芯片,
第一种配置方式为:采用从并配置模式,通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片;该模式下,树莓派实现的功能:产生时钟CCLK、传送配置数据到FPGA和检测FPGA回传的DONE信号;
第二种配置方式为:采用SPI配置模式,通过先由树莓派Raspberry Pi 3传给Flash芯片,再由Flash芯片加载到FPGA芯片;该模式下,树莓派Raspberry Pi 3通过SPI传输方式将.mcs文件传到Flash芯片,然后再由Flash芯片在上电的时候加载到FPGA。
实施例1
本实施例中,树莓派是一款基于Linux系统的、体积较小的卡片计算机。
它的主要硬件设施包含:
4个USB接口,拥有更好地热插拔支持;
40芯的GPIO口,可用于复杂的电子项目;
Micro SD卡卡槽;
1个以太网接口;
WiFi固件;
1个高清多媒体接口(HDMI),提供高分辨率的视频以及数字音频号。
在本发明中,主要用到的是树莓派WiFi模块和GPIO端口,树莓派的WiFi模块使得微处理器能连接到网络,实现下载,满足了我们在线系统更新的要求,在没有WiFi的情况下也可以通过网线接入以太网口实现联网。树莓派联网的方式也非常容易,接上键盘鼠标和显示器,就可以把它当做一台电脑,跟PC联网的方式一样。
树莓派提供了丰富的GPIO口资源,其内部工作电压为3.3V,使得用树莓派来配置FPGA成为可能。这40个GPIO口中,有17个是通用引脚,配置FPGA用的信号线就主要用的这些引脚。除此之外还有一些特别的总线专用引脚:2根UART串行总线,提供了一个简单的两线串行接口,用于简单的信息传递;2根I2C总线,为多个集成电路之间提供通信用的;5根SPI总线,其中包含两个芯片选择信号,使得它能与多个目标设备进行通信,与Flash相连就采用的这种SPI传输方式。
FPGA配置流程如下:
1、上电
上电是当电源给FPGA供电时,内部的状态机被复位,器件被唤醒。同时引脚被FPGA拉低。
2、器件初始化
器件上电后,内部的配置存储器需要被复位,在清空完配置寄存器后,信号将会重新被置为高电平。用户可以通过将置为低电平,从而达到延长清空配置存储器的时间,以确保存储器被清空。
3、加载配置数据
信号被拉高时,系统开始加载配置数据。器件先对配置模式脚M[2:0]进行采样,以确定用何种方式来加载配置数据。在这个阶段,器件接收配置数据,所有的配置事件发生在CCLK的上升沿。
4、START-UP
START-UP阶段是FPGA由配置状态过渡到用户状态的过程。在START-UP完成后,FPGA便可实现用户编程的功能。在START-UP阶段,FPGA会进行以下操作:
(1)将DONE信号置高电平,若DONE信号没有置高,则说明数据加载过程失败;
(2)在配置过程中,器件的所有I/O引脚均为三态,此时,全局三态信号GTS置低电平,这些I/O脚将会从三态切换到用户设置状态;
(3)全局复位信号GSR置低电平,所有触发器进入工作状态;
(4)全局写允许信号GWE置低电平,所有内部RAM有效。
整个过程需要8个时钟周期C0-C7。在默认的情况下,这些操作都和配置时钟CCLK同步。在DONE信号置高电平之前,GTS、GSR、GWE都保持高电平。
将树莓派与FPGA连接起来后,严格按照上述流程,控制各个配置线传输数据,即可完成树莓派对FPGA的配置,详细的各个引脚的信号时序图见具体实施方式。另外,树莓派与Flash的连接,就按照正常的SPI传输方式通信。
树莓派配置FPGA采用的是从并模式,M[2:0]=110,占用了14根引脚,包括数据线8根,6根配置线:DONE、CCLK、配置FPGA所用的时序图如图2,树莓派从SD卡中读取.bit文件然后发给FPGA。
整个流程如下:
(1)如果从并总线上只有一个器件,拉低
(2)如果不需要读反馈,拉低
(3)被拉高时,M[2:0]的值被采样;
(4)拉低之前拉低;
(5)拉低,进入从并模式界面;
(6)拉低后的第一个CCLK的上升沿,加载第一个字节;
(7)后续字节流在每个CCLK的上升沿加载;
(8)当最后一个字节加载完毕后,器件进入STARTUP流程;
(9)STARTUP流程持续至少8个CCLK周期;
(10)STARTUP流程期间,DONE信号被拉高。也可能需要额外的CCLK周期来完成STARTUP流程。
(11)配置完成后,拉高
(12)拉高后,也要拉高了。
树莓派写串行Flash,再由Flash芯片上电加载配置FPGA。Flash芯片的4个SPI引脚全部与树莓派相连,所有指令都通过这4个脚串行移位输入。在SPI串行Flash配置模式下,M[2:0]=001,FPGA上电后,通过外部SPI串行Flash PROM完成配置,配置时钟由FPGA芯片提供。整个流程如下:
(1)先拉低信号,接着拉低
(2)被拉高时,M[2:0]的值被采样;
(3)拉低,进入SPI模式界面;
(4)MOSI开始发送命令到Flash,先写8bit的Read CMD,再写24bit的Address;(5)MISO开始接收Flash发送过来的bit流。
(6)配置完成后,拉高MOSI和DONE。

Claims (6)

1.一种基于树莓派和FPGA的配置电路,其特征在于,包括一块树莓派Raspberry Pi 3的板子、一片Flash芯片和Xilinx系列的FPGA芯片;采用两种配置方式配置FPGA芯片,并且利用树莓派Raspberry Pi 3自带的WiFi固件和以太网口实现在线的系统升级;
树莓派Raspberry Pi 3配置FPGA芯片总计用到了20个GPIO口,其中17个连接到FPGA,分别是M[2:0]、DONE、CCLK、DATA[7:0],用来直接配置FPGA;另外还有4个GPIO口接到Flash芯片,4个GPIO口用的是树莓派Raspberry Pi 3专用的SPI传输接口,分别是SPI_CLK、SPI_CE、SPI_MOSI、SPI_MISO,其中CCLK与SPI_CLK共用同一个GPIO口。
2.根据权利要求1所述的基于树莓派和FPGA的配置电路,其特征在于,采用两种配置方式配置FPGA芯片,具体为:
通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片,或者是树莓派Raspberry Pi3将文件传输到Flash芯片,再由Flash芯片在上电的时候加载到FPGA。
3.根据权利要求1所述的基于树莓派和FPGA的配置电路,其特征在于,利用树莓派Raspberry Pi 3自带的WiFi固件和以太网口实现在线的系统升级,具体为:
通过树莓派Raspberry Pi 3自带的WiFi固件,联网即可下载安装包,再由树莓派Raspberry Pi 3下载到FPGA芯片,实现版本的升级;
在没有WiFi的情况下,通过网线接入以太网口实现联网。
4.一种基于树莓派和FPGA的配置方法,其特征在于,采用两种配置方式配置FPGA芯片,
第一种配置方式为:采用从并配置模式,通过树莓派Raspberry Pi 3的GPIO口直接配置FPGA芯片;该模式下,树莓派实现的功能:产生时钟CCLK、传送配置数据到FPGA和检测FPGA回传的DONE信号;
第二种配置方式为:采用SPI配置模式,通过先由树莓派Raspberry Pi 3传给Flash芯片,再由Flash芯片加载到FPGA芯片;该模式下,树莓派Raspberry Pi 3通过SPI传输方式将.mcs文件传到Flash芯片,然后再由Flash芯片在上电的时候加载到FPGA。
5.根据权利要求4所述的基于树莓派和FPGA的配置方法,其特征在于,所述第一种配置方式,具体如下:
树莓派Raspberry Pi 3配置FPGA采用的是从并模式,M[2:0]=110,占用了14根引脚,包括数据线8根,6根配置线:DONE、CCLK、树莓派RaspberryPi 3从SD卡中读取.bit文件然后发给FPGA芯片,流程如下:
(1)如果从并总线上只有一个器件,拉低
(2)如果不需要读反馈,拉低
(3)被拉高时,M[2:0]的值被采样;
(4)拉低之前拉低;
(5)拉低,进入从并模式界面;
(6)拉低后的第一个CCLK的上升沿,加载第一个字节;
(7)后续字节流在每个CCLK的上升沿加载;
(8)当最后一个字节加载完毕后,器件进入STARTUP流程;
(9)STARTUP流程持续至少8个CCLK周期;
(10)STARTUP流程期间,DONE信号被拉高;
(11)配置完成后,拉高
(12)拉高后,拉高。
6.根据权利要求4所述的基于树莓派和FPGA的配置方法,其特征在于,所述第二种配置方式,具体如下:
树莓派Raspberry Pi 3写串行Flash芯片,再由Flash芯片上电加载配置FPGA芯片,Flash芯片的4个SPI引脚全部与树莓派Raspberry Pi 3相连,所有指令都通过这4个脚串行移位输入,在SPI串行Flash芯片配置模式下,M[2:0]=001,FPGA上电后,通过外部SPI串行Flash芯片PROM完成配置,配置时钟由FPGA芯片提供,流程如下:
(1)先拉低信号,接着拉低
(2)被拉高时,M[2:0]的值被采样;
(3)拉低,进入SPI模式界面;
(4)MOSI开始发送命令到Flash,先写8bit的Read CMD,再写24bit的Address;
(5)MISO开始接收Flash发送过来的bit流;
(6)配置完成后,拉高MOSI和DONE。
CN201711293023.6A 2017-12-08 2017-12-08 基于树莓派和fpga的配置电路及方法 Pending CN109902054A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711293023.6A CN109902054A (zh) 2017-12-08 2017-12-08 基于树莓派和fpga的配置电路及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711293023.6A CN109902054A (zh) 2017-12-08 2017-12-08 基于树莓派和fpga的配置电路及方法

Publications (1)

Publication Number Publication Date
CN109902054A true CN109902054A (zh) 2019-06-18

Family

ID=66940265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711293023.6A Pending CN109902054A (zh) 2017-12-08 2017-12-08 基于树莓派和fpga的配置电路及方法

Country Status (1)

Country Link
CN (1) CN109902054A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672271A (zh) * 2021-08-24 2021-11-19 天津津航计算技术研究所 一种国产fpga远程升级系统和方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106802605A (zh) * 2017-03-01 2017-06-06 南京邮电大学 一种基于树莓派和Arduino的wifi控制反馈系统
CN107111583A (zh) * 2015-03-19 2017-08-29 西部数据技术公司 单板机接口

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107111583A (zh) * 2015-03-19 2017-08-29 西部数据技术公司 单板机接口
CN106802605A (zh) * 2017-03-01 2017-06-06 南京邮电大学 一种基于树莓派和Arduino的wifi控制反馈系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
冯艳华: "面向智能硬件的低功耗加速器系统设计", 《中国优秀硕士学位论文全文数据库》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672271A (zh) * 2021-08-24 2021-11-19 天津津航计算技术研究所 一种国产fpga远程升级系统和方法

Similar Documents

Publication Publication Date Title
CN102609286B (zh) 一种基于处理器控制的fpga配置程序远程更新系统及其方法
CN107430420B (zh) 具有高空闲噪声和dc电平抑制的低功率type-c接收器
EP1487107B1 (en) Apparatus and methods for communicating with programmable logic devices
US8745304B2 (en) USB to SD bridge
CN103870429B (zh) 基于嵌入式gpu的高速信号处理板
JPH07507412A (ja) コンピュータと周辺装置との間の再構成可能インターフェイス
CN107368441A (zh) 用于USB输电的可配置且功率优化的集成栅极驱动器及Type‑C SoC
KR20100023966A (ko) Ulpi phy 인터페이스 표준을 사용하는 usb 2.0 링크 전력 관리 부록의 물리적 장치(phy) 지원
CN104054064B (zh) 基于接口耦合的灵活的端口配置
CN207752467U (zh) 一种fpga芯片的加载设备
US9183339B1 (en) System and method for preparing partially reconfigurable circuit designs
US9935637B2 (en) Systems and methods for FPGA development and operation
CN103034515A (zh) 一种卫星导航接收机fpga快速加载方法
CN102609288A (zh) 一种基于fpga/cpld的程序下载器
CN108139916A (zh) 可编程逻辑设备的多阶段引导映像加载和配置
CN109992555A (zh) 一种供多路服务器共用的管理板卡
JP2018531461A6 (ja) マルチステージブートイメージロードおよびプログラマブルロジックデバイスの構成
CN111190855A (zh) 一种fpga多重远程配置系统及方法
CN109408924A (zh) 基于dsp芯片的fpga配置方法
CN108920197A (zh) 一种提高fpga串行被动加载速率的加载电路及加载方法
CN110399328B (zh) 一种板载图形处理器控制方法与装置
CN104115138A (zh) 电可配置选配板接口
CN109902054A (zh) 基于树莓派和fpga的配置电路及方法
CN207302036U (zh) 一种扩展设备网口的转接装置及采用该装置的网络设备
CN101788946B (zh) Cpld上连接有e2prom设备的固件烧结方法及装置

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: 20190618

RJ01 Rejection of invention patent application after publication