跳转至

Homepage

[XiangShan Biweekly 85] 20250915

Welcome to XiangShan biweekly column! Through this column, we will regularly share the latest development progress of XiangShan. We look forward to your contribution.

This is the 85th issue of the biweekly report.

In this biweekly report, we are excited to announce the release of the XiangShan Compiler Collection (XSCC). Built on the LLVM framework, XSCC is a high-performance compiler optimized for open-source high-performance RISC-V processor XiangShan. It focuses on microarchitecture-level performance enhancement strategies such as memory access optimization, branch prediction improvement, loop unrolling, and automatic vectorization. Currently, XSCC 1.0 is developed based on LLVM 19.1.0.

This release is the XSCC v1.0 binary distribution package, providing a cross-compiler for RISC-V (generating riscv64 target code). It can run on hosts with Ubuntu 22.04 or above (x86_64), with glibc as the default C standard library. The distribution package can be downloaded from the GitHub Releases page: https://github.com/OpenXiangShan/xscc/releases.

From this issue onwards, we will include performance data of SPEC 2006 compiled with XSCC for your reference.

In the past two weeks, the V3 frontend refactoring is nearly complete, with each BPU adapted to the new frontend framework, and corresponding modifications made to the backend. The memory access and cache team mainly fixed some bugs in V2 while developing new tools.

【香山双周报 85】20250915 期

欢迎来到香山双周报专栏,我们将通过这一专栏定期介绍香山的开发进展。我们期待您的贡献。

本次是第 85 期双周报。

在本次双周报中,我们非常高兴地向大家宣布,香山要有属于自己的编译器了!香山编译器(XiangShan Compiler Collection, XSCC) 是一款基于香山开源高性能 RISC-V 处理器研发的高性能编译器,依托 LLVM 框架开发,专注于访存优化、分支预测改进、循环展开与自动矢量化等微架构级性能提升策略。目前,XSCC 1.0 基于 LLVM 19.1.0 开发。

本次发布为 XSCC v1.0 二进制发行包,提供面向 RISC‑V 的交叉编译器(生成 riscv64 目标代码)。可在 Ubuntu 22.04 以上版本的主机 (x86_64) 运行,默认配套的 C 标准库为 glibc。在 GitHub Releases 页面可下载该发行包:https://github.com/OpenXiangShan/xscc/releases。

在过去的两周,前端 V3 重构基本完成,各个 BPU 适配新的前端框架,后端也做了对应修改。访存与缓存主要修复了 V2 的一些 bug,同时开发了一些新的工具。

从本期双周报开始,我们将在性能评估部分加入使用 XSCC 编译的 SPEC 2006 性能数据,供大家参考。

[XiangShan Biweekly 83] 20250818

Welcome to XiangShan biweekly column! Through this column, we will regularly share the latest development progress of XiangShan. We look forward to your contribution.

This is the 83rd issue of the biweekly report.

In the last two weeks, frontend continues V3 RTL development, while exploring BP design in simulator. Backend and memory subsystem fix some bugs in V2. In the meantime, backend makes some preparations for V3 RTL development, mainly including some code clean-up and fontend-backend IO refactor.

【香山双周报 83】20250818 期

欢迎来到香山双周报专栏,我们将通过这一专栏定期介绍香山的开发进展。我们期待您的贡献。

本次是第 83 期双周报。

在过去的两周,前端继续进行 V3 的 RTL 开发,同时在模型上探索分支预测的设计。后端与访存缓存修复了一系列功能 bug。后端还进行了 V3 开发的准备工作,主要包含一些代码清理和前后端接口重构。

【XiangShan Biweekly 82】20250804

Welcome to XiangShan biweekly column, this is the 82nd issue of our biweekly column. Through this column, we will regularly introduce the progress of XiangShan, hoping to learn and improve together with you.

Recently, various teams working on Kunminghu have started designing V3. In addition, the fronted fixed the issue where Svpbmt NC fetch would still enqueue to IBuffer after flushing, the backend fixed the issue where the xcontext CSR was not reset properly, and the memory and cache subsystem fixed the generation logic related to DCache bus errors to prevent propagation of X states. This update also includes the latest performance improvements of the Kunminghu architecture.

【香山双周报 82】20250804 期

欢迎来到我们的双周报专栏,本次是香山双周报专栏的第 82 期。我们将通过这一专栏,定期介绍香山的开源进展,希望与大家共同学习、一起进步。

近期,昆明湖各组开始进行 V3 的设计。此外,前端修复 Svpbmt NC 取指冲刷后仍入队 IBuffer 的问题,后端修复 xcontext 寄存器未复位的问题,访存和缓存部分修复 Dcache bus error 相关的生成逻辑,以避免 X 态传播。本期还更新了昆明湖架构近期性能。

【XiangShan Biweekly 81】20250721

Welcome to XiangShan biweekly column, this is the 81st issue of our biweekly column. Through this column, we will regularly introduce the progress of XiangShan, hoping to learn and improve together with you.

Recently, various teams working on Kunminghu have started designing V3. In addition, the fronted fixed the logic that checks whether the previous MMIO instruction was successfully committed before fetching a new MMIO instruction, the backend fixed the issue where RAB fails to correctly walk and reallocate physical registers when a move instruction triggers an exception, and the memory and cache subsystem fixed a series of bugs related to misaligned vector loads / stores. This update also includes the latest performance improvements of the Kunminghu architecture.

【香山双周报 81】20250721 期

欢迎来到我们的双周报专栏,本次是香山双周报专栏的第 81 期。我们将通过这一专栏,定期介绍香山的开源进展,希望与大家共同学习、一起进步。

近期,昆明湖各组开始进行 V3 的设计。此外,前端修复 MMIO 取指前判断前一条 MMIO 提交成功的逻辑,后端修复 move 指令发生异常时,rab 回滚重新分配物理寄存器异常的问题,访存和缓存部分修复一系列和向量非对齐相关的 Bug。本期还更新了昆明湖架构近期性能。

【XiangShan Biweekly 80】20250707

Welcome to XiangShan biweekly column, this is the 80th issue of our biweekly column. Through this column, we will regularly introduce the progress of XiangShan, hoping to learn and improve together with you.

Recently, various teams working on Kunminghu have started designing V3. In addition, the fronted fixed issue where parity check might use invalid results when ICache requests cross lines, the backend fixed the issue of incorrect bit width calculation for variables such as the total number of instruction commit and the total number of walk in VTypeBuffer under specific parameters, and the memory and cache subsystem fixed a bug where vector segment instructions failed to correctly report ECC errors. This update also includes the latest performance improvements of the Kunminghu architecture.

【香山双周报 80】20250707 期

欢迎来到我们的双周报专栏,本次是香山双周报专栏的第 80 期。我们将通过这一专栏,定期介绍香山的开源进展,希望与大家共同学习、一起进步。

近期,昆明湖各组开始进行 V3 的设计。此外,前端修复 ICache 请求跨行时,parity 检查可能使用无效结果的问题,后端修复 VTypeBuffer 中指令提交总数、回滚总数等变量在特定参数下位宽计算错误的问题,访存和缓存部分修复向量 segment 指令未成功上报 ecc error 的问题。本期还更新了昆明湖架构近期性能。