系统芯片设计课上笔记-AMBA总线

提示:来源于东南大学SOC课程

SOC系统中复位的来源:

①外部按键复位
②系统软件复位
③WDT复位
④POR电路:模拟电路,VDD上电初期,产生复位信号;VDD足够高时,各模块正常工作;当VDD降至足够低时,产生复位信号。

AHB的master和slave位宽选择

AHB总线位宽的选择,主要取决于master的位宽,一般很少用8,16,128bit的,大多数基于32,64bit。
结合hsel信号,可以将ahb slave的haddr的地址位宽降低,减小连线数目,降低成本,节省面积。同样,对apb salve的paddr可以进行同样处理。

Retry和split的区别

Retry和split都是ahb的slave在不能及时响应时发起的,retry后,不会影响此次master的优先级,并且会从头传输上次未传输完成的数据,split后,会影响master的优先级,并且会降低master的优先级,等待split的slave向arbiter发起准备好继续传输后,恢复master的优先级,重要的是恢复后的传输会从的split发生的位置继续传输,而不是从头传输。(在常见的soc系统中,slave的这两种传输一般不会发生)

AHB的slave发出的hreadyout

在AHB的burst传输过程中,如果是个8拍的增量传输,在发送第一个地址后的一个周期,可以将slave输出的hreadyout拉低,准备后面传输的8个数据,以提高总线的效率。(hreadyout是否拉高取决于slave具体的行为,是否将数据准备好)

BUSY&IDLE

Busy是由于master没准备好,又想要占用总线而插在一个burst中的状态,如果采用了Idle,总线会重新仲裁,master对总线的占用权发生了变化;(CPU中可能会出现)
Idle是插在两个burst之间,用来区分两次不同传输。

  • 重视Htrans信号,表达的信息非常重要;在debug时常用 IDLE, BUSY, NONSEQ, SEQ
  • AHB中隐含了两个握手信号,master2slave:busy,slave2master:hready

4/1K 边界问题

AXI系统中,slave地址空间一般为4KB的整数倍,如果burst传输地址范围超过了4kB就会传输错误。0x01000=4KB
AHB系统中,salve地址空间一般为1KB的整数倍,如果burst传输地址范围超过了1kB就会传输错误。0x0400 = 1KB
如果burst超过了4/1KB边界,就要重新发起burst传输或者采用其他方式,取决于master的行为。

RISC和CISC指令区别比较明显的是 RISC指令是定长的,一般是32位;

Bit banding 便于修改寄存器中的某一位,有一块专门的内存地址用来映射修改寄存器的某一位数据。

原子操作,指不可被打断的一次操作,一次读或者一次写都是原子操作

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值