(UVM验证学习2) AMBA APB 协议学习和uvm apb master/slave实现

信号列表

PCLK: 总线时钟
PRESETn:总线reset信号
PADDR[31:0] : 地址
PSELx: 连接slave端的片选信号
PENABLE:指示APB传输的第二个周期(传输数据 的周期)
PWRITE:指示读写
PRDATA:读得的数据
PWDATA:写入的数据

状态机

在这里插入图片描述SETUP状态:当检测到需要进行数据传输时,进入setup状态,选通所需的PSELx信号。总线永远只会在setup状态停留一个时钟周期,下一个时钟上升沿总是转移到ENABLE状态。

ENABLE状态:在该状态下,PENABLE会拉高,setup状态时总线上的PADDR,PWRITE,PSELx信号会在enable状态保持不变。总线也只会在enable状态停留一个时钟周期,随后根据是否还有数据传输,转移到SETUp状态或IDLE状态。

时序

在这里插入图片描述读时序:T2和T3分别对应了读时序下SETUP状态和ENABLE状态的开始。其中地址,片选,读写信号在两个状态保持不变,penable信号仅在ENABLE状态拉高,同时读得的数据也是在ENABLE状态下出现在总线上。由于总线要求slave在ENABLE状态中提供数据,为了得到稳定数据,需要在ENABLE状态结束时的时钟上升沿对读出数据进行采样。
在这里插入图片描述写时序:注意在ENABLE状态结束时,PSELx信号和PENABLE信号都需要拉低,除非紧接着要进入的是对同一个slave的写操作。如果是这样,PSEL信号可以保持不变,但PENABLE信号还是需要拉低。
为了节能,地址和写信号可以在本次传输结束和下一次传输开始前保持不变。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值