平头哥玄铁 E906 编译与使用

1、E906 概述

与玄铁 E902 一样, E906 核的 RTL 代码也是开源的,开源仓库地址:https://github.com/T-head-Semi/opene906

玄铁 E906 是一款完全可综合的中端 MCU 级处理器,兼容 RV32IMA[F][D]C[P] 指令集,提供可观的整型性能提升以及高能效的浮点性能。

在这里插入图片描述

在这里插入图片描述

性能

在这里插入图片描述

网上能找到的信息就这么多,目前也暂时没了解哪个芯片用 E906 的。

2、通用寄存器

寄存器 ABI 名称 描述
x0 zero 零值
x1 ra 返回地址
x2 sp 堆栈指针
x3 gp 全局指针
x4 tp 线程指针
x5 t0 临时/备用链接寄存器
x6-7 t1-2 临时寄存器
x8 s0/fp 保留寄存器/帧指针
x9 s1 保留寄存器
x10-11 a0-a1 函数参数/返回值
x12-17 a2-a7 函数参数
x18-27 s2-s11 保留寄存器
x28-31 t3-t6 临时寄存器

3、编译运行

  1. SDK 下载 https://www.xrvm.cn/community/download?id=658699855023046656

  2. 编译

$ cd SmartL_E906-R2S2-V1.7.10/projects/examples/hello_world
$ make
  1. 运行
    与 E902 一样,在 qemu 上运行,qemu 安装可参考前文。
$ qemu-system-riscv32 -M smartl -cpu e906 -kernel out/smartl_e906_evb.elf -nographic -m 128M
Hello World!
Hello_World runs successfully!

4、E906 与 E902 比较

虽然 E902 和 E906 是两个面向不同市场的产品,这里也做一个简单的比较,可以进一步加深印象。

相同点

  1. 总线接口一样,都采用 AMBA3 AHB-Lite 32 bit 总线协议

差异点

  1. 支持的指令集不同
  • E902 为 RV32EMC 指令集,包括标准的整型指令集(E), 乘除法指令集(M)和 压缩指令(C)
  • E906 为 RV32IMAFC[P] 指令集,包括标准的整型指令集(I), 乘除法指令集(M), 不可中断指令(Atomic)标准扩充(A), 单精度浮点标准扩充(F),压缩指令(C)和单指令多资料流(SIMD)运算标准扩充(P)。
  1. 寄存器数量
    | 芯片架构 | 寄存器数量 |
    | ------- | ------- |
    | E902 | 16 |
    | E906 | 32 |

  2. 流水线数量不同
    | 芯片架构 | 流水线数量 |
    | ------- | ------- |
    | E902 | 2 |
    | E906 | 5 |

  3. 支持中断源数量不同:
    | 芯片架构 | 中断源数量 |
    | ------- | ------- |
    | E902 | 64 |
    | E906 | 128 |

  4. cache 配置不同
    | 芯片架构 | cache 配置 |
    | ------- | ------- |
    | E902 | 只支持指令 cache,2KiB/4KiB/8KiB 可配 |
    | E906 | 支持指令cache 和数据 cache 16KB |

相关推荐

  1. 汽车线束搭接地

    2023-12-15 04:48:04       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-15 04:48:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-15 04:48:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-15 04:48:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-15 04:48:04       20 阅读

热门阅读

  1. openCV图像SIFT特征

    2023-12-15 04:48:04       38 阅读
  2. Vue3后台管理-项目总结

    2023-12-15 04:48:04       43 阅读
  3. vue3制作类微信的六位的密码输入框

    2023-12-15 04:48:04       31 阅读
  4. B - Team Gym - 102801B ( 网络流问题)

    2023-12-15 04:48:04       39 阅读
  5. 在浏览器中存储数组和对象(js的问题)

    2023-12-15 04:48:04       39 阅读
  6. centos7配置国内源

    2023-12-15 04:48:04       38 阅读
  7. Python基础List列表定义与函数

    2023-12-15 04:48:04       41 阅读
  8. 【Python】正则表达式

    2023-12-15 04:48:04       36 阅读