When waiting the delivery of MARVELL PXA9xx and MSM7500 platform, the previous scenarios occurred to me and remind me of system booting piror to bootloader startup. It's easy to understand but also easy to ignore by SW developers.
When reading, please don't care the obsolote PXA27x, after all, the behaviors are same for any system.
As we all know, the system will boot form the so called physical address '0' on system power on. But what are used to guarantee this? and what will lead the system into boot or reset status and what the system will do under this condition? The answer is related with System Reset and Power Management, especially in mobile devices.
Well, let's take the PXA27x as example to the insight.
1. Brief introduction to PXA27x signals related with Power/Reset
Pins:
Input: VCC_IO, MEM, CORE, PLL, SRAM, USIM, BATT, nRESET, nVCC_FAULT, nBATT_FAULT
Output: SYS_EN, PWR_EN
Boot Sequence after Resets:
There are several types of reset in the system, i.e. power on reset, Hardware Reset, Watchdog reset, .... Here we only focus on Power On Reset and Hardware Reset and quote the description below:
Power On Reset:
Power on reset can't be entered from any other mode (the processor must be completely powered off first) and is invoked when a positive power supply is detected on the backup battery pin, VCC_BATT, and the nRESET pin is deasserted within 10ms. typically, this occurs when VCC_BATT is asserted (like battery is initially inserted into the system) before the initial system configuration.
The power on reset takes the following steps:
a). detection of positive transitioni on VCC_BATT: nReset is asserted --> VCC_BATT followed by nRESET deassertion (MUST, initiates the power-on-reset) --> high-voltage supplies with VCC_IO (higher than other's except VCC_USB, BATT)first and VCC_MEM,LCD,USB,USIM,BB in any order --> lower voltage supplies VCC_CORe,SRAM,PLL in any order
b). internal power domains are powered on
c). 13Mhz processor oscillator and internal PLL are enabled and wait for stabilization
d). nRESET_OUT is deasserted.
Hardware Reset:
Hardware Reset is invoded when an external source drives the nRESET input pin low, which is unmaskable and is always enabled. On assertion of nRESET, hardware reset is entered regardless of the previous mode.
2. Power Management chip for PXA27x
2.1 MAXIM 1586/87
It's specially designed for PXA27x CPU family. Pay more attention to the description in P26-28. It seems that the battery power detection need more circuit (via AC97 Codec, ..) as the I2C interface integrated are only used to control the output voltage of VCC_CORE (0.7-1.475) and VCC_USIm (0-3).
|
文件: | MAX1586A-MAX1587A_cn.pdf |
大小: | 859KB |
下载: | 下载 |
|
2.2 LP3971/xx (national semiconductor)
LP3971 seems to match PXA27x greatly, including Power Supply, voltage configuration and status detection. Pay more attention to P11, P36-38 for the details of block diagram, connection and description between CPU and LP3971.
Battery level detection will need the A/D,i.e. ADC081S101,etc.
|
文件: | LP3971_PMIC.pdf |
大小: | 1453KB |
下载: | 下载
|
|
Here attach another obsolete NationalSemiconductor PM solution FYI.
|
文件: | PowerManagementSolution_NationalSemiconductor.pdf |
大小: | 4284KB |
下载: | 下载 |
|
2.3 PCF50606 (Philips)
Sorry no datasheet available yet!
3. How to guarantee the system boot?
Maybe you have guessed what the following will be. The system is empty when it will start from a complete power off (insert charger, insert battery). then how does the system ensure the correct boot sequence? It must be implemented in hardware and hardware designer must take more considertation of the CPU requirement.
a). whether or not to use the PM chip
Scenarios
considering the power sources (charger, battery,..)
Voltage, current, timing
Battery Charging: LM3658 (V4.2) supporting charging from USB or AC Wall Adaptor,with charging current 100-500 mA and 50-1000mA respectively. and AC Wall Adaptor has higher priority.
b). reset mechanism and sources provided
c). those requirements vary from various CPUs.
Once all those requirements are met and hardware are delivered, insert the power supply line or insert the battery and switch on the power, the system will start the normal boot process.
===EOF========
Appendix:
states of Power Off: switch off completely and deep sleep. take LM3658/LP3971 and PXA27x as example.
a). switch off completely means the devices will not be used for a rather longer period or remove the battery. Normally switch off the LM3658/LP3971 input or remove the battery. On power on reset, it repeat the boot sequence. On switch off, all are closed except charging circuit and RTC.
b). deep sleep is the same as pressing the button 'power off' then the system enter into deep sleep mode. in this mode, LM3971 only provide LDO_RTC output and all others are closed. the power consumpsion is only 0.1014mW.
--------------------------