Files
2026-04-12 22:20:18 +08:00

1.3 KiB
Raw Permalink Blame History

前言

OpenLA500齐物是一款实现了龙芯架构32位精简版指令集LoongArch32 Reduced的处理器核。OpenLA500的架构为经典的单发射静态五级流水配备两路组相连的指令/数据Cache32项全相连的tlb实现虚实地址映射以及BTB及RAS实现分支预测。基本按照国科大体系结构实验课程逐步设计得到。FPGA运行频率为50M。

OpenLA500经过全面验证已处于稳定状态。并于2023年龙芯全流程平台项目中在SMIC 180um工艺下流片。

以下将从8个方面介绍OpenLA500的设计细节。

  • 设计概述:基于顶层框图,介绍各级流水的划分和各级流水之间的交互,以及流水线与其他模块的交互。
  • 分支预测BTB及RAS两个分支预测器的具体设计以及在流水线中的工作原理。
  • 流水线的发射部分:流水线发射阶段(译码级)操作数准备、前递网络、阻塞控制的设计。
  • 流水线的执行部分alu、mul、div运算部件在流水线中的实现。
  • MMU虚实地址映射逻辑tlb维护。
  • 例外实现:流水线中例外的判断及处理。
  • 访存子系统:指令/数据Cache及AXI总线接口的实现。
  • 调试部分UART在线调试系统与OpenLA500的交互逻辑。