蜂鸟FPGA开发板全知道篇1:开源内核简介
本帖最后由 皋陶 于 2020-10-16 23:48 编辑本系列主要就蜂鸟FPGA开发板及蜂鸟JTAG下载器进行讲解说明,其中包括:
蜂鸟FPGA开发板全知道篇1:开源内核简介蜂鸟FPGA开发板全知道篇2:快速上手介绍(上)蜂鸟FPGA开发板全知道篇2:快速上手介绍(中)蜂鸟FPGA开发板全知道篇2:快速上手介绍(下)蜂鸟FPGA开发板全知道篇3:开源SoC简介(1)蜂鸟FPGA开发板全知道篇3:开源SoC简介(2)蜂鸟FPGA开发板全知道篇3:开源SoC简介(3)蜂鸟FPGA开发板全知道篇3:开源SoC简介(4)蜂鸟FPGA开发板全知道篇4:移植RTOS
《蜂鸟FPGA开发板全知道篇1:开源内核简介》节选于《手把手教你设计CPU:RISC-V处理器篇》第四章。
目录1 开源背景简介2 蜂鸟E203内核简介3 蜂鸟E203内核快速上手介绍
1 开源背景简介
由于RISC-V的开放性,受到了全世界范围内的广泛关注。在教育教学和爱好者领域,使用开源的RISC-V处理器内核进行科研、自学和教学日趋成为主流。
目前全世界范围内存在着诸多的开源RISC-V处理器核,对于众多开源实现加以分析,我们可以发现这些现象:
[*]目前开源的RISC-V内核实现主要以国外为主,没有一款中国本土的RISC-V处理器,难以取得与本土开发人员的交流和支持。
[*]大多数的开源实现或者均来自于个人爱好者、或者来自于高校。其开发语言或者使用VHDL,或者使用高级的System Verilog。来自产业界工程团队且使用最稳健的Verilog RTL实现的开源RISC-V处理器尚不多见。
[*]最知名的Rocket Core使用了高级的Chisel语言转换生成Verilog RTL代码,造成代码可读性很差,给不熟悉Chisel语言的业界工程师使用造成了困难。
[*]绝大多数的开源处理器仅仅提供处理器核的实现,没有提供配套SoC和软件示例,用户若要将其使用起来且移植完整软件需要付出额外的努力。
[*]绝大多数开源处理器仅仅提供处理器核的实现,但是并没有提供调试方案的实现,很少有开源处理器能够支持完整的GDB交互调试功能。
[*]绝大多数开源处理器均文档匮乏。
蜂鸟E203处理器内核(简称蜂鸟E203内核)可有效解决以上这些问题,与其他的RISC-V开源处理器实现相比,它具有如下显著特点:
[*]蜂鸟E203内核由中国大陆本土研发团队开发,用户能够轻松与本土的开发人员取得交流和支持。
[*]蜂鸟E203内核的研发团队来自业界一流的处理器设计公司,使用所有EDA工具均稳健支持的Verilog 2001语法编写的可综合RTL代码。
[*]蜂鸟E203内核的代码为人工编写,添加丰富的注释且可读性强,非常易于理解。
[*]蜂鸟E203内核专为IoT领域量身定做,其具有2级流水线深度,麻雀虽小五脏俱全。
[*]蜂鸟E203内核不仅提供处理器核的实现,还提供完整的配套SoC、详细的FPGA原型平台搭建,详细的软件运行实例。用户可以的按照其步骤重现出整套系统,轻松将蜂鸟E203内核应用其到具体项目中。
[*]蜂鸟E203内核不仅提供处理器核的实现、SoC实现、FPGA平台和软件示例。还实现了完整的调试方案,具备完整的GDB交互调试功能。是从硬件到软件,从模块到SoC,从运行到调试,的一套完整解决方案。
[*]蜂鸟E203内核提供详细文档和实例,以及系统的配套书籍《手把手教你设计CPU——RISC-V处理器篇》和《RISC-V架构和嵌入式开发快速入门》。
2 蜂鸟E203内核简介
蜂鸟E203内核的处理器研发团队拥有多年在国际一流公司开发处理器的经验。蜂鸟是世界上最小的鸟类,其体积虽小却有着极高的速度与敏锐度,可以说是世界上“能效比”最高的鸟类。蜂鸟E203内核以蜂鸟命名便寓意于此,旨在将其打造成一款世界上最小面积与最高能效比的RISC-V处理器。蜂鸟E203内核的特性简介如下:
[*] E203内核采用2级流水线结构,能够运行RISC-V指令集,支持RV32I/E/A/M/C等指令子集的配置组合,仅支持机器模式(Machine Mode Only)。
[*]E203内核提供标准的JTAG调试接口,以及成熟的GDB调试工具。注意:蜂鸟E203内核不支持Hardware Breakpoint和Watchpoint特性。
[*]E203内核提供成熟的GCC编译工具链,以及Linux与Windows图形化软件开发工具。
[*]E203内核提供配套的开源SoC,提供紧耦合系统IP模块,包括中断控制器,计时器,UART,QSPI,PWM等,以及Ready-to-Use的SoC平台与FPGA原型系统。
蜂鸟E203内核作为结构精简的处理器核,可谓“蜂鸟虽小、五脏俱全”,源代码全部开源公开,文档翔实,非常适合作为大中专院校师生学习RISC-V处理器设计(使用Verilog语言)的教学实验或自学案例。
蜂鸟E203内核的系统示意图如图1所示,其提供丰富的存储和接口,包括:
[*]私有的ITCM(指令紧耦合存储)与DTCM(数据紧耦合存储),实现指令与数据的分离存储同时提高性能。ITCM与DTCM均基于单周期访问的单口SRAM实现, DTCM的宽度为32比特,ITCM的宽度为64比特以节省功耗。ITCM不仅用于存储指令,也可以被作为数据存储访问。
[*]中断接口用于与SoC级别的中断控制器连接。
[*]调试接口用于与SoC级别的JTAG调试器连接。
[*]系统总线接口,用于访存指令或者数据。可以将系统主总线接到此接口上,蜂鸟E203内核可以通过该总线访问总线上挂载的片上或者片外存储模块。
[*]紧耦合的私有外设接口,用于访存数据。可以将系统中的私有外设直接接到此接口上,使得蜂鸟E203内核无需经过与数据和指令共享的总线便可访问这些外设。
[*]紧耦合的快速IO接口,用于访存数据。可以将系统中的快速IO模块直接接到此接口上,使得蜂鸟E203内核无需经过与数据和指令共享的总线便可访问这些模块。
[*]所有的ITCM、DTCM、系统总线接口、私有外设接口、快速IO接口均可以配置地址区间。
图1 蜂鸟E203内核系统示意图注意:
[*]蜂鸟E203内核主要面向教育教学和爱好者领域,源代码全部开放。理论上可以用于商业目的,但是不保证其商用质量和服务。
[*]The main purpose ofthis open-sourced core is to be used by students/university/research andentry-level-beginners, hence, the commercial quality (bug-free) and service ofthis core is not not not warranted!!!
很多开源的处理器核仅有一个Core的实现,为了使其能够被完整使用起来,用户需要花费不少精力来构建完整的SoC平台、FPGA平台、并且对于调试(Debugger)的支持更加的困难。
蜂鸟E203内核不仅仅完全开源了Core的实现,还搭配完整的开源SoC平台,如图2和表1所示。请参见《蜂鸟FPGA开发板全知道篇3:开源SoC简介》(请持续关注,后续即将发布)了解更多SoC的介绍与信息。
蜂鸟E203内核还提供软件开发环境,支持交互式硬件调试工具(GDB)的支持。用户可按照文档《蜂鸟FPGA开发板全知道篇2:快速上手介绍》(请持续关注,后续即将发布)中步骤便可快速搭建完整的SoC仿真平台或者FPGA原型平台,并运行软件示例。
图2 蜂鸟E203内核配套SoC结构图
表1 蜂鸟E203内核配套SoC特性
4 蜂鸟E203内核快速上手介绍
详情请参见另外文档《蜂鸟FPGA开发板全知道篇2:快速上手介绍》
完
页:
[1]