SOC总线学习记录之ICB(Internal Chip Bus)

蜂鸟E203总线:

采用自定义总线协议 ICB(Internal Chip Bus),该总线用于蜂鸟 E203 内核内部使用,同时也可作为 SoC 中的总线使用。
ICB 总线的初衷是为了能够尽可能地结合 AXI 总线和 AHB 总线的优点,兼具高速性和易用性,它具有如下特性:

 相比 AXI 和 AHB 而言,ICB 的协议控制更加简单,仅有两个独立的通道,如图所示,读和写操作共用地址通道,共用结果返回通道。

 与 AXI 总线一样采用分离的地址和数据阶段。

 与 AXI 总线一样采用地址区间寻址,支持任意的主从数目,譬如一主一从,一主多从,多主一从,多主多从等拓扑结构。

 与 AHB 总线一样每个读或者写操作都会在地址通道上产生地址,而非像 AXI 中只产生起始地址。

 与 AXI 总线一样支持地址非对齐的数据访问,使用字节掩码(Write Mask)来控制部分写操作。

 与 AXI 总线一样支持多个滞外交易(Multiple Oustanding Transaction)。

 与 AHB 总线一样不支持乱序返回乱序完成。反馈通道必须按顺序返回结果。

 与 AXI 总线一样非常容易添加流水线级数以获得高频的时序。

 协议非常简单,易于桥接转换成其他总线类型,譬如 AXI,AHB,APB 或者 TileLink 等总线。

对于蜂鸟 E203 内核这样的低功耗处理器而言,ICB 总线能够被用于几乎所有的相关场合,包括:作为内部模块之间的接口,SRAM 模块接口,低速设备总线,系统存储总线等等。

ICB 总线协议信号

ICB 总线主要包含 2 个通道,如图所示。ICB 总线信号列表如下表所示:

 命令通道(Command Channel)

Command Channel 主要用于主设备向从设备发起读写请求。

 返回通道(Response Channel)

Response Channel 主要用于从设备向主设备返回读写结果。

基本时序很简单:主要为:主设备向从设备通过 ICB 的 Command Channel 发送读/写操作请求(icb_cmd_read 为高/低),从设备立即接收该请求(icb_cmd_ready 为高)。从设备在所需周期后连续返回读写结果。

相关推荐
橙橙笔记7 分钟前
具身智能的学习 - 完成一个机械臂 第1节
python·学习·机械臂·具身智能
Hhy_11074 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
山甫aa4 小时前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web
m0_564876845 小时前
CMake学习
学习
只愿云淡风清5 小时前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
wangqiaowq8 小时前
Ontology 学习 二
学习
该学习了咕咕15 小时前
顶刊论文学习笔记
学习
Linux-lucky16 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
li星野16 小时前
【学习记录】k-Wave 时间步长、CFL 稳定性与参数实验全解析
学习
心祭丫丫19 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习