当前位置: 首页 > 专利查询>浙江大学专利>正文

一种面向嵌入式场景的可定制化RISC-V架构处理器设计方法技术

技术编号:32664204 阅读:9 留言:0更新日期:2022-03-17 11:15
本发明专利技术提出了一种面向嵌入式场景的可定制化RISC

【技术实现步骤摘要】
一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法


[0001]本专利技术涉及计算机体系结构领域,尤其涉及一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法。

技术介绍

[0002]随着物联网设备复杂度和数量的激增与后摩尔定律时代的到来,市场对功能强大且具有领域可定制化(domain specific)特点的处理器需求增加。一方面,处理器不但要使用较少的资源,还需要支持物联网设备使用的复杂操作系统,比如嵌入式Linux;另一方面,为了支持不同场景下的定制功能单元,处理器需要易于扩展。难以启动操作系统的传统嵌入式处理器和难以定制的固定处理器IP核无法满足新的需求。因此,本专利技术提出了兼顾资源与启动操作系统能力的、面向嵌入式场景的可定制化处理器设计方法。
[0003]RISC

V是开源指令集,针对现代处理器微架构和操作系统进行了指令集的优化。目前,部分机构已开源了若干RISC

V嵌入式处理器,如Sodar、Rocketchip、Nutshell等。但是,Sodar等处理器功能不足;以Rocketchip为代表的处理器,虽然使用了敏捷开发的方法,但是代码可读性较差,处理器与总线绑定,定制门槛较高,生成的硬件电路复杂;以Nutshell为代表的处理器没有功能单元拓展接口,因此可拓展性不佳。

技术实现思路

[0004]本专利技术的目的在于为满足嵌入式场景下处理器设计的新需求,提供一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法。
[0005]为了实现启动操作系统发行版的和定制化的需求,本设计方法是通过以下技术方案来实现的:
[0006]本专利技术公开了一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法,包含如下步骤:
[0007]1)使用敏捷开发的方法设计支持RV64GC指令集的嵌入式处理器:依据RISC

V指令集手册,实现并验证支持RV64I指令集和Machine特权态的处理器流水线,实现标准中断控制器Clint和PLIC,在此基础上逐步添加并验证新的指令集和特权态支持,最终实现功能复杂的处理器,支持整数、乘除法、原子、浮点、压缩指令以及Machine、Supervisor、User特权态;
[0008]2)设计实现缓存一致性和内存一致性:设计实现缓存单元,使用软硬件结合的方式保证数据缓存与指令缓存、数据缓存与TLB的一致性,实现不弱于RISC

V手册规定的RVWMO的内存一致性模型;
[0009]3)设计灵活强大的定制化功能单元接口:为集成在处理器内部的定制化功能单元提供了灵活强大的接口,并根据接口的功能适当调整处理器流水线的设计。
[0010]作为进一步地改进,本专利技术所述步骤1)中,在敏捷开发的每一轮次中,从制定设计规范开始,当前版本的处理器首先经过电路设计、定义定制化功能单元接口、代码实现、正
确性验证等步骤,此后才进入下一轮次,成为功能更全面的下一版本的处理器。
[0011]作为进一步地改进,本专利技术所述步骤1)和2)中,在敏捷开发的过程中,考虑处理器的可配置特性,缓存大小和替换策略、分支预测策略、处理器支持的最低特权态、压缩指令和自定义拓展特点均采用参数化配置。
[0012]作为进一步地改进,本专利技术所述步骤3)中,所述的定制化功能单元接口包括单周期可以完成的、仅将运算结果写回目的寄存器的简单定制化拓展、和需要多周期或访存操作的复杂扩展。
[0013]作为进一步地改进,本专利技术对于所述的单周期可以完成的、仅将运算结果写回目的寄存器的简单定制化拓展,将相应功能单元放置在流水线执行段。
[0014]作为进一步地改进,本专利技术对于所述的需要多周期或访存操作的复杂扩展,将功能单元放置在访存段或写回段。
[0015]作为进一步地改进,本专利技术针对不同的定制化功能,处理器流水线为定制化功能单元的接口提供以下功能:针对读取写回寄存器操作,提供2个读口和1个写口;针对CSR的读取和写回,提供1个读口和1个写口;针对访存操作,提供了1个读口和1个写口;提供定制化功能单元可能产生的异常信号接口。
[0016]作为进一步地改进,本专利技术本方法使用同步的解耦接口封装定制功能单元与其它功能单元之间的、定制功能单元与处理器流水线之间的交互信息,所述的解耦接口根据定制的需要,封装和传递更多自定义信息。
[0017]本专利技术的有益效果如下:
[0018]本专利技术提出了一款面向嵌入式场景的可定制化RISC

V架构处理器设计方法。本设计方法面向日益复杂的嵌入式场景,适用于有限资源且具备启动复杂操作系统的能力。本方案对基于处理器流水线的定制化方案进行了两种分类,针对不同类别分别提出了不同的处理器功能单元设计方案,并提供灵活强大的定制化功能单元接口。实验证明,基于本方案设计的处理器控制逻辑简单,但是功能足够复杂,能够启动Linux操作系统发行版,有高度的可配置性和拓展性,可用于嵌入式场景下定制化原型系统的设计与验证,实现嵌入式处理器的敏捷开发,提高开发效率,使用本方法开发的嵌入式处理器,在具体的应用场景中,可以以较低的代价进行领域定制化拓展,快速开发并验证定制化功能。
附图说明
[0019]图1是一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法的时间

事件图;
[0020]图2是以某个与内存安全相关的定制化拓展单元为例展示了本方法的定制化接口设计图;
[0021]图3是使用本设计方法的嵌入式SoC设计架构图,其中虚线方框内为基于本方法设计的处理器。
具体实施方式
[0022]下面结合说明书附图对本专利技术的具体技术方案作进一步地说明:
[0023]本专利技术公开了一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法,图1
是一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法的时间

事件图,包括以下步骤:
[0024](1)使用敏捷开发的方法设计支持RV64GC指令集的嵌入式处理器。具体地,在本设计方法中,从根据RISC

V指令集手册和应用场景制定设计规范开始,处理器经过电路设计、定义定制化功能单元接口并相应地调整电路逻辑、代码实现、利用FPGA初步验证硬件代码正确性、RTL级别模糊测试、利用ASIC面积和时序优化等过程,最终小规模流片验证。本设计方法首先使用支持最小功能的处理器,如图1所示,其中的1号处理器,支持RV64I、Machine模式、Clint和PLIC;经过从设计规范到FPGA验证的步骤。此后,每当为上一版本的处理器添加新的模块,都会经过从设计规范到FPGA的步骤。如果处理器功能简单,则不需要经过RTL模糊测试、ASIC和流片等时间和财力上开销较大本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向嵌入式场景的可定制化RISC

V架构处理器设计方法,其特征在于,包含如下步骤:1)使用敏捷开发的方法设计支持RV64GC指令集的嵌入式处理器:依据RISC

V指令集手册,实现并验证支持RV64I指令集和Machine特权态的处理器流水线,实现标准中断控制器Clint和PLIC,在此基础上逐步添加并验证新的指令集和特权态支持,最终实现功能复杂的处理器,支持整数、乘除法、原子、浮点、压缩指令以及Machine、Supervisor、User特权态;2)设计实现缓存一致性和内存一致性:设计实现缓存单元,使用软硬件结合的方式保证数据缓存与指令缓存、数据缓存与TLB的一致性,实现不弱于RISC

V手册规定的RVWMO的内存一致性模型;3)设计灵活强大的定制化功能单元接口:为集成在处理器内部的定制化功能单元提供了灵活强大的接口,并根据接口的功能适当调整处理器流水线的设计。2.根据权利要求1所述的面向嵌入式场景的可定制化RISC

V架构处理器设计方法,其特征在于,所述步骤1)中,在敏捷开发的每一轮次中,从制定设计规范开始,当前版本的处理器经过电路设计、定义定制化功能单元接口、代码实现、正确性验证等步骤,此后才进入下一轮次,为下一版本处理器添加新的功能。3.根据权利要求1所述的面向嵌入式场景的可定制化RISC

V架构处理器设计方法,其特征在于,所述步骤1)和2)中,在敏捷开发的过程中,考虑处理器的可配置特性,缓存大小和替换策略、分支预测策略、处理器支持的最低特权态、压缩指令和自定义拓展特点均采用参数化配置。4.根据权利要求1...

【专利技术属性】
技术研发人员:常瑞苑子琦徐金焱张行健周亚金申文博
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1