历史上的今天
今天是:2025年07月22日(星期二)
2018年07月22日 | 为什么2440与SDRAM地址线错两位相连?
2018-07-22 来源:eefocus
为什么2440与SDRAM地址线错两位相连?
网上说,错两位是为了32位对齐(地址为8位数据地址,2440位宽为32,错两位,一次跳4byte)。
下面是听南方大哥的教程时记录的:
由于两个内存合起来“数据位宽”是32位。32时,地址总线的地址LADDR0和LADDR1不需要使用。
内存是32位数据宽度,2440的 LADDR0和LADDR1就不用接,从LARRD2开始接到内存的A0一直往下接。 内存是16位数据宽度,2440的LADDR0不用接,从LADDR1开始接到内存的A0一直往下接。 内存是8位数据宽度,2440就从LADDR0开如接到8位位宽的内存的A0一直往下接。
原因:2440的地址单位是“字节”。如果内存芯片位宽是32位(即读或写内存一次都是得到4字节),这时CPU发出0,1,2,3这4个地址,都是访问到这个内存芯片的同一个单元,返回则都是返回同一个4字节的数据(CPU访问内存某些地址上的数据,访问内存上某地址后取到地址上的数据)。这样CPU发出的0,1,2,3这4个地址就对应了内存上的同一块。 CPU发出0~3这4个地址去访问内存中数据,而内存只能够以32位来访问,返回的永远是4字节,接收的也永远是4字节。这样对于CPU发出的0~3这4个地址,都是返回4个字节给CPU。而CPU如何处理返回的数据则是CPU 的事情,假如CPU其实只是想要返回4字节中的1个字节,则这就要CPU内部的存储管理器去把返回4字节中想要的1字节挑出来。那去“硬件连线”上来看就是把0,1这两个地址(LADDR0-1)忽略掉,因为不管LADDR0和 LADDR1如何变化,访问到32位位宽内存的都是同一个地址,起作用的都是LADDR2之后的地址。 只是我不知道如何计算,这里 忽略 LADDR0-1,是如何计算出来的?
回复:为什么2440与SDRAM地址线错两位相连?
你把一个地址代进去试试看,比如CPU发出0X10000、0X10001这两个地址,ADDR1、ADDR0分别为00、01,但是由于ADDR0、ADDR1不接到外部的芯片上,所以访问到的都是芯片上第(0x10000 >> 2)个单元
下一篇:ARM中的中断向量表
史海拾趣
|
告诉大家,我已完成了电路的整理与改进(全部按TEKP5205)目前正进行对TEK5205差分探头的全部数据测试,预计下周也就是本月底将公布上述探头的主要测试结果。目前下一步打算对差分探头进行新的设计并进行对主要部分进行实验,这项工作预计将在下月 ...… 查看全部问答> |
|
一、解释 VCC:C=circuit 表示电路的意思, 即接入电路的电压; VDD:D=device 表示器件的意思, 即器件内部的工作电压; VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压。 二、说明 1、对于数字电路来说,VCC是电路的 ...… 查看全部问答> |
|
菜鸟提问:注入转换(injectedconversion)是指什么? 这几天看STM32手册,看到了injected conversion这个概念,不知道它的具体功能是什么,而injected conver ...… 查看全部问答> |
|
下面展示我的劳动成果: 1、纽扣电池电源和通用5号电池电源结合,这是eeworld送给我的奖品---NXP时钟小音箱,还是很漂亮的 2、镍镉电池电源,忘记是什么时候收藏的了,貌似是剃须刀上宝贝 3、我的小车用的工业级的镍氢电池 ...… 查看全部问答> |
|
最近自己访问论坛有些现象,不知道是我电脑问题还是其他什么问题,我用XP系统IE7的浏览器。 1. 夜里前些天登录老困难了,半天页面打不开,而且要刷新好几次,但我访问其他网站倒挺快的。 2. 查看帖子或者发表帖子会出现“未定义操作”提示,比如 ...… 查看全部问答> |
|
学习《DLP 微型投影业务及技术应用介绍》第一课--学习心得 学习完第一课我认识到DLP技术确实很震撼,从结构上来说是有微镜阵列,微镜阵列下集成了大约25万个镜子,深究内部结构,其实是有CMOS存储单元组成的,一个DLP芯片有数以万计的像素点。DLP其实是数字光学处理技术,1987年由德州仪器发明,1996年德州 ...… 查看全部问答> |




