您的位置 首页 国产IC

片上总线Wishbone 学习(九)总线周期之单次写操作

异步周期结束方式单次写操作如图1所示。在时钟上升沿0,主设备将地址信号ADR_O()、TGA_O()放到总线上,将数据信号DAT_O()、TGD_O()放到总线

异步周期完毕方法
单次写操作如图1所示。

在时钟上升沿0,主设备将地址信号ADR_O()、TGA_O()放到总线上,将数据信号DAT_O()、TGD_O()放到总线上,将WE_O置高标明写操作,将恰当的SEL_O()信号置高告诉从设备数据总线DAT_O()的哪些信号是有用的,将CYC_O和TGC_O置高标明操作正在进行,将STB_O置高标明操作开端。

在时钟上升沿1抵达之前,从设备检测到主设备建议的操作,将主设备的ACK_I置高作为对主设备STB_O的呼应。

在时钟上升沿1,从设备将DAT_I()和TGD_I()采样;主设备发现ACK_I信号为高,将STB_O和CYC_O置为低标明操作完结;从设备发现STB_O置低后,也将主设备的ACK_I置低。

在图1中,从设备能够在上升沿0和上升沿1之间刺进恣意多个等候周期。

图1Wishbone总线的单次写操作(周期异步完毕方法)

同步周期完毕方法
图2Wishbone总线的单次写操作(周期同步完毕方法)

在时钟上升沿0:
  • Master在[ADR_O()]和[TGA_O()]宣布有用的地址
  • Master在[DAT_O()]和[TGD_O()]宣布数据
  • Master宣布[WE_O],标明是一个写周期
  • Master宣布有用数据挑选信号[SEL_O()]标明哪些数据是有用的
  • Master宣布[CYC_O]和[TGC_O()]标明总线周期的开端
  • Master宣布[STB_O]标明操作的开端
在时钟上升沿1:
  • Slave检测到主设备建议的操作,预备宣布[ACK_I]
  • Slave预备锁存[DAT_O]和[TGD_O()]
  • Slave宣布[ACK_I]应对[STB_O],标明数据有用,能够读取数据了
  • Master发现[ACK_I],预备完毕总线周期
留意:Slave能够在宣布[ACK_I]前刺进等候周期(-WSS-),以操控传速度。能够刺进恣意多个等候周期。
在时钟上升沿2:
  • Slave锁存[DAT_I]和[TGD_I()]
  • Master拉低[STB_O]和[CYC_O],标明总线周期的完毕
  • Slave发现Master拉低[STB_O],也将[ACK_I]拉低

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/ic/232825.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部