原创 【原创】关于ARM和储存器的接口设计

2008-10-20 14:48 3527 5 7 分类: MCU/ 嵌入式
     对于嵌入式的学习,网上已经有很多关于开发工具使用,开发环境搭建,内核及BOOTLOADER移植的文章了,但是关于硬件设计方向的文章却很少。究其原因,估计是国内大多数厂家只是照搬三星公司的开发板而只进行了进行了一定的裁剪。自己并没有创新能力。

     关于硬件接口电路的设计,有微机原理和接口设计方面的书,虽然多是基于8086来说的,不过基本原理应该相差不远。建议想搞这类的DX们看一看。

     这两天都在看开发板的原理图,细细琢磨了一下有个地方想不通,就是SDRAM和CPU的地址接口,为什么不是对齐的,于是乎到网上GOOGLE了一遍,还找同学问了下,终于搞了个半通35.gif

呵呵写这里高手可是要见笑了,莫怪!本人只是一介刚学嵌入式的菜鸟,写下这些东西也权当是学习笔记,若对其他新人有所帮助可谓是最大的安慰了,若有不对的地方还请大家指正12.gif

     呵呵闲话不说了,开始说正经的。

69fce63c-f953-497d-b8d1-6312e563a0c3.jpg


      如图所示,是把两片SDRAM并联起来构成32位的数据总线,而地址总线上CPU的A2接到了SDRAM的A0上面,这样接是因为采用32位的数据总线决定的,若采用16位的数据总线那么就要把CPU的A1和SDRAM的A0接起来了。

      因为在SDRAM等其他很多类型的储存器中,数据是按照字节来存放的,也就是8位数据存放在一个地址里面,比如:

地址                      数据

0000                       A

0001                       B

0010                       C

0011                       D

0100                       E

地址是连续的,A,B,C,D,E都是8位的数据,当访问地址0000的时候,D0~D8 的数据线上就会出现“A”若正好是8位位宽的SDRAM的话正好一个地址对应一字节的数据,那么CPU只要输出连续的地址就可以访问数据了,也即CPU输出0000将访问0地址得到A数据,访问0001将得到B数据,那么就不存在地址的偏移,只要把CPU的A0和SDRAM的A0接起来,其他位对应接起来就可以访问了。

但如果SDRAM位16位数据位宽并设定CPU为16位的位宽的话,CPU和SDRAM就有16根数据线是接在一起的,那么CPU的一次地址访问将得到16位数据,也就是两个字节,那么0000和0001的数据就一起送出去了,当CPU访问0000时和访问0001时得到的数据是一样的,所以相对的在CPU看来数据存放的地址应该是半字的,即0000处有个数据,0010处有个数据,这就是为什么要把CPU的A1接到SDRAM的A0上的道理。只要设定CPU的数据总线位宽位16位,那么CPU应该就是进行半字的访问了。

文章评论2条评论)

登录后参与讨论

huotingtu_505472073 2008-10-23 12:38

是不是应为44b0有32位数据线所以它A0的寻址能力才是1个字节呢?

用户1446904 2008-10-21 23:01

虽然44b0有32位数据线但是高16位一般用于其他用途,而且一般的sdram ,flash芯片也是16bit的,所以关键在于arm的bus宽度的设置(om决定了bank0的宽度,bwscon中有其他bank的设置),设定为16位之后44b0内部的总线读写就会自己完成 可以这么认为44b0的A0的寻址能力是一个字节,而上面的sdram的A0的寻址能力是16bit两个字节,所以这两个A0是不匹配的,肯定不可以接在一起,所以A1接A0,除非sdram是8bit的,这样就可以平行接上了
相关推荐阅读
huotingtu_505472073 2014-01-12 22:18
嵌入式程序员面试问题集锦
这个测试适于不同水平的应试者,大多数初级水平的应试者的成绩会很差,经验丰富的程序员应该有很好的成绩。为了让你能自己决定某些问题的偏好,每个问题没有分配分数,如果选择这些考题为你所用,请自行按你的意...
huotingtu_505472073 2011-04-14 23:24
【转】一种实用的步进电机驱动电路
1 引言步进电动机是一种将电脉冲信号转换成角位移或线位移的精密执行元件,由于步进电机具有控制方便、体积小等特点,所以在数控系统、自动生产线、自动化仪表、绘图机和计算机外围设备中得到广泛应用。微电子学的...
huotingtu_505472073 2011-04-14 23:22
【转】几种微型电机驱动电路分析
 以下所述电路用于3V供电的微型直流电机的驱动,这种电机有两根引线,更换两根引线的极性,电机换向。该驱动电路要求能进行正反转和停止控制。 电路一: 如下图所示,这电路是作者最初设计的电路,P1.3、P...
huotingtu_505472073 2011-02-18 19:57
【转】集成运放组成的电压比较器
1. 功能及应用:主要用来判断输入信号电位之间的相对大小,它至少有两个输入端及一个输出端,通常用一个输入端接被比较信号Ui,另一个则接基准电压VR 定门限电压(或称阀值)的UT。输出通常仅且仅有二...
huotingtu_505472073 2011-01-26 08:05
【转】直流无刷电动机工作原理与控制方法12
研究结果表明,在半导体薄片上产生的霍尔电动势E可用下式表示: 式中RH ——霍尔系数(  );IH——控制电流(A);B——磁感应强度(T);d——薄片厚度(m);p——材料电阻率(Ω*s);...
huotingtu_505472073 2011-01-26 07:55
【转】直流无刷电动机工作原理与控制方法1
序言   由于直流无刷电动机既具有交流电动机的结构简单、运行可靠、维护方便等一系列优点,又具备直流电动机的运行效率高、无励磁损耗以及调速性能好等诸多优点,故在当今国民经济各领域应用日益普及。   一个...
我要评论
2
5
关闭 站长推荐上一条 /2 下一条