毕业设计大纲

项目文档描述:基于 LoongArch32R 的轻量级 SoC 及嵌入式系统实现

1. 题目简述

本项目设计并实现了一个完整的、基于国产 LoongArch32R 精简指令集架构的嵌入式片上系统。核心内容包括:

  • 定制化 LoongArch32R CPU 核心: 包含双缓存(Cache)结构(指令缓存 I-Cache 和数据缓存 D-Cache)以及动态分支预测器,提升执行效率。
  • 完整 SoC 集成: 集成 AXI、APB、AHB 等标准总线,连接各类外设控制器。
  • 人机交互外设: 实现 VGA 视频输出控制器和 SPI 键盘输入控制器。
  • 轻量级操作系统: 开发了一个带有基本 Shell 的轻量级操作系统。
  • 应用生态: 在操作系统上实现了若干实用程序(如 ls, cat) 和一个核心演示应用:幻灯片播放器,能够驱动 VGA 显示播放幻灯片。

本项目旨在验证自主设计的 LoongArch CPU 核心的功能与性能,并构建一个具备实用演示能力的软硬件协同嵌入式平台。

2. 具体任务

本项目的具体实现任务包括:

  • CPU 微架构设计与实现 (RTL):
    • 实现符合 LoongArch32R 规范的整数核心。
    • 设计并集成分离的指令缓存 (I-Cache) 和数据缓存 (D-Cache)。
    • 设计并集成动态分支预测器(如局部历史预测器、GShare 或 Tournament 等)。
    • 实现必要的流水线控制逻辑。
  • SoC 互连与子系统集成 (RTL):
    • 设计系统总线架构,集成 AXI (高性能外设/内存)、AHB (中等性能外设)、APB (低速外设) 总线。
    • 实现总线桥接器(如 AXI-to-AHB, AHB-to-APB)。
    • 集成 Boot ROM 和主存控制器(如 SDRAM/DDR Controller)。
  • 外设控制器开发 (RTL):
    • VGA 显示控制器: 实现基于 Framebuffer 的 VGA 输出驱动,支持标准分辨率(如 1080P)。
    • SPI 键盘控制器: 实现 SPI 主机控制器,用于读取标准 PS/2 或 USB(通过转换器)键盘的输入。
  • 轻量级操作系统开发 (C/ASM):
    • 实现 Bootloader,完成硬件初始化和内核加载。
    • 开发内核核心功能:内存管理(简单分页/段式)、进程/线程调度(可能简化)、中断/异常处理、基础驱动框架(VGA Framebuffer, SPI 键盘, Timer 等)。
    • 实现一个交互式 Shell,提供基本的命令解析和执行环境。
  • 用户程序开发 (C):
    • 开发基础 Shell 命令:ls (目录/文件列表,可能基于内存文件系统)、cat (文件内容显示)。
    • 核心演示应用 - 幻灯片播放器:
      • 设计简单的幻灯片文件格式(或直接读取图片文件)。
      • 实现图片解码/渲染逻辑(可能简化格式如 BMP 或自定义格式)。
      • 利用 VGA Framebuffer 驱动显示图片。
      • 实现通过键盘控制(如 SPI 键盘)翻页、播放/暂停等功能。
  • 软硬件协同验证与调试:
    • 使用仿真工具(如 Verilator, ModelSim)进行模块级和系统级仿真。
    • 在 FPGA 开发平台(如 Xilinx/Intel FPGA)上进行综合、布局布线和测试。
    • 调试软硬件交互问题,确保整个系统从启动、加载 OS、运行 Shell 到执行应用程序(尤其是幻灯片播放)的完整流程正确无误。

3. 预期目标

本项目的预期达成目标包括:

  • 功能正确性:
    • LoongArch32R CPU 核心能正确执行目标指令集。
    • 缓存和分支预测器功能正确,能有效提升性能。
    • SoC 总线及外设(VGA, SPI 键盘)工作正常,数据通路畅通。
    • 操作系统能成功启动,提供稳定的 Shell 交互环境。
    • 基础命令 ls, cat 能按预期工作。
    • 幻灯片播放器能稳定流畅地加载和显示幻灯片,并响应键盘控制。
  • 系统完整性:
    • 实现从硬件 CPU 到软件应用(幻灯片播放器)的完整垂直集成
    • 构建一个可实际运行在 FPGA 硬件上的、具备人机交互(显示+键盘)能力的嵌入式原型系统。
  • 性能提升验证:
    • 通过基准测试或关键应用(如幻灯片渲染速度)验证缓存和分支预测器带来的性能提升。
  • 演示价值:
    • 提供一个直观、可视化的演示(幻灯片播放),充分展示自主 CPU、SoC 集成、操作系统驱动能力和应用层开发的成果。
  • 技术验证:
    • 验证 LoongArch32R 架构在嵌入式系统领域的可行性。
    • 验证自主设计的带高级特性(Cache, 分支预测)CPU 核心的实用性。
    • 验证轻量级 OS 和图形应用在资源受限平台上的可行性。

毕业设计大纲
http://blog.luliang.online/2025/10/30/毕业设计/
作者
Luyoung
发布于
2025年10月30日
许可协议