一种集成电路计算设备及计算处理系统

文档序号:1310766 发布日期:2020-07-10 浏览:14次 >En<

阅读说明:本技术 一种集成电路计算设备及计算处理系统 (Integrated circuit computing device and computing processing system ) 是由 古生霖 王黎明 孟智凯 贾红 陈维新 韦嶔 程显志 于 2020-02-19 设计创作,主要内容包括:本发明公开了一种集成电路计算设备,包括:第一处理模块,用于接收并处理RISC-V指令集指令,其中所述RISC-V指令集指令包括基本指令、扩展指令以及自定义指令;第二处理模块,其包括软核协处理器,所述软核协处理器通过第一接口连接所述第一处理模块,用于处理所述第一处理模块发送的所述自定义指令;第一总线,连接所述第一处理模块和所述第二处理模块;以及连接所述第一处理模块的第一端口和连接所述第二处理模块的第二端口。本发明通过在FPGA芯片中嵌入RISC-V架构硬核处理器,并在FPGA芯片的可编程部分设计了软核协处理器,使得FPGA芯片开发人员可以根据需要灵活的对处理器内核进行调整,从而增强了FPGA芯片的计算能力且保证设备面积小、功耗低、制造成本低。(The invention discloses an integrated circuit computing device, comprising: the first processing module is used for receiving and processing RISC-V instruction set instructions, wherein the RISC-V instruction set instructions comprise basic instructions, extended instructions and custom instructions; the second processing module comprises a soft core coprocessor, the soft core coprocessor is connected with the first processing module through a first interface and is used for processing the self-defined instruction sent by the first processing module; a first bus connecting the first processing module and the second processing module; and a first port connected to the first processing module and a second port connected to the second processing module. According to the invention, the RISC-V architecture hard core processor is embedded in the FPGA chip, and the soft core coprocessor is designed in the programmable part of the FPGA chip, so that the FPGA chip developer can flexibly adjust the processor core as required, thereby enhancing the computing capability of the FPGA chip and ensuring small equipment area, low power consumption and low manufacturing cost.)

一种集成电路计算设备及计算处理系统

技术领域

本发明属于系统级芯片设计领域,具体涉及一种集成电路计算设备及计算处理系统。

背景技术

目前,在FPGA(Field Programmable Gate Array,现场可编程门阵列)设计中,通常会内嵌处理器硬核或软核,即在FPGA芯片内部嵌入处理器的ASIC(ApplicationSpecific Integrated Circuit,专用集成电路)电路或者以HDL(Hardware DescriptionLanguage,硬件描述语言)程序代码的方式在FPGA的可编程逻辑上实现一个处理器。

然而,内嵌处理器硬核的FPGA均为ARM(Advanced RISC Machine,进阶精简指令集机器)、PowerPC等商用IP核,使用商用IP会使FPGA用户的使用成本大为增高,一方面是FPGA本身的造价增高,另一方面当用户要将FPGA上的设计转为ASIC(Application SpecificIntegrated Circuit,专用集成电路)设计时,仍需付出额外的IP使用费用;其次,大多商用IP核(Intellectual Property core)的内部设计细节是不可见的,这对部分要求芯片完全安全可控的应用场景(如国防军工等保密场景)是无法满足需求的;第三,商用IP的设计灵活性差,一方面处理器的指令集是固定的,用户无法添加自定义指令来优化产品性能;另一方面,一旦选定了某一款IP核,后续产品升级时会受到IP能力的限制。而使用软核的FPGA由于在软核实现时需要占用FPGA上的逻辑资源,并且相对硬核来说占用的功耗大、面积大、计算能力较低,因此无法满足高精度、高实时性的应用需求,实用性较差。

发明内容

为了解决现有技术中存在的上述问题,本发明提供了一种集成电路计算设备及计算处理系统。本发明要解决的技术问题通过以下技术方案实现:

本发明实施例提供了一种集成电路计算设备,包括:

第一处理模块,用于接收并处理RISC-V指令集指令,其中所述RISC-V指令集指令包括基本指令、扩展指令以及自定义指令;

第二处理模块,其包括软核协处理器,所述软核协处理器通过第一接口连接所述第一处理模块,用于处理所述第一处理模块发送的所述自定义指令;

第一总线,连接所述第一处理模块和所述第二处理模块;以及

连接所述第一处理模块的第一端口和连接所述第二处理模块的第二端口。

在一个

具体实施方式

中,所述第一处理模块包括:RISC-V指令集处理器,存储单元、外设扩展单元;

所述RISC-V指令集处理器通过第一总线互联所述存储单元和所述外设扩展单元,所述RISC-V指令集处理器还通过所述第一接口连接所述软核协处理器。

在一个具体实施方式中,所述第一接口包括:

内核控制组信号,包括所述RISC-V指令集处理器向所述软核协处理器发送和接收的控制信号或状态信号;

指令寄存器组信号,包括所述RISC-V指令集处理器向所述软核协处理器发送的指令信号和接收的响应信号;

存储器组信号,包括所述RISC-V指令集处理器的缓存向所述软核协处理器发送和接收的数据信号;

自定义组信号,包括所述RISC-V指令集处理器向所述软核协处理器发送的自定义指令信号和接收的响应信号。

在一个具体实施方式中,所述设备还包括:

连接所述第一处理模块的第一调试端口,以及连接所述第二处理模块的第二调试端口。

在一个具体实施方式中,所述第一处理模块还包括:第一测试访问接口,连接所述RISC-V指令集处理器和所述第一调试端口。

在一个具体实施方式中,所述第一测试访问接口为JTAG接口。

在一个具体实施方式中,所述第二处理模块包括:

可编程逻辑门阵列、配置块以及第二测试访问接口,所述可编程逻辑门阵列连接所述配置块,所述配置块连接所述第二测试访问接口,所述第二测试访问接口连接所述第二调试端口。

在一个具体实施方式中,所述第二测试访问接口为JTAG接口。

在一个具体实施方式中,所述第一总线接口协议包括AMBA协议或TileLink协议。

在一个具体实施方式中,RISC-V指令集处理器包括CPU、GPU、DSP或硬件加速器。

本发明实施例同时提供一种计算处理系统,包括主机,还包括耦合到所述主机上的上述集成电路计算设备。

与现有技术相比,本发明的有益效果:

本发明实施例通过在FPGA芯片中嵌入RISC-V架构硬核处理器,并在FPGA芯片的可编程部分设计了软核协处理器,该协处理器可以帮助RISC-V硬核处理器实现RISC-V指令集的标准扩展指令集和自定义扩展指令,使得FPGA芯片开发人员可以根据需要灵活的对处理器内核进行调整,从而增强了FPGA芯片的计算能力且保证设备面积小、功耗低、制造成本低。

附图说明

图1为本发明实施例提供的一种集成电路计算设备模块框图;

图2为本发明实施例提供的一种集成电路计算设备设计原理图;

图3为本发明实施例提供的一种集成电路计算设备的第一接口设计原理图;

图4为本发明实施例提供的一种集成电路计算设备第一接口信号具体示例图。

具体实施方式

下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。

实施例一

请参见图1,图1为本发明实施例提供的一种集成电路计算设备模块框图,包括:

第一处理模块1,用于接收并处理RISC-V指令集指令,其中所述RISC-V指令集指令包括基本指令、扩展指令以及自定义指令;

第二处理模块2,其包括软核协处理器21,所述软核协处理器21通过第一接口31连接所述第一处理模块1,用于处理所述第一处理模块1发送的所述自定义指令;

第一总线3,连接所述第一处理模块1和所述第二处理模块2;以及

连接所述第一处理模块1的第一端口4和连接所述第二处理模块2的第二端口5。

RISC-V是一种最近数年兴起的开源指令集架构,RISC-V完全开源,架构简洁,性能优越,提升空间大且具有完整的工具链,RISC-V处理器的架构可以根据不同应用灵活调整,例如可以在RISC-V的RV32I基本指令集上增添乘法指令集(RV32M)、单精度浮点运算指令集(RV32F)和双精度浮点运算指令集(RV32D)等。根据用户软件程序的需要,硬件可以包含或不包含这些扩展。RISC-V编译器得知当前硬件包含哪些扩展后,便可以生成当前硬件条件下的最佳代码。除了标准的扩展指令集之外,本申请还向指令集中添加了自定义指令。

其中第一处理模块即为核心处理器使用RISC-V指令集的片上系统,可以是CPUBlock,内部集成有RISC-V指令集处理器硬核。第二处理模块为FPGA Block,并以FPGA软核形式实现协处理器。

本发明利用RISC-V指令集这一灵活性的特点,提出了RISC-V硬核主处理器+FPGA可编程软核协处理器这一架构:RISC-V硬核主处理器负责基础指令集和部分标准扩展指令集相关的操作,以FPGA软核形式实现的协处理器则负责其它用户需要的标准扩展指令集或自定义指令相关的操作。该架构既考虑到采用硬核实现的形式提高处理器核心性能,又兼顾到处理器针对不同领域(例如深度学习,增强现实,组合优化,图形等)的硬件加速的兼容。与此同时,本发明还提出了一种FPGA内部RISC-V硬核处理器和软核协处理器之间的接口。

当然,在其他实施方式中,第一处理模块中的处理器还可以是GPU、DSP或硬件加速器等采用RISC-V架构的电路。

首先,在成本方面RISC-V指令集的精简与灵活的特性,能使单颗芯片面积显著降低,从而降低材料成本。其次,RISC-V是完全开源的指令集,不仅可以为FPGA生产厂商节约成本(授权费),也可以为FPGA用户节约成本(当用户的产品由FPGA向ASIC流程转换时,不需要再缴纳处理器架构的使用授权费用)。

在一个具体实施方式中,请继续参见图2,图2为本发明实施例提供的一种集成电路计算设备设计原理图,所述第一处理模块包括:RISC-V指令集处理器11,存储单元12、外设扩展单元13;

所述RISC-V指令集处理器11通过第一总线3互联所述存储单元12和所述外设扩展单元13,所述RISC-V指令集处理器11还通过所述第一接口31连接所述软核协处理器21。

RISC-V指令集处理器11即为采用RISC-V架构的处理器,用于接收并执行RISC-V指令集,存储单元12用于存储执行数据,外设扩展单元13例如可以是添加一些人机交互外设等。

在一个具体实施方式中,请参见图3,图3为本发明实施例提供的一种集成电路计算设备的第一接口设计原理图,所述第一接口31包括:

内核控制组信号311,包括所述RISC-V指令集处理器11向所述软核协处理器21发送和接收的控制信号或状态信号;

指令寄存器组信号312,包括所述RISC-V指令集处理器11向所述软核协处理器21发送的指令信号和接收的响应信号;;

存储器组信号313,包括所述RISC-V指令集处理器11的缓存向所述软核协处理器21发送和接收的数据信号;

自定义组信号314,包括所述RISC-V指令集处理器11向所述软核协处理器21发送的自定义指令信号和接收的响应信号。

具体的,本实施例将协处理器接口分为了四组信号:内核控制组(Core ControlGroup)负责传递处理器核心的控制与状态信号,协调主处理器与协处理器之间的运行,例如,若RISC-V指令集处理器想要发送运行状态,则可以通过内核控制组信号接口单元311发送core status信息至协处理器,同样的,协处理器也可以发送co-core_status信号至RISC-V指令集处理器。

指令寄存器组(Command Register Group)负责由主处理器向协处理器传递指令信息,以及协处理器向主处理器的响应信息,例如源寄存器的值、指令内容等;存储器组(Memory Group)负责在协处理器和主处理器的缓存(Cache)之间传递数据;自定义组(Custom Group)负责传递其它协处理器所需要的信息。对不同的协处理器,自定义组中可能有不同的信号线,例如可以包含TileLink总线、浮点运算单元(FPU)信号线、控制状态寄存器(CSR)信号线、页表转换器(Page Table Walker)信号线等。

具体的,参见图4,图4为本发明实施例提供的一种集成电路计算设备第一接口信号具体示例图,内核控制组(Core Control Group)包括反映主核状态的core_status信号、反映当主核为多核处理器时子核心ID的core_ID信号、反映主核例外请求的core_exceptions信号、反映协处理器状态的co-core_status信号和反映协处理器中断请求的co-core_resp信号。指令寄存器组(Command Register Group)包括请求信号cmd_req和响应信号cmd_resp。存储器组(Memory Group)包括请求信号mem_req和响应信号mem_resp。图中以虚线表示的信号为自定义组(Custom Group),包括CSR请求信号csr_req和响应信号csr_resp、FPU请求信号FPU_req和响应信号FPU_resp、PTW请求信号PTW_req和响应信号PTW_resp、Tile Link总线请求信号TL_req和响应信号TL_resp。当然,本实施例并不限定于上述具体的控制信号,本领域技术在已知本申请架构的条件下,可以根据具体实施场景设定对应的自定义信号。

在一个具体实施方式中,所述设备还包括:

连接所述第一处理模块1的第一调试端口14,以及连接所述第二处理模块2的第二调试端口25。

在一个具体实施方式中,所述第一处理模块1还包括:第一测试访问接口15,连接所述RISC-V指令集处理器11和所述第一调试端口14。

在一个具体实施方式中,所述第一测试访问接口15为JTAG接口。

在一个具体实施方式中,所述第二处理模块2包括:

可编程逻辑门阵列22、配置块23以及第二测试访问接口24,所述可编程逻辑门阵列22连接所述配置块23,所述配置块23连接所述第二测试访问接口24,所述第二测试访问接口24连接所述第二调试端口25。

在一个具体实施方式中,所述第二测试访问接口24为JTAG接口。

在一个具体实施方式中,所述第一总线接口协议包括AMBA协议或TileLink协议。

在一个具体实施方式中,RISC-V指令集处理器11包括CPU、GPU、DSP或硬件加速器。

本发明实施例同时提供一种计算处理系统,包括主机,还包括耦合到所述主机上的上述集成电路计算设备。

在一个应用场景中,主机经由连线耦合到FPGA芯片的调试端口23。在FPGA上电后,主机使用FPGA开发软件,通过测试访问接口24向配置块23中写入FPGA的配置数据,配置块23将使用这些配置数据,将FPGA的可编程逻辑改写为用户指定的状态。此外,主机还通过测试访问接口15向存储单元12写入RISC-V指令集处理器11所要执行的程序(指令)。这里所执行的程序可以是浮点运算和信号处理等复杂程序,也可以是控制外设扩展单元13的简单程序。所述的RISC-V指令集处理器11可以是针对特定程序做过设计优化调整的专用处理器,在高效完成用户所需的各种控制或计算功能的同时,还能保证较低的功耗和成本。

在配置块23的配置和对存储单元12的写入都完成后,RISC-V指令集处理器11将读取存储单元12中保存的指令并执行,而当该指令为自定义指令时,通过第一接口31发送至软核协处理器21中进行执行,以提升计算效率。用户所需的各种控制或计算功能,将根据实际情况由RISC-V指令集处理器11单独实现,或者由RISC-V指令集处理器11和可编程逻辑门阵列22一起配合实现。

综上,本发明实施例通过在FPGA芯片中嵌入RISC-V架构硬核处理器,并在FPGA芯片的可编程部分设计了软核协处理器,该协处理器可以帮助RISC-V处理器硬核实现RISC-V指令集的标准扩展指令集和自定义扩展指令,使得FPGA芯片开发人员可以根据需要灵活的对处理器内核进行调整,从而增强了FPGA芯片的计算能力且保证设备面积小、功耗低、制造成本低。

本发明实施例同时提供一种计算处理系统,包括主机,还包括耦合到所述主机上的上述集成电路计算设备。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。

本领域技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式,这里将它们都统称为“模块”或“系统”。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信系统。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

11页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于频域分析的双闭环BUCK变换器及其环路设计方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类