资源与支持

SiFive 博客

来自 RISC-V 专家的最新洞察与深度技术解析

January 21, 2020

Part 2: High-Bandwidth Core Access to Accelerators: Enabling Optimized Data Transfers with RISC-V

This is the second in a series of blogs about Domain-specific accelerators (DSAs), which are becoming increasingly common in SoCs. Part #1 addressed the challenges associated with data transfers between DSAs and the core complex, and showed how RISC-V offers a unique opportunity to optimize fine-grain communication between them and improve core-DSA interaction performance.

To recap, a DSA provides higher performance per watt by optimizing the specialized function it implements. Examples of DSAs include compression/decompression units, random number generators and network packet processors. A DSA is typically connected to the core complex using a standard IO interconnect, such as an AXI bus (Figure 1).

AXI Bus

RISC-V offers a unique opportunity to optimize high-bandwidth communication between cores and DSAs. Cores often issue fine-grain load and store instructions in the IO space to access DSA memory. The problem, however, is that these loads and stores to DSA memory might have side effects. For example, a load to a specific DSA memory address might trigger a network message as a side effect of the load. Typically, because of such side effects, loads and stores from a core to an IO device are required to be observed by the IO device in order. This is also known as point-to-point ordering.

A naive way to implement such point-to-point ordering is to issue a load to a DSA and wait for the result to return to the core (Figure 2). This is highly inefficient because successive loads or stores to DSA memory cannot be issued back-to-back in a pipelined fashion. A RISC-V implementation would typically implement such IO loads in a pipelined fashion with help from the interconnect between the core and DSA (Figure 3). For example, if a mesh topology uses a fixed path (e.g., X-Y routing) from the core to the DSA (perhaps via the IO bridge), then the interconnect can guarantee the ordering and thereby allow very high bandwidth access to DSA memory

The RISC-V architecture itself offers two other modes of optional IO ordering. First, RISC-V offers a very conservative IO ordering mode, which can be selectively used to guarantee strong ordering when necessary. Second, RISC-V offers a high-bandwidth relaxed ordering mode where IO loads and stores can be reordered. This mode would typically be used for DSA memory that does not have side effects.

See more details about SiFive’s standard cores, or to customize and build domain-specific RISC-V cores, please visit sifive.com/risc-v-core-ip


Read the other posts in this series:

Shubu Mukherjee
Shubu Mukherjee
Chief SoC Architect, SiFive

Read more Insights from the RISC-V Experts

超越 CPU 与 GPU:SiFive 在数据中心基础设施中的应用
最新文章
超越 CPU 与 GPU:SiFive 在数据中心基础设施中的应用
嵌入 NIC、重定时器、光模块、交换机与安全芯片的 RISC-V 处理器,如何助力现代数据中心突破扩展瓶颈
数据中心 AI 的下一次飞跃:借助 SiFive 智能控制单元 (ACU) 编排定制加速器
最新文章
数据中心 AI 的下一次飞跃:借助 SiFive 智能控制单元 (ACU) 编排定制加速器
随着智能体 AI、多模态模型和实时推理在数据中心及边缘系统中的应用不断拓展,工作负载正变得日益复杂、多样,对计算能力的要求也越来越高。为满足这些需求,计算架构设计人员正转向专用定制加速器,以针对矩阵乘法等特定运算提供更高的性能和能效。然而,这些加速器仍需依靠数据通路之外的软件进行配置、供数、同步和监控,并获得相应的软件支持。
SiFive 视角:RISC-V SPMP 规范正式批准,助力嵌入式安全飞跃发展
最新文章
SiFive 视角:RISC-V SPMP 规范正式批准,助力嵌入式安全飞跃发展
这项最新批准的 SPMP 功能专为增强运行实时操作系统(RTOS)的嵌入式系统中的内存保护而设计。SiFive 非常高兴能在这一进程中贡献力量,并将继续与整个生态系统保持合作,以完善 RISC-V 标准。我们坚信,SPMP 将在整个行业内获得快速普及。