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 为高)。从设备在所需周期后连续返回读写结果。

相关推荐
玛丽莲茼蒿5 小时前
Linux/Unix学习笔记(四)—— 进程管理
linux·学习·unix
richxu202510016 小时前
学完了江科大STM32,下一步该怎么学?
stm32·单片机·嵌入式硬件·学习
网络与设备以及操作系统学习使用者7 小时前
Linux与Windows核心差异深度解析
linux·运维·网络·windows·学习
知识分享小能手8 小时前
Flask入门学习教程,从入门到精通,Flask智能租房——前期准备 知识点详解(5)
python·学习·flask
淳杰8 小时前
学习笔记 | playwright用法
笔记·学习
三品吉他手会点灯8 小时前
STM32F103 学习笔记-21-串口通信(第6节)-串口发送命令控制RGB灯
笔记·stm32·单片机·嵌入式硬件·学习
炽烈小老头9 小时前
【每天学习一点算法 2026/05/25】矩阵中的最长递增路径
学习·算法·矩阵
wuxinyan12310 小时前
工业级大模型学习之路021:LangChain零基础入门教程(第四篇):文档加载与文本分块技术
人工智能·python·学习·langchain
Qres82110 小时前
Git基础命令学习笔记
笔记·git·学习
奔跑的Ma~10 小时前
Azure OpenAI Codex 详细配置与使用教程(国内用户专属)
学习·microsoft·flask·ai编程·azure