LPC2000系列ARM外部存储器控制器(EMC)

发布时间:2024-05-18
相关寄存器
外部存储器控制器包含4个寄存器,它们分别对应一个存储器组。通过这些寄存器,可以分别设置每个存储器组读写访问之间插入的等待周期个数、每个存储器组的总线宽度等。
存储器组配置寄存器0~3(bcfg0~3):
idcy:在两个存储器组之间切换访问时,为了避免器件间的总线竞争,需要插入空闲的cclk周期,该域控制着这个周期数。
计算公式为:空闲cclk周期数 = idcy +1;(idcy的复位值为15)
wst1:一些慢速的外部存储器可能不能适应emc最高速度的读操作,所以需要在读周期中插入若干个空闲等待周期,以降低读操作的速度。该域控制着读周期中插入的空闲cclk周期数。
计算公式为:读操作周期长度 = wst1 + 3;(wst1的复位值为15)
rble:如果外部存储器的总线宽度为16或32位,那么读写操作是对总线上的2个或4个字节的数据同时进行的。某些存储器允许对总线上的某几个字节进行独立的读写操作,而不影响其它字节,这通过芯片的字节定位引脚实现。当rble位为1时使能字节定位功能,bls3:0在读写操作时输出低电平。当rble位为0时,禁止该功能。
存储器组配置寄存器0~3(bcfg0~3):
wst2:和读操作类似,一些慢速的外部存储器可能不能适应emc最高速度的写操作,所以需要在写周期中插入若干个空闲等待周期,以降低写操作的速度。该域控制着写周期中插入的空闲cclk周期数。
计算公式为:写操作周期长度 = wst2 + 3;(wst2的复位值为15)
对于burst rom,计算公式为:写操作周期长度 = wst2 + 1;
buserr:总线错误状态位。如果emc检测到amba总线上出现一个大于32位数据访问的请求,那么该位将置位。arm7tdmi-s内核不会出现这样的请求;
wperr:错误写状态位。如果对一个已经写保护(wp位为1)的存储器组进行写操作,该位将置位。向该位写入1,可以清零该位。
wp:该位为1时,相应的存储器组被写保护;
bm:如果外部存储器使用了burst rom,将该位置1;
at:该域通常写入00。
mw:该位控制相应存储器组的数据总线宽度,如下表所示。
mw控制域(bcfg[29:28])与引脚boot1:0的关系:
由于bank0可用于引导程序运行,所以bcfg0[29:28]的复位值与引脚boot1:0的设定有关(当boot1:0=11时,复位后从片内flash引导程序运行)。
与外部存储器的连接
如果存储器组配置成32位宽度,地址线a0和a1无用,可作为gpio使用(由pinsel2设置);
如果存储器组配置成16位宽度,地址线a0无用,可作为gpio使用(由pinsel2设置);
如果存储器组配置成8位宽度,并且使能字节定位功能(rble=1),存储器的写信号由 bls[0]提供,否则由we信号提供;
同一寄存器组的器件宽度必须一致。
与外部存储器连接——32位宽度
与外部存储器连接——8/16位宽度
相关启动代码分析
上一个:园林树木养护技术规程规范(二)
下一个:DSP融合的四大方向

GB 5009.12-2023 食品安全国家标准 食品中铅的测定
厚声181207J013JT4E今日行情、最新报价
快剪辑可以把视频变黑白吗?快剪辑把视频变黑白的图文教程
含羞草为什么会“害羞”
在空白合同上签字的效力是怎样的
Q347H硬密封球阀
最新微信功能强提醒(微信的强提醒功能)
创新工装,助推威猛股份激光焊接进程
分析熟普洱茶各种级别的级别特征
小米手机的相机声音怎么关闭声音了,小米1S青春版如何关闭照相机快门声音