架构
蜂鸟E203采用的是哈佛架构,主要特点如下:
- 程序和数据单独存储
- 每个存储器独立编址、独立访问
- 使用数据总线和指令总线独立连接两个存储器到内核
- 取址和执行并行处理
存储器
RISC-V架构对于存储器也进行了一定简化
-
仅支持小端格式
小端格式是现在CPU的主流应用,RISC-V架构也就仅支持小端格式,这就简化了硬件设计 -
没有地址自增自减
-
RISC-V取消了存储器读写指令的地址自增自减模式,可以简化地址的生成逻辑
-
没有一次读/写多个数据的指令
RISC-V没有定义能够从存储器中一次读/写多个数据的指令,虽然减少了单条指令的访存效率,但是大大简化了硬件的实现 -
专用存储器读写指令
使用Load进行存储器读
使用Store进行存储器写
RISC-V还定义了7条存储器读指令和存储器写指令用来进行字节、半字、单字的读写操作 -
松散存储器模型
RISC-V使用松散存储器模型,对不同地址访存的顺序不做要求,使用Fence和Fence.I指令来强行界定访存的顺序 -
扩展指令
RISC-V定义了一种扩展指令子集,用于支持多线程状态下访问存储器的原子操作或同步操作
包括Atomic Memory Operation(AMO)指令、Load-Reserved指令、Store-Conditional指令
蜂鸟E203的实现则基于RISC-V的规定设计了四个模块:
-
地址生成单元A