当前位置: 首页 > 软件库 > 其他开源 > 开源硬件 >

FlexPRET

细粒度多线程 RISC-V 处理器
授权协议 BSD
开发语言 C/C++
所属分类 其他开源、 开源硬件
软件类型 开源软件
地区 不详
投 递 者 容远
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

FlexPRET

FlexPRET 是一个5级,细粒度多线程 RISC-V 处理器,专为混合关键性(实时嵌入式)系统而设计,并用Chisel 编写。 硬件线程调度器决定哪个硬件线程开始执行每个周期,由配置和状态寄存器控制。 每个硬件线程被分类为硬实时线程(HRTT)或软实时线程(SRTT):HRTT仅以恒定速率调度用于基于硬件的隔离和可预测性(实现独立的形式验证),以及SRTT 共享剩余周期(包括当HRTT不需要规定的周期时)以用于有效的处理器利用。 为了比较的目的,还可以生成单线程和循环多线程5级RISC-V处理器。 FlexPRET在加州大学伯克利分校作为PRET项目的一部分开发。

可结合,极端计算的细粒度多线程执行模型 DARTS优化项目。

 相关资料
  • RISC-V 指令集是基于精简指令集计算 RISC 原理建立的开放指令集架构,RISC-V 是在指令集不断发展和成熟的基础上建立的全新指令。RISC-V 指令集完全开源,设计简单,易于移植 Unix 系统,采用模块化设计,拥有完整的工具链,同时有大量的开源实现和流片案例。 特性 完全开源。对指令集使用,RISC-V 基金会不收取高额的授权费。开源采用宽松的 BSD 协议,企业完全自由免费使用,同时

  • labeled-RISC-V —— 标签化RISC-V项目 该项目基于 RocketChip 增加了标签功能, 给硬件请求打上标签, 赋予硬件区分, 隔离和优先化三种新能力。 目录结构: .├── board # supported FPGA boards and files to build a Vivado project├── boot

  • 本文介绍了如何移植 RT-Thread Nano 到 RISC-V 架构,以 Eclipse GCC 环境为例,基于一个 GD32V103 MCU 的基础工程作为示例进行讲解。 移植 Nano 的主要步骤: 准备一个基础的 Eclipse 工程,并获取 RT-Thread Nano 源码压缩包。 在基础工程中添加 RT-Thread Nano 源码,添加相应头文件路径。 适配 Nano,主要从 中

  • RISC-V 与中断相关的寄存器和指令 [info] 回顾:RISC-V 中的机器态(Machine Mode,机器模式,M 模式) 是 RISC-V 中的最高权限模式,一些底层操作的指令只能由机器态进行使用。 是所有标准 RISC-V 处理器都必须实现的模式。 默认所有中断实际上是交给机器态处理的,但是为了实现更多功能,机器态会将某些中断交由内核态处理。这些异常也正是我们编写操作系统所需要实现的

  • 我正在尝试使用多个处理器类在处理器步骤中处理记录。这些类可以并行工作。目前我已经编写了一个多线程步骤,其中我 设置处理器类的输入和输出行 提交给遗嘱执行人服务 获取所有未来对象并收集最终输出

  • 我一直在阅读有关多线程的Head First。我对多线程的了解是: 当我们使用Thread类的对象调用start()时,线程将进入可运行状态。因此,所有线程在通过这些线程的对象调用start()后都会进入可运行状态。它是JVM线程调度器,它从可运行状态随机选择线程,使其处于运行状态。进入运行状态后,该特定线程的已确定调用堆栈将被执行。 同样,JVM线程调度器可以通过将线程从运行状态切换到可运行状态

  • 我有一个图像路径列表,我想在进程或线程之间划分,以便每个进程处理列表的某些部分。处理包括从磁盘加载图像,进行一些计算并返回结果。我正在使用Python 2.7 下面是我如何创建辅助进程 我所面临的问题是,当我在initializer函数中记录初始化时间时,我知道worker不是并行初始化的,而是每个worker都以5秒的间隔初始化,下面是供参考的日志 我尝试过使用将同时启动辅助线程 我知道Wind

  • 问题内容: 我试图理解多处理比线程的优势。我知道多处理绕过了全局解释器锁,但是还有什么其他优点,线程不能做同样的事情? 问题答案: 该模块使用线程,该模块使用进程。不同之处在于线程在相同的内存空间中运行,而进程具有单独的内存。这使得在具有多处理的进程之间共享对象更加困难。由于线程使用相同的内存,因此必须采取预防措施,否则两个线程将同时写入同一内​​存。这就是全局解释器锁的作用。 生成过程比生成线程