Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1003614
  • 博文数量: 153
  • 博客积分: 4195
  • 博客等级: 上校
  • 技术积分: 2631
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-22 11:32
文章存档

2012年(7)

2010年(35)

2009年(111)

分类:

2009-10-14 09:28:18

文件: SEP4020功耗测试报告.pdf
大小: 198KB
下载: 下载
 

测试日期:200992420099252009926

测试人:张黎明 顾昊琳 石桂康 陈招娣

 

修改记录:2009.9.27修改文档中各个模块打开部分图片 顾昊琳

 

一、           SEP4020介绍:

SEP4020提供四种低功耗模式:SLOWNORMALIDLE SLEEP

SLOW 模式不打开DPLL,芯片工作频率为2~5MHZ/n,其中n=1/2/4/6/8,缺省为2~5MHZ/1

NORMAL 工作在DPLL 的时钟之下,此时DPLL 的输入为晶振时钟;

IDLE 模式关闭CORE 时钟,减小内核和存储器功耗可以从 NORMAL SLOW 进入IDLE

SLEEP 关闭所有时钟,SLEEP 时的功耗<150uW,支持SDRAM 的数据自刷新,支持RTC 日历保持。

 

SEP4020有三路电源,一路供给core,一路供给DPLL,一路供给I/O(下文所有I/O均为片内I/O)。

二、           测试工具:

 1、硬件工具:

1SEP4020开发板,仅带有cpu+晶振+jtag的最小系统3块(以下简称最小系统);

2)电流测试工具:Agilent N6705A DC power analyzer

3)稳压电源两台。

4J-link

2、软件工具:

    1ADS1.2

2Protel 99 UB4020EVB(V1.1)完整版本)

 

二、测试目的:

测试芯片级功耗。

主要测试最小系统在正常电压工作环境下(1.8V),低电压工作环境(低于1.8V)以及在高温(80°C)和低温(-40°C)下的PLLCOREI/O口的功耗,主要分为以下几大部分:

●动态功耗:是指cpu处于正常运行时的功耗,主要情况有:有I/O操作/I/O操作;系统主频处于slow4M);normal模式的各种主频。

备注:本来打算轻载程序使用普通程序,重载程序使用循环算pi程序,但经实验验证重载程序和直接写while1)的效果是一样的,反而是有I/O操作和无I/O操作有很大的差别,因此这里改成有I/O操作(点蜂鸣器程序)和无I/O操作情况(while循环);测动态功耗时内部模块使能统一,仅保留最少必要模块时钟

    特殊模式下的功耗:主要是idlesleep模式(slow模式下已在动态功耗部分测得)

    芯片内部模块的使能对芯片功耗的影响:系统处于正常运行时,从最少必要模块开始一个个模块使能,测试模块对芯片功耗的影响。

    低电压工作状态:测试在pll电压保持不变的情况下,依次降低core的电压,测试芯片的四种状态(nomal, slow, idle(含进入和唤醒)sleep(含进入和唤醒))是否正常,并找出完全不能实现的极点。

    特殊工作温度下的功耗:主要是极端低温度(-40),极端高温度(80

备注:静态功耗:是指系统有电压而无运行时钟,此时cpu所处的模式和sleep时的功耗几乎相同,因此静态功耗请参考sleep模式的功耗。

 

三、测试方法:

电路配置:

     由于整个系统的电压供给有三路,一路是3.3伏的电压供给芯片VDDI/O,一路1.8伏的电压供给芯片core,一路1.8伏电压供给芯片的pll

因此本测试直接通过专用仪器给这三路供电,不通过外部稳压器件,这样这三路的所经过的电流均是SEP4020芯片本身的电流。由于Agilent N6705A DC power analyzer只能监测一路的电流(由于内部模块没有买齐),因此我们先用两路稳压源对三路中的两路供电,让高精度电流仪为监控路供电压,获得监控路电流值,并轮流转换得到三路的电流。

程序烧写:

       为了降低外围设备对分析芯片功耗所带来的影响,本测试没有提供外部存储介质,所有程序都是在内部esram中实现,先通过jtag将程序downloadesram中,然后让程序运行,拔去jtag解除调试器对芯片的halt(必须拔去,因为jtag本身是使用3.3伏的,会对测试产生干扰),此时系统处于待测试状态。

 

四、测试结果及分析:

0 测试注意点:

1)由于程序只能在esram中运行,需要借助axd调试器,模块打开若无特别说明,均仅打开esramemiGPT(定时器,名称属于历史遗留问题)。程序入口地址为0x0400000,注意此时需修改程序的堆栈地址。

2)此次测试没有开启mmu cache,因为本次测试所有代码均在esram中运行,因此开启mmu cache不能说明真实问题,留置测试板级功耗测试。

3)在测试外设时,注意将蜂鸣器部分跳线帽断开。

4)以mA为单位时,测到小数点后两位数据已经出现抖动,所以再保留到第三位已经没有意义了。

5)测I/O的电流时, J-link加在电路上测的,通过多次观测,J-link在不同主频下电流区别不大,在0.50 mA—0.53 mA之间,注意数据中的I/O电流值是包括J-link的。

6)测Core的电流时,J-link是否加载在电路上不影响测试结果,因为J-link3.3V电压供电,不影响1.8V供电的Core电流。

 

1、  动态功耗测试

 

本节测试目的:主要测试在芯片的不同部分在芯片正常工作时的功耗比重。

 

 

 

 

测试结果:

 

Cpu状态

主频

I/O操作

Pll电流值

mA

Core电流值(mA

I/O外设

mA

芯片总电流

mA

Slow

4M

5.45

3.25

9.00

17.7

5.55

3.10

9.15

17.8

Normal

18M

6.62

10.65

9.81

27.08

6.54

10.00

9.87

26.41

30M

7.07

17.02

10.38

34.47

6.55

15.89

10.50

32.94

52M

6.81

28.13

11.48

46.42

6.75

26.00

11.61

44.36

88M

6.36

46.50

14.22

67.08

6.40

43.24

13.63

63.27

96M

6.70

50.50

15.57

72.77

6.50

46.91

14.90

68.31

 

(红线为有I/O操作时候的电流值,蓝线为有I/O操作时候的电流值,纵坐标为电流值,单位mA,横坐标为主频,单位MHz

IO操作

IO操作

(注:由于本实验使用的稳压电源值具有一定程度的波动,可能会影响PLL的电流值)

 

IO操作

IO操作

 

 

IO操作

IO操作

 

 

 

IO操作

IO操作

 

分析:

       SEP4020在不同主频下,core呈线性变化,而pllI/O部分的功耗变化不大,因此在低频的时候pllI/O部分所占比重较大,而等频率上去后,core的比重逐渐加大并成为主要来源。从芯片整体的角度来看,在不改变主频外地其它条件下,芯片整体功耗随着芯片主频的上升而基本呈线性关系。

 

2、  特殊模式下的功耗测试

本节测试目的:主要测试芯片处于非正常工作模式下(sleepidle)时芯片内部各部分的功耗比重。

Sleep时是将core和芯片内部其它I/O模块的时钟关闭,因此和系统主频无关;idle时只是停止core的时钟,I/O外设部分仍然有时钟,因此和主频有关;外设也仅仅打开模块gpt, emi, esram

程序中将在进入模式后点蜂鸣器,正常情况下蜂鸣器不会响。若在测试的中发现蜂鸣器在响,则说明此时未进入特殊状态,需排查原因。

 

测试结果:

Cpu状态

cpu进入特殊模式前的主频

Pll电流值

mA

Core电流值

mA

I/O电流值

mA

整个芯片电流值

mA

Sleep

X

0.00

0.89

5.40

6.29

Idle

18M

6.48

5.69

9.00

21.17

30M

6.96

8.71

9.65

25.32

52M

6.76

14.02

10.75

31.53

88M

6.56

22.67

12.42

41.65

96M

6.53

24.60

12.81

43.94

Sleep模式整个芯片的电流值为6.29mA,无图。

 

 

分析:

1pllsleep的时候电流几乎为0,在idle的时候电流变化不大。

2Coresleep时也电流也比较小,但是在idle的情况下随主频呈线性变化。

 

阅读(2064) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

myleeming2009-10-14 09:32:24

由于博客长度限制,只是粘贴了测试报告的一部分,完整部分请看pdf文档