SPM-DMA结构的嵌入式系统的节能方法技术方案

技术编号:4053394 阅读:228 留言:0更新日期:2012-04-11 18:40
一种计算机技术领域的SPM-DMA结构的嵌入式系统的节能方法,包括以下步骤:将待处理的数据划分为若干块;进行数据的并行传输和并行处理,CPU完成对每个数据块的处理;检测CPU处理每块数据的时间和DMA加载第i+1块数据并回传第i块处理后数据的时间得到最优调整因子;得到最优频率和最优电压;当CPU的工作级别中包括最优频率和最优电压时,进行静态调整;否则,进行动态调整,使CPU工作于调整后的电压和频率。本发明专利技术根据DMA数据传输的速度来调整CPU工作的电压和频率,使其在满足数据处理和等待数据传输前提下,尽可能降低工作电压和频率,从而大大减小了CPU全速运行带来的能量消耗。

【技术实现步骤摘要】

本专利技术涉及的是一种计算机
的方法,具体是一种SPM-DMA(Scratch PadMemory-Dynamic Memory Access,高速片内存储器-动态存储器访问)结构的嵌入式系 统的节能方法。
技术介绍
与桌面系统相比,嵌入式系统要求更高的响应速度和更低的能量消耗。而目前嵌 入式芯片的发展趋势使嵌入式CPU与存储器之间的速度差异越来越大,从而限制了嵌入式 CPU的性能、实时响应特性和低功耗。为了减少嵌入式CPU与存储器之间的速度差异,以下 两种方式被广泛采用。方式一嵌入式系统中采用SPM作为主要的片上存储器,与相 同容量 硬件管理的Cache存储器相比,SPM具有更小的体积、更低的能量消耗。嵌入式系统通常是 面向特定应用的,所以编译器可实现对嵌入式系统中SPM的管理,提高嵌入式系统的性能 和SPM中数据的预测性。方式二 DMA代替CPU用来在高速片内存储器(SPM)和片外低速 存储器之间传送数据。嵌入式系统中广泛采用专用DMA部件作为数据传输途径,甚至一些 低端的嵌入式芯片中都有DMA传输部件,例如TI的MSP430系列单片机。对于相同的数据 传输量,DMA专用部件方式较CPU传送可以节省更多的能量。为提高系统可靠性、减少散热 引起的成本增加和体积扩大,在SPM-DMA嵌入式系统中,如何更有效地较少能量消耗仍然 是至关重要的因素。从现有技术文献的检索发现,目前节能的方法是根据数据访问模式,选择使用频 率高的部分数据存储在快速的片内SPM中,其余数据储存在片外慢速存储器。这种方式主 要是通过减少访问外存的次数来节能的,但没有考虑CPU处理和DMA传输的并行性,导致过 多的能量消耗,难以满足嵌入式系统对低功耗的要求。主要原因是当CPU进行原有数据处 理时,DMA同时可以在SPM和片外存储器之间传输新数据,而CPU和DMA之间存在着数据制 约关系,即当DMA传输新数据时,CPU已经处理完原有数据,而后续的数据还没有准备好, 此时CPU保持工作状态将造成能量浪费。
技术实现思路
本专利技术的目的在于克服现有技术存在的上述不足,提供一种SPM-DMA结构的嵌入 式系统的节能方法。本专利技术使CPU和DMA并行工作,并根据DMA数据传输的速度来调整CPU 工作的电压和频率,使CPU工作在不同的电压、频率级别。本专利技术是通过以下技术方案实现的,本专利技术包括以下步骤第一步,将待处理的数据划分为若干块,且每块数据小于SPM容量的一半。第二步,进行数据的并行传输和并行处理,CPU完成对每个数据块的处理。所述的数据的并行传输和并行处理,是将SPM从逻辑上分为容量相等的两部分 SPMO和SPM1,DMA装载第一块待处理数据,并将装载后的第一块数据写入SPM0,CPU处于等 待状态;CPU对第i块数据进行处理,并将处理后的第i块数据写入SPM0,同时DMA装载第i+1块待处理数据,将装载后的第i+Ι块数据写入SPM1,并将处理后的第i块数据回写到片 外存储器,1彡i彡N-I ;CPU对第N块数据进行处理,并将处理后的第N块数据写入SPMl, DMA将处理后的第N块数据回写到片外存储器。第三步,检测CPU处理每块数据的时间Tmi和DMA加载第i+Ι块数据并回传第i块 处理后数据的时间Tbl。。k,根据α。ptimal = TCPU/Tbl。。k,得到最优调整因子α。ptimal。 第四步,根据F。ptimal = α。ptimalXFmax和 V。ptimal = α。ptimalX Vmax,得到最优频率F。ptimal 和最优电压V。ptimal,其中Fmax是CPU的最大频率,Vmax是CPU的最大电压。第五步,当CPU的工作级别中包括最优频率F。ptimal和最优电压V。ptimal时,进行静态 调整;否则,进行动态调整,使CPU工作于调整后的电压和频率。所述的静态调整,是将CPU的工作电压调整为最优电压V。ptimal且将CPU的工作频 率调整为最优频率F。ptimal。所述的动态调整,包括以下步骤1)在CPU的所有工作频率中,选择比最优频率F。ptimal大且与最优频率F。ptimal差值 最小的频率Fhigh,并选择比最优频率F。ptimal小且与最优频率F。ptimal差值最小的频率F1ot ;在CPU的所有工作电压中,选择比最优电压V。ptimal大且与最优电压V。ptimal差值最 小的电压Vhigh,并选择比最优电压V。ptimal小且与最优电压V。ptimal差值最小的电压V1ot ;2)根据α ^ = F1JFmax和α high = Fhigh/Fmax,得到次优调整因子α lOT和次优调整 因子α high ;3)根据= W-rH = Wamgh,得到频率Fhigh和电压VhighaLow aHighixLow aHigh的工作时间都是THigh,频率Flw和电压Vlw的工作时间都是IY。W ;4)根据<Γ£·/η_,_」和=[Thigh/Titeration\ ’得到频率 Fhigh 和电压 Vhigh 的迭 代次数都是Chigh,频率Flw和电压V1ot的迭代次数都是Cta,其中TitCTati。n是CPU执行一次 迭代所用的时间;5)在CPU处理一块数据的过程中,CPU的工作频率为Fhigh且工作电压为Vhigh的迭 代次数设置为chigh,CPU的工作频率为F1ot且工作电压为V1ot的迭代次数设置为Q。w,从而完 成CPU调整。与现有技术相比,本专利技术的有益效果是使CPU和DMA并行工作,并根据DMA数据 传输的速度来调整CPU工作的电压和频率,使其在满足数据处理和等待数据传输前提下, 尽可能降低工作电压和频率,从而大大减小了 CPU全速运行带来的能量消耗。附图说明图1是实施例中并行数据块传输和处理的示意图;图2是实施例中并行数据块传输和处理的时隙图。具体实施例方式以下结合附图对本专利技术的方法进一步描述本实施例在以本专利技术技术方案为前提 下进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围不限于下述 的实施例。实施例本实施例中CPU、SPM和DMA集成在一个芯片上,且DMA与片外存储器相连,具体包括以下步骤第一步,将待处理的数据划分为若干块,且每块数据小于SPM容量的一半。第二步,并行数据处理和并行数据传输的实现将SPM从逻辑上分为容量相等的 两部分SPMO和SPM1,DMA装载第一块待处理数据,并将装载后的第一块数据写入SPM0,CPU 处于等待状态;CPU对第i块数据进行处理,并将处理后的第i块数据写入SPM0,同时DMA 装载第i+Ι块待处理数据,将装载后的第i+Ι块数据写入SPMl,并将处理后的第i块数据回 写到片外存储器,1 ^ i ^ N-I ;CPU对第N块数据进行处理,并将处理后的第N块数据写入 SPM1,DMA将处理后的第N块数据回写到片外存储器;如图1所示,本实施例中SPM被逻辑上分成两部分SPM0和SPMl,分别供CPU和 DMA使用。图1(a)中CPU从SPMO中获取要处理的数据块并将处理完的数据块写回到SPM0, CPU与SPMO交互的同时,DMA将之前CPU处理完毕存放在SPMl的数据块写回到片外存储 器,然后从片外存储器将CPU本文档来自技高网
...

【技术保护点】
一种SPM-DMA结构的嵌入式系统的节能方法,其特征在于,包括以下步骤:第一步,将待处理的数据划分为若干块,且每块数据小于SPM容量的一半;第二步,进行数据的并行传输和并行处理,CPU完成对每个数据块的处理;第三步,检测CPU处理每块数据的时间T↓[CPU]和DMA加载第i+1块数据并回传第i块处理后数据的时间T↓[block],根据α↓[optimal]=T↓[CPU]/T↓[block],得到最优调整因子α↓[optimal];第四步,根据F↓[optimal]=α↓[optimal]×F↓[max]和V↓[optimal]=α↓[optimal]×V↓[max],得到最优频率F↓[optimal]和最优电压V↓[optimal],其中:F↓[max]是CPU的最大频率,V↓[max]是CPU的最大电压;第五步,当CPU的工作级别中包括最优频率F↓[optimal]和最优电压V↓[optimal]时,进行静态调整;否则,进行动态调整,使CPU工作于调整后的电压和频率。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨艳琴沈耀过敏意周憬宇唐飞龙
申请(专利权)人:上海交通大学
类型:发明
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1