risc-v学习笔记(代码片段)

夏风喃喃 夏风喃喃     2022-12-03     573

关键词:

RISC-V学习笔记(1)

作者:夏风喃喃
参考:计算机组成与设计:硬件/软件接口(RISC-V版)

第1章 计算机抽象及相关技术

1.6 性能

1.6.1 性能的定义

响应时间:也叫执行时间(execution time),是计算机完成某任务所需的总时间。通常有 性 能 = 1 执 行 时 间 性能=\\frac1执行时间 =1

吞吐率:也叫作带宽(bandwidth),性能的另一种度量参数,表示单位时间内完成的任务数量。

1.6.2 性能的度量

CPU执行时间:简称为CPU时间,执行某一任务在CPU上所花费的时间。

用户CPU时间:程序本身所花费的CPU时间。表征CPU性能

系统CPU时间:为执行程序而花费在操作系统上的时间。表征系统性能。

时钟周期数:计算机一个时钟周期的时间,通常指处理器时钟,并在固定频率下运行。

周期长度:每个时钟周期持续的时间长度。

1.6.3 CPU性能及其度量因素

程 序 的 C P U 执 行 时 间 = 程 序 的 C P U 时 钟 周 期 数 × 时 钟 周 期 长 度 程序的CPU执行时间=程序的CPU时钟周期数×时钟周期长度 CPU=CPU×
程 序 的 C P U 执 行 时 间 = 程 序 的 C P U 时 钟 周 期 数 时 钟 频 率 程序的CPU执行时间=\\frac程序的CPU时钟周期数时钟频率 CPU=CPU

1.6.4 指令性能

C P U 时 钟 周 期 数 = 程 序 的 指 令 数 × 指 令 平 均 时 钟 周 期 数 CPU时钟周期数=程序的指令数×指令平均时钟周期数 CPU=×

指令平均时钟周期数(CPI):表示执行某个程序或者程序片段时每条指令所需的时钟周期平均数。

1.6.5 经典的CPU性能公式

结合1.6.3与1.6.4,得到经典的CPU性能公式:
C P U 时 间 = 指 令 数 × C P I × 时 钟 周 期 长 度 CPU时间=指令数×CPI×时钟周期长度 CPU=×CPI×
C P U 时 间 = 指 令 数 × C P I 时 钟 频 率 CPU时间=\\frac指令数×CPI时钟频率 CPU=×CPI

注:另有一种度量性能的尺度是每秒百万条指令数(CPI),表示为
M I P S = 指 令 数 执 行 时 间 × 1 0 6 = 指 令 数 指 令 数 × C P I 时 钟 频 率 × 1 0 6 = 时 钟 频 率 C P I × 1 0 6 MIPS=\\frac指令数执行时间×10^6=\\frac指令数\\frac指令数×CPI时钟频率×10^6=\\frac时钟频率CPI×10^6 MIPS=×106=×CPI×106=CPI×106

risc-v指令学习笔记(基于ch32v103)(代码片段)

文章目录RISC-V指令学习笔记(基于CH32V103)一、指令结构分类二、寄存器功能三、加载存储指令四、算数运算指令五、移位指令六、逻辑操作指令七、跳转指令7.1条件跳转7.2无条件跳转八、比较判断九、CSR操作指令RISC-V指... 查看详情

risc-v指令学习笔记(基于ch32v103)(代码片段)

文章目录RISC-V指令学习笔记(基于CH32V103)一、指令结构分类二、寄存器功能三、加载存储指令四、算数运算指令五、移位指令六、逻辑操作指令七、跳转指令7.1条件跳转7.2无条件跳转八、比较判断九、CSR操作指令RISC-V指... 查看详情

沁恒ch32学习——risc-v架构学习笔记

作为新手第一次接触RISC-V架构时。我首先百度简单了解了ARM架构和RISC-V架构的区别,以我个人的理解是ARM架构代表之前的复杂指令集,而RISC-V架构代表着精简指令集。就比如说同样是一个舞蹈动作,复杂指令集可能会... 查看详情

renode应用:在risc-v核上运行freertos(代码片段)

本篇记录通过Renode在RISC-V核上运行FreeRTOSdemo的情况。本来不准备写这一篇,但是发现近期工作学习密度实在太大,上周工作的中间结果这周竟然完全想不起来了,不得不又花了一些时间从头摸索着重新配置了一遍࿰... 查看详情

springboot学习笔记——thymeleaf(代码片段)

前置知识:SpringBoot学习笔记——SpringBoot简介与HelloWordSpringBoot学习笔记——源码初步解析SpringBoot学习笔记——配置文件yaml学习SpringBoot学习笔记——JSR303数据校验与多环境切换SpringBoot学习笔记——自动配置原理SpringBoot学习笔记... 查看详情

markdowntensorflow学习笔记(代码片段)

查看详情

markdown学习笔记(代码片段)

查看详情

markdownsympy学习笔记(代码片段)

查看详情

[risc-v]移植rtthreadnano到risc-v芯片(代码片段)

...://gitee.com/dengchow/yuheng-riscv-soc.git〇、前言本文记录的是在risc-v芯片上移植rt-threadnano的过程。使用到的risc-v芯片是玉衡(YuHeng,yuheng-riscv),一款并不存在于现实世界的芯片,同picorv32和darkriscv一样,仅存在... 查看详情

markdown熊猫学习笔记(代码片段)

查看详情

markdown机器学习笔记(代码片段)

查看详情

ceressolverdocument学习笔记(代码片段)

CeresSolverDocument学习笔记CeresSolverDocument学习笔记1.基本概念2.基本方法2.1CostFunction2.2AutoDiffCostFunction2.3NumericDiffCostFuntion2.4LossFunction2.5LocalParameterization2.6Problem2.7Solver2.8CovarianceCeresSol 查看详情

学习笔记mybatis学习笔记(代码片段)

本文是动力节点MyBatis教程的学习笔记。第一章1.三层架构(1)三层的功能表示层(UserInterfaceLayer):接受用户数据,显示请求的处理结果,包括jsp、html、servlet等。对应controller包;业务逻辑层(BusinessLogic... 查看详情

学习笔记mybatis学习笔记(代码片段)

本文是动力节点MyBatis教程的学习笔记。第一章1.三层架构(1)三层的功能表示层(UserInterfaceLayer):接受用户数据,显示请求的处理结果,包括jsp、html、servlet等。对应controller包;业务逻辑层(BusinessLogic... 查看详情

lsof学习笔记(代码片段)

lsof学习笔记安装yuminstalllsof应用1、查看端口lsof-i:332242、查看进程ps-aux|grep876792、统计数量dockerimages|grep163110|wc-l 查看详情

springboot学习笔记——web开发探究(代码片段)

前置知识:SpringBoot学习笔记——SpringBoot简介与HelloWordSpringBoot学习笔记——源码初步解析SpringBoot学习笔记——配置文件yaml学习SpringBoot学习笔记——JSR303数据校验与多环境切换SpringBoot学习笔记——自动配置原理Web开发探究简介... 查看详情

《嵌入式系统-rt-thread开发笔记》手把手教你使用rt-thread制作gd32risc-v系列bsp(代码片段)

熟悉RT-Thread的朋友都知道,RT-Thread提供了许多BSP,但不是所有的板子都能找到相应的BSP,这时就需要移植新的BSP。RT-Thread的所有BSP中,最完善的BSP就是STM32系列,但从2020年下半年开始,国内出现史无前例的... 查看详情

linux学习笔记一(代码片段)

linux学习笔记一文章目录linux学习笔记一Linuxpackageoperationoflookingfilesoperationhelpcommandsowncommandsechotunnelechoagainuserorrootprocessingaliasagainfinding这个是我在学习linux系统的时候的一点的小小的总结,希望对大家有一定的在帮助啦。Linux 查看详情