蜂鸟E203RISCV处理器采用自定义汇编指令和NICE总线对协处理器内存进行读写控制思路
[复制链接]
分享的是基于蜂鸟E203内核的SoC设计中,主机通过NICE总写队协处理器内存及寄存器的读写控制思路。
在我们的作品中通过指令的funct7段定义了如下两条自定义汇编指令:
lkram从蜂鸟E203内核RAM发送数据到协处理器RAM
skram从协处理器RAM发送数据到蜂鸟E203内核RAM
lkreg 从蜂鸟E203内核RAM发送数据到协处理器寄存器
skreg 从协处理器寄存器 发送数据到 从蜂鸟E203内核RAM
设计思路:将源地址、目标地址、数据长度通过rs1和rs2寄存器传输。模块内有一个带有使能和直接置数的自增地址计数器负责控制ICB总线和KRAM或者寄存器的读地址。协处理器中还有一个地址缓存寄存器,用来暂存写入地址,等待数据到来后再刷新,即当ICB总线繁忙时,计数器和缓存寄存器暂停刷新,直到总线回应才会继续计数。从总线到KRAM时,计数器存储总线地址,缓存寄存器存储KRAM地址;从KRAM到总线时,计数器存储KRAM地址,缓存寄存器存储总线地址,这样保证了数据能被准确无误地传输。
具体定义如下:
协处理器RAM操作指令
|