lpc43xx EMC时钟能等于100MHz吗?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

lpc43xx EMC时钟能等于100MHz吗?

1,282 Views
cyc583723081
Contributor I

      板子设计时没有注意到勘误手册上说明的EMC问题,导致直接使用了clk0驱动两片SDRAM,在调试的时候直接使用系统时钟204mhz,初始化sdram是失败的,后来找到勘误手册上的一段话“ When operated in the divide by 2 mode (EMC_CLK_SEL, bit 16 CREG6, Address0x4004.312C), the duty cycle of the clock is not the typical 50 % which shortens the setuptime. This could impact designs with an EMC running faster than 100 MHz in divide by 2mode (which corresponds to a maximum core frequency of 200 MHz)

pastedImage_1.png

   我理解的大概意思是,EMC的时钟不能超过100MHZ,也就是系统和时钟不能超过200MHZ,我尝试把系统时钟降到200MHZ,sdram初始化成功了。但是我想知道这个不超过100MHZ能等于100MHZ吗,长期运行会不会有问题。虽然官方也给出了超过100MHZ的解决办法。但目前不想改硬件。

0 Kudos
Reply
2 Replies

1,179 Views
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

I download the errata of LPC43x0 from the link:

https://www.nxp.com/docs/en/errata/ES_LPC43X0.pdf 

There are two parts for the EMC module in the errata:

This is the EMC description:

3.3 EMC.1
Introduction:
The LPC43x0 parts contain an External Memory Controller (EMC) capable of interfacing
to external SDRAM, SRAM, and asynchronous parallel flash memories. The EMC can be
configured to operate at the processor core frequency (BASE_M4_CLOCK) or the core
frequency divided by 2.
Problem:
When operated in the divide by 2 mode (EMC_CLK_SEL, bit 16 CREG6, Address
0x4004.312C), the duty cycle of the clock is not the typical 50 % which shortens the setup
time. This could impact designs with an EMC running faster than 100 MHz in divide by 2
mode (which corresponds to a maximum core frequency of 200 MHz).
Work-around:
If the external bus is running greater than 100 MHz in divide by 2 clock mode, consider the
following:
1. When using only one external chip, use the CLK1 or CLK3 pin to drive the SDRAM
clock for best performance. CLK0 and CLK2 pins are us

3.4 EMC.2
Introduction:
The LPC43xx parts contain an External Memory Controller (EMC) capable of interfacing
to external SDRAM, SRAM, and asynchronous parallel flash memories. The EMC can be
configured to operate at the processor core frequency (BASE_M4_CLOCK) or the core
frequency divided by 2.
Problem:
For SDRAM, the electrical characteristic of the LQFP144 and LQFP208 packages limits
the operating frequency of the EMC to a certain level, which is lower than the specified
value in the data sheet. Choosing an SDRAM clock of 72MHz as the upper limit provides
some safety margin. This frequency is either achieved by a core and EMC frequency of
72MHz, or by a 144MHz core and a 72MHz EMC frequency. However, SDRAM
performance can vary depending on board design and layout.
Work-around:
There is no work-around.
The upper limit of the SDRAM clock frequency is highly dependent on the PCB layout and
the quality of the power supply and de-coupling circuitry.

For the second part in EMC.2, if you use LQFP144 or LQFP208 packages , the SDRAM clock should be less than 72MHz. For the other package, I have checked the data sheet, the minimum EMC clock cycle time is 8.4nS, the maximum EMC clock frequency is 120MHz.

For the first part in EMC.1, it says that you have to use CLK1 or CLK3 for one SDRAM chip case, you use CLK1 for the SDRAM with D0:D15 chip, use CLK3 for SDRAM with D16:D32 chip for two SDRAM case.

I think it is okay when you use 100mHz clock for SDRAM for long time.

Hope it can help you

BR

Xiangjun rong

0 Kudos
Reply

1,179 Views
cyc583723081
Contributor I

hi,

   基于我目前的硬件条件,我将系统时钟设置为了200Mhz,这样经过2分频我的emc clk就是100Mhz,经过一段时间运行测试,在这期间10片样板中有6片lpc43xx已经不能正常访问sdram,为了排除sdram坏的可能性,我更换了新的sdram也不能正常访问,我认为芯片的emc 控制器已经坏掉了;后来我重新选取了10片样板,并将系统时钟降低为180Mhz,emc clk为90Mhz,测试过去10天了,目前10片样板都在正常运行。我是否可以认为在我目前的硬件条件下, emc clk并不能长期稳定的运行在100MHZ。 

   另外在我之前调试的过程中有这样一个小插曲,有一次,我不小心将系统时钟宏MAX_CLOCK_FREQ 后面多加了一个0,也就是2040MHZ,这样的配置下载到芯片中运行,直接导致芯片不能运行,即使后面将MAX_CLOCK_FREQ 修改到204MHZ,芯片也不能运行了,并且jtag已经检测不到芯片内核。这样我可以认为芯片已经出现了不可逆的硬件损坏吗?

另外我想知道如果软件配置的系统核时钟超过芯片的最大运行时钟,它是不是真的就会出现不可逆的硬件损坏?因为这个问题和我现在的emc sdram问题有些相似。貌似都是因为超频引起的物理损坏。希望得到原厂技术的解惑。感谢!

0 Kudos
Reply