0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嘉楠科技勘智K230芯片完成适配RISC-V新32位技术

嘉楠科技 来源:嘉楠科技 2024-03-29 09:46 次阅读

嘉楠科技(Canaan Inc.)(纳斯达克股票代码:CAN)开发的勘智K230芯片在Fedora 团队的努力下完成适配RISC-V 新32位技术,节省内存的同时降低了成本,展示了嘉楠科技勘智K230芯片开发板强大的功能应用能力。同时,PLCT实验室与达摩院-玄铁团队携手,通过采用松弛扩展寻址技术,克服了传统32位架构在现代操作系统中的性能局限,为新32位工具链的创新应用奠定了坚实基础。

松弛扩展寻址

历史上,64ILP32 ABI的实施面临着的主要障碍是:32位指针与64位寄存器之间的不匹配问题,这不仅引起性能损失,还增加了编译器的复杂性。虽然零扩展寻址(Zero-extend Addressing)在x86-x32和aarch64-ilp32 ABI中得到采用,但额外的零扩展指令降低了程序效率。与之相比,32ILP32和64LP64 ABI因指针长度与寄存器宽度一致,避免了这种性能开销。

面对这些挑战,我们首先考虑了符号扩展寻址(Sign-extend Addressing),它在一定程度上减缓了零扩展的性能问题,但增加了编译器和内核实现的复杂度。于是,我们提出了松弛扩展寻址(Relax-extend Addressing)方案,它通过硬件的指针掩码功能,允许在执行32位寻址操作时忽略64位寄存器的高32位,大幅简化了编译器工作,降低指令数量,并保持了安全性与可靠性。我们对以上三种寻址模式总结如下:

●抹零扩展寻址:传统方法,需要编译器生成额外的的指令来清零高32位,导致性能损失。

●符号扩展寻址:改良方案,通过操作系统页表的双重映射,合法化32位符号位扩展,缓解零扩展的性能开销。

●松弛扩展寻址:创新方案,依赖处理器硬件掩码来实现高效寻址,彻底消除了寻址时的性能损失。

因此,松弛扩展被我们选定为 RV64ILP32 ABI 的默认寻址模式,它要求 RISC-V 64位处理器支持寻址掩码功能,对硬件设计提出了新的要求。我们在 QEMU 上实验该功能,并证明了基于松弛扩展寻址模式的 RV64ILP32 工具链的有效性。

新32位内核

新32位工具链基于 RISC-V 64ilp32 ABI,融合了松弛扩展寻址技术,让64位硬件流畅运行新32位软件。我们在 qemu 上实现了硬件松弛扩展寻址模式,并用新工具链构建了业内首款新32位Linux内核。

与传统32位对比,尽管新32位和传统32位都是32位Linux操作系统软件,但新32位得益于64位指令集,其性能显著优于传统32位:

63b2efe0-ed13-11ee-a297-92fbcf53809c.png

如上图所示,新32位内核的 iperf3-tcp 测试大幅领先,在软件 ABI 相同的情况下,使用 64 位指令架构能极大提升操作系统的性能。本次qemu 测试仅供参考,请联系硬件供应商获得真实的性能差距报告,本测试用例已在工具链发布包内,请大家直接下载自行体验,以下动画是测试的全过程:

与传统64位对比,Fedora团队完成了RISC-V新32位在嘉楠科技勘智K230芯片硬件平台的适配,新32位避免了39%的内存浪费,其成本优势使 Fedora RISC-V 能在嵌入式领域有更广泛的应用,具体请参考:

63ba8764-ed13-11ee-a297-92fbcf53809c.png

63c23158-ed13-11ee-a297-92fbcf53809c.png

新32位工具链

让32位软件运行在64位硬件上不仅更快而且更省,这正是我们新32位编译器的优势所在,不禁让人想起中国古代田忌赛马的故事,与传统32位比性能,与传统64位比成本。换言之,新32位就是要取代传统32位,与64位形成互补。在进一步的测试中,我们观察到了传统32位的明显不足:

63f8a6ac-ed13-11ee-a297-92fbcf53809c.png

如上图所示,在处理长数据类型时,传统32位的编译器生成了超过10条额外指令来操作保存的变量。相反,当采用新32位工具链时,编译器会直接利用64位指令来处理这些数据,大幅度减少了所需指令的数量。

6409a18c-ed13-11ee-a297-92fbcf53809c.png

本次发布的新32位工具链通过了33万个测试用例,其中包含 192133 个 g++用例, 与 143498 个 gcc 用例,全面覆盖编译器的各项功能,测试结果与 GCC13 release 保持一致,达到产品级质量要求。相比传统32位,它的优势如下:

●更强大的性能:新32位编译器在处理长数据类型时更加高效,因为它无需进行额外的寄存器拼接或零扩展操作。这可以显著减少指令数量,提高程序的执行效率,特别是在涉及大量长数据类型操作的情况下。

更好的兼容性:新32位编译器可以与传统64位编译器兼容,因为它们基于相同的硬件指令集。这意味着开发者可以更轻松地将现有的64位汇编代码迁移到新32位平台上,而无需做出太多修改。

●更多的扩展性:随着技术的发展和需求的增长,对更大的内存空间和更高性能的需求也在不断增加。新32位的硬件平台可以为未来的扩展性提供了更好的支持,因为它能无缝切换到传统64位以满足更高要求的应用程序。

●产品级的质量:新32位工具链经过大量测试验证,保证使用的正确性与稳定性,同时在RUYISDK开源仓库中进行维护更新,及时解决用户遇到的各种问题。

结束语

松弛扩展寻址技术在新32位工具链中扮演着关键角色,为嵌入式系统的开发和部署提供了全新的解决方案。作为业内首款基于松弛扩展寻址技术的新32位产品级开源工具链和Linux内核,标志着嵌入式系统开发领域的一次重要创新。我们热切期待开发者们积极参与到新32位的开发和完善中,共同提出宝贵的建议和意见,推动新32位不断发展。我们致力于建立一个健康和活跃的开源社区,将持续投入资源和精力,确保新32位的稳定性和可靠性,并不断改进和完善其功能和性能。在此,我们也呼吁更多的硬件厂商加入我们的阵营,共同推动新32位嵌入式系统的发展和创新,为行业带来更多的可能性和机遇。

关于嘉楠科技勘智K230芯片

嘉楠科技勘智K230芯片是全球首款支持 RISC-V Vector1.0标准的商用SoC,内置双核玄铁C908 CPU,主频高达1.6GHz。作为嘉楠科技勘智Kendryte系列芯片中的最新一代SoC产品,勘智K230芯片内置多个高清视频图像输入处理和智能硬件处理单元,兼顾高性能、低功耗和高安全性特点,可广泛应用于各类智能产品,如边缘侧大模型多模态接入终端、3D结构光深度感知模组、交互型机器人、开源硬件、智能制造、智能家居和智能教育硬件等众多领域。



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    211

    文章

    28632

    浏览量

    208312
  • 寄存器
    +关注

    关注

    31

    文章

    5363

    浏览量

    121110
  • SoC芯片
    +关注

    关注

    1

    文章

    617

    浏览量

    35024
  • RISC-V
    +关注

    关注

    45

    文章

    2322

    浏览量

    46550
  • 嘉楠科技
    +关注

    关注

    1

    文章

    27

    浏览量

    4805

原文标题:嘉楠科技勘智K230芯片获玄铁团队与PLCT实验室新32位产品级工作链及Linux内核适配

文章出处:【微信号:CanaanTech,微信公众号:嘉楠科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关于RISC-V芯片的应用学习总结

    性、模块化、低功耗、高性能以及可扩展性等优势,在多个领域展现出广泛的应用潜力和市场竞争力。随着技术的不断发展和生态系统的日益完善,RISC-V芯片有望在更多领域发挥重要作用。
    发表于 01-29 08:38

    RISC-V MCU技术

    嘿,咱来聊聊RISC-V MCU技术哈。 这RISC-V MCU技术呢,简单来说就是基于一个叫RISC-V的指令集架构做出的微控制器
    发表于 01-19 11:50

    Banana Pi #科技 #K230D RISC-V芯片设计开发板

    RISC-V
    Banana Pi开源硬件
    发布于 :2024年12月25日 17:26:28

    搭载K230的AI视觉开发板介绍

    11月29日,以 科技 (Canaan Inc.)(纳斯达克股票代码: CAN )旗下 K230芯片 为主控
    的头像 发表于 12-05 11:06 1447次阅读
    搭载<b class='flag-5'>勘</b>智<b class='flag-5'>K230</b>的AI视觉开发板介绍

    Banana Pi BPI-CanMV-K230D-Zero :AIoT 应用的 Kendryte K230D RISC-V

    Banana Pi BPI-CanMV-K230D-Zero 是一款紧凑型低功耗单板计算机,基于 Kendryte K230D 双核 XuanTie C908 RISC-V 芯片构建,
    发表于 12-05 09:19

    香蕉派开发板BPI-CanMV-K230D-Zero 科技 RISC-V开发板公开发售

    开源生态。 Banana Pi BPI-CanMV-K230D-Zero 采用科技 K230D RISC-V
    发表于 11-05 15:29

    香蕉派开发板BPI-CanMV-K230D-Zero 科技 RISC-V开发板公开发售

    科技 K230D RISC-V芯片设计,探索 RISC-V Vector1.0 的前沿技术,选择
    的头像 发表于 11-05 15:27 476次阅读
    香蕉派开发板BPI-CanMV-<b class='flag-5'>K230</b>D-Zero <b class='flag-5'>嘉</b><b class='flag-5'>楠</b>科技 <b class='flag-5'>RISC-V</b>开发板公开发售

    RISC-V Summit China 2024 | 青稞RISC-V+接口PHY,赋能RISC-V高效落地

    量产芯片的关键技术;公司筹备了第二届RISC-V中国峰会的南京会场;青稞RISC-V的单双线调试技术,在第三届峰会上入选
    发表于 08-30 17:37

    科技发布K230D芯片,强化AIoT领域高性能计算

    在8月21日的最新动态中,科技正式推出了其新一代AI芯片——智(Kendryte)K230D,作为
    的头像 发表于 08-21 16:21 1572次阅读

    香蕉派 BPI-CanMV-K230D-Zero 采用科技 K230D RISC-V芯片设计

    概述 Banana Pi BPI-CanMV-K230D-Zero 采用科技 K230D RISC-V
    发表于 07-30 17:43

    Banana Pi BPI-CanMV-K230D-Zero 采用科技 K230D RISC-V芯片设计

    Banana Pi BPI-CanMV-K230D-Zero 采用科技 K230D RISC-V芯片
    的头像 发表于 07-30 17:41 613次阅读
    Banana Pi BPI-CanMV-<b class='flag-5'>K230</b>D-Zero 采用<b class='flag-5'>嘉</b><b class='flag-5'>楠</b>科技 <b class='flag-5'>K230</b>D <b class='flag-5'>RISC-V</b><b class='flag-5'>芯片</b>设计

    科技商用量产端侧AIoT芯片K230采用芯原ISP IP和GPU IP

    芯原股份今日宣布,与科技达成重要合作。科技全球首发的支持RISC-V Vector 1.0标准的商用量产端侧AIoT
    的头像 发表于 03-27 10:06 874次阅读

    基于RISC-V的端侧AIoT SoC采用了芯原的ISP IP和GPU IP

    芯原股份(芯原,股票代码:688521.SH)今日宣布科技(,纳斯达克股票代码:CAN)全球首款支持RISC-V Vector 1.
    的头像 发表于 03-14 10:20 709次阅读

    端侧AIoT芯片K230集成芯原ISP IP和GPU IP

    近日,领先的集成电路设计企业芯原股份(以下简称“芯原”)宣布与科技(以下简称“”)展开深度合作。此次合作中,
    的头像 发表于 03-14 10:02 1437次阅读

    基于RISC-V的端侧AIoT SoC采用了芯原的ISP IP和GPU IP

    芯原股份 (芯原,股票代码:688521.SH) 今日宣布科技 (,纳斯达克股票代码:CAN) 全球首款支持RISC-V Vecto
    的头像 发表于 03-14 09:03 571次阅读