E906的指令|学习笔记

本文涉及的产品
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,同步至SelectDB 1个月
简介: 快速学习 E906的指令

开发者学堂课程【高校精品课-大连理工大学-计算机组织与结构:E906的指令】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/3/detail/16052


E906的指令

 

内容介绍

一、E906的指令系统

二、RV32IMAFDCP 指令集

三、平头哥扩展指令集

四、RV32I 整型指令集

 

一、E906的指令系统

E906采用了16/32位混编的 RV32IMAC 指令集,在此基础上扩展了平头哥自定义指令,形成RV32IMAFDCP指令集

- l :整数指令

- M :乘除法指令

- A :原子操作指令

- F :单精度浮点指令

- D :双精度浮点指令

- C :压缩指令

- P : DSP 指令

采用的是16位和32位混编的 RV321MAC 指令集也就是支持整形乘除法原子运算以及压缩指令集在此基础上又扩展了平头哥自定义的指令集,形成了 RV32MAFDCP 指令集各个字母的含义如下所示,l整形指令M乘除法指令,A原子操作指令F单精度浮点指令D 双精度浮点指令C 压缩指令,P 是 DSP 指令。

 

二、RV32IMAFDCP 指令集

口加减法指令

口逻辑操作指令

口移位指令

ロ比较指令

口数据传输指令

ロ分支跳转指令

口内存存取指令

口控制寄存器操作指令

口低功耗指令

口异常返回指令

口特殊功能指令

指令集中包括指令有加减法逻辑操作、移位、比较数据传输分支跳转内存存取控制寄存器的操作低功耗指令异常返回指令和一些特殊功能的指令。

 

三、平头哥扩展指令集

口Cache 操作指令

口同步指令

口扩展算术运算指令

口位操作指令

口访存指令

口双精度浮点高位数据传输指令

口中断加速指令

平头哥给它扩展了一些指令包括 Cache 操作指令同步指令扩展算术运算指令、位操作访存指令,还有双精度浮点高位数据传输指令以及中断加速指令,这是它的指令系统的全貌。

 

四、RV32I 整型指令集

加减法指令

ADD 有符号加法指令

ADDI 有符号立即数加法指令

SUB 有符号减法指令

第一类是加减法指令,包括 ADD 有符号加法,ADD 后面加个 I 就是有符号立即数加法指令,带I的就有一个立即数的运算减法就是 SUB 有符号减法指令逻辑操作呢就是典型的与操作或操作和异或操作。

口移位指令

-SLL 逻辑左移指令

-SLLI 立即数逻辑左移指令

-SRL 逻辑右移指令

-SRLI 立即数逻辑右移指令

-SRA 算术右移指令

-SRAI立即数算术右移指令

移位指令包括逻辑左移、立即数逻辑左移逻辑右移、立即数逻辑右移算术右移和立即数的算术右移。一般的处理器里面算术左移和逻辑左移的功能是一样的,所以没有涉及这条指令。

比较指令

-SLT 有符号比较小于置位指令

-SLTU 无符号比较小于置位指令

-SLTI 有符号立即数比较小于置位指令

-SLTIU 无符号立即数比较小于置位指令

数据传输指令

-LUI 高位立即数装载指令

AUIPC PC 高位立即数加法指令

有符号比较小于置位指令无符号比较小置位指令,有符号数无符号整数的立即数比较小于置位指令

口分支跳转指令

-BEQ 相等分支指令

-BNE 不等分支指令

-BLT 有符号小于分支指令

-BGE 有符号大于等于分支指令

-BLTU 无符号小于分支指令

-BGEU 无符号大于等于分支指令

-JAL 直接跳转子程序指令

-JALR 寄存器跳转子程序指令

内存存取指令

-LB 有符号扩展字节加载指令

-LBU 无符号扩展字节加载指令

-LH 有符号扩展半字加载指令

-LHU 无符号扩展半字加载指令

-LW 有符号扩展字加载指令

-SB 字节存储指令

-SH 半字存储指令

-SW 字存储指令

口低功耗指令

-WFI 进入低功耗模式指令

口异常返回指令

-MRET 机器模式异常返回指令

口特殊功能指令

-FENCE 存储同步指令不可预期

-FENCE .1指令流同步指令阻塞执行

-ECALL 环境异常调用指令

-EBREAK 断点指令

RV32M 乘除法指令如下

-MUL 有符号乘法指令

-MULH 有符号乘法取高位指令

-MULHSU 有符号与无符号乘法取高位指令

-MULHU 无符号乘法取高位指令

-DIV 有符号除法指令

-DIVU 无符号除法指令

-REM 有符号取余指令

-REMU 无符号取余指令

一个处理器支持乘除法的就意味着它内部有硬件的乘法器除法器,MUL 是乘法指令,DIV 是除法指令,取余数指令和除法是一回事,只不过一个要商一个要余数还有原子操作的指令还有压缩指令。

相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
存储 缓存 人工智能
玄铁 E906处理器简介|学习笔记
快速学习玄铁 E906处理器简介
2865 0
玄铁 E906处理器简介|学习笔记
|
前端开发 API Python
使用 tkintertools 模块显示简单的 3D 效果
如何使用 Python 快速又简单地显示 3D 效果呢?使用 tkintertools 模块,轻松地做到这一点!(本文适用于 tkintertools-v2.6.6)
611 1
如何用晶体管构建异或门
。XOR ,异或的缩写,它是一种逻辑运算,当高电平输入的数量为奇数时,产生高电平输出;当低电平输入的数量为偶数时,产生低电平输出。这种独特的特性使异或门成为各种应用中的重要组成部分,从简单的二进制算术到复杂的数据加密算法。 在本文中,我们将探讨异或门的内部工作原理,包括其真值表、逻辑符号表示、电路图以及使用晶体管的实际构造。
1616 0
|
11月前
|
消息中间件 存储 监控
消息队列通信的优缺点
【10月更文挑战第29天】消息队列通信具有诸多优点,如解耦性强、异步通信、缓冲削峰等,能够有效地提高系统的灵活性、可扩展性和稳定性。但同时也存在一些缺点,如系统复杂性增加、性能开销、数据一致性挑战和实时性受限等。在实际应用中,需要根据具体的业务需求和场景,权衡其优缺点,合理地选择和使用消息队列通信机制,以实现系统的高效运行和优化。
|
12月前
|
机器学习/深度学习 人工智能 算法
机器学习【教育领域及其平台搭建】
机器学习【教育领域及其平台搭建】
290 6
|
机器学习/深度学习 自动驾驶 算法
Skeleton Recall Loss 分割领域的新突破:极大的减少了资源消耗,还能提高性能
这篇论文则介绍了一个新的损失:Skeleton Recall Loss,我把它翻译成骨架召回损失.这个损失目前获得了最先进的整体性能,并且通过取代密集的计算**他的计算开销减少超过90% !**
178 1
Skeleton Recall Loss 分割领域的新突破:极大的减少了资源消耗,还能提高性能
|
存储 人工智能 编译器
存算一体新兴力量:解析我国企业在存储创新、技术路径上的多元化探索
存算一体新兴力量:解析我国企业在存储创新、技术路径上的多元化探索
648 6
|
Rust 算法 数据安全/隐私保护
【密码学】一文读懂SM3
SM3是中华人民共和国政府采用的一种密码散列函数标准,前身为SCH4杂凑算法,由国家密码管理局于2010年12月17日发布,相关标准为"GM/T 0004-2012 《SM3密码杂凑算法》"。
4299 0
【密码学】一文读懂SM3
|
Ubuntu Linux 芯片
linux系统中wifi驱动的配置与编译实现方法
linux系统中wifi驱动的配置与编译实现方法
1420 1
|
存储 缓存 程序员
E906的存储系统|学习笔记
快速学习 E906的存储系统
443 0
E906的存储系统|学习笔记