在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3475|回复: 5

问个amba的问题~

[复制链接]
发表于 2006-12-16 21:58:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
考虑这样一种情况,master发起一次背靠背的传输(假设是两个SINGLE),第一次传输是错误的(比如slave不支持的传输方式等),第二次是正确的,slave在收到第一个
NONSEQ后报ERROR,所以master在第二个NONSEQ的时候检测到hready=0,hresp=ERROR。协议中规定,在hready为低时,master不得改变控制信号,即htrans等必须维持,但是有几种例外,在hresp为ERROR的时候就可以改变htrans,可选择停止传输。但是在上述情况下,slave是对第一个地址报告的ERROR,但是同时也丢失了第二次传输。但是根据协议,第二组正常传输始终是要丢失的。怎么解决这个问题呢?或者说有必要解决这个问题吗?

波形~~

波形~~
 楼主| 发表于 2006-12-16 22:06:36 | 显示全部楼层

补充~~

补充一点忘了说的,协议规定,在hready为低时,slave必须忽略master的控制信号,所以slave无法检测到第二个NONSEQ。我用synopsys的vip验证我的slave时,master在第二个NONSEQ之后就回到IDLE了,所以始终无法检测到第二次正常传输。
发表于 2006-12-18 09:58:05 | 显示全部楼层
master选择了停止那就没办法了,除非你把master设计改一下。
当然,总线传输出现错误还要继续传输下去,这个听起来似乎是没有道理的。
 楼主| 发表于 2006-12-18 10:13:13 | 显示全部楼层
master是用的synopsys的vip。
我也想的确实总线出现错误没必要在继续了。
但是我想的是slave是对头一次传输报的error,后一次正确的传输也丢掉了。
这可能是属于一种特殊情况,似乎是没必要处理。
谢谢版主的回答!
 楼主| 发表于 2006-12-18 10:19:59 | 显示全部楼层
另外,出现ERROR后,master确实可以选择继续该次传输或者中断。
发表于 2006-12-18 12:57:33 | 显示全部楼层
协议上是option的,所以可以继续也可以不继续。vip选择的是不继续。
其实也不算是丢失,因为是master主动放弃的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 19:52 , Processed in 0.023848 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表