为什么接存储器时地址线有时需要错位,有时不需要?

[复制链接]
 楼主| 睿翔 发表于 2009-3-17 16:40 | 显示全部楼层 |阅读模式
&nbsp;&nbsp;&nbsp;&nbsp;有一个问题困扰了好久了,就是ARM与存储器(SDRAM和FLASH)相连的问题.数据总线好连,直接对应相连即可,不管8位,16位,32位.关键是地址总线的连接,我以前的理解是看存储芯片的数据位宽,如果是8位,则ARM端的地址线A0对应存储器的地址线B0,A1-B1,以此类推.如果存储器是16位,则A1-B0,这样错开一位,ARM的A0不用.如果存储器是32位的,则A2-B0,以此类推,ARM的A0,A1都不用.我以前就是这样理解的.感觉也没什么问题.<br />&nbsp;&nbsp;&nbsp;&nbsp;可是最近一段时间我看了看其它的芯片和它的原理图,发现有很多连法和我上面的理解不一样.比如IMX27和BF537这两款CPU都是不管存储器是多少位的的,都是直接A0-B0,没有任何考虑错位的情况.更有甚者,有的CPU接存储器比如16位时,竟然不是我想像中的A1-B0,而是A0-B1,反倒是存储器的B0不接.这到底是怎么回事呀?<br />&nbsp;&nbsp;&nbsp;&nbsp;关于ARM外接存储器连法的问题,希望能有高手细致的讲解一下.拜谢了!
 楼主| 睿翔 发表于 2009-3-17 20:12 | 显示全部楼层

没人回答吗?

没人回答吗?老手多多指点啊
阿南 发表于 2009-3-17 21:32 | 显示全部楼层

楼主的理解没有错,S3C2410A,S3C2440等都是这样的,理解的一点都

错.<br />又如IMX27和BF537没有这样做,是因为他们的存储控制器已经内部作了处理了,三星的如S3C2443S3C2450S3C6410等后续的也都是这样子了
 楼主| 睿翔 发表于 2009-3-18 13:14 | 显示全部楼层

谢谢阿南!

谢谢阿南!<br /><br />PS:我买了您的书,感觉很有收获.谢谢
平常人 发表于 2009-3-18 13:45 | 显示全部楼层

地址线最低位的变化,可能对应8位、16位或32位

搞清这个原理,或者要片外或者要片内错位连接,只要看清楚器件手册就好了,不用困扰,放轻松,哈哈哈。。。。。。
helezh 发表于 2013-6-21 17:55 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

35

帖子

2

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

13

主题

35

帖子

2

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