找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 808|回复: 0
打印 上一主题 下一主题

ATAPI6寄存器访问错误还是ARM9手册错误?

[复制链接]

7

主题

9

帖子

-8975

积分

未知游客(0)

积分
-8975
跳转到指定楼层
1#
发表于 2011-7-8 09:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

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

x
本帖最后由 lvben5d 于 2011-7-8 10:01 编辑
0 C7 K' u8 _( z$ p+ |5 b
. A5 R  K2 R& ?' c" P1 A8 D( kATAP6或7的寄存器访问时序中,有一个错误如下(我认为是错误) 见下图片 " Q$ H0 s' Q$ }
而参照的下图是cirrus公司的ARM9有关IDE接口时序的不同(DIOR-/DIOW-这个引脚时序和标准相反)
  n' i0 ?; R) l' L, P% o4 ]+ O
! U2 U* x3 }* E, E; {5 h+ y! H因为DIOR-/DIOW-是低电平有效,我们以ARM9时序中写寄存器分析:首先地址ADDR VALID需要建立时间t1,然后DIOWn下降沿锁存地址,并维持t2时间有效(这期间接近结束,数据也要出现)当数据写入的时候,DIOW应该处于低电平,然后通过上升沿锁存要写入的数据。然后等待t2i恢复时间。
8 z% x7 I1 z3 u' z/ |8 b分析ATAPI6时序:推测寄存器地址和要写入的数据的锁存发生在DIOW,DIOR的跳变沿。首先DIOR默认是高,接着地址出现,就需要拉低DIOR/DIOW 保持t1, 然后靠上升沿锁存寄存器地址,然后等待t2时间,在t2结束之前,如果是写数据,则需要提前把数据放在DD[7:0]上,给予t3建立时间,然后下降沿锁存,保持DIOR-/DIOW-为低。哈哈,这样分析,ATAPI6协议倒是没错了。备注: 我感觉ARM9提供的时序比较靠谱,因为地址是在DIOR-DIOW-为低建立,等待上升沿锁存。这个时候IDE转SATA接口的寄存器地址就被访问了。然后IDE转SATA芯片内部在t2时间下去处理数据寄存器(写==把D[7:0]的数据放入数据寄存器,读==把D[7:0]bus从数据寄存器拿出来) 接着控制DIOR-/DIOW-上升沿锁存数据到/出数据寄存器form/to D[7:0]总线。# m+ ^# c0 {: @+ X% J
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-24 15:02 , Processed in 0.057954 second(s), 36 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表