个IO。以及需要1个PWM用于控制LCD对比度,LCD复位信号可使用nRST_OUT。建议PWM使用TOUT1;建议模拟总线的16个IO使用GPF0~7、GPG0、GPG1、GPG8、GPG9、GPG10、GPG12、GPG13、GPG14。
因为模拟总线使用的复用IO对其他功能的影响:无
17. 蜂鸣器:
若使用无源电磁式蜂鸣器,1个PWM输出控制蜂鸣器。若使用有源电磁式蜂鸣器,用普通IO来控制。建议使用TOUT2,既可做PWM输出又可做GPIO。 18. 多串口切换
S3C2440的UART0和UART1都分别可能和2个串口外设连接,各自需要1个IO做2路切换控制。S3C2440的UART2与接口板上针打、IC卡等4个模块交替通讯,需要2个IO作为串口切换控制信号,还需要一个中断信号用于模块通讯请求。建议使用GPB7、GPB8、GPB9、GPB10分别作为UART0、UART1、UART2的切换控制信号,中断使用EINT19。
GPB7、GPB8、GPB9、GPB10的复用功能为外部DMA控制器,所以有多串口切换功能之后,外设与2440之间不能DMA传输。 19. JTAG下载接口
需要上拉10K在每个JTAG信号上(除了TDO信号)。使用单排插座,考虑信号排列兼容以前的JTAG下载线。NTTST信号用0欧电阻配置可选与nRESET信号相连,用于配置DEBUGGER模式。进入DEBUGGER模式时,必须去掉NTTST信号到nRESET信号的0欧电阻连接。
为了将这149个信号以及输入电源和地信号与接口板相连,考虑使用2个100PIN贴片插座。PCB面积将比9307核心板小许多,为了和9307核心板共用插座,将与其相同的接口如总线、LCD接口及部分IO等接到一个共用的插座上,另一个插座排列一些与9307不同的信号线以及不方便连接到共用插座的信号线。
六、 手持低功耗应用规划
1. 低电压低功耗存储器件选型
若作为手持产品应用,数据存储器件可以选用小封装(0.8mm FBGA),低电压(1.8V)memory器件。
可选用下表中的2片4Bank 16bit PC100/133兼容 SDRAM,54-Ball FBGA(0.8mm)封装
Max Freq SDRAM SANSUNG型号 Max Freq. HYNIX型号 电压 单片类型 K4M28163PH 111MHz(CL=3) -R(B)E/G/C/F90 83MHz(CL2) K4M56163PG -R(B)E/G/C/F90 容量 2M x 16 x 1.8V 16MB 4Bank 111MHz(CL=3) 83MHz(CL2) 111MHz(CL=3) HY5S5B6ELFP-SE 105MHz 4M x 16 x 1.8V 32MB 4Bank K4M51163PC HY5S7B6LFP-S 105MHz 8M x 16 x 1.8V 64MB 4Bank -R(B)E/G/C/F90 83MHz(CL2) 可选用下表中1片8位Nand Flash, 63-Ball FBGA(0.8mm)封装, SANSUNG型号 K9F5608R0D-J K9F1208R0C-J HYNIX型号 HY27SS08561A ST型号 电压 1.8V 1.8V 容量 32MB 64MB K9F1G08R0B-J K9F2G08R0A-J HY27SF081G2A NAND01GR3B2B/C 1.8V NAND02GR3B2C 1.8V 128MB 256MB
2. 总线电平转换
因为总线为1.8V低电压,若总线上的外设器件为3.3V(譬如以太网芯片,虽然手持设备很少带以太网接口),则需要使用总线电平转换。根据需要可以选用TI的SN74AVC4T45(4位),SN74AVC8T45(8位),SN74AVC16T245(16位)SN74AVC32T245(32位)双电源转换。这些器件理想适用于便携式手持应用的转换要求(AVC16T245的功耗为25uA,封装为0.65mmBGA)。
总线隔离器的OE是否使用片选控制,需要分析时序是否满足CPU与外接总线器件要求。 3. 电源规划
作为手持产品,通常有电池管理的需求。电源管理继续使用TPS65054,但是在接口板上需要增加一个电池充电管理器件。
此种情况下可以也考虑以后改用NS的LP3913电源管理器件。它带有电池充电管理单元。可提供2路600mA BUCK,2路150mA LDO,1路BUCK或者BUCK/BOOST。可将1.3V LDO接VDD_ALIVE,3.3V LDO接VDD_ADC和VDDOP,使用2路BUCK分别供电memory和2440内核。可通过IIC接口调节内核电压及控制各路电源开关,默认的电压有1.3/3.3/1.8/3.3V,很适合S3C2440应用。还带有2个LED驱动和4通道ADC,可用于电池的管理应用。
4. 动态调整时钟和电压
对于电源管理有这样一种观察,即处理器消耗的能量与驱动处理器的时钟频率以及应用其内核上的电压平方成正比。
降低处理器时钟速度,功耗将成比例下降。但是执行的代码要更长的时间才能完成,那样的话也不会省电。依据CPU忙或闲不同应用改变工作时钟是一个有效的办法。进入SLOW和IDLE模式都可以降低CPU的工作时钟。
动态降低电压是另一种做法。S3C2440可在启用VDS的时候使用低至1V的核心电压。现在使用的TPS65054电源芯片使我们可用IO口控制核心工作电压变化。
5. 关于s3c2440各组电源在sleep时的作用,以及sleep时是否可关断的问题
虽然DATASHEET说在sleep状态下除了VDDi等几组内核电源外,其他的不能关。但为了进一步降低功耗,探讨一下其他电源是否可关断的问题。
a、 VDDalive(reset block and port status register VDD) 任何时候都不可断,关
了就不可能resume了.
b、 VDDiarm (core logic VDD for ARM core) 由pwren控制,可关断;
VDDi (core logic VDD for Internal block) 由pwren控制,可关断; VDDi_MPLL (MPLL analog and digital) 由pwren控制,可关断; VDDi_UPLL (UPLL analog and digital) 由pwren控制,可关断;
上面几组在sleep时候都可关掉。
c、 RTCVDD 实时钟 VDD(1.8-3.6) 断开的话时钟丢失,所以不能关。目前由接口板输入
后备电源。
d、 VDDOP (I/O port VDD (3.3V)) 要根据sheep情况下I/O口所接外围电路情况判断,
因为I/O在sleep模式下要控制外设电源.并且要使用I/O口的外部中断将2440从睡眠中唤醒.所以I/O电源是不能关. e、 VDDMOP (memory I/O VDD(1.8V)) sleep时候,sdram进入自刷,总线不再使用。所
以VDDMOP是可以关断的,但需要把VDDMOP与SDRAM的电源分隔开来才可以。 f、 VDDA_ADC (adc VDD(3.3V)) sleep时adc 不用了,也是可关断的。也可以不关断
它,而是通过设置ADCCON寄存器位,使ADC进入它自己的power-down模式。 我的想法是在SLEEP的时候,除了手册上说的VDDiarm、VDDi、VDDi_MPLL和VDDi_UPLL要关断以外,可以考虑尝试将VDDMOP和VDDA_ADC也同时用PWREN信号来控制关断与打开。这样可以进一步降低SLEEP模式下的功耗。因为数据手册上并没有建议这么做,所以这个可以在调试时进行一下实验。
6. 智能关机规划
在按下电源按钮关闭设备时,有一个中断给系统发出关机信号。系统实际上没有关闭程序,只是把其内容(代码、栈、堆、静态数据)留在存储器里,然后把处理器置于睡眠模式,
关闭处理器内核和外设,但继续供电给内部实时时钟与中断管理单元。此外,DRAM在睡眠模式期间保持自刷新状态,以使其内容完整无缺。
再次按下电源按钮时,一个外部中断发信号唤醒CPU。唤醒中断服务程序用校验和来验证处理器内部状态恢复之前DRAM的内容是否保持原样。系统能直接回到设备关闭时运行的线程。这样打开设备后它会处于上次使用结束时的状态。
系统装载驱动程序要花好几秒时间。这个方法避免了需要处理器大量计算且耗时的重启工作。并且保持了关机时候的应用操作,譬如假如正在输入一个新的联系信息或者正在编辑一篇文档时关机,那么几天以后重新打开还将在这个地方。目前绝大多数PDA设备均采用这种设计。
减少睡眠模式下的功耗很重要。智能关机前需要分析并确定将系统硬件设置为尽可能最低的电源状态。在睡眠模式期间仍然要给I/O口供电,因为I/O端口作为输入可用做中断以唤醒设备,作为输出则用于给外设进行配置。要注意如果把某个I/O引脚配置成输出,它将被上拉到Vcc,但如果在关机时把此I/O设置为逻辑0将会导致电流穿过上拉电阻。所以软件要注意在这种情况下把这个IO口的上拉电阻控制寄存器设置为Disable。另外注意如果把一个I/O设置为输入而不与输出端连接,将会引起虚假的逻辑变换,从而增加功耗。
CPU睡眠模式下功耗估算:
1.3V VDDalive + 3.3V IO口静态 = 380uA; 1.8V SDRAM self refresh 500uA x 2 = 1mA; 3V RTC 电流 3uA。
电源芯片静态工作电流 <1mA
7. 软开关机功能规划
如果应用对关机功耗非常苛刻,那么可以在智能关机以外再增加一种下电关机的情况。可以使用轻触按键实现软开关机功能。短按按键为智能关机,通知CPU保存工作现场,进入SLEEP模式。再短按按键,将CPU从SLEEP模式中唤醒。按键信号要控制CPU的外部中断。长按按键4S以上关闭或打开除RTC电源以外的所有电源,实现开机或者关机。通过RN5VD27器件实现电压检测的延时。软开关机电路置于接口板。可参照POS的延时开关机电路。
8. 系统关机闹铃及定时开机功能规划
如果应用需要系统关机闹铃及定时开机功能,可以使用以下2种方式:
方式一:系统智能关机,使s3c2440进入sleep模式,此时RTC中断可以把2440唤醒,进行闹铃。
方式二:另外使用一片外置的RTC。关机时2440彻底下电。使用外置RTC的定时输出打开电源使2440上电。2440查询外RTC的寄存器判断是否启动闹铃。这种方式的关机功耗可从毫安级降到微安级。