
计算机体系结构
文章平均质量分 87
疯狂的码泰君
代码不是信仰,又有什么可以成为信仰呢!哦,还有鲁能泰山!!!
展开
-
CISC 和 RISC 架构的对比
研究 RISC 架构优缺点的最简单方法是将其与其前身进行对比: CISC(复杂指令集计算机)架构。原创 2024-09-11 09:18:20 · 1466 阅读 · 0 评论 -
怎么画一个 有限状态机
有限状态机对于证明某些问题是可计算的(或不可计算的)是必要的。由于我目前正在学习有关它们的一些知识,我希望能够自动绘制这些有限自动机。我将使用 。该图像是从 gv 文件创建的。我将其另存为 fsm.gv:要创建图形(或非确定性有限状态机的图片),您必须在 Ubuntu Linux 中输入以下命令:Deterministic finite-state machine ¶InstallationOder mit apturl installieren, Link: apt://graphvizDO原创 2024-02-22 22:20:52 · 793 阅读 · 0 评论 -
gem5标准库概述
组件包的核心是电路板的概念。例如,存储器设备和处理器可以被添加到板,其中板负责通信,而假设存储器或处理器符合已知的API,则存储器或处理器的设计者不必考虑这一点。与编程语言中的标准库类似,gem5标准库旨在为gem5的用户提供常用的组件、特性和功能,以提高他们的生产力。用户可以在其 Python 配置文件中指定需要特定的 gem5 资源,并且在运行时,该包将检查主机系统上是否有本地副本,如果没有,则下载它。在 gem5 的上下文中,资源是在模拟中或由模拟使用的东西,但不直接用于构建要模拟的系统。原创 2024-02-21 11:18:07 · 766 阅读 · 0 评论 -
在计算机上设置和使用 KVM
为了使用 gem5 的 KVMCPU 来快进你的模拟,你必须有一个 KVM 兼容的处理器并且在你的机器上安装了 KVM。本页将引导您完成在计算机上启用 KVM 并将其与 gem5 一起使用的过程。注意:以下教程假设 X86 Linux 主机。本教程的各个部分可能不适用于其他体系结构或不同的操作系统。目前,KVM 支持仅适用于 X86 和 ARM 模拟(使用各自的 X86 和 ARM 主机)。原创 2024-02-21 10:37:10 · 500 阅读 · 0 评论 -
LoongArch 指令集学习
把一些常见的LoongArch指令集的指令总结了一下,包括指令格式和指令码!原创 2023-10-19 10:22:04 · 2639 阅读 · 0 评论 -
LoongArch 指令集异常-中断指令学习与设计
龙芯架构 32 位精简版中处理器核分为 2 个特权等级(Privilege LeVel,简称 PLV),分别是 PLV0 和 PLV3。处理器核当前处于哪个特权等级由 CSR.CRMD 中 PLV 域的值唯一确定。所有特权等级中,PLV0 是具有最高权限的特权等级,也是唯一可以使用特权指令并访问所有特权资源的特权等级。PLV3 这个特权等级不能执行特权指令访问特权资源。对于 Linux 系统来说,架构中仅 PLV0 级可对应核心态,PLV3 级对应用户态。原创 2023-12-25 16:14:13 · 690 阅读 · 0 评论 -
LoongArch指令集-特权指令系统——摘抄自胡伟武体系结构和龙芯架构32位精简版参考手册
在计算机系统层次结构中,应用层3在操作系统层之上,只能看到和使用指令系统的一个子集,即指令系统的用户态部分。每个应用程序都有自己的寄存器、内存空间以及可执行的指令。现代计算机的指令系统在用户态子集之外还定义了操作系统核心专用的特权态部分,我们称之为特权指令系统。现代计算机的操作系统都实现了保护模式,至少需要用户态和核心态两种运行模式。应用运行在用户态模式下,操作系统运行在核心态模式下。因此,指令系统必须有相应的运行模式以做区分。LoongArch定义了PLV0~PLV3四种模式。原创 2023-12-25 15:38:54 · 2116 阅读 · 0 评论 -
在 Ubuntu22.04上安装仿真工具 Verilator——翻译自官网
在Ubuntu22.04上安装Verilog仿真工具Verilator 的步骤!原创 2023-11-29 14:49:17 · 2479 阅读 · 0 评论 -
Gem5 入门——利用 Gem5 模拟器创建一个简单的配置脚本
现在,我们已经创建了一个简单的模拟脚本(其完整版本可在gem5代码库中的configs/learning_gem5/part1/simple.py找到),我们已经准备好运行gem5了。在本书中,我们将不从这些复杂的脚本开始,而是从能够运行 gem5 的最简单脚本开始,并以此为基础进行构建。在本例中,由于我们要模拟的系统没有任何缓存,我们将把 I 缓存和 D 缓存端口直接连接到内存总线上。在本示例系统中,我们没有缓存。在这个脚本中,你需要创建一个要模拟的系统,创建系统的所有组件,并指定系统组件的所有参数。原创 2023-11-21 10:37:45 · 729 阅读 · 0 评论 -
Gem5入门——系统仿真模拟器之构建gem5
Gem5教程——构建Gem5原创 2023-11-18 17:32:02 · 2939 阅读 · 0 评论