首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

RISCV 32位基础和64位扩展

RISC-V是一种基于精简指令集计算机(Reduced Instruction Set Computer,RISC)原则设计的开源指令集架构(Instruction Set Architecture,ISA)。它提供了32位基础指令集和64位扩展指令集两种版本。

RISC-V 32位基础指令集是RISC-V架构最基本的版本,它包含了一组简洁而高效的指令,用于执行常见的计算和数据处理任务。这个版本的RISC-V适用于资源受限的嵌入式系统和低功耗设备,如物联网设备、传感器、嵌入式控制器等。它具有以下特点和优势:

  1. 简洁高效:RISC-V 32位基础指令集采用了精简的指令集设计,使得指令执行速度更快,占用的存储空间更小,适合于资源受限的设备。
  2. 开放标准:RISC-V是一种开源指令集架构,任何人都可以免费使用、设计和实现RISC-V处理器。这使得RISC-V成为了一个开放的生态系统,吸引了众多厂商和开发者的参与和贡献。
  3. 可扩展性:RISC-V 32位基础指令集可以通过添加扩展指令集来满足不同应用的需求。这种可扩展性使得RISC-V可以适应不同领域和应用的需求,提供更灵活的解决方案。

RISC-V 64位扩展指令集是在32位基础指令集的基础上扩展而来的,它增加了对64位数据和地址的支持,提供了更大的寻址空间和更高的计算能力。这个版本的RISC-V适用于需要处理大数据和复杂计算任务的应用场景,如高性能计算、服务器、云计算等。它具有以下特点和优势:

  1. 更大的寻址空间:RISC-V 64位扩展指令集支持64位地址,可以处理更大的内存空间,满足对大数据的处理需求。
  2. 更高的计算能力:64位指令集可以处理更大的数据,提供更高的计算能力和精度,适用于需要进行复杂计算的应用场景。
  3. 兼容性:RISC-V 64位扩展指令集与32位基础指令集兼容,可以在同一处理器上同时支持32位和64位的应用程序。

腾讯云提供了适用于RISC-V架构的云服务器实例,可以满足用户对RISC-V架构的需求。具体产品信息和介绍可以参考腾讯云的官方网站:腾讯云RISC-V云服务器

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

TypeScript基础(三)扩展类型-接口类型兼容性

它是一种约定,用于描述对象应该具有哪些属性方法。接口可以提高代码的可读性、可维护性可重用性。接口的定义使用关键字interface,后面跟着接口的名称一对花括号。...总结一下,TypeScript中的接口用于定义对象的结构类型。它可以描述对象的属性、方法、函数类型、可选属性只读属性等特性。接口可以提高代码的可读性、可维护性可重用性。...接口继承接口继承是指一个接口可以继承另一个接口的成员,从而拥有父接口的属性方法。通过接口继承,可以实现代码的复用组合。...结构化类型:如果两个类型具有相同的属性方法,并且它们的属性方法具有相同的名称类型,那么它们是兼容的。这种规则被称为“鸭子类型”或“结构化子类型”。...具有相同的属性方法2.

24140

Java基础篇(02):特殊的String类,相关扩展API

一、String类简介 1、基础简介 字符串是一个特殊的数据类型,属于引用类型。String类在Java中使用关键字final修饰,所以这个类是不可以继承扩展修改它的方法。...(是真的妖娆…) 2、类构造方法 String类结构 特点:final关键字修饰,实现Serializable序列化接口,Comparable比较接口,CharSequence字符序列接口。...絮叨一句:代码整洁之道的基础,就是有一颗《偷懒》的心,花点心思该封装的封装,该删除的删除。...三、扩展API 1、StringBuffer类 字符串修改拼接常用的API,内部的实现过程String类似。...补刀一句:对于线程安全操作和非安全操作,还有初始容量扩容这种逻辑,都可以在源码中查看,这是进阶程序员的必备意识。 3、再看传参问题 这里原理解释同上,根本逻辑是一致的。

44510

教你在RISCV中使用DSP指令!

1.概述 2.RISCV P扩展编程实践(内联汇编) ADD16 (SIMD 16-bit Addition) 3.RISCV P扩展编程实践(库函数) 4.总结 1.概述 DSP有相关的专业芯片,能够专门实现计算功能...于是,一些通用芯片上也开始集成DSP扩展,比如常见的ARM Cortex-RARM Cortex-M内核。 有了这些DSP扩展支持,其功能更加强大,使用上,许多的办法都可以进行。...上述是ARM对DSP支持的使用,RISCV也支持DSP扩展,在RISCV的架构手册上,就对DSP扩展有着一些描述。...下面来描述一下具体如何在RISCV上进行DSP的编程。 2.RISCV P扩展编程实践(内联汇编) riscv-p-spec规定了P扩展的一些常用的函数功能。...3.RISCV P扩展编程实践(库函数) 在很多情况下,底层的DSP指令虽然可以完成很多功能,不同的组合方式将能够带来不同效果,但是这些基础库的使用,在很多方面也需要编程人员有很强的数学基础,并不能提供通用的

1.8K11

MIT6.8286.S081-2019:MacOS下risc-vxv6环境搭建

本文介绍搭建Mit6.828/6.S081 fall2019实验环境的详细过程,包括riscv工具链、qemuxv6,以MacOS下的实践为例,Linux系统同样可以参考。...所以这次选择了以动手实践为主的课程,直接对内核源码进行学习扩展,一步步揭开OS的神秘面纱。...MIT6.828: Operating System Engineering 在2019版本更名为6.S081,针对本科生教学,难度也有所下降,适合0基础学习,所需的计算机知识C语言语法也十分基础。...课程的学习直接跟着官网的schedule走就行,先看Lecture下提供的讲义手册,然后完成相应的Lab,Lab共计10个,主要内容是在xv6基础上进行内核开发扩展。...环境搭建 MacOS下需要事先准备好xcodehomebrew,我的系统版本是10.13.4,xcode版本是9.4。

2.9K31

【Rust 基础篇】Rust 父trait:扩展组织trait的继承体系

有时候,我们需要在一个trait的基础扩展更多的行为,或者将多个trait组合起来形成一个更大的trait继承体系。这时,Rust的父trait就派上用场了。...通过父trait的继承,我们可以在一个trait的基础上构建更丰富的行为,使代码更具灵活性可复用性。...使用场景 父trait主要用于以下场景: 2.1 扩展trait的行为 有时候,我们希望在一个trait的基础扩展更多的行为,而不是从头定义一个新的trait。这时,父trait的继承就非常适用。...通过父trait的继承,我们可以在现有的trait上构建更丰富的功能,使代码更具灵活性扩展性。...父trait主要用于扩展trait的行为组合多个trait。通过深入理解和合理使用父trait,我们可以在Rust中灵活组织trait的继承体系,使代码更具灵活性可复用性。

31430

riscv实现自定义指令并用qemu运行

riscv实现自定义指令并用qemu运行 1.说明 2.riscv扩展指令的添加 3.裸机代码编译 4.qemu编译指令的扩展 4.1 添加扩展指令的decodetree 4.2 添加扩展函数 4.3...当然,如果实现的很好,是需要修改riscv的gcc的,让自己的扩展指令加入。这里不做修改,后面会详细描述细节。...2.riscv扩展指令的添加 目的: 实现cube指令,传入一个数,比如2,那么该指令返回的结果是8,如果是3,则返回3^3=27。...4.qemu编译指令的扩展 本机测试环境是Ubuntu20.04,首先需要从官方网站上下载最新的代码。 执行下面的命令,安装编译环境。...4.2 添加扩展函数 在扩展函数实现上可以在target/riscv/insn_trans/trans_rvi.c.inc中添加 static bool trans_cube(DisasContext

3.7K41

基于xv6 riscv实现学习os 其零:helloworld

pixiv:30933181 前言 这个系列的目的还是以讲解xv6-riscv的代码以及记录我在做的事情为主,也会掺杂许多mini-riscv-os的代码介绍(关于xv6-riscvmini-riscv-os...的链接请看参考),并非教程倾向(但也会尽可能讲解一些基础知识),很多细节不会讲到。...实现os这件事情看起来是挺吓人的,本身复杂的概念各种实现,同时需要许多前置知识。同时大多数os的开始都是离谱的x86bootloader,我想这个应该劝退了非常多的人。...注意事项 mini-riscv-os是针对riscv32,而xv6针对的是riscv64,导致一些汇编上、编译选项以及一些其他的内容会有所不同 代码引用会直接使用项目名/路径的格式 此后不再赘述 环境配置...是一种模块化的指令集,不同的名字代表支持的扩展指令集不同,关于详情参考 RISC-V#ISA_base_and_extensions 之后直接通过make命令编译出elf之后通过qemu启动就好 参考

88220

里程碑:RISC-V 基金会批准基础指令集架构与特权架构规范

近日,RISC-V 基金会宣布批准 RISC-V 基础指令集架构 与 特权架构 规范,为 RISC-V 的可扩展性进一步奠定了基础。 ?...RISC-V 基础指令集架构 是应用软件与硬件之间的接口,编码为此规范的软件将继续在 RISC-V 处理器上永久使用,即使架构通过开发新扩展而发展也不受影响。...官方表示 RISC-V 采用简单的固定基础 ISA 模块化固定标准扩展设计,有助于防止碎片化,同时支持定制,RISC-V 生态已经在此前的各种实现上展示了很大程度的互操作性,而现在批准了基础架构规范,...每个权限级别都有一组核心的特权 ISA 扩展,带有可选的扩展变体,包括机器 ISA、主管 ISA 管理程序 ISA。...关于特权架构规范的更多信息查看: https://riscv.org/specifications/privileged-isa 官方公告: https://riscv.org/2019/07/risc-v-foundation-announces-ratification-of-the-risc-v-base-isa-and-privileged-architecture-specifications

84310

全志D1开发板(哪吒 RISCV64)开箱评测

2.支持RVV 这个也较为关键,在RISCV中对于多媒体加速指令上,采用的是V扩展,也就是RISCV V-extension。...通过查看isa,可以看到该riscv指令集支持的是rv64,,支持单双精度浮点,压缩指令以及V扩展等等。 ? 接着通过查看内存,知道总的内存为1G。 ?...并且该处理器为单核,性能方面树莓派等等还是有一些距离的。 3.资料情况 作为一款riscv开发板,其定位还算比较高,所以资料是否全面也是非常重要的。这直接关系到可玩性以及生态建设的问题。...第二第三阶段的启动则是启动了opensbiuboot,最后启动Linux的kernel。 这样看来,一般的riscv的启动流程基本一样。...从总体的性能上树莓派没法正面对抗,但单从RISCV的角度上来说又值得研究。整个尝试下来,对新手并不是特别的友好,但是对于对RISCV有一定经验的工程师来说,也是算比较友好的了。

4.4K50

用哪吒D1开发板体验riscv向量底层编程

用哪吒D1开发板体验riscv向量底层编程 1.前言 2.机器模式处理器状态寄存器(MSTATUS) 3.编译选项支持V扩展 4.RISCV向量计算的原理 5.通过实例分析RISCV V扩展的运作机制...6.RVV使用体验 1.前言 RISCV V扩展即向量指令扩展(RVV),这部分作为研究AI加速计算领域有着非常关键的作用。...利用了多媒体加速指令集,可以让计算变得更加的高效,同时并行计算的特性使得同时多次计算一组数字成为可能,类似于arm的NEON等等,那么RISCV又该如何去开启使用V扩展指令,让计算变得更加高效呢?...3.编译选项支持V扩展 默认情况下,平头哥提供的交叉编译工具链已支持了V扩展的编译。只需要在编译选项中开启即可。 ? 从传递给riscv 的gcc的选项来看,带有v扩展即可。...6.RVV使用体验 刚接触到riscv 的 V扩展编程时,很多概念都理解的很模糊,感觉十分的困难,通过一段时间梳理之后,发现以前mips上接触的mxu或者arm的neno使用上大多数是一样的,就需要去设置使用寄存器的长度

1.6K40

heco生态链流动性挖矿dapp系统开发部署(成熟技术)

火币生态链 Huobi ECO Chain(HECO)是一个去中心化高效节能公链,也是火币开放平台推出的首个产品,在支撑高性能交易得基础上,实现智能合约的兼容。...Heco是火币开放平台的公链基础设施,未来将成为承载用户、资产应用的基础平台。概述RISC-V service 为 Huobi Chain 提供了一个支持 RISC-V 指令集的虚拟机服务。...就生成代码的体积质量(运行过程中 cycle 的消耗)而言,目前最成熟的工具是 riscv-gcc。...Bank 合约实现了存钱、取钱、查余额等功能,展示了合约如何与其它合约相互操作(例如存钱时需要调用 ERC20 合约的 transfer_from 功能),该合约本身并没有什么现实意义,但可以很容易扩展成一个类似...编译我们使用 riscv-gcc 来将 C 源码编译成二进制文件。由于 riscv-gcc 工具编译较为复杂,我们提供了打包好的 docker 镜像供读者使用。

52240

RISC-V的P扩展

下面仅代表我对RISC V的P扩展指令的一些理解。 ? 按照指令集的设计,其扩展分为基础指令扩展指令部分。基础指令是必须实现的,扩展指令则可根据需求进行定制。...https://github.com/riscv/riscv-p-spec 也就是P指令的扩展实际的作用是增加了RISC-V CPU IP产品的DSP算法处理能力。...通过对RISC-V指令的P扩展,可以以更低的功耗更加高的性能运行这些DSP的应用程序。...2.P扩展与V扩展的差别 通过上述的理解来看,P扩展的官方描述Packed-SIMD Instructions,那么V扩展代表的向量指令集有什么差异呢。...V扩展,向量计算会更加趋向于高效的处理音频视频,以更低的功耗,更快的处理速度,更加简单的方式去处理图像、视频、音频等,大大提高处理器的性能。

3.2K50

嵌入式编程中使用qemu能够做什么?

在进行rtos的开发过程中,经常会采用qemu作为调试工具,进行龙芯、树莓派、riscv相关的开发验证工作。...除此之外,我也在qemu的支持上做了一些扩展开发,比如在riscv的生态支持上对gd32的rv-star在中科院软件研究所的基础上做了一些研究,同时对nuclei的各种处理器系列做了适配。...这样对于软件层面的验证更加有用,比如去运行一下nuclei-sdk,或者对于RISCV的V扩展的支持的nmsis的支持。...-kernel CMSIS/nmsis_release/NMSIS/DSP/Examples/RISCV/riscv_matrix_example/dsp_example.elf 这样可以进行相关的...由于对riscv的p扩展v扩展的支持,使得其行为实际硬件板子无差异。在qemu做算法优化研究也是非常值得去尝试的。

1.6K20

从零实现操作系统-手把手教你搭建环境

所以最近打算好好学习下操作系统的知识,选择了以动手实践为主的课程,直接对内核源码进行学习扩展,一步步揭开OS的神秘面纱。 1....通过实现部分内核功能来学习设计实现操作系统。 6.S081 由课程实验组成。课程的前半部分是介绍系统的各种概念实现。后半部分是讲一些论文,比如 meldown,et3fs。...课程的学习打算直接跟着官网的schedule走,先看Lecture下提供的讲义手册,然后完成相应的Lab,Lab共计11个,主要内容是在xv6基础上进行内核开发扩展。...我的实现环境: qemu for riscv gdb for riscv gcc for riscv binutils for riscv Windows 10 + VMWare + Ubuntu 20.04...8.2 检查工具链 riscv64-unknown-elf-gcc --version 预期 riscv64-unknown-elf-gcc (GCC) 10.1.0 qemu-system-riscv64

1.4K40

芯昇科技CM32M433R-START开箱评测

扩展架构,支持除了一般RISCV都会支持的RV32IMAC,另外还有F(单精度浮点),S(监督模式Supervisor Mode),U(用户模式User Mode),P(DSP)。...支持了这些扩展,赋予了该芯片特殊的用途。当加入了S与U扩展,可以做TEE,安全加密等用途,而P扩展的加入,赋予了该MCU多媒体计算加速功能。在应用领域方面。...可以看到和加运算确实会被dsp自动向量化,关于dsp自动向量化功能,只能从一定程度上生成对应的DSP指令,很多智能化的操作还需要riscv编译器的不断支持完善,这也是编译工具链不断智能化的一个重要的推进方向...国产RISCV MCU 沁恒CH32V103上手体验 GD32VF103 RISCV开发板试用体验 在资源上CM32M4xxR确实有着一定的优势竞争力,有着内置512KB Flash、144KB SRAM...市面上的RISCV MCU越来越多,其易用性,价格,稳定性,出货等等都是重要的评判标准。中国移动芯昇科技是中国移动旗下的子公司,其研发能力市场资源还是很不错的。

92430

riscv gcc中添加自定义的csr支持

riscv gcc中添加自定义的csr支持 1.概述 2.不改变编译工具链实现CSR添加 3.在编译器中集成CSR名称 4.编译开发riscv gcc相关 5.小结 1.概述 由于RISCV的模块化的指令集的定义...从当前看来,除了标准的CSR外,很多都实现了自己的CSR指令扩展。如何自定义CSR并且让编译器能够识别,本文将进行一定的分析,同时从riscv gcc开发的角度出发,来分析编译器开发的流程。...这里借用玄铁C906上的扩展指令进行实验。 如果不想改变gcc,那么实现上直接可以通过内联汇编。...rv64imac@mabi=lp64 rv64imafc/lp64f;@march=rv64imafc@mabi=lp64f 这样实际上也是消耗了很多时间,为了解决这个问题,可以指定特定的marchmabi...进行编译测试,待开发完成后,发布时在进行整体编译。

1.7K20

基于 Hi3861 平台的 HarmonyOS Device 开发体验

在 VSCode 的 Remote 扩展 SFTP Drive 中先通过账号密码访问远程主机,确保能正常访问到 Linux 主机中的代码和文件。...# 下载交叉编译工具 wget https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux...-7.3.0.tar.gz # 解压工具链 tar -xvf gcc_riscv32-linux-7.3.0.tar.gz # 安装交叉编译工具 mv gcc_riscv32 /usr/local/...我们使用的是 HiHope 出品的 WI-FI IoT Hi3861 套件,涵盖了一个核心板(Hi3861 WLAN 模组)七个扩展模块(交通灯板、炫彩灯板、OLED 板、NFC 板、机器人扩展板),...这部分主要涉及到 ADC I2C,因此我们在进行传感器应用开发的时候,需要特别留意公共基础库中的wifiiot_adc.hwifiiot_i2c.h,文件均位于openharmony/base/iot_hardware

1.7K40

riscv64 裸机编程实践与分析

上面的就包含一个E51的核4个U54的核。 而这段汇编就是将其他的核挂起,只运行hartid == 0的核。.../lp64d 32bits 64bits 64bits 浮点传递规则 - 需要浮点扩展指令?...float参数 double参数 ilp32/lp64 不需要 通过整数寄存器(a0-a1)传递 通过整数寄存器(a0-a3)传递 ilp32f/lp64f 需要F扩展 通过浮点寄存器(fa0-fa1)...传递 通过整数寄存器(a0-a3)传递 ilp32d/lp64d 需要F扩展D扩展 通过浮点寄存器(fa0-fa1)传递 通过浮点寄存器(fa0-fa1)传递 -mcmodel=medany:对于-...-nostdlib:不连接系统标准启动文件标准库文件,只把指定的文件传递给连接器。 -nostartfiles:不带main函数的入口程序。 -Thello.ld:加载链接地址。

2.9K20
领券