关键词:时间可预测性、RISC-V、多核向量处理器、神经网络推理、实时系统、FPGA 开源
实时系统,尤其是自动驾驶等关键领域,正越来越多地集成神经网络。这一趋势催生了对兼具高性能与可预测时序行为的硬件的迫切需求。然而,当前硬件面临两难困境:传统的实时硬件受限于有限的内存和计算资源,而现代AI加速器虽性能强大,却常因内存访问干扰等问题,缺乏对实时应用至关重要的时间可预测性。

- MultiVic: A Time-Predictable RISC-V Multi-Core Processor Optimized for Neural Network Inference
- https://arxiv.org/pdf/2511.05321
- 代码仓库:https://github.com/MultiVic
为此,我们提出了一种新型硬件架构,旨在弥合高性能与时间可预测性之间的鸿沟。
该架构的核心是一个多核向量处理器,其每个计算核心均配备本地暂存存储器,并具有确定性的执行行为。一个中央管理核心依据静态确定的调度表,统一协调所有核心对共享外部内存的访问,从而消除内存竞争带来的不确定性。

图1:本文提出的多核处理器架构示意图(以4核为例)。Vector Unit:向量单元;I-SPM:指令暂存存储器;D-SPM:数据暂存存储器;DMA:直接内存访问;DRAM Memory:动态随机存取存储器;Peripheral Crossbar:外设交叉开关;Timer:定时器;Management Core:管理核心;UART:通用异步收发传输器。
为评估该架构,我们分析了其参数化设计的多种变体,并与采用大型向量寄存器的单核向量处理器基准架构进行了对比。
研究发现,采用更多核心、但每个核心规模更小的配置,由于有效内存带宽的提升和时钟频率的提高,能够实现更优的性能。尤为关键的是,其执行时间的波动始终保持在极低水平,充分证明了该平台卓越的时间可预测性。
关键问题
问题一:可预测性与性能的根本权衡
文中强调MultiVic通过本地暂存存储器和中央管理核心的静态调度来确保时间可预测性。然而,这种集中式、预调度的数据搬运机制是否会在实际部署中成为性能瓶颈? 尤其是在处理非确定性神经网络结构(如动态网络)或多任务并发推理时,静态调度是否会严重限制系统的灵活性与能效? 论文中提到“仅支持确定性数据流”,这是否意味着该架构无法适应未来更具动态性的AI负载?
作者明确承认,静态调度机制【确实】对支持非确定性神经网络结构构成了根本限制。该架构设计基于“确定性数据流”这一核心假设,这是实现严格时间可预测性的前提。对于计算图固定的标准前馈CNN,静态调度能高效协调数据搬运与计算。然而,动态网络或条件执行会破坏此假设,导致编译时无法生成确定性的传输调度表。
这种限制是一种有意的设计权衡。该架构的目标场景是硬实时系统,其首要要求是时间行为的绝对可保证,性能提升是在此约束下进行的。集中式调度与本地存储虽然引入了固定开销,但彻底消除了多核间内存访问竞争这一主要的不可预测性来源。对于多任务推理,静态调度理论上可通过时分复用来支持多个确定性子任务,但会牺牲部分并发灵活性。
因此,这一架构是针对确定性AI负载(如经典CNN)在实时场景下的特化设计。它选择以牺牲对动态性的原生支持为代价,换取在目标领域内可验证的、确定性的实时性能。向动态网络的扩展,如论文所言,需要“额外的调度假设”,这将是未来编译器和调度算法研究的重点。
问题二:可扩展性与实际部署的可行性
论文评估显示,在16核配置下因FPGA路由拥堵导致时钟频率下降,这表明架构在物理实现层面存在可扩展性瓶颈。这是否意味着该架构在ASIC实现或更大规模FPGA上仍会面临类似问题? 此外,文中提到“计划开发基于MLIR的编译工具链”,但目前仍依赖手动调度。这是否意味着该架构在实际部署中仍缺乏完整的软件栈支持,从而难以发挥其理论性能?
论文揭示的16核配置下FPGA路由拥堵导致的频率下降,确实指出了在当前特定FPGA平台(VCU128)上物理实现的一个可扩展性极限。然而,这不一定是架构本身固有的缺陷。拥堵主因是大量独立暂存器的端口需连接至中央DMA,在FPGA有限的布线资源下成为瓶颈。论文指出,此问题源于“FPGA路由器的拥塞”。在定制ASIC实现中,可通过物理设计优化(如更好的布局布线、更高带宽的片上网络)来缓解。架构本身核间无直接互连、依赖中心调度的模式,在硅片中可能表现出不同的扩展特性。
关于软件工具链,论文坦承目前缺乏全自动编译部署流程,是当前的主要短板。评估工作依赖手动优化的矩阵乘法内核和调度脚本,这距离部署复杂神经网络还有很大距离。尽管论文提及计划开发基于MLIR的完整编译器以自动化计算映射与数据传输调度,但该工具链的成熟度与优化能力,仍是决定该架构能否走向实用化的关键。因此,该架构目前更应被视为一个为未来时间可预测AI加速奠定硬件基础的研究原型,其实际应用潜力高度依赖于配套软件栈的后续发展。
一、引言

神经网络正被越来越多的实时系统所采用,在汽车或航空应用领域尤为突出。这一情况对所使用的处理硬件提出了严苛的要求。一方面,执行典型的深度神经网络需要 强大且高度并行的计算单元以及大量高速内存;另一方面,还需为 执行的时序行为提供保障,因此硬件必须具备时间可预测性。
当前的处理器和加速器平台均存在一定缺陷,无法同时满足上述两项要求。
- 图形处理器(GPU)和现代加速器架构虽能提供高性能,但由于其执行模型以及共享内存中的干扰问题[8,9],不具备时间可预测性。
- 为实时应用开发的多核系统,通常依赖系统总线或片上网络上的时分多址(TDMA)机制来避免内存干扰[7],但这会限制可用的内存带宽。
- 向量处理器是在不影响可预测性的前提下提高实时系统计算性能的一种极具潜力的方案[13],然而,其在向量长度和计算单元宽度方面的可扩展性有限,因此在执行典型的机器学习推理应用时,仍需使用多个处理器。
鉴于此,本研究的主要贡献在于提出了一种新型多核架构,该架构针对时间可预测的神经网络推理进行了优化。我们阐述了参数化架构理念、实现细节,并对不同的处理器配置进行了全面评估。此外,该硬件架构的实现将以开源形式提供。
本文其余部分的结构安排如下:
- 第 2 节简要概述时间可预测处理器和嵌入式机器学习加速领域的相关工作;
- 第 3 节介绍我们提出的新型多核架构,并探讨关于性能和时间可预测性的设计考量;
- 第 4 节详细说明硬件实现细节、软件在该平台上的部署方式以及基准测试程序的实现;
- 第 5 节对所提架构的多种配置进行评估,从性能和资源消耗角度与带有单核向量处理器的基准硬件进行对比,同时阐述可从评估结果中获得的潜在改进方向;
- 第 6 节总结全文,概括本研究的贡献与发现。
二、相关工作
神经网络(NN)加速通常会用到特定领域加速器,这类加速器效率较高但灵活性不足,若要适配新模型,往往需要进行大量重新设计。与之不同的是,我们的方法采用可编程的通用架构,能够执行任意模型。
RISC-V 向量处理器凭借高效的并行性,在嵌入式机器学习加速领域得到广泛应用。尽管已存在如 Spatz[12]和 Ara2[11]等实例,但它们可能会引入时序异常,从而使最坏情况执行时间(WCET)分析变得复杂。我们的架构集成了 Vicuna 向量协处理器[13],该协处理器经过专门设计,可避免此类时序异常,能够为实时系统所需的精确时序分析提供支持。
多核集群是嵌入式系统中神经网络加速的另一种常用方案,Kalray MPPA-256[2]、Mr. Wolf[14]和 MemPool[15]等平台都是典型代表。这些平台通常采用共享内存进行数据交换,但这往往会导致不可预测的内存干扰,使其无法适用于强实时应用。
不过,也有部分多核平台在设计时重点考虑了可预测性,这些平台采用了精确时序(PRET)机器的理念[3]。它们通过时分多址(TDMA)和分布式内存来避免干扰:
- Merasa 处理器[10]利用总线上的 TDMA 实现这一目的;
- 其他平台则采用 TDMA 片上网络(NoC),例如 T-CREST 平台[17]、parMERASA[18]和 InterPRET[5]。
然而,许多 PRET 架构在高效外部内存集成与管理方面存在不足,这使其在处理数据密集型神经网络时性能受限。此外,TDMA 内存仲裁机制会限制每个核心对可用内存带宽的访问。与之相反,我们的方法依靠显式调度的数据传输来访问本地内存,这种方式支持独立、并发的执行,能够提高有效内存带宽。
同时,我们集成了一个带有直接内存访问的管理核心,用于中央协调,它会按照编译时确定的调度表执行数据传输。对于典型的前馈神经网络,由于其数据流具有确定性,这种方式是可行的。
在文献[6]中,我们提出了一种异构多核系统的理念,该系统包含一个专用管理核心和用于实时系统神经网络加速的专用工作核心。本研究在上述理念的基础上,提供了详细的硬件实现,并对不同配置进行了评估。
三、所提出的硬件架构
为设计出一种能够执行实际相关机器学习应用的可预测处理器,需要满足多项要求。神经网络的高效推理需要高度的并行性和大容量内存;此外,该架构还应具备通用计算能力,以灵活适配不同类型的层和网络架构。在面向可预测执行的设计中,内存子系统无干扰是最重要的要求之一,因此我们对此予以重点关注。
在最先进的加速器系统中,众核架构和向量处理器是主流方案,它们能够提供所需的并行度。在本研究中,我们提出了一种多核向量处理器,它融合了上述两种架构的理念,从而实现了两个维度的并行性。该理念的一个关键特点是,每个核心都能在其自身的本地暂存存储器上实现可预测执行,这些暂存存储器分为指令暂存存储器和数据暂存存储器。每个核心仅能访问其本地暂存存储器,不存在多个核心可同时访问的共享资源(如全局内存或外设),这从设计上保证了无干扰。
神经网络的执行需要核心之间进行通信。一个专用的管理核心负责协调暂存存储器之间的内存事务,同时还支持与全局动态随机存取存储器的通信,全局 DRAM 用于存储权重和中间激活值。为减轻管理核心的数据复制负担,我们采用了一个 DMA 外设。暂存存储器使用双端口静态随机存取存储器(SRAM),这样工作核心和管理核心就能同时访问,且不会产生干扰。

图 1:本文所提出的多核处理器架构,此处包含 4 个核心。图中各组件说明:Vector Unit 为向量单元,I-SPM 为指令暂存存储器,D-SPM 为数据暂存存储器,DMA 为直接内存访问,DRAM Memory 为动态随机存取存储器,Peripheral Crossbar 为外设交叉开关,Timer 为定时器,Management Core 为管理核心,UART 为通用异步收发传输器。
每个交叉开关仅有一个主机和多个设备连接。这意味着只有一个组件能够发起数据传输,从而保证了无干扰。
然而,这种集中式协调方式存在调度挑战。考虑到目标神经网络的数据流具有确定性,调度问题可在编译时静态解决。这对所支持的神经网络带来了一项限制:为了能在编译时对内存事务进行调度,其数据流必须具有确定性,且不得依赖于输入数据。
- 对于标准卷积神经网络(CNN)而言,这不成问题;
- 但如果要使用动态卷积神经网络或利用稀疏性,则需在调度时做出额外假设。文献[6]中介绍了计算和内存事务调度的初步方法。
3.1 讨论
该硬件架构提供的计算资源具有两个维度的并行性,并具备丰富的内存连接能力,这对于神经网络执行至关重要。通过有效的编译时调度,该设计能够实现计算单元和内存带宽的高效利用。
每个工作核心都被实现为一个完整的 RISC-V 向量处理器,具有很强的灵活性。这种设计不仅便于高效的卷积计算,还能将不同类型的层映射到工作核心上,从而确保性能不会受到管理核心的限制。
该架构本身具有时间可预测性,其核心基础是时序组合性——当硬件架构不存在时序异常时,便具备这一特性。时序组合性使得时序分析可安全地分解为对各个组件的分析,从而能够基于局部最坏情况行为推导出全局最坏情况执行时间(WCET)[4]。文献[13]进一步证明,当 Vicuna 协处理器与 Ibex 核心的顺序流水线集成时,具备上述时序组合性。
因此,本架构中的每个向量核心在独立运行时都具有可预测性。这种独立性得到了严格保障: 每个核心仅在其专用内存上运行,不存在共享资源,也就不会产生核间干扰 。尽管管理核心能够访问其他核心的暂存存储器,但这种访问不会造成干扰,因为所使用的 SRAM 具有两个独立端口,且总能在一个时钟周期内做出响应。
影响向量核心本地执行时间的唯一潜在因素,是其数据暂存存储器中所需数据能否及时可用 。不过,由于管理核心采用静态调度,数据可用性和计算开始时间在编译时都是可预测的。 动态随机存取存储器(DRAM)是系统中唯一会导致时序变化的组件,因为其内存访问时间具有不确定性 。因此,必须采用 DRAM 的最坏情况模型 ,并将其纳入静态调度计算中,以确保 DRAM 访问时间不会超出调度表中为其分配的时长。
四、实现
4.1 硬件设计
该架构采用 SystemVerilog 语言实现,可在现场可编程门阵列(FPGA)上进行评估,其源代码已基于宽松的开源许可证发布[3]。
- 系统中的所有核心均以 Ibex[16] RISC-V 核心为基础,工作核心还附加了 Vicuna[13]向量协处理器。
- 互连部分基于 TileLink Uncached-Lightweight 标准,采用 OpenTitan[1] TileLink 生成器实现。
- DMA 采用经过修改的 OpenTitan DMA 版本。
- FPGA 板上配备的 4.5 GB DDR4 内存用作主内存,并与 Xilinx 内存控制器配合使用。
我们可通过多个参数对实现方案进行配置,以创建和测试不同的处理器设置。Vicuna 核心本身的向量流水线具有多种可配置选项,其中最主要的是向量寄存器大小和计算单元宽度。
- 在多核实现方案中,核心数量并非固定不变,因此我们可生成不同版本的架构;
- 同时,暂存存储器的大小也可进行配置。
在后续章节中,我们将对采用少量大型核心和内存的配置,与采用大量小型核心和内存的配置进行对比。
4.2 部署
在未来的工作中,我们计划为该硬件架构开发基于 MLIR 的编译流程,如文献[6]所述,该流程将支持在该平台上部署完整的神经网络。该编译器将自动完成计算任务到核心的映射以及 DMA 传输的调度,但此项开发工作超出了本文的研究范围。为评估硬件性能,我们手动实现了将指令和数据加载到暂存存储器的基本机制,并在此基础上实现了矩阵乘法基准测试程序。
需要注意的是,从工作核心的角度来看,本地内存的地址与从管理核心和 DMA 的全局视角看到的地址有所不同。为方便基准测试程序的开发,我们编写了代码生成脚本。这些脚本会为每个核心编译程序,并生成一个链接脚本,该链接脚本将目标文件链接到单个大型二进制文件中的不同段。该二进制文件首先被加载到管理核心的内存中,然后再分发到各个工作核心的指令暂存存储器。
为执行给定的调度表,管理核心可访问一个定时器,用于基于时间触发的调度。此外,管理核心还能获取工作核心的状态:每个工作核心的数据暂存存储器中都预留了一块专用区域,用于交换状态和控制信息。
- 工作核心上运行着一个最小化的运行时环境,该运行时环境会设置一个状态位,以指示当前是否正在执行任务;
- 当需要启动新任务时,会跳转到指定的函数指针;
- 函数执行完成后,程序会返回运行时环境。管理核心可查看当前是否有任务正在执行,并通过传递函数指针来指定下一个要执行的函数。
4.3 矩阵乘法基准测试
卷积层和全连接层是卷积神经网络(CNN)中最常见且计算量最大的层类型,这些层通常通过矩阵乘法来实现。因此,为评估该多核架构(带有分布式内存)的性能,我们实现了一个矩阵乘法基准测试程序。
计算任务会分配给所有可用的核心,且仅当前一轮计算完成后才会启动下一轮计算,通过这种方式可确定最大吞吐量。对于完整神经网络等更复杂的程序,为便于时序分析,采用基于时间触发的执行方式更为合适。
在该矩阵乘法基准测试中,需执行计算 。在我们的实现中,矩阵均为方阵,即 且 。为将计算任务分配到各个工作核心,我们将矩阵 划分为宽度为 的块,然后将这些块分发到各个工作核心的数据暂存存储器中,并尽可能长时间地保留在那里,以减少与主内存之间的数据传输量。
矩阵 的行将被迭代加载,并在所有核心上进行处理。此过程会生成矩阵 的行片段,随后这些片段会被写回主内存。为充分利用向量单元,在内部循环中,我们将矩阵 的行和矩阵 的列分解为长度等于向量寄存器大小的向量,这样就能以向量化方式执行乘法运算,并对乘积进行向量化累加,从而计算出矩阵 的各个元素。
五、实验评估
本次评估旨在对比该平台与单核向量处理器的性能,核心研究问题包括:尽管核心之间存在显式数据传输开销,但时间可预测的多核架构是否比单个大型可预测向量处理器具有更高的性能?何种配置能实现最优性能? 此外,本研究还将分析该架构的可扩展性及其局限性。
为便于与单核平台进行对比,我们定义了一种基准架构作为参考,如图 3 所示。
图 3 | 对比理论性能的 Roofline 图。横轴为算术强度(OP/byte,每字节数据对应的操作数),纵轴为性能(OP/cycle,每个时钟周期完成的操作数)。图中曲线和数据点分别代表不同配置:Baseline-Small 为基准小型配置,Baseline-Medium 为基准中型配置,Baseline-Fast 为基准快速配置,Dual 为双核配置,Quad 为四核配置,Octa 为八核配置,Hexadeca 为十六核配置
该基准架构由一个集成了 Vicuna 向量协处理器的 Ibex 核心构成,连接有 64 KiB的指令暂存存储器和 1 MiB 的数据暂存存储器。此外,该核心还可访问与多核系统相同的外设,包括带有 DDR4 主内存接口的 DMA。对于 Vicuna 协处理器,我们采用了 Platzer 和 Puschner 在其原始论文[13]中所述的“快速(Fast)”配置,具体细节如表 1 所示。
表 1:具有最大可达时钟频率的基准系统配置
表 2:评估中使用的多核系统配置变体
本次评估探究了多核架构的四种不同配置,如表 2 所示,这些配置的主要区别在于工作核心的数量。工作核心内部向量单元的规模与核心数量呈反比缩放关系: 例如,双核(Dual)配置的向量寄存器长度和乘法器宽度,均为“快速(Fast)”配置的一半。
图 2:带有单核和类似外设的基准架构。图中各组件说明:Vicuna 为向量协处理器,Ibex 为 RISC-V 核心,TileLink Crossbar 为 TileLink 交叉开关,D 为数据路径,DMA 为直接内存访问,UART 为通用异步收发传输器,Timer 为定时器,1 MiB 为数据暂存存储器容量,DDR4 Memory 为 DDR4 内存,4.5 GB 为 DDR4 内存容量
数据暂存存储器的大小也与核心数量呈反比缩放 :基准硬件配备 1 MiB 的数据暂存存储器,而多核变体中每个核心的数据暂存存储器容量分别为 512 KiB、256 KiB、128 KiB 和 64 KiB。工作核心的指令暂存存储器大小固定为 16 KiB,管理核心的指令和数据暂存存储器大小均固定为 64 KiB。
5.1 性能
与单核向量处理器相比,多核架构对高速暂存存储器的总带宽更高,因为每个核心都有自己专用的静态随机存取存储器(SRAM)连接。

图 3 | 对比理论性能的 Roofline 图。横轴为算术强度(OP/byte,每字节数据对应的操作数),纵轴为性能(OP/cycle,每个时钟周期完成的操作数)。图中曲线和数据点分别代表不同配置:Baseline-Small 为基准小型配置,Baseline-Medium 为基准中型配置,Baseline-Fast 为基准快速配置,Dual 为双核配置,Quad 为四核配置,Octa 为八核配置,Hexadeca 为十六核配置。
图 3 所示的 Roofline 图展示了不同配置的理论性能上限。多核变体的计算峰值性能与“快速(Fast)”配置相当,但其性能瓶颈更早地从计算能力转移到了内存带宽。因此,对于具有高数据复用率的数据流密集型算法,多核架构尤其具有优势,能够最大限度地减少对 DMA 传输的依赖。
采用小型向量处理器的多核架构相较于单个大型向量处理器,还具有另一项优势:其设计的关键路径更短,因此能够实现更高的时钟频率。 为评估这一点,我们使用 Xilinx Vivado 工具,在 VCU128 Virtex Ultrascale+ FPGA 板上迭代确定了最大可达时钟频率。具体方法是,根据前一次综合运行报告的最坏负时序裕量,逐步收紧每次综合运行的时钟约束,直至 Vivado 无法实现时序收敛。表 1 和表 2 列出了最终确定的最大频率。

表 1:具有最大可达时钟频率的基准系统配置

表 2:评估中使用的多核系统配置变体
结果显示,多核变体能够实现比理论性能相当的“快速(Fast)”配置高得多的时钟频率。然而,当核心数量达到 16 个时,由于需要将 34 个暂存存储器(16 个工作核心 + 1 个管理核心)连接到 DMA 控制器,FPGA 布线器出现拥堵问题,导致可达时钟频率显著下降,这标志着该架构在当前平台上的可扩展性达到了一个极限。
矩阵乘法性能测试
为评估硬件平台的性能,我们在每种配置变体上均执行了 100 次矩阵乘法基准测试。硬件运行时钟频率设定为 100 MHz,使用定时器外设以时钟周期为单位测量执行时间。

图 4:矩阵乘法基准测试的中位执行时间和标准差。左侧纵轴为中位执行时间(单位:时钟周期),右侧纵轴为标准差(单位:时钟周期)。图中数据柱分别代表不同配置:Baseline-Fast 为基准快速配置,Dual 为双核配置,Quad 为四核配置,Octa 为八核配置,Hexadeca 为十六核配置。
图 4 展示了测量结果:
* 左侧柱状图显示了每种配置的中位执行时间(将 100 次执行时间排序后位于中间位置的数值)。
* 右侧柱状图显示了每种配置执行时间的标准差(反映执行时间的波动程度,标准差越小,执行时间越稳定)。
可以看出,随着核心数量的增加,中位执行时间逐渐减少。这是因为核心数量越多,内存带宽越高,且多核架构能够有效利用并行性,使多个工作核心同时加载其向量寄存器。然而,性能并非无限扩展:8 核与 16 核配置之间的执行时间改善非常微小,这是因为 DMA 传输时长以及在更短向量寄存器上的计算开销,抵消了暂存存储器带宽提升所带来的优势。
相对于中位执行时间而言,执行时间的变异性(即标准差)非常小。 这种波动源于 DDR4 内存访问时间的不确定性,且随着核心数量的增加,变异性逐渐增大。这是因为矩阵被分割成越来越小的块,导致 DDR4 访问次数增加,进而放大了访问时间不确定性的影响。
综上,对于矩阵乘法基准测试而言,八核(Octa)配置是最优的。
* 在 168 MHz 时钟频率下,八核配置的中位执行时间为 728,548,804 个时钟周期,约合 4.33 秒。
* 而在 118 MHz 时钟频率下,十六核(Hexadeca)配置的中位执行时间为 548,343,601 个时钟周期,约合 4.65 秒。
此外,八核配置还具有极低的执行时间方差。
资源消耗
除原始性能外,我们还评估了不同配置在 FPGA 上的资源利用率。评估数据采用 Xilinx Vivado 在最大可达时钟频率下进行综合运行时报告的数值。

图 5 | VCU128 平台上的 FPGA 资源消耗。图 5a 为不同架构变体的资源消耗对比,横轴为资源类型(LUT、FF、DSP、BRAM),纵轴为资源数量;图 5b 为双核系统中的组件资源消耗,横轴为组件类型,纵轴为资源数量。
图 5a 展示了不同配置对查找表、触发器、块 RAM 和数字信号处理单元的占用情况。
我们发现,随着核心数量的增加,总体资源消耗也随之增加。这主要是因为每增加一个核心,就会额外增加一个指令暂存存储器以及一个完整的 Ibex 核心逻辑。 不过,通过减小向量单元和数据暂存存储器的规模,该架构仍展现出良好的可扩展性。特别是 DSP 单元的数量表明,采用多个小型向量处理器所需的逻辑,并不比采用少量大型向量处理器多得多。
为更全面地评估该架构的可扩展性,我们还分析了系统各组件的资源消耗情况。

图 5 | VCU128 平台上的 FPGA 资源消耗。图 5a 为不同架构变体的资源消耗对比,横轴为资源类型(LUT、FF、DSP、BRAM),纵轴为资源数量;图 5b 为双核系统中的组件资源消耗,横轴为组件类型,纵轴为资源数量。
图 5b 展示了双核配置的详细资源消耗:
* 管理核心及其本地内存和外设仅占用总芯片面积的很小一部分。
* 大部分资源被工作核心及其内存占用,DDR4 内存控制器也占用了一定比例的资源。
具体而言,工作核心及其暂存存储器是 DSP 单元和 BRAM 单元的主要消耗者。
六、结论
对于采用神经网络的实时系统,需要兼具高性能和实时保障的硬件。针对这一应用场景,我们开发并实现了一种多核向量处理器,并将以开源许可证形式发布。
* 该处理器采用本地内存,使处理器核心能够独立运行。
* 同时配备一个带有 DMA 的中央管理核心,该核心会按照静态调度表协调本地内存与主内存之间的数据传输。
评估结果表明,尽管本地内存之间存在通信开销,但多核架构相较于单个大型向量处理器,仍能实现性能提升。同时,由于该架构从设计上避免了内存干扰,因此保持了时间可预测性。
此外,多核平台由于关键路径更短,能够实现更高的时钟频率,从而带来额外的性能优势。 然而,当核心数量达到 16 个时,由于 FPGA 布线器出现拥堵问题,该架构的可扩展性达到了限制。
尽管与单核基准架构相比,多核平台对 FPGA 资源的需求略有增加,但在资源利用率方面仍展现出良好的可扩展性。
参考文献


- 1 核抵 8 核!解耦 RISC-V GPGPU 的控制流和数据访问:Vortex GPGPU 从 0.35 到 1.63 GFLOP/s/mm² 的性能飞跃
- 8.1倍性能飞跃!MICRO’25 开源RISC-V GPGPU算力突破:混合精度融合点积单元,可配置融合架构
- Vortex RISC-V GPU 中 Warp 级特性的硬件与软件实现
关注“鲸栖”小程序,掌握最新AI资讯
本文来自网络搜集,不代表鲸林向海立场,如有侵权,联系删除。转载请注明出处:http://www.itsolotime.com/archives/19164
