cost 81 ms
用于 64 位值的 RV32IM 程序集

[英]RV32IM assembly for 64-bit value

假设数据是32 位整数(a、X、Y 和 Z 是 32 位长),我从以下 C 代码实现了一个 RV32IM 汇编程序。 我验证了我的工作,结果是正确的。 我的 32 位数据工作 现在, Implement with data 是64-bit integer (a, X, Y, Z are 64-bit ...

没有硬件乘法器的处理器最有效的小字长乘法

[英]Most efficient small-word-size multiply for processors without a hardware multiplier

我希望使用 CH32V003(一个 RV32EC 处理器)来执行 ColorChord,它广泛使用乘加来执行 DFT。 但它可以在非常低的位深度、16 位甚至 8 位乘法下运行。 但是,CH32V003 中的RV32EC 不支持RV32 乘法扩展。 我已经尝试探索 godbolt 中的选项,请参阅h ...

这个RISCV版本的TCM和Icache有什么联系?

[英]What does TCM connection with Icache in this RISCV version?

在这个页面的中间( https://github.com/ultraembedded/riscv ),有一个关于核心的框图,我真的不知道TCM和Icache在同一个块中做什么? 在CPU内部是可选的吗? ...

带分支的内联汇编

[英]Inline assembly with branch

我得到以下代码: int *heap_x_test = (int*) malloc(4*sizeof(int)); heap_x_test[0] = 0x00310033 ; // add zero,sp,gp heap_x_test[1] = 0x008110b3 ...

RISC-V Core的一些输入/输出的简要说明

[英]Brief explanation of some input/outputs of RISC-V Core

我正在尝试分析来自 ( https://github.com/ultraembedded/riscv/tree/master/core/riscv ) 的 fetch.v 文件的代码,但设计者没有任何文档解释任何内容,我是初学者Verilog 和数字设计的世界。 这些是什么意思和作用? 设计非常复杂 ...

我的模拟器上的分支 riscv 指令偏移量计算

[英]Branch riscv instruction offset calculation on my emulator

我写了一个 riscv64 模拟器,但我对分支指令(尤其是 bge)的偏移量计算有疑问。 对我来说,计算满足条件时添加到 pc 的偏移量的公式是:PC = PC + IMM; 直接是指令摘录:有我的 C 代码: 当程序得到这个简单的程序代码时: 我得到:0x7a2。 电脑地址为:0x1018c 当我 ...

ld.lld:错误:未定义的符号:__divdi3

[英]ld.lld: error: undefined symbol: __divdi3

我试图将两个 risc-v elf 文件与ld.lld链接在一起,但ld.lld给我以下错误: 我想我需要将我的文件与一些辅助函数链接起来,但是在我的 clang lib 文件夹 ( /usr/local/Cellar/llvm/15.0.6/lib/clang/15.0.6/lib ) 中查找它 ...

如何解决RISC-V中“Load address not aligned to word boundary”的错误?

[英]How to solve the error "Load address not aligned to word boundary" in RISC-V?

我正在努力将为 MARS 模拟器编写的 MIPS 汇编程序翻译成用于 RARS 模拟器的 RISCV 汇编程序。 该程序是将BMP文件中的源图像从控制台输入后分成3×4块并重新排列。 但是转换后,当我运行代码时,发生了错误。 一步步查看,发现这个错误出现在下面一行。 在 错误信息是 但在 MIPS ...

这个“万数序列”是什么? (li 扩展到什么?)

[英]What is this "Myriad sequences"? (What li gets expanded to?)

li rd,立即 | 无数序列 | Load immediate 在 RISC-V 非特权手册中,它写道有这个伪指令调用li或Load immediate ,但它只说基本指令是Myriad sequences ,在谷歌搜索后,它没有给出有希望的答案。 有谁知道Myriad sequences是 ...

RISC-V 对 PC 溢出做了什么?

[英]What does RISC-V do on PC overflow?

当程序计数器 (PC) 溢出时,RISC-V CPU 会发生什么? 例如,在执行了 0xFFFF'FFFC 处的(32 位)NOP 后,RV32G IALIGN = 32 会发生什么情况? 或者在执行了 0xFFFF'FFFE 处的 16 位 NOP 之后在 RV32GC 上? 这两个问题的最简单 ...

`.bss' 不在区域内 `ram' 错误 - esp32 ulp risv-v

[英]`.bss' is not within region `ram' error - esp32 ulp risv-v

我正在尝试将数组元素从一个数组复制到另一个数组。 arrays 之一使用 int32_t 索引来跟踪当前索引。 如果该行处于活动状态,我将收到此错误: 我尝试了很多变体,但似乎没有任何效果,我不确定问题是出在我的 C 技能上还是出在 esp idf 编译器上。 ** 解决了: ** 正确答案 ...

我如何使用 GCC 编译一个二进制文件,它可以用于我的 FPGA,我已经使用 verilog 进行合成

[英]How can I use GCC to compile a binary file which can be used for my FPGA,where I have used verilog to synthesis

首先我用verilog合成了一个支持RISCV32IM的CPU,但是无法测试CPU是否正常工作。 我希望有一个编译器(比如GCC)能生成指令帮我测试,但是一般的编译器只能生成需要操作系统的EXE文件。 显然,我的FPGA做不到这一点。 我只需要一系列能在FPGA上运行并能实现相应功能的RISCV32 ...

在 LLVM、RISC-V 中将 vsetivli 替换为 vsetvli

[英]Replace vsetivli to vsetvli in LLVM, RISC-V

我在Halide项目的 LLVM 的帮助下生成了一个二进制文件。 简而言之,二进制文件使用 RVV 1.0,而我的硬件是 AllWinner D1 C906 是 RVV 0.7,因此一些内在函数不受支持,我正在寻找一个选项来确定和删除/替换 LLVM 源代码中不受支持的 RVV 1.0 内在函数。 ...

RISC-V 内联汇编

[英]RISC-V inline assembly

我对内联汇编很陌生,所以我需要你的帮助来确保我正确使用它。 我需要在使用 Risc-v 工具链编译的 C 代码中添加汇编代码。 请考虑以下代码: 我想要做的是bar = bar+k 。 实际上,我想更改bar所在的内存位置的内容。但是我编写的代码获取了bar的地址并将其添加到k 。 有人知道问题出在 ...

riscv 汇编是否需要帧指针?

[英]Is frame-pointer necessary for riscv assembly?

我正在做一个项目,它需要我从 llvm ir 生成 asm 代码。 当我使用llc直接从.ll文件生成代码时,程序集没有帧指针fp 。 但是,当我使用 riscv-unknow-elf-gcc 编译.cpp文件时,它确实有一个帧指针。 网上查了一下,发现编译时有-fomit-frame-point ...

RISC-V 输入 output 使用

[英]Risc-V input output use

我正在尝试用 risc-v 做一个更大数字的打印机。 但我无法实现。 我的代码中没有发生什么? ...

2022-12-01 19:21:39   1   42    riscv  
RISC-V 是否具有与 MIPS 类似的系统调用服务集?

[英]Does RISC-V have equivalent set of syscall services like that of MIPS?

我知道开箱即用的 MIPS ISA 具有可用于打印字符、打开文件、从文件读取、写入文件等的系统调用指令。 这使得无需操作系统即可轻松使用 MIPS。 问题是,RISC-V ISA 是否有与上述等效的服务? 换句话说,RISC-V 是否提供了与上述开箱即用的等效服务集? 是否绝对需要在 RISC-V ...


 
粤ICP备18138465号  © 2020-2023 STACKOOM.COM