揭秘RISC-V SoC设计中的自定义扩展
配置基础处理器或添加自定义扩展以解决片上系统(SoC)软硬件设计权衡,长期是RISC-V社区价值主张的基石。近期文章——如《用恰到好处的RISC-V自定义指令加速应用指南》——凸显了扩展开源ISA的切实收益。
当今AI和机器学习SoC受功耗、性能、面积约束,使ISA扩展成为满足这些需求常被忽视但强大的杠杆。
Quantum Leap Solutions近期网络研讨会《RISC-V灵活性——自定义扩展之力》旨在揭秘RISC-V ISA如何为现代SoC设计量身定制。会议吸引100+与会者,汇聚行业专家小组。
讨论聚焦修改后ISA如何加速新兴应用,及设计师如何评估RISC-V架构扩展。
Quantum Leap Solutions创始人兼总裁Mike Ingster主持,小组成员:
- Andes Technology FAE总监John Min
- Imperas Software销售副总裁Larry Lapides
- Mentor高级应用工程师Taek Nam
Mike Ingster: 为何RISC-V比其他CPU架构更适合AI和ML学习应用?
John Min: RISC-V诞生于AI主流化之际,其向量指令集在设计时即考虑AI和VR负载。
Larry Lapides: 在包含异构处理器多路复用阵列的AI系统中——我们多次见此架构实现——设计师可结合标量和向量核。RISC-V让你剥离非必要特性保留向量指令,交付卓越PPA(性能、功耗、面积)。
Ingster: 带向量扩展的RISC-V核能否进一步加自定义指令?
Min: 能。典型例子是向量核引入客户扩展增设额外缓冲,防止数据饥饿导致停顿。
Lapides: Imperas和Andes均有客户实现此类自定义功能提升性能。
Ingster: 多处理器阵列中,所有CPU需同配置,还是可有不同自定义指令?
Lapides: 异构处理器常见。自定义指令可跨核心不同,甚至基础指令集也可不同——一核支持向量指令另一核保持标量,实现交错执行。
Min: 多路复用阵列中,CPU和仿真器均可异构,实现高效多核仿真。
Ingster: 你是否看到服务器级RISC-V处理器上市?
Min: 轨迹清晰:更高频率、更宽流水线、乱序执行、大规模并行多核。这些要素已现于面向AI企业负载的下一代RISC-V核心。
Lapides: 历史上RISC-V始于32/64位概念验证SoC。约两年前见安全聚焦和IoT SoC激增。今日见应用级处理器——运行真实RTOS的64位RISC-V核、早期乱序流水线。首批服务器级芯片预期两三年内面世。
Ingster: 自定义扩展能否提供设备安全和生命周期管理?
Min: 绝对可以。自定义指令可执行运行时检查强制软件兼容性,或专用内存端口隔离关键数据,增强安全和生命周期控制。
Taek Nam: 设计师也可利用Tessent嵌入式分析IP,通过自定义扩展将安全和生命周期管理直接嵌入SoC。
Ingster: RISC-V自定义指令方法与ARC或Tensilica等其他厂商有何不同?
Min: RISC-V正式扩展机制允许自定义指令正式纳入标准,提供清晰广泛采用路径。
Ingster: 开发者如何与客户或合作伙伴共享自定义指令?
Min: 三种选择:保持专有、提交RISC-V International纳入标准(如Andes DSP扩展成P扩展)、或共享内联函数和头文件同时用NDA保护实现。
Lapides: 自定义扩展模型可作为开源或二进制提供,或作为指令精准处理器模型,促进早期前硅软件开发。
Ingster: 自定义扩展会导致RISC-V社区兼容性问题吗?
Min: 专有扩展保持隔离;若扩展广泛使用,可提议纳入基础ISA,防止碎片化。
Ingster: 向量处理器当前版本是否有编译器支持?
Min: RISC-V向量扩展0.8稳定且获GCC和LLVM支持。最终编译器支持将随官方规范定案跟进。
Ingster: 软件工具链如何支持自定义扩展?
Lapides: 设计师将扩展嵌入RISC-V模型,生成指令集仿真器用于软件开发。GCC和LLVM可扩展支持新指令,设计师可提供宏实现。
Ingster: 编译器如何知晓新建自定义指令?
Lapides: 软件团队须在编译器后端实现该指令。
Min: 另一种方式:像库一样对待指令:提供头文件和可选专有实现,最小化开发工作量同时获性能增益。
Ingster: RISC-V支持哪些操作系统?Android支持如何?
Lapides: Linux、Zephyr RTOS等实时操作系统为主要目标。Android未正式在RISC-V验证,但移植工作进行中。RISC-V International网站列出所有支持OS。
Ingster: 自定义扩展如何验证?
Lapides: 验证涉及将扩展加入RTL和处理器模型。指令集仿真器实现早期软件验证。
Taek: 近期客户用我们嵌入式分析IP追踪量化自定义指令性能增益,通过数据驱动验证确认收益。
Ingster: 嵌入式分析IP需多少面积?
Taek: 典型约1%芯片面积,视配置而定。每个设计评估以优化面积同时交付最大价值。
以上亮点摘自Quantum Leap Solutions主持的完整小组讨论。
嵌入式