MCF54450 Clock Speed, PLL Multiplier

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

MCF54450 Clock Speed, PLL Multiplier

Jump to solution
538 Views
KyleFromBullex
Contributor III

Hello everyone,

 

I'm working with a MCF54450 processor running U-Boot 2013.01.01, trying to bring the clock speed down from 240 MHz to 180 MHz. The processor is running off of a 24 MHz crystal. It's running in serial boot mode, and our 7-byte SBF header is as follows:

 

0E FF 0F 00 00 14 C0

 

I've attempted to change the clock speed by changing the PLL multiplier from 0x14 to 0x0F. However, when I do this, the processor doesn't print anything to the UART console, and doesn't seem to boot at all. In fact, the lowest clock speed I've been able to achieve is 204 MHz, by changing the PLL multiplier to 0x11. Anything lower than this and the processor doesn't boot.

 

Is there another setting I need to change to get the clock speed down to 180 MHz and still have it boot properly? Perhaps some RAM timing setting that needs to be changed? Thanks in advance.

 

Kyle

Labels (1)
0 Kudos
1 Solution
396 Views
KyleFromBullex
Contributor III

Hi Tom,

I figured out the issue after playing around with the RAM timing settings. For some reason, I had to reduce the CAS latency to make it work at 180 MHz. It works perfectly now. Thanks for your help.

Kyle

View solution in original post

0 Kudos
2 Replies
396 Views
TomE
Specialist II

The Data Sheet says the PLL should be good for 300-540MHz, so you're within that range.

U-Boot may be dong something complicated that depends on the clock frequency. You might want to write a function that turns a led on and off (or somewhing equally simply) and call it from the earliest place you can find in U-Boot to see if it starts running or if the CPU truly isn't running at all.

Are there any softare or hardware watchdogs that might be tripping with a slower CPU clock?

Maybe you should try booting at 240MHz and then switching it down to 180MHz later, by software. Note this requires transitioning via "limp mode".

Tom

397 Views
KyleFromBullex
Contributor III

Hi Tom,

I figured out the issue after playing around with the RAM timing settings. For some reason, I had to reduce the CAS latency to make it work at 180 MHz. It works perfectly now. Thanks for your help.

Kyle

0 Kudos