CN108108191A - 一种soc芯片及soc芯片cpu指令集的配置方法 - Google Patents
一种soc芯片及soc芯片cpu指令集的配置方法 Download PDFInfo
- Publication number
- CN108108191A CN108108191A CN201810019761.XA CN201810019761A CN108108191A CN 108108191 A CN108108191 A CN 108108191A CN 201810019761 A CN201810019761 A CN 201810019761A CN 108108191 A CN108108191 A CN 108108191A
- Authority
- CN
- China
- Prior art keywords
- fpga core
- soc chip
- configuration data
- cpu
- embedded type
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000005611 electricity Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000005055 memory storage Effects 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000002224 dissection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Microcomputers (AREA)
Abstract
本申请提供了一种SOC芯片及SOC芯片CPU指令集的配置方法,SOC芯片包括嵌入式CPU和FLASH控制器。其中,FLASH控制器与嵌入式CPU之间设置有配置数据通路,FLASH控制器用于根据来自嵌入式CPU的配置请求信号,获取FPGA核配置数据,将FPGA核配置数据经配置数据通路发送至嵌入式CPU;嵌入式CPU包括FPGA核单元,嵌入式CPU用于发送配置请求信号到FLASH控制器,接收FLASH控制器发送的FPGA核配置数据;FPGA核单元用于根据FPGA核配置数据配置译码电路,配置完成后再开始按正常流程执行指令。本申请提供的SOC芯片及SOC芯片CPU指令集的配置方法,使SOC芯片能够根据FPGA核配置数据配置译码电路,从而根据FPGA核配置数据的更新,升级CPU支持的指令集。
Description
技术领域
本申请芯片设计领域,尤其涉及一种SOC芯片及SOC芯片CPU指令集的配置方法。
背景技术
SOC(System-On-a-Chip,片上系统)芯片是一种系统级集成电路芯片,应用于智能手机、机顶盒、数字电视等。SOC芯片内包含CPU,用于完成整个SOC芯片的计算与控制等功能。在SOC芯片设计阶段,需要根据SOC芯片的应用目标和需求,对SOC芯片CPU的进行设计。
CPU设计方法为首先规定CPU的指令集,并按照应用目标和需求选择合适的微架构,然后再进行硬件电路如译码电路的设计。其中,指令集是指CPU能够支持的单元操作的集合,微架构是对一种给定的指令集架构进行硬件电路实现的设计方法,译码电路是用于对指令集进行翻译的电路。硬件电路设计依据选择的微架构和规定的指令集进行,硬件电路设计完成后,进行芯片流片,使设计层面的硬件电路变成实际电路。
目前,按照上述设计方法得到的SOC芯片,CPU的电路在硬件电路设计阶段已经固定,进行芯片流片后,CPU的译码电路变成实际电路,无法修改。当SOC芯片的应用目标和需求改变时,通常需要对CPU支持的指令集进行扩展升级,而现有的SOC芯片由于译码电路无法更改,译码电路支持的指令集无法改变,因此,只能重新设计新的SOC芯片,耗费大量的时间,也导致设计成本的增加。
发明内容
本申请提供了一种SOC芯片及SOC芯片CPU指令集的配置方法,以解决SOC芯片无法修改指令集的问题。
第一方面,本申请提供了一种SOC芯片,该芯片包括嵌入式CPU和FLASH控制器,其中,所述FLASH控制器与所述嵌入式CPU之间设置有配置数据通路,所述嵌入式CPU包括FPGA核单元。
优选地,所述SOC芯片包括片内FLASH存储器,所述片内FLASH存储器与FLASH控制器连接,所述片内FLASH存储器存储有FPGA核配置数据,所述FPGA核单元根据所述FLASH控制器获取的所述FPGA核配置数据进行配置以及进行指令译码。
优选地,所述SOC芯片包括总线桥,所述总线桥与所述嵌入式CPU连接;
所述嵌入式CPU包括BIU接口单元,所述BIU接口单元与所述FPGA核单元连接,用于从所述总线桥中读取指令,将所述指令发送到所述FPGA核单元;
所述FPGA核单元,用于根据所述译码电路将所述指令进行译码,产生CPU内部ALU单元和流水线的控制信号。
优选地,所述嵌入式CPU包括ALU单元,所述ALU单元与所述FPGA核单元连接,用于根据所述ALU单元的控制信号进行算术运算或逻辑运算。
优选地,所述FLASH控制器与片外FLASH存储器连接,所述片外FLASH存储器包括第一存储单元和第二存储单元,所述第一存储单元用于存储所述FPGA核配置数据,所述第二存储单元用于存储所述SOC芯片的操作系统数据。
优选地,所述SOC芯片包括USB接口、USB控制模块和总线桥,其中,
所述USB接口与所述USB控制模块连接,用于从USB存储器中获取FPGA核配置数据,将所述FPGA核配置数据发送到所述USB控制模块;
所述USB控制模块与总线桥连接,用于接收所述FPGA核配置数据,将所述FPGA核配置数据发送至所述总线桥;
所述总线桥与所述FLASH控制器连接,用于将所述FPGA核配置数据发送至所述FLASH控制器。
第二方面,本申请还提供了一种SOC芯片CPU指令集的配置方法,应用于上述方案任一所述的SOC芯片,包括:
根据上电信号或复位信号生成CPU复位信号和配置请求信号,将所述配置请求信号经配置数据通路发送至FLASH控制器;
接收来自配置数据通路的FPGA核配置数据;
根据所述FPGA核配置数据配置译码电路;
生成配置完成信号,根据所述配置完成信号将所述CPU复位信号的电平转换为无效电平。
优选地,根据上电信号或复位信号生成配置请求信号之前,还包括:
获取FPGA核配置数据,将所述FPGA核配置数据发送至所述FLASH控制器;
判断是否接收到SOC芯片的上电信号或复位信号。
本申请提供的SOC芯片及SOC芯片CPU指令集的配置方法的有益效果包括:
本申请提供的SOC芯片,包括嵌入式CPU和FLASH控制器,FLASH控制器与嵌入式CPU之间设置有配置数据通路,嵌入式CPU包括FPGA核单元。FPGA核单元可根据FPGA核配置数据配置译码电路,当需要对SOC芯片的指令集进行修改、升级时,通过更改FPGA核配置数据,利用FPGA核单元根据更改后的FPGA核配置数据更新译码电路,解决了现有SOC芯片由于译码电路不可更改,导致支持的指令集升无法修改的问题。FLASH控制器从FLASH存储模块获取到的FPGA核配置数据,经配置数据通路发送到嵌入式CPU中的FPGA核单元,解决了SOC芯片在配置阶段CPU取值令模块没有启动,无法通过总线桥读取数据的问题,保障了SOC芯片配置工作的顺利进行。本申请提供的SOC芯片CPU指令集的配置方法,使SOC芯片能够根据FPGA核配置数据配置译码电路,根据FPGA核配置数据的更新,修改译码电路。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种SOC芯片的结构示意图;
图2为本申请实施例提供的一种SOC芯片CPU指令集的配置方法的流程示意图;
图3为本申请实施例提供的另一种SOC芯片CPU指令集的配置方法的流程示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
参见图1,为本申请实施例提供的一种SOC芯片的结构示意图,如图1所示,本申请提供的SOC芯片,包括嵌入式CPU2、FLASH控制器8、FLASH存储模块、总线桥12、USB控制模块9、USB接口11和配置数据通路13。
具体的,在SOC芯片1内,总线桥12是各模块之间的数据通路,例如,USB控制模块9、FLASH控制器8和嵌入式CPU2均与总线桥12连接,通过总线桥12交换各种数据、指令等。
USB控制模块9与USB接口11连接。USB控制模块9用于控制与USB接口11的通信,例如,USB接口11与U盘连接时,USB控制器根据从总线桥12中接收到读取U盘内存储的FPGA(Field-Programmable Gate Array,现场可编程门阵列)核配置数据的指令,通过USB接口11获取FPGA核配置数据,将FPGA核配置数据通过总线桥12发送到FLASH控制器8。
FLASH控制器8与FLASH存储模块连接,FLASH存储模块包括位于SOC芯片内部的片内FLASH存储器6和/或位于SOC芯片外部的片外FLASH存储器7。FLASH控制器8负责控制FLASH存储模块,将FPGA核配置数据存储到片内FLASH存储器6或片外FLASH存储器7。FLASH存储模块还用于存储一些系统数据,本实施例中,可将片内FLASH存储器6的前64个block(区块)划分为第一存储单元,其他区块空间为第二存储单元。第一存储单元用于固定存放FPGA核配置数据,第二存储单元用于存储操作系统数据。当FLASH控制器8需要从片内FLASH存储器6中读取数据时,可直接根据要读取的数据类型,直接寻址第一存储单元或第二存储单元,读取效率高,不易读错数据。当然,如果利用片外FLASH存储器7存储FPGA核配置数据,也可将片外FLASH存储器7划分为两个或多个存储单元,其中一个存储单元用于固定存放FPGA核配置数据,便于FLASH控制器8进行读取。
嵌入式CPU2包括BIU(Bus Interfacing Unit,总线接口单元)接口单元3、FPGA核单元4和ALU(Arithmatic&logic Unit,算数逻辑单元)单元5和其他控制单元。BIU接口单元3负责取指令和数据,根据指令和数据的内容,送给后面一级的流水线如FPGA核单元4进行处理。所述FPGA核单元4用于获取FPGA核配置数据,根据FPGA核配置数据配置FPGA核,得到相应的译码电路。具体的,嵌入式CPU2和FLASH控制器8之间设置有专用的配置数据通路13,具体可为一条能够进行数据传输的电路。嵌入式CPU2发送配置请求信号,配置请求信号通过配置数据通路13到达FLASH控制器8,FLASH控制器8对配置请求信号进行解析处理后从片内FLASH存储器6中的第一存储单元获取FPGA核配置数据,然后将FPGA核配置数据再通过配置数据通路13发送到嵌入式CPU2中的FPGA核单元,FPGA核单元根据FPGA核配置数据重新配置FPGA核,得到相应的译码电路。由于嵌入式CPU2完全启动后,嵌入式CPU2将利用译码电路执行指令,此时无法对译码电路进行配置,因此需要在嵌入式CPU2完全启动之前进行译码电路的配置,但是嵌入式CPU2完全启动之前,嵌入式CPU2的BIU接口单元3没有启动,BIU接口单元3无法利用总线桥12和FLASH控制器8传输指令和数据,本申请实施例在嵌入式CPU2和FLASH控制器8之间建立了专用的配置数据通路13,使得在嵌入式CPU2完全启动之前,FPGA核单元4能够直接利用FLASH控制器8读取到FLASH存储模块内的FPGA核配置数据,解决了无法读取FPGA核配置数据的问题,保障了SOC芯片配置工作的顺利进行。ALU单元5为与FPGA核单元4连接的一个处理单元,与FPGA核单元4连接,用于进行算术运算或逻辑运算。
在读取FPGA核配置数据,将FPGA核单元4配置好以后,FPGA核单元4转换成新的译码电路。此时CPU可开始启动工作。
具体的,BIU接口单元3先从固定的引导地址开始读取第一条指令,这个命令发送到了内存,一般是DRAM颗粒,然后DRAM颗粒内存储的数据送回给DRAM控制器,然后送回给总线桥12,然后送回给嵌入式CPU2中的BIU接口单元3,BIU接口单元3把取到的指令送给译码电路,也就是FPGA核单元4,FPGA核单元4经过译码后得到一个加法指令,那么在这个时钟周期产生一系列的控制信号,启动ALU单元5开始工作,ALU单元5读嵌入式CPU2内的通用寄存器的数据。在下一个时钟周期,ALU单元5将读到的通用寄存器的数据进行加运算。再下一个时钟周期,ALU单元5将加运算得到的结果写回到CPU内的通用寄存器。
为对本申请实施例提供的SOC芯片的译码电路配置方法做进一步说明,本实施例还提供了一种SOC芯片CPU指令集的配置方法,参见图2,为本申请实施例提供的一种SOC芯片CPU指令集的配置方法的流程示意图,如图2所示,本实施例提供的SOC芯片CPU指令集的配置方法具体包括以下步骤:
步骤S100:获取FPGA核配置数据,将所述FPGA核配置数据发送至FLASH控制器。
具体的,SOC芯片在上电以后,嵌入式CPU正常执行时,通过软件程序、USB控制器和USB接口访问SOC芯片外接的U盘U盘中存储有FPGA核配置数据。通过软件程序将从U盘读到的FPGA核配置数据,经USB接口、USB控制器、总线桥到达FLASH控制器,利用FLASH控制器将FPGA核配置数据存入到片内FLASH或片外FLASH中,本实施例中,将FPGA核配置数据存储到片内FLASH。
步骤S101:判断是否接收到SOC芯片的上电信号或复位信号。
具体的,FPGA核配置数据全部存储到片内FLASH后,需要将SOC芯片进行关机或复位。判断是否接收到SOC芯片的上电信号或复位信号,如果接收到了上电信号或复位信号,则进行下一步操作。
步骤S110:根据上电信号或复位信号生成CPU复位信号和配置请求信号,将配置请求信号经配置数据通路发送至FLASH控制器。
具体的,SOC芯片根据上电信号,生成CPU复位信号,嵌入式CPU(具体可为FPGA控制器或其他控制单元,本实施例可选为FPGA控制器)生成配置请求信号,嵌入式CPU的控制部分根据CPU复位信号,产生复位信号高电平,嵌入式CPU将配置请求信号经配置数据通路发送至FLASH控制器。
步骤S120:接收来自配置数据通路的FPGA核配置数据。
具体的,FLASH控制器接收到配置请求信号后,从片内FLASH获取FPGA核配置数据,将FPGA核配置数据经配置数据通路发送至嵌入式CPU,嵌入式CPU对FPGA核配置数据进行接收。
步骤S130:根据所述FPGA核配置数据配置FPGA核,得到相应的译码电路。
具体的,嵌入式CPU根据FPGA核配置数据,配置FPGA核,得到相应的译码电路。由于FPGA单元包含多个可编程逻辑开关,因此,根据不同的FPGA核配置数据可配置成不同的译码电路,当需要扩展SOC芯片的指令集时,只需通过更新FPGA核配置数据,便可配置得到支持拓展指令集的SOC芯片,而无需更换SOC芯片的整个嵌入式CPU。可见,利用FPGA的可重构特性,本申请提供的SOC芯片基于嵌入式FPGA核,在保持CPU微架构不变的前提下,能够在芯片流片以后,方便的对嵌入式CPU所支持的指令集进行修改升级,提供了更好的系统兼容性。
步骤S140:生成配置完成信号,根据所述配置完成信号将所述CPU复位信号的电平转换为无效电平。
嵌入式CPU将译码电路按照FPGA核配置数据配置完成后,生成配置完成信号,发送到嵌入式CPU的控制部分,嵌入式CPU的控制部分根据配置完成信号,将CPU复位信号的电平转换为低电平,即无效电平。此时,SOC芯片的配置工作结束,嵌入式CPU在复位信号为无效电平后启动工作。
进一步的,SOC芯片在CPU启动工作后,工作方式与现有SOC芯片工作方式相同。即BIU接口单元从总线桥开始读取指令和数据,将读取到的指令送给FPGA核单元进行译码。FPGA核单元根据译码的结果,产生不同的控制信号和数据,送给下一级CPU流水线继续执行。这些控制信号和数据例如watchpoint产生的调试控制信号,指令中的立即数,流水线相关的检测信号和流水线暂停的控制信号等。
利用本申请实施例提供的SOC芯片,当不需要对SOC芯片支持的指令集进行扩展时,SOC芯片的工作流程参见图3,为本申请实施例提供的另一种SOC芯片CPU指令集的配置方法的流程示意图。如图3所示,不需要对SOC芯片支持的指令集进行扩展时,SOC芯片的工作流程具体包括以下步骤:
步骤S110:根据上电信号生成CPU复位信号和配置请求信号,将所述配置请求信号经配置数据通路发送至FLASH控制器。
步骤S120:接收来自配置数据通路的FPGA核配置数据。
步骤S130:根据所述FPGA核配置数据配置译码电路。
步骤S140:生成配置完成信号,根据所述配置完成信号将所述CPU复位信号的电平转换为无效电平。
由于以上步骤S110至步骤S140的实施方式是在引用图1、图2并结合进行说明,相同、相似的部分互相参见即可。在此不再详细阐述。
进一步的,SOC芯片在CPU启动工作后,工作方式与现有SOC芯片工作方式相同。即BIU接口单元从总线桥开始读取指令和数据,将读取到的指令送给FPGA核单元进行译码。FPGA核单元根据译码的结果,产生不同的控制信号和数据,送给下一级CPU流水线继续执行。这些控制信号和数据例如watchpoint产生的调试控制信号,指令中的立即数,流水线相关的检测信号和流水线暂停的控制信号等。
因此,当不需要对SOC芯片支持的指令集进行扩展时,嵌入式CPU外部的模块先对嵌入式CPU内的嵌入式FPGA单元进行配置,配置完成后,嵌入式CPU才开始正常的取指、译码、执行过程。
由上述实施例可见,本申请提供的SOC芯片在SOC芯片内集成嵌入式FPGA核,通过嵌入式FPGA核对CPU支持的指令集进行修改或升级。在CPU核内部用嵌入式FPGA核实现CPU的指令译码。上电或复位后,CPU核外部的模块先对CPU核内的嵌入式FPGA核进行配置,配置完成后,CPU才开始正常的取指、译码、执行过程。FLASH控制器读取FLASH存储器内的配置数据后,不通过总线桥,而是通过专用的数据通路,对CPU核内的嵌入式FPGA进行编程配置。当需要对指令集做修改或者升级时,不需要使用新的CPU核来重新设计SOC芯片。只需要对嵌入式FPGA核进行重新配置即可。提供了更好的系统兼容性。若CPU的译码单元设计有错误,不需要重新再进行设计。只需要对嵌入式FPGA核进行重新配置即可。所以采用这种设计能够减小CPU设计的风险。
需要说明的是,在本说明书中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或暗示这些实体或操作之间存在任何这种实际的关系或顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的电路结构、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种电路结构、物品或者设备所固有的要素。在没有更多限制的情况下,有语句“包括一个……”限定的要素,并不排除在包括所述要素的电路结构、物品或者设备中还存在另外的相同要素。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。
Claims (8)
1.一种SOC芯片,其特征在于,包括嵌入式CPU(2)和FLASH控制器(8),其中,所述嵌入式CPU(2)和FLASH控制器(8)之间设置有配置数据通路(13),所述嵌入式CPU(2)包括FPGA核单元(4)。
2.如权利要求1所述的SOC芯片,其特征在于,所述SOC芯片包括片内FLASH存储器(6),所述片内FLASH存储器(6)与FLASH控制器(8)连接,所述片内FLASH存储器(6)存储有FPGA核配置数据,所述FPGA核单元(4)根据所述FLASH控制器(8)获取的所述FPGA核配置数据进行配置以及进行指令译码。
3.如权利要求1所述的SOC芯片,其特征在于,
所述SOC芯片包括总线桥(12),所述总线桥(12)与所述嵌入式CPU(2)连接;
所述嵌入式CPU(2)包括BIU接口单元(3),所述BIU接口单元(3)与所述FPGA核单元(4)连接,用于从所述总线桥(12)中读取指令,将所述指令发送到所述FPGA核单元(4);
所述FPGA核单元(4),用于将所述指令进行译码,产生CPU内部ALU单元和流水线的控制信号。
4.根据权利要求3所述的SOC芯片,其特征在于,所述嵌入式CPU(2)包括ALU单元(5),所述ALU单元(5)与所述FPGA核单元(4)连接,用于根据所述ALU单元的控制信号进行算术运算或逻辑运算。
5.如权利要求1所述的SOC芯片,其特征在于,所述FLASH控制器(8)与片外FLASH存储器连接,所述片外FLASH存储器包括第一存储单元和第二存储单元,所述第一存储单元用于存储所述FPGA核配置数据,所述第二存储单元用于存储所述SOC芯片的操作系统数据。
6.如权利要求1所述的SOC芯片,其特征在于,所述SOC芯片包括USB接口(11)、USB控制模块(9)和总线桥(12),其中,
所述USB接口(11)与所述USB控制模块(9)连接,用于从USB存储器中获取FPGA核配置数据,将所述FPGA核配置数据发送到所述USB控制模块(9);
所述USB控制模块(9)与总线桥(12)连接,用于接收所述FPGA核配置数据,将所述FPGA核配置数据发送至所述总线桥(12);
所述总线桥(12)与所述FLASH控制器(8)连接,用于将所述FPGA核配置数据发送至所述FLASH控制器(8)。
7.一种SOC芯片CPU指令集的配置方法,应用于权利要求1-6任一所述的SOC芯片,其特征在于,包括:
根据上电信号或复位信号生成CPU复位信号和配置请求信号,将所述配置请求信号经配置数据通路发送至FLASH控制器;
接收来自配置数据通路的FPGA核配置数据;
根据所述FPGA核配置数据配置FPGA核,得到相应的译码电路;
生成配置完成信号,根据所述配置完成信号将所述CPU复位信号的电平转换为无效电平。
8.如权利要求7所述的SOC芯片CPU指令集的配置方法,其特征在于,根据上电信号生成配置请求信号之前,还包括:
获取FPGA核配置数据,将所述FPGA核配置数据发送至所述FLASH控制器;
判断是否接收到SOC芯片的上电信号或复位信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810019761.XA CN108108191A (zh) | 2018-01-09 | 2018-01-09 | 一种soc芯片及soc芯片cpu指令集的配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810019761.XA CN108108191A (zh) | 2018-01-09 | 2018-01-09 | 一种soc芯片及soc芯片cpu指令集的配置方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108108191A true CN108108191A (zh) | 2018-06-01 |
Family
ID=62219398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810019761.XA Pending CN108108191A (zh) | 2018-01-09 | 2018-01-09 | 一种soc芯片及soc芯片cpu指令集的配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108108191A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109036259A (zh) * | 2018-08-13 | 2018-12-18 | 深圳市奥拓电子股份有限公司 | Led显示模组及led显示设备 |
CN109542836A (zh) * | 2018-11-05 | 2019-03-29 | 西安智多晶微电子有限公司 | 一种集成双处理器的soc芯片及嵌入式系统 |
CN110297660A (zh) * | 2019-06-25 | 2019-10-01 | 江苏沁恒股份有限公司 | 加速soc内核读取指令的方法及系统 |
CN111104362A (zh) * | 2019-12-24 | 2020-05-05 | 海光信息技术有限公司 | 配置现场可编程门阵列的装置及方法、现场可编程门阵列 |
CN112000360A (zh) * | 2020-08-25 | 2020-11-27 | 山东超越数控电子股份有限公司 | 一种基于动态局部重构的fpga在线升级方法 |
CN114064558A (zh) * | 2020-08-06 | 2022-02-18 | 创耀(苏州)通信科技股份有限公司 | 一种soc芯片 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100122064A1 (en) * | 2003-04-04 | 2010-05-13 | Martin Vorbach | Method for increasing configuration runtime of time-sliced configurations |
CN104699656A (zh) * | 2015-03-19 | 2015-06-10 | 东南大学 | 一种基于fpga的微处理器puf实现系统及其方法 |
US20160055120A1 (en) * | 2002-02-05 | 2016-02-25 | Pact Xpp Technologies Ag | Integrated data processing core and array data processor and method for processing algorithms |
CN105760137A (zh) * | 2016-01-28 | 2016-07-13 | 上海新储集成电路有限公司 | 一种可配置的微控制器内核及其使用方法 |
-
2018
- 2018-01-09 CN CN201810019761.XA patent/CN108108191A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160055120A1 (en) * | 2002-02-05 | 2016-02-25 | Pact Xpp Technologies Ag | Integrated data processing core and array data processor and method for processing algorithms |
US20100122064A1 (en) * | 2003-04-04 | 2010-05-13 | Martin Vorbach | Method for increasing configuration runtime of time-sliced configurations |
CN104699656A (zh) * | 2015-03-19 | 2015-06-10 | 东南大学 | 一种基于fpga的微处理器puf实现系统及其方法 |
CN105760137A (zh) * | 2016-01-28 | 2016-07-13 | 上海新储集成电路有限公司 | 一种可配置的微控制器内核及其使用方法 |
Non-Patent Citations (2)
Title |
---|
PHILIP COLANGELO 等: "Application of Convolutional Neural Networks on Intel® Xeon® Processor with Integrated FPGA", 《2017 IEEE HIGH PERFORMANCE EXTREME COMPUTING CONFERENCE (HPEC)》 * |
惠飞: "《FPGA嵌入式系统开发与实例》", 31 December 2017 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109036259A (zh) * | 2018-08-13 | 2018-12-18 | 深圳市奥拓电子股份有限公司 | Led显示模组及led显示设备 |
CN109036259B (zh) * | 2018-08-13 | 2023-09-26 | 深圳市奥拓电子股份有限公司 | Led显示模组及led显示设备 |
CN109542836A (zh) * | 2018-11-05 | 2019-03-29 | 西安智多晶微电子有限公司 | 一种集成双处理器的soc芯片及嵌入式系统 |
CN110297660A (zh) * | 2019-06-25 | 2019-10-01 | 江苏沁恒股份有限公司 | 加速soc内核读取指令的方法及系统 |
CN111104362A (zh) * | 2019-12-24 | 2020-05-05 | 海光信息技术有限公司 | 配置现场可编程门阵列的装置及方法、现场可编程门阵列 |
CN114064558A (zh) * | 2020-08-06 | 2022-02-18 | 创耀(苏州)通信科技股份有限公司 | 一种soc芯片 |
CN112000360A (zh) * | 2020-08-25 | 2020-11-27 | 山东超越数控电子股份有限公司 | 一种基于动态局部重构的fpga在线升级方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108191A (zh) | 一种soc芯片及soc芯片cpu指令集的配置方法 | |
CN103324498B (zh) | 用于引导裸机计算设备的方法和设备 | |
US20190235858A1 (en) | Apparatus and method for configuring or updating programmable logic device | |
CN104126179B (zh) | 用于多核处理器中的核心间通信的方法和装置 | |
CN103049375B (zh) | 一种摄像头在线调试方法 | |
CN107704285B (zh) | 现场可编程门阵列多版本配置芯片、系统和方法 | |
CN106201563A (zh) | 启动参数的配置方法和装置、主板启动的方法和装置 | |
CN103853586A (zh) | 一种在uefi层实现无线网卡驱动的方法 | |
CN103678187B (zh) | 一种微控制单元及其控制方法 | |
CN109669729A (zh) | 一种处理器的启动引导方法 | |
CN106873970A (zh) | 一种操作系统的安装方法和装置 | |
CN105653330A (zh) | 一种基于SD卡的NorFlash烧写系统和方法 | |
CN108319465A (zh) | 对fpga配置数据进行升级的电路及方法 | |
CN107770299A (zh) | 一种mac地址刷写方法、系统、装置及存储介质 | |
CN102253845B (zh) | 服务器系统 | |
CN104461638B (zh) | 一种基于Bootloader的XFP光模块升级方法 | |
CN108958813A (zh) | 文件系统构建方法、装置及存储介质 | |
CN101788946B (zh) | Cpld上连接有e2prom设备的固件烧结方法及装置 | |
CN102880479B (zh) | 一种远程修改bios属性参数的方法及装置 | |
CN109426511B (zh) | 软核更新方法和系统 | |
CN106201649B (zh) | 用于光模块监控的虚拟机 | |
CN105117370B (zh) | 一种多协议密码算法处理器及片上系统 | |
US8291165B2 (en) | Electronic devices using removable and programmable active processing modules | |
US7680909B2 (en) | Method for configuration of a processing unit | |
CN114186517A (zh) | 一种面向嵌入式场景的可定制化risc-v架构处理器设计方法 |
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: 20180601 |
|
RJ01 | Rejection of invention patent application after publication |