OpenC910 datasheet 2.0 翻译

news2024/11/22 5:19:33

概述

C910是由THEAD半导体有限公司开发的一款RISC-V兼容的64位高性能处理器。它通过架构和微架构创新,在控制流、计算和频率方面提供行业领先的性能。C910处理器基于RV64GC指令集,并实现了XIE(XuanTie指令扩展)技术。C910采用先进的12级乱序多发射超标量流水线,具有高频率、IPC和功率效率。C910支持硬件缓存一致性。每个集群包含2个核心。C910支持AXI4总线接口。C910使用带有XMAE(XuanTie内存属性扩展)技术的Sv39虚拟地址系统。此外,C910包括标准的CLINT和PLIC中断控制器和性能监视器。C910实现了THEAD调试协议。
在这里插入图片描述

功能

功能描述
体系结构RV64GC
SMP(对称多处理器)每个集群内2个核心
流水线12级(整型)
浮点计算单元支持RISC-V F,D指令拓展,IEEE 754-2008标准
总线接口AXI4-128主
指令缓存64KB
数据缓存64KB
L2缓存1MB 支持多bank并行访问
Xuantie拓展Xuantie指令拓展(XIE)Xuantie内存属性拓展(XMAE)
内存管理单元(MMU)Sv39虚拟内存转换(translation)
PMP8区域
中断控制器平台级中断控制器(PLIC)用于支持广泛的系统级事件场景

Xuantie C910 组件

  • 处理器概览

在这里插入图片描述

  • 多核

  • 支持双核同构多核系统。

  • 支持MOESI一致性协议。

  • 2路集中式嗅探缓冲区。

  • 支持独占内存访问指令。

  • 集成多核中断控制器、定时器和调试器。

  • 内存子系统

C910拥有64K指令和数据缓存,支持缓存一致性。硬件缓存一致性确保了所有缓存的一致性。共享的L2缓存为1MB。软件和硬件之间的协同优化确保了TLB、I-Cache和D-Cache之间的数据一致性。

◇ L1指令存储系统具有以下关键特性:
• VIPT(虚拟标识物标记),两路组相联的指令缓存。
• 固定的缓存行长度为64字节。
• 从L2内存系统读取的128位接口。
◇ L1数据存储系统具有以下特性:
• PIPT(物理标识物标记),两路组相联的L1数据缓存。
• 固定的缓存行长度为64字节。
• 从L2内存系统读取的128位接口。
• 从数据L1存储系统到数据路径的最多128位读取数据路径。
• 从数据路径到L1存储系统的最多128位写入数据路径。
◇ L2缓存具有以下特性:
• 尺寸:1MB。
• PIPT(物理标识物标记),16路组相联结构。
• 固定的缓存行长度为64字节。
• 支持数据预取。

  • 内存管理单元(MMU)

◇ 支持Sv39虚拟内存系统。
◇ 32/17项全相联的指令翻译缓冲区(I-uTLB)/数据翻译缓冲区(D-uTLB)。
◇ 1024项4路组相联的共享TLB。
◇ 硬件页表行走器。
◇ 对全地址空间的虚拟内存支持以及快速地址转换的简单硬件支持。
◇ 代码/数据共享。
◇ 支持像Linux这样的功能完善的操作系统。
◇ XMAE(XuanTie Memory Attributes Extension)技术扩展了页表项的附加属性。

  • 物理内存保护(PMP)

具有低成本的8个区域基本读取/写入/执行内存保护。

  • 性能监视单元(PMU)

程序代码性能调优。

  • 平台级中断控制器(PLIC)

◇ 支持多核中断控制。
◇ 144个PLIC中断源。
◇ 可选择边沿触发或电平触发。

  • JTAG调试

◇ 支持T-Head多核调试。
◇ JTAG调试接口支持多个触发器。
◇ 支持软件断点。
◇ 检查和修改CPU寄存器资源。
◇ 灵活支持单步或多步执行。
◇ 通过JTAG进行高速程序下载。

  • 浮点计算单元(FPU)

◇ 支持RISC-V F和D扩展。
◇ 支持半精度/单精度/双精度。
◇ 完全符合IEEE-754标准。
◇ 不会产生浮点异常。
◇ 用户可配置的舍入模式。

  • 分支预测器

◇ 分支目标缓冲区(BTB)和分支历史表(BHT)以加快控制代码的执行速度。
◇ 返回地址栈(RAS)以加快过程返回的速度。
◇ 循环缓冲区以加快短循环的速度。

  • 自定义扩展对RV的兼容性

C910与RV64GC指令集完全兼容,并支持标准的M/S/U特权程序模型。C910包括标准的8区域PMP和Sv39 MMU,与RISC-V Linux完全兼容。C910还包括标准的CLINT和PLIC中断控制器以及与RV兼容的PMU。

  • RV兼容性

组件RV版本
ISARV64GC
特权1.10
MMUSv39
中断控制器CLINT/PLIC
  • 接口

  • ◇ 主 AXI (M-AXI)
  • ◇ 调试 (JTAG)
  • ◇ 中断
  • ◇ 低功耗控制

在这里插入图片描述

配置参数

配置项
核心数2
L1 数据缓存大小64K
L1 指令缓存大小64K
L2缓存大小1M

软件生态

◇ 编译器、汇编器、链接器、调试器和二进制工具已经贡献给GNU,并获得官方支持。
◇ Linux内核已经贡献给Linux基金会,并获得官方支持。
◇ QEMU已经贡献和官方支持。
◇ 芯片集成开发环境(CDS),与Eclipse开发环境兼容。
◇ 基于跟踪数据(模拟器)的图形分析和统计分析工具。
◇ ICE、CK-Link Pro,高速(1.1兆字节/秒)的JTAG调试硬件。
◇ 多核JTAG在线调试。

linux系统

C910支持官方的RISC-V Linux及其软件应用生态系统,例如GNU工具链、Fedora、Debian、buildroot以及基于Linux的数千个开源软件。THEAD将继续在Linux生态系统中对RISC-V架构进行移植的贡献。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1583736.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python自动化测试怎么去学习?熬夜7天整理出这一份3000字学习指南!

一、Python常用领域 Python用于简单脚本编程,如编写2048小游戏或12306的自动抢票软件;Python用于系统编程,如开发系统应用;Python用于开发网络爬虫;网络爬虫的用途是进行数据采集,也就是将互联网中的数据采…

OSPF中配置静态路由负载分担实验简述

OSPF中配置静态路由负载分担 实验简述 在静态路由负载分担中,多个路由器被配置为共享负载的目标,以实现流量的均衡分配。 到达目的地有N条相同度量值的路径,默认值60,N条路由是等价路由,数据报文在N条链路上轮流发送。…

力扣刷题 二叉树遍历的统一迭代法

题干 给定一个二叉树的根节点 root ,返回 它的 前中后序 遍历 。 示例 1: 输入:root [1,null,2,3] 输出:[1,3,2]示例 2: 输入:root [] 输出:[]示例 3: 输入:root […

C++设计模式:构建器模式(九)

1、定义与动机 定义:将一个复杂对象的构建与其表示相分离,使得同样的构建过程(稳定)可以创建不同的表示(变化) 动机: 在软件系统中,有时候面临着“一个复杂对象”的创建工作&#x…

基于SSM的课程进度管理系统的设计与实现

摘要: 在信息技术飞速发展的当下, 借助互联网平台以及功能性系统的支持,人们获取信息以及信息整合的通道越来越多元化。系统和平台帮助人们实现了信息的共享,同时帮助人们更加直观的看到成果和过程的变动。以课程进度管理为例&…

python使用uiautomator2操作雷电模拟器9找图

接上篇文章python使用uiautomator2操作雷电模拟器9并遇到解决adb 连接emulator-5554 unauthorized问题-CSDN博客 搭建好uiautomator2后,主要就是使用了。 本文就利用uiautomator2的截屏、模拟点击和aircv的找图功能,实现对指定寻找的图片的位置的点击。…

HikariPool-1 - jdbcUrl is required with driverClassName.

文章目录 前言一、问题提示二、如何改进1.原来配置2.应该修改成 总结 前言 这是在配置数据库发生多数据源产生的错误 一、问题提示 二、如何改进 1.原来配置 2.应该修改成 总结 以上就是今天要讲的内容,本文仅仅简单介绍了springboot多数据源报错问题

Leetcode算法训练日记 | day17

一、平衡二叉树 1.题目 Leetcode:第 110 题 给定一个二叉树,判断它是否是 平衡二叉树 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:true示例 2: 输入:root [1,2,2,3,3,null,null,4,4]…

旋转链表--快慢指针思想

相似题型:删除链表的第倒数第n个节点,建议先做,有利于理解 class Solution {public ListNode rotateRight(ListNode head, int k) {ListNode prehead;ListNode firsthead;ListNode secondhead;ListNode lenpre;int length1;if(headnull)retu…

Linux——fork复制进程

1)shell: 在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(command interpreter,命令解析器)。它类似于DOS下的COMMAND.COM和后来的cmd.exe。它接收用户命令&…

R数据分析:网状meta分析的理解与实操

meta分析之前有给大家写过,但是meta分析只能比较两个方法。经常是被用来证明在现有研究中显示矛盾结果的干预方法到底有没有效的时候使用,通过证据综合得到某种干预到底有没有用的结论。但是如果我要证明好几种方法到底哪个最优,这个时候meta…

谈谈功率IC巨头—士兰微

大家好,我是砖一。 今天给大家分享一下士兰微电子公司,,有做功率元器件&开关电源和IC的朋友可以了解一下,希望对你有用~ 1 公司介绍 士兰微电子成立于1997年,于2003年上市,总部位于杭州,…

智能面试——录音及播放下载js-audio-recorder — post请求,formdata传参

录音插件 js-audio-recorder bug&#xff1a;本地调试调取不起来麦克风 浏览器配置安全域名 chrome://flags/Insecure origins treated as secure输入域名即可电脑需要连接上耳机 <template><div class"BaseRecorder"><div class"BaseRecorder-r…

seo调优

SEO 网站地图&#xff1a;sitemap.xmlrobots.txtxxx.com/www.xxx.com 解析到服务器&#xff0c;xxx.com 301 到 www.xxx.comhttps百度站点管理标题描述关键词标签语义化内链外链死链链接html结尾友情链接前端架构 注意&#xff1a;已收录链接&#xff0c;禁止改变链接地址 ro…

【C++第三阶段】deque容器评委打分案例

以下内容仅为当前认识&#xff0c;可能有不足之处&#xff0c;欢迎讨论&#xff01; 文章目录 构造函数赋值操作大小操作插入删除数据存取排序评委评分案例描述 deque容器 双端数组&#xff0c;可以对头端插入删除操作。 如下图所示。 头部有插入删除操作&#xff0c;尾部亦然…

国内如何实现GPT升级付款

本来想找国外的朋友代付的&#xff0c;但是他告诉我他的信用卡已经被绑定了他也升级了所以只能自己想办法了。就在一位博主下边发现了这个方法真的可以。只是需要与支付宝验证信息。刚开始不敢付款害怕被骗哈哈&#xff0c;我反诈骗意识绝对杠杠的 该方法就是我们办理一张虚拟…

After Effects 2024 中文激活版 高效工作流程与创新的视觉特效 mac/win

After Effects 2024是Adobe公司推出的一款专业视频特效制作软件&#xff0c;广泛应用于电影、电视、动画等媒体制作领域。它凭借强大的功能和灵活的操作&#xff0c;帮助用户轻松创建电影级影片字幕、片头和过渡效果&#xff0c;以及实现立体效果和动态场景的切换。 同时&#…

Java-接口—知识(基础)

承接上一节&#xff0c;我们讨论了抽象类和抽象方法。 那我们尝试在抽象的道路上走的更远一点&#xff0c;先来总结一下抽象&#xff1b; 抽象类&#xff1a;类中的属性规范了子类必须有什么样的特征&#xff0c;有什么状态。类中的方法规范了子类必须有什么行为&#xff0c;…

【Spring Security】2.实现最简单的身份验证

文章目录 一、找到官网的身份认证&#xff08;authentication&#xff09;示例代码二、实现最简单的身份验证1、创建Spring Boot项目2、创建IndexController3、创建index.html4、启动项目测试Controller 三、{/logout}的作用四、页面样式无法加载的问题 一、找到官网的身份认证…

文本处理常见命令

目录 前言-了解Linux目录结构 一、cat-查看文件内容 1.表现形式 2.常用选项 3.示例 二、more-查看文件内容 1.表现形式 2.交互操作方法 3.示例 三、less-查看文件内容 1.表现形式 2.交互操作方法 四、head-从头查看文件内容 五、tail-从尾查看文件内容 六、wc-统…