SAPHO:面向硬件优化的可扩展架构处理器及其FPGA可定制实现方法

时间:2026年1月19日
来源:IEEE Aerospace and Electronic Systems Magazine

编辑推荐:

为解决传统软核处理器(SCP)存在硬件资源过度配置、数据字长固定及功耗浪费等问题,研究人员开展了“SAPHO-Scalable-Architecture Processor for Hardware Optimization: An FPGA Customizable Implementation Approach”主题研究。该研究提出一种可自动根据软件需求调整程序/数据存储器及算术逻辑电路的自扩展处理器SAPHO,采用组合算术逻辑单元(ALU)实现每时钟周期执行一条指令且无流水线停顿。实验表明,与NIOS II相比,SAPHO在8点FFT基准测试中执行时间减少77.36%,动态核心功耗降低15%-33%,逻辑单元(LE)使用更少,为嵌入式系统提供了更高能效的解决方案。

广告
   X   

在现代嵌入式系统中,如何在有限资源下实现高效能计算始终是研究者面临的重大挑战。传统软核处理器(Soft-Core Processors, SCP)虽然为FPGA(Field Programmable Gate Array)提供了灵活的可编程能力,但其固定架构导致硬件资源常被过度分配——无论运行何种软件,处理器都占用相同的逻辑资源,造成数据字长冗余、功耗浪费,尤其在轻量级或专用应用场景中问题更为突出。这种“一刀切”的设计模式严重制约了嵌入式设备在能量敏感场景(如物联网终端、边缘计算节点)中的应用效能。
为突破这一瓶颈,巴西Juiz de Fora联邦大学的研究团队在《IEEE Access》上发表了题为“SAPHO-Scalable-Architecture Processor for Hardware Optimization: An FPGA Customizable Implementation Approach”的研究论文。该研究创新性地提出了一种名为SAPHO(Scalable-Architecture Processor for Hardware Optimization)的自扩展软核处理器。SAPHO的核心突破在于其“硬件随软件自适应”的设计理念:在编译阶段,处理器能根据具体程序的需求,动态调整程序存储器(PM)与数据存储器(DM)的大小,并仅实例化程序实际所需的算术逻辑电路。这种高度定制化的方式显著减少了硬件资源浪费,同时通过组合型ALU(Combinational ALU)设计,确保每个时钟周期完成一条指令的执行,且无需处理流水线停顿(Pipeline Stalls)问题。
为开展本研究,团队构建了完整的软硬件协同设计框架。关键技术方法包括:(1)开发参数化Verilog HDL硬件描述语言实现的处理器核心,支持基于哈佛架构(Harvard Architecture)的三级流水线(取指F、译码D、执行E);(2)设计专用集成开发环境(IDE),集成C语言编译器与汇编器,实现从高级语言代码到定制化RTL(Register Transfer Level)代码的自动生成;(3)提出一种简化浮点数表示格式(非IEEE 754标准),采用直接二进制补码表示指数,支持可配置的尾数(Mantissa)与指数(Exponent)位数(如12位尾数+6位指数),以优化FPGA资源占用;(4)使用Intel Cyclone IV E系列FPGA(Terasic DE2-115开发板)进行硬件合成与性能测试,并与NIOS II处理器的三种配置(/e、/s、/f)进行资源使用、时钟周期数、执行时间及功耗对比。
研究结果
硬件架构自定义实现
SAPHO采用哈佛架构与精简指令集(RISC),其数据与程序存储器地址数量可自适应调整。如图1所示,处理器核心模块(如I→F浮点转换器、索引寄存器等)仅在程序需要时被实例化。ALU内部逻辑运算电路(如加法器、乘法器)也仅当汇编代码中出现对应指令(如DIV、MLT)时才被生成(详见表1)。这种按需分配机制使得SAPHO在实现8点FFT算法时,仅需884个逻辑单元(LE)和2个DSP块,而同等功能的NIOS II/f*配置需9615个LE和11个DSP块(见表7)。
流水线效率与指令执行
SAPHO的三级流水线结构结合组合ALU,实现了无流水线断流的指令执行。如图2所示,由于ALU为纯组合电路,其结果在第二流水段即已就绪,使得预取(Prefetch)单元可提前判断条件跳转地址,避免流水线停滞。测试表明,所有算术指令(如加法、乘法、除法)均可在固定13个时钟周期内完成,而NIOS II的同等操作需数十至数千周期(见表6)。在8点FFT基准测试中,SAPHO仅用1981个周期,耗时39.93微秒,比最快的NIOS II/f*配置(176.39微秒)快77.36%(见表8)。
浮点运算优化与能效提升
SAPHO提出的自定义浮点格式(见公式2:(-1)S×M×2E)在保证精度的同时大幅减少硬件开销。如表4所示,该格式在常规数值运算中与IEEE 754结果一致,但在极端值处理上省略了Inf/NaN等异常处理电路,使乘法器资源减少至7个(IEEE 754需16个)。功耗方面,SAPHO的动态核心功耗为0.44mW,较NIOS II variants(0.51–0.66mW)降低15%–33%,总功耗为94.36mW(见表9)。
研究结论与意义
本研究提出的SAPHO处理器通过“硬件-软件协同定制”范式,有效解决了传统软核处理器的资源浪费问题。其自扩展架构显著降低了逻辑单元使用量、内存占用和动态功耗,同时凭借组合ALU与优化流水线设计,在保持较低时钟频率下实现了更高的指令吞吐率。该设计为嵌入式系统(尤其是能量受限的IoT、边缘计算设备)提供了一种高能效、可定制的处理器实现方案。未来工作将扩展三角运算单元、中断支持等功能,进一步强化SAPHO在复杂嵌入式场景中的适用性。

生物通微信公众号
微信
新浪微博


生物通 版权所有