Luyoung
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
loongarch32r 内联汇编的一个注意点

loongarch32r 内联汇编的一个注意点

前言前置知识:“CSRWR 指令将通用寄存器 rd 中的旧值写入到指定 CSR 中,同时将指定CSR的旧值更新到通用寄存器 rd 中。“ LoongArch 的调用规则: 寄存器 别名 用途 $r4 a0 第 1 个参数 $r5 a1 第 2 个参数 $r6 a2 第 3 个参数 … … … 我在初始化 csr_eentry 的时候,打算将 trap_entry 这个函
2026-01-07
C 语言
#标准库
<stdint.h> 的妙处

<stdint.h> 的妙处

前言在做课程设计的时候,有这样的一个代码片段: 123456789101112131415#ifndef MEMORY_HPP#define MEMORY_HPP#define MEM_SIZE (64 * 1024 * 1024) // 64MB memory#define MEM_BASE 0x00000000 // CPU reset PC: 0xffffff
2026-01-03
C 语言
#标准库
biriscv 处理器 npcg 设计

biriscv 处理器 npcg 设计

前言biriscv 的 issue 单元一旦接受到错误的指令,将会把错误的信号,包括目标 pc 发射到前端,提示前端取这个 pc 对应的指令。 前端需要把这个 pc 发射给 icache 单元,返回数据后,将这个 pc 的预测信息 next_taken 和 pc、inst 对齐,一块儿发给 decode 单元,实际上这就是 fetch 单元在做的事情。 但是一旦 npc 做成了两个周期,为了适配
2025-12-22
计算机体系结构
#超标量处理器设计
ssh 连不上 github:身份认证失败

ssh 连不上 github:身份认证失败

问题我今天从 github 下拉一个仓库的时候,突然报错: 12345Connection closed by 20.205.243.166 port 22fatal: Could not read from remote repository.Please make sure you have the correct access rightsand the repository exists.
2025-12-19
github
#github
biriscv 处理器 npc 的周期扩增

biriscv 处理器 npc 的周期扩增

biriscv_fetchbiriscv_fetch 是 biRISC-V CPU 的取指单元,位于 ICache 和 Decode 阶段之间,负责: 管理 PC (Program Counter) 向 ICache 发起取指请求 缓冲 ICache 返回的指令 处理分支跳转请求 支持 MMU(可配置) 下面的分析是没有支持 MMU 的。 branch 处理123456789101112131
2025-12-15
计算机体系结构
#超标量处理器设计
超标量处理器设计:

超标量处理器设计:

第一章 超标量处理器概述为什么需要超标量为了提高 IPC。 普通处理器流水线流水线概述流水线就是为了降低指令周期的时间,提高频率的手段。 流水线的划分一般根据场景,进行划分流水段,并且每一个阶段的延迟尽量相近。 指令间的相关性RAW:无法避免;WAR:可以避免,写到其它寄存器。WAW:同 WAR,也可以避免,写到其它寄存器。 控制相关:只能靠预测器预取,一旦预测错误,会带来严重的性能问题。 超标量
2025-12-04
计算机体系结构
#超标量处理器设计
riscv-boom's bp

riscv-boom's bp

预测器的组合逻辑级联代码实现所有预测器的连接(config-mixins.scala:603-609): 123456789101112// 初始输入(全0预测)val resp_in = (0.U).asTypeOf(new BranchPredictionBankResponse)// 组合逻辑链ubtb.io.resp_in(0) := resp_inbim.io.resp_in(0)
2025-12-02
计算机体系结构
#分支预测
riscv-boom's loop

riscv-boom's loop

loopThe Loop Predictor specializes in predicting loop exit branches.It learns the iteration count of loops and predicts the loop exit when the learned count is reached. Structure: Small table (16 set
2025-12-02
计算机体系结构
#分支预测
riscv-boom's tage

riscv-boom's tage

TAGE is the most advanced branch predictor in BOOM. It uses multiple prediction tables indexed by different history lengths to achieve high accuracy. Key Concepts: Multiple tables with geometrically
2025-12-02
计算机体系结构
#分支预测
riscv-boom's btb

riscv-boom's btb

btbThe Branch Target Buffer (BTB) caches branch target addresses to provide fast prediction of where branches will go. Structure: Set-associative cache (default: 128 sets, 2 ways) Each entry stores:
2025-12-02
计算机体系结构
#分支预测
1234…27

搜索

Hexo Fluid
总访问量 次 总访客数 人