CN104049995A - 在mcu芯片中配置fpga的方法和装置 - Google Patents
在mcu芯片中配置fpga的方法和装置 Download PDFInfo
- Publication number
- CN104049995A CN104049995A CN201410223084.5A CN201410223084A CN104049995A CN 104049995 A CN104049995 A CN 104049995A CN 201410223084 A CN201410223084 A CN 201410223084A CN 104049995 A CN104049995 A CN 104049995A
- Authority
- CN
- China
- Prior art keywords
- gate array
- programmable gate
- fpga
- submodule
- data message
- 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.)
- Granted
Links
Landscapes
- Logic Circuits (AREA)
Abstract
本发明实施例提供了一种在MCU芯片中配置FPGA的方法和装置,所述微控制单元MCU芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列FPGA模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述方法包括:所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息;所述现场可编程门阵列FPGA配置信息下载子模块将所述数据信息写入所述FPGA器件。本发明可以降低成本,并且能够在掉电后保存数据信息。
Description
技术领域
本发明涉及集成电路技术领域,特别是涉及一种在MCU芯片中配置FPGA的方法和一种在MCU芯片中配置FPGA的装置。
背景技术
随着集成电路工艺的不断提高,现场可编程门阵列FPGA(Field-Programmable Gate Array)作为专用集成电路(ASIC,Application-SpecificIntegrated Circuit)领域中的一种半定制电路而出现,FPGA的逻辑块和连接可以按照用户的需要而改变,通过可编辑的连接把FPGA内部的逻辑块连接起来,所以FPGA可以完成所需要的逻辑功能。
由于FPGA具有极高的灵活性,MCU(Micro Control Unit,微控制单元)芯片厂商寄望于将FPGA集成于MCU芯片中,以解决MCU芯片在不同应用场景对功能需求不一样的矛盾。
通常,在FPGA完成所需要的逻辑功能之前,需要将相应的数据信息烧录至FPGA中进行配置,相关的FPGA配置模式有多种,包括:并行主模式、主从模式、串行模式以及外设模式,其中,并行主模式为一片FPGA加一片EPROM(Erasable Programmable Read-Only Memory,可擦除可编程只读寄存器)的方式;主从模式可以支持一片PROM(ProgrammableRead-Only Memory,可编程只读存储器)编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。
然而,在MCU芯片中配置FPGA时,采用一片EPROM或者一片PROM对FPGA进行编程都会增加额外的成本,并且,MCU芯片的面积也会相应的增大,进一步增加了成本,此外,由于FPGA为现场可编程器件,掉电后相应的数据信息也即丢失,造成FPGA不能正常工作。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提供一种在MCU芯片中配置FPGA的方法和装置,以降低成本,并且能够在掉电后保存数据信息。
发明内容
本发明实施例所要解决的技术问题是提供一种在MCU芯片中配置FPGA的方法,以降低成本,并且能够在掉电后保存数据信息。
相应的,本发明实施例还提供了一种在MCU芯片中配置FPGA的装置,用以保证上述方法的实现及应用。
为了解决上述问题,本发明公开了一种在MCU芯片中配置FPGA的方法,所述微控制单元MCU芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列FPGA模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述方法包括:
所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息;
所述现场可编程门阵列FPGA配置信息下载子模块将所述数据信息写入所述FPGA器件。
优选地,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述现场可编程门阵列模块分别连接在所述系统总线上;所述时钟复位模块与所述现场可编程门阵列模块互连;
所述现场可编程门阵列模块还包括现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信。
优选地,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
所述联合测试工作组JTAG接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
所述联合测试工作组JTAG将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
所述现场可编程门阵列FPGA配置信息下载子模块接收所述联合测试工作组JTAG发送的数据信息。
优选地,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
优选地,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
依据本发明的实施例,公开了一种在MCU芯片中配置FPGA的装置,所述微控制单元芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述装置位于现场可编程门阵列FPGA配置信息下载子模块侧,包括:
数据信息接收单元,用于接收数据信息;
数据信息写入单元,用于将所述数据信息写入所述FPGA器件。
优选地,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述现场可编程门阵列模块分别连接在所述系统总线上;所述时钟复位模块与所述现场可编程门阵列模块互连;
所述现场可编程门阵列模块还包括现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信。
优选地,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
位于联合测试工作组JTAG的数据信息接收子单元,用于接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
位于联合测试工作组JTAG的数据信息发送子单元,用于将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
位于所述现场可编程门阵列FPGA配置信息下载子模块的数据信息接收子单元,用于接收所述联合测试工作组JTAG发送的数据信息。
优选地,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
所述装置还包括:
第一数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
优选地,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
所述装置还包括:
第二数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
与现有技术相比,本发明实施例包括以下优点:
本发明通过在微控制单元MCU芯片中集成现场可编程门阵列FPGA模块,其中,现场可编程门阵列FPGA模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,在FPGA配置信息下载子模块接收到数据信息后,将所述数据信息写入FPGA器件中,即可以完成对FPGA器件的配置,烧录的过程不需要增加额外的器件,因此可以降低成本。
进一步的,本发明通过采用联合测试工作组JTAG的方式将数据信息烧录至FPGA器件中,联合测试工作组JTAG具有配套使用的设备以保证数据信息格式的要求,同时,操作还很简单,方便用户使用,配套使用的设备不占用MCU芯片的面积,从而可以降低成本。
进一步的,本发明通过采用系统总线的方式将数据信息烧录至FPGA器件中,使得系统总线上任意地址空间上的数据信息均可以烧录到FPGA器件中,采用系统总线的方式不需要增加额外的器件,从而可以降低成本。
更进一步的,本发明通过采用闪存控制器的方式将数据信息烧录至FPGA器件中,烧录的过程为MCU芯片自动执行,不需要用户做任何操作,由于闪存芯片具有断电数据信息不丢失的特点,因此,可以在断电的情况下保存数据信息。
附图说明
图1示出了本发明一种在MCU芯片中配置FPGA的方法实施例的步骤流程图;
图2示出了本发明一种在MCU芯片中配置FPGA模块的结构图;
图3示出了本发明一种在MCU芯片中配置FPGA模块IO连接示意图;
图4示出了本发明一种在MCU芯片中配置FPGA的装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,通过现场可编程门阵列FPGA配置信息下载子模块建立配置FPGA器件的机制,即FPGA配置信息下载子模块接收到数据信息后,将该数据信息写入FPGA器件中,此外,由于MCU芯片的元件多种多样,各个元件可以通过不同的方式与FPGA配置信息下载子模块连接,因此,FPGA配置信息下载子模块接收数据信息的方式可以包括JTAG下载、软件下载以及闪存下载,在简化用户操作的同时保证数据信息接收的灵活性,还可以在断电的情况下保存数据信息。
参照图1,示出了本发明一种在MCU芯片中配置FPGA的方法实施例的步骤流程图,所述微控制单元芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,具体可以包括如下步骤:
步骤101,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息;
在具体应用中,数据信息可以包括FPGA器件的配置信息,现场可编程门阵列FPGA配置信息下载子模块可以接收联合测试工作组JTAG(JointTest Action Group,联合测试工作组),或者,系统总线,或者,闪存控制器传输的数据信息。
参照图2,示出了本发明一种在MCU芯片中配置FPGA模块的结构图。
如图2所示,现场可编程门阵列FPGA模块集成在微控制单元MCU芯片中(图示中未画出),现场可编程门阵列FPGA模块包括FPGA配置信息下载子模块和FPGA器件,FPGA配置信息下载子模块烧录FPAG器件的数据通路可以为数据通路1,MCU芯片还可以包括联合测试工作组JTAG,JTAG与FPGA配置信息下载子模块的数据通路可以为数据通路2,MCU芯片还可以包括系统总线,系统总线与FPGA配置信息下载子模块的数据通路可以为数据通路3,MCU芯片还可以包括闪存控制器,闪存控制器与FPGA配置信息下载子模块的数据通路可以为数据通路4。
在本发明实施例的一种优选示例中,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
子步骤S11,所述联合测试工作组JTAG接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
作为本发明具体应用的一种示例,JTAG是一种国际标准测试协议(IEEE1149.1兼容),可以用于芯片内部测试。在本发明实施例中可以采用JTAG配置下载FPGA器件。
联合测试工作组JTAG下载器可以按照国际标准测试协议的要求下载数据信息,这种下载方式为FPGA器件提供的标准下载方式,可以称为JTAG下载。
联合测试工作组JTAG下载器下载数据信息后,通过将MCU芯片外预设的JTAG下载器,连接到MCU芯片中的联合测试工作组JTAG,可以将该数据信息发送给JTAG。
子步骤S12,所述联合测试工作组JTAG将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
联合测试工作组JTAG通过数据通路2,即JTAG与FPGA配置信息下载子模块的数据通路,连接到FPGA配置信息下载子模块,可以将数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块。
子步骤S13,所述现场可编程门阵列FPGA配置信息下载子模块接收所述联合测试工作组JTAG发送的数据信息。
通过数据通路2,即JTAG与FPGA配置信息下载子模块的数据通路,现场可编程门阵列FPGA配置信息下载子模块即可以接收到联合测试工作组JTAG发送的数据信息。
需要说明的是,在实际应用中,在MCU芯片外,还可以通过USB(Universal Serial Bus,通用串行总线)转JTAG设备,例如J-Link仿真器,J-Link仿真器一端连接USB,另一端连接JTAG,将USB信号转换成JTAG信号接到MCU芯片上,实现USB配置下载FPGA,或者,通过串口转JTAG设备,实现串口配置下载FPGA器件。
本发明通过采用联合测试工作组JTAG的方式将数据信息烧录至FPGA器件中,联合测试工作组JTAG具有配套使用的设备以保证数据信息格式的要求,同时,操作还很简单,方便用户使用,配套使用的设备不占用MCU芯片的面积,从而可以降低成本。
在本发明实施例的另一种优选示例中,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
在具体实现中,系统总线上连接了MCU芯片的CPU等元件,这种通过系统总线配置FPGA的方式可以称为软件下载,即通过CPU或DMA数据调度,从MCU芯片中其他地址空间(比如SRAM)中将数据读取,通过系统总线,通过数据接口3,即系统总线与FPGA配置信息下载子模块的数据通路,载入到FPGA配置信息下载子模块。
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
在FPGA配置信息下载子模块中,需要将数据转化成FPGA器件可配置下载的标准数据格式,即一种符合JTAG协议的数据格式,再通过数据通路1,即FPGA配置信息下载子模块烧录FPAG器件的数据通路,配置下载FPGA器件。
需要说明的是,任意总线地址空间上数据,均可以配置下载FPGA器件。如果MCU芯片中设备集装置包括SPI(Serial Peripheral Interface,串行外设接口),则可实现SPI下载FPGA,如果设备集中包括串口,则可实现串口下载FPGA,以此类推。
本发明通过采用系统总线的方式将数据信息烧录至FPGA器件中,使得系统总线上任意地址空间上的数据信息均可以烧录到FPGA器件中,采用系统总线的方式不需要增加额外的器件,从而可以降低成本。
在本发明实施例的另一种优选示例中,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
在实际应用中,闪存控制器可以连接闪存芯片,闪存芯片具有掉电数据信息不丢失的特点,FPGA器件为现场可编程器件,掉电后数据信息将丢失,因此,将FPGA的数据信息保存到闪存芯片中,可以达到数据信息掉电不丢失的效果。这种配置FPGA器件的方式可以称为闪存下载。
MCU芯片上电后,闪存控制器自动读取闪存芯片中保存的数据信息,通过数据通路4,即闪存控制器与FPGA配置信息下载子模块的数据通路,将数据信息载入FPGA配置信息下载子模块。
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
在FPGA配置信息下载子模块中,需要将数据转化成FPGA器件可配置下载的标准数据格式,即一种符合JTAG协议的数据格式,再通过数据通路1,即FPGA配置信息下载子模块烧录FPAG器件的数据通路,配置下载FPGA器件。整个过程均是在上电后自动完成,即上电后自动将FPGA器件配置成需要的专用电路,整个过程对于用户是不可见的。
本发明通过采用闪存控制器的方式将数据信息烧录至FPGA器件中,烧录的过程为MCU芯片自动执行,不需要用户做任何操作,由于闪存芯片具有断电数据信息不丢失的特点,因此,可以在断电的情况下保存数据信息。
在本发明实施例的一种优选示例中,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述FPGA模块分别连接在所述系统总线上;所述时钟复位与所述FPGA模块互连;
在实际应用中,CPU(Central Processing Unit,中央处理器),一般为IP核(Intellectual Property Core,知识产权核),所谓IP核,一般为某一方提供的、在芯片设计上的可重用模块。CPU是MCU芯片中运算与控制核心,可以执行软件编译完成的代码程序等,达到控制芯片中各部分合理运行的目的。
芯片IO控制可以是用于控制MCU芯片IO用途的模块,在本发明实施例中,芯片IO控制的主要作用可以是将MCU芯片IO配置成FPGA的IO或者普通的GPIO(General Purpose Input Output)。
时钟复位可以是提供MCU芯片时钟与复位的模块,时钟部分包括PLL(Phase Locked Loop,锁相环),用于提供各种频率的时钟(比如10MHZ~100MHZ)。在本发明实施例中,时钟复位部分还可以用于提供FPGA(Field-Programmable Gate Array,现场可编程门阵列)所需要的时钟和复位。
需要说明的是,在时钟复位中可以预留一些时钟,例如:高频时钟,低频时钟,与系统同频时钟等,还可以预留一些可配置的复位信号等,连接到FPGA IO配置子模块中,为FPGA器件中的逻辑提供时钟复位信号。
此外,系统总线同样可以预设一些保留地址空间,这些地址空间与MCU其他部分不冲突,这样CPU可以通过系统总线中的预设的保留地址空间访问FPGA器件中的逻辑。
参照图3,示出了本发明一种在MCU芯片中配置FPGA模块IO连接示意图。
所述FPGA模块设置有现场可编程门阵列FPGA器件和现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信;
在具体应用中,现场可编程门阵列FPGA器件一般包含大量的LUT(Look-Up-Table,查找表),实现组合逻辑电路,触发器,实现时序逻辑电路,还包含一定数量的Memory(内存),DCM(Digital Clock Manager,数字时钟管理器),用于产生时钟,乘法器,以及IO buffer(输入输出缓冲器)。
在本发明实施例中,由于FPGA器件实现在MCU芯片中,有些可以与MCU芯片中其他部分共用,比如,Memory可以与MCU芯片中装置SRAM(Static Random Access Memory,静态随机存储器)共用,又如,用MCU中时钟复位模块可以为FPGA器件提供时钟和复位,因此,FPGA也可以不用实现DCM,由于MCU芯片应用对数据运算要求不高,因此,FPGA还可以不用实现乘法器。所以,在本发明实施中,FPGA器件可以主要实现可编程逻辑单元(LUT和触发器),可编程输入输出单元以及布线资源等。这样既简化了实现难度,又减小了芯片面积,与MCU芯片共用部分也提高了实现效率。需要说明的是,在本发明实施例中,FPGA器件也可用其他可编程器件替代。
由于FPGA模块实现在MCU芯片内部,所以FPGA的IO需要与MCU芯片连接,FPGA IO配置子模块可以将FPGA器件的每个IO配置成与MCU芯片中其他部分的信号连接,或者,配置成与MCU芯片的IO连接。与MCU芯片中其他部分的信号连接主要用于共用MCU芯片中其他部分电路,减少芯片面积。
FPGA模块将MCU芯片需要的功能模块实现在FPGA器件内,并且,在FPGA器件中除了包括功能模块以外,还包括功能模块的IO分配。而实现在FPGA器件装置内的功能模块与FPGA模块外(即MCU芯片内部其他模块,以及MCU芯片预设的外部器件)的通信可以通过FPGA IO配置子模块的IO(输入输出端口)交互完成的。
需要说明的是,FPGA器件装置中,除了实现的功能模块的逻辑部分外,还包含了将功能模块的输入输出与FPGA的IO buffer连接。
IO通路1:为实现FPGA器件的IO buffer与FPGA IO配置子模块之间的通路连接,在FPGA IO配置子模块中,将FPGA器件所有IO预设多种选择,如:MCU芯片系统总线信号,时钟复位模块,MCU芯片的IO等,可以将FPGA器件中的每个IO选择与预设多种选择中的一个连接。
IO通路2:为FPGA IO配置子模块与MCU芯片中其他模块的通路连接,例如:假设在FPGA IO配置子模块中,将FPGA器件的某个IO配置成系统总线信号,此系统总线信号与MCU芯片中系统总线模块连接。
IO通路3:为FPGA IO配置子模块与MCU芯片IO控制模块之间的通路连接,例如:假设在FPGA IO配置子模块中,将FPGA器件的某个IO配置成与MCU芯片IO连接,此IO连接到芯片IO控制模块中,由于每个芯片IO也有多个预设选择,其中一种选择为MCU芯片IO与FPGA IO配置子模块连接,所以在芯片IO控制模块中,需要将对应的芯片IO配置成与FPGA IO配置子模块连接。
IO通路4:为芯片IO控制模块与MCU芯片外的预设外接器件的通路连接。
所述FPGA器件中的外接信号通过互连的内部IO引脚传输到所述FPGAIO配置子模块中,再通过相连的对应的IO引脚传输到所述芯片IO控制中,之后传输到所述外接设备中。
在具体应用中,通过IO通路1,IO通路3,IO通路4,实现了在FPGA器件内的功能模块,与MCU芯片外的设备之间的数据通信。通过IO通路1,IO通路2实现了在FPGA器件内的功能模块与MCU芯片中其他模块之间的数据通信。
步骤102,所述现场可编程门阵列FPGA配置信息下载子模块将所述数据信息写入所述FPGA器件。
在具体实现中,现场可编程门阵列FPGA配置信息下载子模块通过数据通路1,即FPGA配置信息下载子模块烧录FPAG器件的数据通路,将所述数据信息写入所述FPGA器件中,即可以配置FPGA器件。
本发明通过在微控制单元MCU芯片中集成现场可编程门阵列FPGA模块,其中,现场可编程门阵列FPGA模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,在FPGA配置信息下载子模块接收到数据信息后,将所述数据信息写入FPGA器件中,即可以完成对FPGA器件的配置,烧录的过程不需要增加额外的器件,因此可以降低成本。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明一种在MCU芯片中配置FPGA的装置实施例的结构框图,所述微控制单元芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述装置位于现场可编程门阵列FPGA配置信息下载子模块侧,具体可以包括如下模块:
数据信息接收单元401,用于接收数据信息;
数据信息写入单元402,用于将所述数据信息写入所述FPGA器件。
在本发明的一种优选示例中,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述现场可编程门阵列模块分别连接在所述系统总线上;所述时钟复位模块与所述现场可编程门阵列模块互连;
所述现场可编程门阵列模块还包括现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信。
在本发明的一种优选示例中,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
位于联合测试工作组JTAG的数据信息接收子单元,用于接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
位于联合测试工作组JTAG的数据信息发送子单元,用于将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
位于所述现场可编程门阵列FPGA配置信息下载子模块的数据信息接收子单元,用于接收所述联合测试工作组JTAG发送的数据信息。
在本发明的一种优选示例中,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
所述装置还包括:
第一数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
在本发明的一种优选示例中,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
所述装置还包括:
第二数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种在MCU芯片中配置FPGA的方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种在MCU芯片中配置FPGA的方法,其特征在于,所述微控制单元MCU芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列FPGA模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述方法包括:
所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息;
所述现场可编程门阵列FPGA配置信息下载子模块将所述数据信息写入所述FPGA器件。
2.根据权利要求1所述的方法,其特征在于,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述现场可编程门阵列模块分别连接在所述系统总线上;所述时钟复位模块与所述现场可编程门阵列模块互连;
所述现场可编程门阵列模块还包括现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信。
3.根据权利要求1或2所述的方法,其特征在于,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
所述联合测试工作组JTAG接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
所述联合测试工作组JTAG将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
所述现场可编程门阵列FPGA配置信息下载子模块接收所述联合测试工作组JTAG发送的数据信息。
4.根据权利要求1或2所述的方法,其特征在于,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
5.根据权利要求1或2所述的方法,其特征在于,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
在所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息的步骤之后,还包括:
将所述数据信息进行格式化,生成标准数据格式的数据信息。
6.一种在MCU芯片中配置FPGA的装置,其特征在于,所述微控制单元芯片集成有现场可编程门阵列FPGA模块,所述现场可编程门阵列模块包括互连的现场可编程门阵列FPGA器件和现场可编程门阵列FPGA配置信息下载子模块,所述装置位于现场可编程门阵列FPGA配置信息下载子模块侧,包括:
数据信息接收单元,用于接收数据信息;
数据信息写入单元,用于将所述数据信息写入所述FPGA器件。
7.根据权利要求6所述的装置,其特征在于,所述MCU芯片还包括:
CPU、系统总线、芯片IO控制模块以及时钟复位模块,其中,
所述CPU和所述现场可编程门阵列模块分别连接在所述系统总线上;所述时钟复位模块与所述现场可编程门阵列模块互连;
所述现场可编程门阵列模块还包括现场可编程门阵列FPGA IO配置子模块,所述FPGA器件和所述FPGA IO配置子模块各自包括内部IO引脚,所述FPGA器件的内部IO引脚与所述FPGA IO配置子模块的内部IO引脚互连,所述FPGA器件和所述FPGA IO配置子模块之间通过互连的内部IO引脚对进行内部相互通信。
8.根据权利要求6或7所述的装置,其特征在于,所述MCU芯片还包括联合测试工作组JTAG,所述现场可编程门阵列FPGA配置信息下载子模块与联合测试工作组JTAG互连,所述现场可编程门阵列FPGA配置信息下载子模块通过以下方式接收数据信息:
位于联合测试工作组JTAG的数据信息接收子单元,用于接收预设的联合测试工作组JTAG下载器发送的数据信息;所述数据信息通过所述联合测试工作组JTAG下载器下载获得;
位于联合测试工作组JTAG的数据信息发送子单元,用于将所述数据信息发送至所述现场可编程门阵列FPGA配置信息下载子模块;
位于所述现场可编程门阵列FPGA配置信息下载子模块的数据信息接收子单元,用于接收所述联合测试工作组JTAG发送的数据信息。
9.根据权利要求6或7所述的装置,其特征在于,所述MCU芯片还包括系统总线,所述现场可编程门阵列FPGA配置信息下载子模块连接到所述系统总线上,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括所述现场可编程门阵列FPGA配置信息下载子模块接收所述系统总线上传输的数据信息;
所述装置还包括:
第一数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
10.根据权利要求6或7所述的装置,其特征在于,所述MCU芯片还包括闪存控制器,所述现场可编程门阵列FPGA配置信息下载子模块与闪存控制器互连,所述闪存控制器与闪存芯片互连,所述闪存芯片中包括预设的数据信息,所述现场可编程门阵列FPGA配置信息下载子模块接收数据信息包括现场可编程门阵列FPGA配置信息下载子模块接收所述闪存控制器传输的数据信息,所述数据信息通过所述闪存控制器读取所述闪存芯片获得;
所述装置还包括:
第二数据信息格式化单元,用于将所述数据信息进行格式化,生成标准数据格式的数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410223084.5A CN104049995B (zh) | 2014-05-23 | 2014-05-23 | 在mcu芯片中配置fpga的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410223084.5A CN104049995B (zh) | 2014-05-23 | 2014-05-23 | 在mcu芯片中配置fpga的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104049995A true CN104049995A (zh) | 2014-09-17 |
CN104049995B CN104049995B (zh) | 2017-06-16 |
Family
ID=51502901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410223084.5A Active CN104049995B (zh) | 2014-05-23 | 2014-05-23 | 在mcu芯片中配置fpga的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104049995B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445544A (zh) * | 2016-10-08 | 2017-02-22 | 中国科学院微电子研究所 | 一种对可编程逻辑器件进行配置或更新的装置和方法 |
CN106650352A (zh) * | 2016-11-18 | 2017-05-10 | 深圳市博巨兴实业发展有限公司 | 一种基于otp器件的身份认证芯片 |
CN106841973A (zh) * | 2015-12-04 | 2017-06-13 | 深圳市盛德金科技有限公司 | 逻辑测试装置及方法 |
CN109542838A (zh) * | 2018-12-29 | 2019-03-29 | 西安智多晶微电子有限公司 | 一种支持多比特流下载的fpga及其系统 |
CN111538260A (zh) * | 2020-04-01 | 2020-08-14 | 深圳市汇顶科技股份有限公司 | 引脚配置方法及装置、多引脚互连互通系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120223738A1 (en) * | 2009-10-12 | 2012-09-06 | Monolithic 3D Inc. | Method for fabrication of a semiconductor device and structure |
CN102662645A (zh) * | 2012-03-01 | 2012-09-12 | 福建星网锐捷网络有限公司 | 片上系统及片上系统的硬件可编程器件的配置方法 |
CN102662811A (zh) * | 2012-03-31 | 2012-09-12 | 电子科技大学 | 一种实现对51软核在线应用代码调试的方法 |
CN103617056A (zh) * | 2013-11-25 | 2014-03-05 | 广东威创视讯科技股份有限公司 | Fpga逻辑代码的在线升级方法和装置 |
CN103677868A (zh) * | 2012-09-06 | 2014-03-26 | 合肥科盛微电子科技有限公司 | 一种通过芯片内部的mcu配置芯片内置fpga的方法 |
CN103809987A (zh) * | 2012-11-07 | 2014-05-21 | 中国科学院微电子研究所 | 一种soc芯片更换自身内部fpga ip程序的方法 |
-
2014
- 2014-05-23 CN CN201410223084.5A patent/CN104049995B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120223738A1 (en) * | 2009-10-12 | 2012-09-06 | Monolithic 3D Inc. | Method for fabrication of a semiconductor device and structure |
CN102662645A (zh) * | 2012-03-01 | 2012-09-12 | 福建星网锐捷网络有限公司 | 片上系统及片上系统的硬件可编程器件的配置方法 |
CN102662811A (zh) * | 2012-03-31 | 2012-09-12 | 电子科技大学 | 一种实现对51软核在线应用代码调试的方法 |
CN103677868A (zh) * | 2012-09-06 | 2014-03-26 | 合肥科盛微电子科技有限公司 | 一种通过芯片内部的mcu配置芯片内置fpga的方法 |
CN103809987A (zh) * | 2012-11-07 | 2014-05-21 | 中国科学院微电子研究所 | 一种soc芯片更换自身内部fpga ip程序的方法 |
CN103617056A (zh) * | 2013-11-25 | 2014-03-05 | 广东威创视讯科技股份有限公司 | Fpga逻辑代码的在线升级方法和装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106841973A (zh) * | 2015-12-04 | 2017-06-13 | 深圳市盛德金科技有限公司 | 逻辑测试装置及方法 |
CN106841973B (zh) * | 2015-12-04 | 2023-12-15 | 深圳市盛德金科技有限公司 | 逻辑测试装置及方法 |
CN106445544A (zh) * | 2016-10-08 | 2017-02-22 | 中国科学院微电子研究所 | 一种对可编程逻辑器件进行配置或更新的装置和方法 |
US11294660B2 (en) | 2016-10-08 | 2022-04-05 | Institute of Microelectronics, Chinese Academy of Sciences | Apparatus and method for configuring or updating programmable logic device |
CN106650352A (zh) * | 2016-11-18 | 2017-05-10 | 深圳市博巨兴实业发展有限公司 | 一种基于otp器件的身份认证芯片 |
CN106650352B (zh) * | 2016-11-18 | 2019-12-13 | 深圳市博巨兴微电子科技有限公司 | 一种基于otp器件的身份认证芯片 |
CN109542838A (zh) * | 2018-12-29 | 2019-03-29 | 西安智多晶微电子有限公司 | 一种支持多比特流下载的fpga及其系统 |
CN109542838B (zh) * | 2018-12-29 | 2024-04-30 | 西安智多晶微电子有限公司 | 一种支持多比特流下载的fpga及其系统 |
CN111538260A (zh) * | 2020-04-01 | 2020-08-14 | 深圳市汇顶科技股份有限公司 | 引脚配置方法及装置、多引脚互连互通系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104049995B (zh) | 2017-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104050146A (zh) | 一种微控制单元mcu芯片 | |
CN104049995A (zh) | 在mcu芯片中配置fpga的方法和装置 | |
CN104050068A (zh) | 在mcu芯片中调试fpga的方法和装置 | |
US6603330B1 (en) | Configuring digital functions in a digital configurable macro architecture | |
CN104050067B (zh) | Fpga在mcu芯片中工作的方法和装置 | |
US6765407B1 (en) | Digital configurable macro architecture | |
US20140115229A1 (en) | Method and system to reduce system boot loader download time for spi based flash memories | |
WO2018040016A1 (zh) | 一种协议转换器及协议转换方法 | |
CN107918545A (zh) | 一种基于zynq的远程升级系统及其实现方法 | |
JP2016045954A (ja) | 不揮発制御によるrfモジュール初期化システム及び方法 | |
Shreejith et al. | Dynamic cognitive radios on the Xilinx Zynq hybrid FPGA | |
CN111400983A (zh) | 一种基于fpga动态重配置的波形组件加载实现方法 | |
CN110399328B (zh) | 一种板载图形处理器控制方法与装置 | |
US20190196533A1 (en) | Timing controller based on heap sorting, modem chip including the same, and integrated circuit including the timing controller | |
CN107168744B (zh) | 用于数字信号处理器芯片文件加载的系统及方法 | |
CN103809987A (zh) | 一种soc芯片更换自身内部fpga ip程序的方法 | |
CN108768391B (zh) | 一种基于树莓派和Python语言的频率合成器系统 | |
CN107918443B (zh) | 一种信号生成方法和装置 | |
CN105550010A (zh) | 一种基于SoC的无线智能程序加载方法及系统 | |
CN211015473U (zh) | 一种升级配置逻辑电路、可编程逻辑器件及升级配置系统 | |
CN114722001A (zh) | 一种软件定义模数混合SoC芯片架构 | |
CN110825667B (zh) | 一种低速io设备控制器的设计方法和结构 | |
CN109408151B (zh) | 一种现场可编程门阵列配置模式自动切换装置和切换方法 | |
CN207742661U (zh) | 一种基于wifi的fpga无线升级和智能加载的装置 | |
CN102609289A (zh) | 一种现场可编程门阵列逻辑在线加载的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094 Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd. Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc. |
|
CP03 | Change of name, title or address |