arm外扩flash、SDRAM地址线移位

[复制链接]
 楼主| ynln 发表于 2010-10-23 17:53 | 显示全部楼层 |阅读模式
我是学习arm的新手,一直不明白arm外扩flash、SDRAM时,与arm相连的地址线为什么要移1位或者2位?多谢
lelee007 发表于 2010-10-23 18:24 | 显示全部楼层
移1位是为了访问16bit  DATA_BUS的存储器,移2位是为了访问32bit  DATA_BUS的存储器
 楼主| ynln 发表于 2010-10-23 18:39 | 显示全部楼层
明白,我想能不能再详细点。多谢
lelee007 发表于 2010-10-23 19:12 | 显示全部楼层
CPU里边的地址发生器是俺字节(8bit)访问来产生地址的,如果你存储器里边的数据是16位宽,并且是按两个byte拼成16位数据放到存储器的一个地址单元里边来组织的话,CPU地址发生器产生的地址就不能直接拿来访问16位宽的存储器啦。每次访问16bit的数据,只能将CPU的地址除以2来给存储器的地址译码啦

如果你16位宽的存储器,每个存储单元只用低8位,那就可以不用移位啦,每次读出一个地址单元的16bit数据,CPU只取其中低8bit

32位的同样道理
 楼主| ynln 发表于 2010-10-24 18:45 | 显示全部楼层
明白,多谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

41

主题

149

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部