01
AMBA总线概述
AMBA总线家族(AHB、APB、AXI)介绍,总线架构在SoC中的作用。
基础SoC
02
握手信号基础
Valid/Ready握手协议的基本概念,为什么需要握手?
核心协议
03
握手传输阶段
地址阶段、数据阶段,以及它们如何通过握手信号对齐。
时序
04
AHB总线握手机制
AHB的HADDR、HWRITE、HTRANS等信号,以及HREADY和HRESP的握手交互。
AHB控制
05
AHB流水线传输
AHB的流水线特性,地址与数据相位重叠,以及HREADY反压机制。
流水线反压
06
AHB Slave握手响应
Slave通过HREADY和HRESP(OKAY、ERROR、RETRY、SPLIT)控制传输。
Slave响应
07
AHB Master握手行为
Master如何驱动地址和控制信号,等待HREADY完成传输。
Master
08
AHB多Master仲裁
HBUSREQ、HGRANT、HLOCK等信号在握手中的作用。
仲裁多Master
09
APB总线握手机制
APB的PSEL、PENABLE、PREADY信号,状态机(IDLE、SETUP、ACCESS)。
APB状态机
10
APB写传输握手
PSELx、PENABLE、PWRITE、PWDATA与PREADY的握手时序。
写传输
11
APB读传输握手
PSELx、PENABLE、PRDATA与PREADY的握手时序。
读传输
12
APB桥接器握手
AHB to APB桥如何转换握手协议,处理等待状态。
桥接转换
13
AXI总线握手机制概述
AXI的5个独立通道,每个通道的Valid/Ready握手。
AXI通道
14
AXI写地址通道握手
AWVALID、AWREADY,以及地址信号的握手时序。
写地址
15
AXI写数据通道握手
WVALID、WREADY、WLAST,数据突发传输的握手。
写数据突发
16
AXI写响应通道握手
BVALID、BREADY,写事务完成的握手。
写响应
17
AXI读地址通道握手
ARVALID、ARREADY,读地址的握手时序。
读地址
18
AXI读数据通道握手
RVALID、RREADY、RLAST、RRESP,读数据的握手。
读数据
19
AXI握手依赖关系
通道间的顺序依赖(写地址→写数据→写响应,读地址→读数据)。
依赖顺序
20
AXI Out-of-Order传输
ID标签如何支持乱序,握手信号如何配合。
乱序ID
21
AXI 握手超时与死锁
Valid/Ready互锁导致的死锁场景,以及避免方法。
死锁超时
22
AXI 低功耗握手
CSYSREQ、CACTIVE等信号在低功耗状态切换中的握手。
低功耗
23
ACE总线握手机制
ACE在AXI基础上增加的Snoop通道,以及Snoop地址/数据的握手。
ACE一致性
24
ACE 一致性握手
ACVALID、ACREADY、CRVALID、CRREADY、CDVALID、CDREADY。
Snoop
25
CHI总线握手简介
CHI的链路层、协议层握手,与AXI的差异。
CHI高级
26
握手时序分析
建立时间、保持时间对握手信号的影响,如何约束。
时序约束
27
握手验证策略
UVM验证中如何构造握手激励,如何覆盖Valid/Ready的随机组合。
UVM验证
28
握手常见Bug
Valid提前拉低、Ready未及时拉高、死锁、数据丢失等案例分析。
Debug案例
29
握手性能优化
如何通过调整握手策略(如提前断言Ready)提升总线吞吐率。
性能优化
30
综合案例:SoC混合总线
一个简单的SoC系统,AHB/APB/AXI混合总线,分析各模块间的握手交互。
综合实战