CN104360876B - 一种基于sopc的boot启动与fpga配置方法及装置 - Google Patents
一种基于sopc的boot启动与fpga配置方法及装置 Download PDFInfo
- Publication number
- CN104360876B CN104360876B CN201410568874.7A CN201410568874A CN104360876B CN 104360876 B CN104360876 B CN 104360876B CN 201410568874 A CN201410568874 A CN 201410568874A CN 104360876 B CN104360876 B CN 104360876B
- Authority
- CN
- China
- Prior art keywords
- control unit
- data
- memory cell
- fpga
- fpga configuration
- 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.)
- Active
Links
Abstract
本发明适用于数据传输技术领域,提供了一种基于SOPC的BOOT启动与FPGA配置方法及装置,所示装置包括:主控单元,存储控制单元,第一存储单元,配置单元,数据校错单元和总线控制单元。本发明通过将第一存储单元集成在SOPC内部,减少了整机产品的体积和重量,且在主控单元控制存储控制单元从第一存储单元中读取BOOT启动数据以及FPGA配置数据时,能减少读取数据的时延,有助于降低系统功耗以及改善信号完善性,提升了产品的可靠性;第一存储单元的接口模式和数据读写速率可根据应用场景进行多样化配置,灵活性和适应性强。
Description
技术领域
本发明属于数据通信技术领域,尤其涉及一种基于SOPC芯片的BOOT启动与FPGA配置方法及装置。
背景技术
SOPC(System On a Programmable Chip,可编程片上系统),是用可编程逻辑技术把整个系统放到一片硅片上,以用于嵌入式系统的研究和数据信息处理。SOPC是PLD(Programmable Logic Device,可编程逻辑器件)和ASIC(Application SpecificIntegrated Circuit,专用集成电路)技术融合的结果,是一种软硬件协同设计技术。
由于SOPC集成了处理器核和可编程逻辑,基于应用要求包括了众多的硬核/软核,其BOOT启动和FPGA(Field Programmable Gate Array,现场可编程门阵列)配置比较复杂。现有技术采用片外方式实现基于SOPC的BOOT启动与FPGA配置,例如采用片外闪存(Flash)的方式实现基于SOPC的BOOT启动与FPGA配置。但是,现有的基于SOPC的BOOT启动与FPGA配置的方式时延较大,且额外消耗大量PCB(Printed Circuit Board,印制电路板)面积,造成产品体积和重量的增加,功耗较高,信号完整性(信号通过传输路径后得到的信号质量)较差。
发明内容
本发明实施例的目的在于提供一种基于SOPC的BOOT启动与FPGA配置方法,以解决现有的基于SOPC的BOOT启动与FPGA配置的方式时延较大,且额外消耗大量PCB面积,造成产品体积和重量的增加,功耗较高,信号完整性较差的问题。
本发明实施例是这样实现的,一种基于SOPC的BOOT启动与FPGA配置方法,包括:
可编程片上系统SOPC上电后,主控单元根据外部接口配置第一存储单元的接口模式和读数据频率,所述第一存储单元集成在所述SOPC内部;
所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中;
所述内部存储单元根据所述BOOT启动数据完成BOOT启动;
嵌入式CPU将现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址发送至所述主控单元;
所述嵌入式CPU通过寄存器配置指定数据读写模式;
所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至配置单元中,以完成SOPC内嵌FPGA的配置。
本发明实施例的另一目的在于提供一种基于SOPC的BOOT启动与FPGA配置装置,所述装置包括:主控单元,存储控制单元,第一存储单元和配置单元;所述第一存储单元集成在所述SOPC内部;
所述主控单元,用于在可编程片上系统SOPC上电后,根据外部接口配置第一存储单元的接口模式和读数据频率;控制所述存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中,以使内部存储单元根据所述BOOT启动数据完成BOOT启动;接收嵌入式CPU发送的现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址,控制所述存储控制单元根据所述存放位置和地址以及指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至所述配置单元中,以完成SOPC内嵌FPGA的配置,所述指定数据读写模式由所述嵌入式CPU通过寄存器配置;
所述存储控制单元,用于以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据;根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据;
所述第一存储单元,用于存储所述BOOT启动数据和所述FPGA配置数据;
所述配置单元,用于根据所述FPGA配置数据完成SOPC内嵌FPGA的配置。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过将第一存储单元集成在SOPC内部,减少了整机产品的体积和重量,增加了SOPC在PCB上布局布线的灵活性,进而降低了产品成本;由于第一存储单元集成在SOPC内部,因此在主控单元控制存储控制单元从第一存储单元中读取BOOT启动数据以及FPGA配置数据时,能减少读取数据的时延,有助于降低系统功耗以及改善信号完善性,提升了产品的可靠性;嵌入式CPU可通过寄存器配置SOPC的系统工作频率,例如第一存储单元的接口模式以及FPGA配置数据的写入频率和回读频率,由此可根据需要来进行系统工作频率的配置,灵活性和适应性强。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于SOPC的BOOT启动与FPGA配置方法的实现流程图;
图2是本发明另一实施例提供的基于SOPC的BOOT启动与FPGA配置方法的实现流程图;
图3是本发明实施例提供的基于SOPC的BOOT启动与FPGA配置装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过将第一存储单元集成在SOPC内部,减少了整机产品的体积和重量,增加了SOPC在PCB上布局布线的灵活性,进而降低了产品成本;由于第一存储单元集成在SOPC内部,因此在主控单元控制存储控制单元从第一存储单元中读取BOOT启动数据以及FPGA配置数据时,能减少读取数据的时延,有助于降低系统功耗以及改善信号完善性,提升了产品的可靠性;嵌入式CPU可通过寄存器配置SOPC的系统工作频率,例如第一存储单元的接口模式以及FPGA配置数据的写入频率和回读频率,由此可根据需要来进行系统工作频率的配置,灵活性和适应性强。
图1示出了本发明实施例提供的基于SOPC的BOOT启动与FPGA配置方法的实现流程图,详述如下:
在步骤S101中,可编程片上系统SOPC上电后,主控单元根据外部接口配置第一存储单元的接口模式和读数据频率,所述第一存储单元集成在所述SOPC内部。
在本发明实施例中,系统上电后,主控单元向嵌入式CPU(Central ProcessingUnit,中央处理器)发出一个复位(RESET)信号,并保持该复位信号,使嵌入式CPU初始化。嵌入式CPU初始化包括将嵌入式CPU内部的寄存器和各引脚置为初始状态。在主控单元保持复位信号的过程中,嵌入式CPU不执行指令,当主控单元释放复位信号后,嵌入式CPU才开始执行指令。需要说明的是,系统上电后,主控单元的工作频率一般为50Mhz。
第一存储单元集成在SOPC内部,第一存储单元中存储有BOOT启动数据和FPGA配置数据。第一存储单元可以为串行快闪存储器,如SPI Flash(Serial Peripheral InterfaceFlash,串行外围接口闪存)。SPI Flash可支持1线、2线和4线三种接口模式。第一存储单元还可以为并行快闪存储器,如NAND Flash(与非闪存)或NOR Flash(或非闪存)。
由于第一存储单元集成在SOPC内部,因此节约了PCB面积,减少了整机产品的体积和重量,且增加了SOPC在PCB上布局布线的灵活性,进而降低了产品成本。此外,由于第一存储单元集成在SOPC内部,缩短了第一存储单元与SOPC内部其它单元之间的信号传递时延,有助于降低功耗。
需要说明的是,若第一存储单元在SOPC外部,会增加板级的走线,对于其它信号存在可能的电磁干扰和信号串扰等影响,而且会加剧板级信号走线的空间紧张性。本发明实施例通过将第一存储单元集成在SOPC内部,避免了板级的走线,对于产品的板级信号完整性有很大改善,从而提高了该基于SOPC的BOOT启动与FPGA配置方法及产品的可靠性。
以第一存储单元为SPI Flash为例,接口模式包括1线、2线和4线。第一存储单元的读数据频率与接口模式和第一存储单元的工作频率相关。例如,若SPI Flash的工作频率为100Mhz,则1线接口模式对应的读数据频率为100Mbit/s,2线接口模式对应的读数据频率为200Mbit/s,4线接口模式对应的读数据频率为400Mbit/s。在本发明实施例中,主控单元根据外部接口配置第一存储单元的接口模式和读数据频率。
在步骤S102中,所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中。
在存储控制单元将BOOT启动数据从第一存储单元读取至内部存储单元中读取完成后,主控单元输出读取完成标志信号,以释放复位信号。复位信号释放后,嵌入式CPU开始正常工作。
在步骤S103中,所述内部存储单元根据所述BOOT启动数据完成BOOT启动。
在步骤S104中,嵌入式CPU将现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址发送至所述主控单元。
需要说明的是,第一存储单元可能包括多个存储器,第一存储单元中的存储器均集成在SOPC内部。在这里,存储位置表明FPGA配置数据具体存放在第一存储单元中的哪个存储器中,地址表明FPGA配置数据在该存储器中的起始地址。
在步骤S105中,所述嵌入式CPU通过寄存器配置指定数据读写模式。
优选地,所述嵌入式CPU所述寄存器配置指定数据读写模式包括:
所述嵌入式CPU通过所述寄存器配置所述第一存储单元的接口模式、读数据频率和写数据频率;和/或
所述嵌入式CPU通过所述寄存器配置所述配置单元对所述FPGA配置数据的写入频率和回读频率。
在本发明实施例中,第一存储单元的接口模式、读数据频率和写数据频率可由嵌入式CPU通过寄存器配置,FPGA配置数据的写入频率和回读频率也可由嵌入式CPU通过寄存器配置。可选地,总线控制单元访问片外存储设备的时钟频率也可配置。由此可根据需求和数据块的大小来灵活配置,适应性、灵活性和通用性强。可选地,总线控制单元采用AMBA(Advanced Microcontroller Bus Architecture,高级微控制器总线架构)以及DMA(Direct Memory Access,直接内存存取)系统总线接口。
需要说明的是,本发明实施例中不对步骤S104和步骤S105的执行顺序作限定。在本发明实施例中,可先执行步骤S104,再执行步骤S105;也可先执行步骤S105,再执行步骤S104。
在步骤S106中,所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至配置单元中,以完成SOPC内嵌FPGA的配置。
存储控制单元根据FPGA配置数据在第一存储单元中的存放位置和地址,以及指定数据读写模式中第一存储单元的接口模式和读数据频率从第一存储单元中读取FPGA配置数据,并根据指定数据读写模式中配置单元对FPGA配置数据的写入频率将FPGA配置数据搬移到配置单元中的TX FIFO(Transport First In First Out,发送方向的先入先出队列),以完成SOPC内嵌FPGA的配置。在FPGA配置结束后,配置单元返回FPGA配置结束标志信号至总线控制单元。
优选地,在步骤S102中所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中之后,所述方法还包括:
数据校错单元对从所述第一存储单元读取的所述BOOT启动数据进行数据校验;
在步骤S106所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据之后,所述方法还包括:
所述数据校错单元对从所述第一存储单元读取的所述FPGA配置数据进行数据校验。
由于第一存储单元长时间存储BOOT启动数据和FPGA配置数据可能出现位错误。因此,作为本发明的一个实施例,通过数据校错单元对从第一存储单元中读取的BOOT启动数据和FPGA配置数据进行数据校验。
优选地,所述方法还包括:
所述主控单元控制所述存储控制单元根据所述起始地址从所述第一存储单元中读取所述FPGA配置数据至总线控制单元上挂载的第一预设地址空间。
总线控制单元上可挂载各种高速或低速通用接口设备,例如,UART、CAN、LVDS、SPI、1553B或429等。主控控制单元可以控制存储控制单元将第一存储单元中的FPGA配置数据读取至总线控制单元上挂载的第一预设地址空间,还可以控制存储控制单元将第一存储单元中的BOOT启动数据读取至总线控制单元上挂载的第三预设地址空间,以对FPGA配置数据以及BOOT启动数据进行备份。
图2示出了本发明另一实施例提供的基于SOPC的BOOT启动与FPGA配置方法的实现流程图,为了便于说明,仅示出了与本实施例相关的部分。参照图2:
在步骤S201中,可编程片上系统SOPC上电后,主控单元根据外部接口配置第一存储单元的接口模式和读数据频率,所述第一存储单元集成在所述SOPC内部;
在步骤S202中,所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中;
在步骤S203中,所述内部存储单元根据所述BOOT启动数据完成BOOT启动;
在步骤S204中,嵌入式CPU将现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址发送至所述主控单元;
在步骤S205中,所述嵌入式CPU通过寄存器配置指定数据读写模式;
在步骤S206中,所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至配置单元中,以完成SOPC内嵌FPGA的配置;
在步骤S207中,所述配置单元判断FPGA是否配置成功;
在步骤S208中,若所述配置单元判定FPGA配置成功,则返回FPGA配置状态信号至所述总线控制单元;
在步骤S209中,若所述配置单元判定FPGA配置失败,则回读所述FPGA配置数据至所述总线控制单元上挂载的第二预设地址空间,并将所述第二预设地址空间中的FPGA配置数据与第一预设地址空间中的FPGA配置数据进行比对,以进行FPGA数据校验。
其中,步骤S201至步骤S306与步骤S101至步骤S106一一对应,在此不再赘述。
作为本发明的一个实施例,配置单元对FPGA配置完成后,判断FPGA是否配置成功。若FPGA配置成功,则返回FPGA配置成功的信号至总线控制单元。若FPGA配置失败,则通过配置单元中的RX FIFO(Receive First In First Out,接收方向的先入先出队列)回读写入FPGA的FPGA配置数据至总线控制单元,并将回读数据写入总线控制单元上挂载的第二预设地址空间。总线控制单元将第二预设地址空间中的FPGA配置数据与第一预设地址空间中的FPGA配置数据进行比对,以进行FPGA数据校验。
本发明实施例通过将第一存储单元集成在SOPC内部,减少了整机产品的体积和重量,增加了SOPC在PCB上布局布线的灵活性,进而降低了产品成本;由于第一存储单元集成在SOPC内部,因此在主控单元控制存储控制单元从第一存储单元中读取BOOT启动数据以及FPGA配置数据时,能减少读取数据的时延,有助于降低系统功耗以及改善信号完善性,提升了产品的可靠性;嵌入式CPU可通过寄存器配置SOPC的系统工作频率,例如第一存储单元的接口模式以及FPGA配置数据的写入频率和回读频率,由此可根据需要来进行系统工作频率的配置,灵活性和适应性强。
图3示出了本发明实施例提供的基于SOPC的BOOT启动与FPGA配置装置的结构框图,该装置可以用于运行图1和图2所述的基于SOPC的BOOT启动与FPGA配置方法。为了便于说明,仅示出了与本实施例相关的部分。
参照图3,该装置包括主控单元31、存储控制单元32,第一存储单元33,配置单元34;所述装置还可以包括数据校错单元35以及总线控制单元36。该装置各部分的连接关系如图3所示。该装置还可以包括挂载在总线控制单元36上的各种高速或低速通用接口设备,例如,UART、CAN、LVDS、SPI、1553B或429等。其中,第一存储单元33集成在SOPC内部。
所述主控单元31,用于在可编程片上系统SOPC上电后,根据外部接口配置第一存储单元33的接口模式和读数据频率;控制所述存储控制单元32以所述外部接口配置的接口模式和读数据频率从所述第一存储单元33中读取BOOT启动数据至内部存储单元中,以使内部存储单元根据所述BOOT启动数据完成BOOT启动;接收嵌入式CPU发送的现场可编程门阵列FPGA配置数据在所述第一存储单元33中的存放位置和地址,控制所述存储控制单元32根据所述存放位置和地址以及指定数据读写模式从所述第一存储单元33读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至所述配置单元34中,以完成SOPC内嵌FPGA的配置,所述指定数据读写模式由所述嵌入式CPU通过寄存器配置;
所述存储控制单元32,用于以所述外部接口配置的接口模式和读数据频率从所述第一存储单元33中读取BOOT启动数据;根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元33读取FPGA配置数据;
所述第一存储单元33,用于存储所述BOOT启动数据和所述FPGA配置数据;
所述配置单元34,用于根据所述FPGA配置数据完成SOPC内嵌FPGA的配置。
优选地,所述指定数据读写模式包括:
所述第一存储单元33的接口模式、读数据频率和写数据频率;和/或
所述配置单元34对所述FPGA配置数据的写入频率和回读频率。
优选地,所述装置还包括数据校错单元35,所述数据校错单元35用于:
对从所述第一存储单元33读取的所述BOOT启动数据进行数据校验;以及
对从所述第一存储单元33读取的所述FPGA配置数据进行数据校验。
进一步地,所述装置还包括总线控制单元36;
所述主控单元31具体用于:
控制所述存储控制单元32根据所述存放位置和地址从所述第一存储单元33中读取所述FPGA配置数据至所述总线控制单元36上挂载的第一预设地址空间。
优选地,所述配置单元34还用于:
判断FPGA是否配置成功;
若判定FPGA配置成功,则返回FPGA配置状态信号至所述总线控制单元36;
若判定FPGA配置失败,则回读所述FPGA配置数据至所述总线控制单元36上挂载的第二预设地址空间,并将所述第二预设地址空间中的FPGA配置数据与所述第一预设地址空间中的FPGA配置数据进行比对,以进行FPGA数据校验。
本发明实施例通过将第一存储单元集成在SOPC内部,减少了整机产品的体积和重量,增加了SOPC在PCB上布局布线的灵活性,进而降低了产品成本;由于第一存储单元集成在SOPC内部,因此在主控单元控制存储控制单元从第一存储单元中读取BOOT启动数据以及FPGA配置数据时,能减少读取数据的时延,有助于降低系统功耗以及改善信号完善性,提升了产品的可靠性;嵌入式CPU可通过寄存器配置SOPC的系统工作频率,例如第一存储单元的接口模式以及FPGA配置数据的写入频率和回读频率,由此可根据需要来进行系统工作频率的配置,灵活性和适应性强。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于SOPC的BOOT启动与FPGA配置方法,其特征在于,包括以下步骤:
可编程片上系统SOPC上电后,主控单元根据外部接口配置第一存储单元的接口模式和读数据频率,所述第一存储单元集成在所述SOPC内部,同时,所述主控单元向嵌入式CPU发出一个复位信号,并保持所述复位信号,使所述嵌入式CPU初始化;
所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中,在所述存储控制单元将所述BOOT启动数据从所述第一存储单元读取至所述内部存储单元中读取完成后,所述主控单元输出读取完成标志信号,以释放所述复位信号,所述复位信号释放后,所述嵌入式CPU开始正常工作;
所述内部存储单元根据所述BOOT启动数据完成BOOT启动;
嵌入式CPU将现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址发送至所述主控单元;
所述嵌入式CPU通过寄存器配置指定数据读写模式;
所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至配置单元中,以完成SOPC内嵌FPGA的配置。
2.如权利要求1所述的方法,其特征在于,所述嵌入式CPU通过寄存器配置指定数据读写模式包括:
所述嵌入式CPU通过所述寄存器配置所述第一存储单元的接口模式、读数据频率和写数据频率;和/或
所述嵌入式CPU通过所述寄存器配置所述配置单元对所述FPGA配置数据的写入频率和回读频率。
3.如权利要求1所述的方法,其特征在于,在所述主控单元控制存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中之后,所述方法还包括:
数据校错单元对从所述第一存储单元读取的所述BOOT启动数据进行数据校验;
在所述主控单元控制所述存储控制单元根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据之后,所述方法还包括:
所述数据校错单元对从所述第一存储单元读取的所述FPGA配置数据进行数据校验。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述主控单元控制所述存储控制单元根据所述存放位置和地址从所述第一存储单元中读取所述FPGA配置数据至总线控制单元上挂载的第一预设地址空间。
5.如权利要求4所述的方法,其特征在于,在所述主控单元控制所述存储控制单元根据所述指定数据读写模式将所述FPGA配置数据写至配置单元中之后,所述方法还包括:
所述配置单元判断FPGA是否配置成功;
若所述配置单元判定FPGA配置成功,则返回FPGA配置状态信号至所述总线控制单元;
若所述配置单元判定FPGA配置失败,则回读所述FPGA配置数据至所述总线控制单元上挂载的第二预设地址空间,并将所述第二预设地址空间中的FPGA配置数据与所述第一预设地址空间中的FPGA配置数据进行比对,以进行FPGA数据校验。
6.一种基于SOPC的BOOT启动与FPGA配置装置,其特征在于,所述装置包括:主控单元,存储控制单元,第一存储单元和配置单元;所述第一存储单元集成在所述SOPC内部;
所述主控单元,用于在可编程片上系统SOPC上电后,根据外部接口配置第一存储单元的接口模式和读数据频率,同时,用于向嵌入式CPU发出一个复位信号,并保持所述复位信号,使所述嵌入式CPU初始化;控制所述存储控制单元以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据至内部存储单元中,以使内部存储单元根据所述BOOT启动数据完成BOOT启动,并在所述存储控制单元将所述BOOT启动数据从所述第一存储单元读取至所述内部存储单元中读取完成后,所述主控单元输出读取完成标志信号,以释放所述复位信号,所述复位信号释放后,所述嵌入式CPU开始正常工作;接收嵌入式CPU发送的现场可编程门阵列FPGA配置数据在所述第一存储单元中的存放位置和地址,控制所述存储控制单元根据所述存放位置和地址以及指定数据读写模式从所述第一存储单元读取FPGA配置数据,并根据所述指定数据读写模式将所述FPGA配置数据写至所述配置单元中,以完成SOPC内嵌FPGA的配置,所述指定数据读写模式由所述嵌入式CPU通过寄存器配置;
所述存储控制单元,用于以所述外部接口配置的接口模式和读数据频率从所述第一存储单元中读取BOOT启动数据;根据所述存放位置和地址以及所述指定数据读写模式从所述第一存储单元读取FPGA配置数据;
所述第一存储单元,用于存储所述BOOT启动数据和所述FPGA配置数据;
所述配置单元,用于根据所述FPGA配置数据完成SOPC内嵌FPGA的配置。
7.如权利要求6所述的装置,其特征在于,所述指定数据读写模式包括:
所述第一存储单元的接口模式、读数据频率和写数据频率;和/或
所述配置单元对所述FPGA配置数据的写入频率和回读频率。
8.如权利要求6所述的装置,其特征在于,所述装置还包括数据校错单元,所述数据校错单元用于:
对从所述第一存储单元读取的所述BOOT启动数据进行数据校验;以及
对从所述第一存储单元读取的所述FPGA配置数据进行数据校验。
9.如权利要求6所述的装置,其特征在于,所述装置还包括总线控制单元;
所述主控单元具体用于:
控制所述存储控制单元根据所述存放位置和地址从所述第一存储单元中读取所述FPGA配置数据至所述总线控制单元上挂载的第一预设地址空间。
10.如权利要求9所述的装置,其特征在于,所述配置单元还用于:
判断FPGA是否配置成功;
若判定FPGA配置成功,则返回FPGA配置状态信号至所述总线控制单元;
若判定FPGA配置失败,则回读所述FPGA配置数据至所述总线控制单元上挂载的第二预设地址空间,并将所述第二预设地址空间中的FPGA配置数据与所述第一预设地址空间中的FPGA配置数据进行比对,以进行FPGA数据校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410568874.7A CN104360876B (zh) | 2014-10-22 | 2014-10-22 | 一种基于sopc的boot启动与fpga配置方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410568874.7A CN104360876B (zh) | 2014-10-22 | 2014-10-22 | 一种基于sopc的boot启动与fpga配置方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104360876A CN104360876A (zh) | 2015-02-18 |
CN104360876B true CN104360876B (zh) | 2017-10-31 |
Family
ID=52528140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410568874.7A Active CN104360876B (zh) | 2014-10-22 | 2014-10-22 | 一种基于sopc的boot启动与fpga配置方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104360876B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10260877B2 (en) * | 2015-02-26 | 2019-04-16 | Stmicroelectronics, Inc. | Reconfigurable sensor unit for electronic device |
CN105515568A (zh) * | 2015-12-04 | 2016-04-20 | 深圳市同创国芯电子有限公司 | 基于flash的fpga配置控制方法、装置、flash以及fpga |
CN111666105B (zh) * | 2019-03-08 | 2021-07-16 | 中国科学院长春光学精密机械与物理研究所 | 一种基于dsp与fpga的程序存储与引导系统及方法 |
CN116610631B (zh) * | 2023-07-21 | 2023-09-26 | 西安智多晶微电子有限公司 | 支持多片SPI Flash访问的FPGA启动配置方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101072073A (zh) * | 2007-07-17 | 2007-11-14 | 武汉烽火网络有限责任公司 | 一种新型自定义以太网光电接口性能测试的方法及装置 |
CN101839974A (zh) * | 2010-05-05 | 2010-09-22 | 北京航空航天大学 | 一种双接口雷达数据记录仪 |
CN101923524A (zh) * | 2010-08-04 | 2010-12-22 | 苏州国芯科技有限公司 | 一种基于clb总线的存储器接口方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8854966B2 (en) * | 2008-01-10 | 2014-10-07 | Apple Inc. | Apparatus and methods for network resource allocation |
US10498623B2 (en) * | 2012-06-27 | 2019-12-03 | Ubiquiti Inc. | Method and apparatus for monitoring and processing sensor data using a sensor-interfacing device |
-
2014
- 2014-10-22 CN CN201410568874.7A patent/CN104360876B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101072073A (zh) * | 2007-07-17 | 2007-11-14 | 武汉烽火网络有限责任公司 | 一种新型自定义以太网光电接口性能测试的方法及装置 |
CN101839974A (zh) * | 2010-05-05 | 2010-09-22 | 北京航空航天大学 | 一种双接口雷达数据记录仪 |
CN101923524A (zh) * | 2010-08-04 | 2010-12-22 | 苏州国芯科技有限公司 | 一种基于clb总线的存储器接口方法 |
Non-Patent Citations (2)
Title |
---|
适于OMAP的多级启动Boot Loader;黄建尧 等;《微型机与应用》;20100228(第2期);第11-14页 * |
适用于空间环境下的FPGA容错与重构体系;徐斌 等;《计算机工程》;20070228;第33卷(第3期);第231页左栏,第232页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104360876A (zh) | 2015-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104360876B (zh) | 一种基于sopc的boot启动与fpga配置方法及装置 | |
CN105474319B (zh) | 用于配置混合存储器模块的存储器的i/o的设备及方法 | |
CN103635968B (zh) | 包含存储器系统控制器的设备和相关方法 | |
CN108369563B (zh) | 用于共享总线上多个装置的数据传输的设备与方法 | |
TWI540583B (zh) | 用於具有非揮發性記憶體之一系統的電力預算的動態分配 | |
CN106104698B (zh) | 用于产生具有可编程延迟的动态随机存取存储器(dram)命令的存储器物理层接口逻辑 | |
CN104981873B (zh) | 在发送写入数据到存储器的同时从存储器读取数据的系统和方法 | |
US10310734B2 (en) | Tier mode for access operations to 3D memory | |
US10552047B2 (en) | Memory system | |
KR101487181B1 (ko) | 시스템 온 칩 내에 독립 로직 블록의 통합 | |
CN104700894B (zh) | 存储卡和与存储卡通信的接口电路 | |
CN104217768B (zh) | 一种eMMC内嵌式存储器的检测方法和装置 | |
CN102063939B (zh) | 一种电可擦除可编程只读存储器的实现方法和装置 | |
CN209168746U (zh) | 一种基于fpga的通用闪存测试系统 | |
CN109960679A (zh) | 用于控制多点互连的时钟信号的占空比的系统、装置和方法 | |
CN109753458A (zh) | 包括多数据速率存储器设备的存储设备以及存储器控制器 | |
CN109411007A (zh) | 一种基于fpga的通用闪存测试系统 | |
CN104409099B (zh) | 基于FPGA的高速eMMC阵列控制器 | |
US9037842B2 (en) | Booting in systems having devices coupled in a chained configuration | |
CN102053937A (zh) | 在lpc总线中调用spi接口的闪存的方法及系统 | |
JP2023505261A (ja) | メモリと分散計算アレイとの間のデータ転送 | |
CN101165710A (zh) | 智能卡以及测试智能卡的方法 | |
CN105788639B (zh) | 基于eMMC的雷达数据记录仪断电续存装置及续存方法 | |
CN108459876A (zh) | 用于缩减面积的控制寄存器电路的方法与装置 | |
CN107479938A (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 | ||
GR01 | Patent grant |