历史上的今天
今天是:2024年08月26日(星期一)
2021年08月26日 | 揭秘:6秒极速开机如何实现?
2021-08-26 来源:eefocus
示波器的开机时间几乎都在30秒甚至1分钟以上,似乎大家已经习以为常了,因此几乎所有的制造商都熟视无睹。而周立功的设计理念却完全不一样,那就是“让用户从按下电源那一刻起,就能感受到我们的努力和诚意。” 基于此,ZDS2022做到了从按下电源到开始使用,整个过程仅需6秒时间,其开机时间击垮了所有品牌的示波器。
ZDS2022示波器开机速度快,主要得益于对启动代码的深度优化。开机时,启动代码需要配置FPGA并加载DSP应用程序,即需要分别将FPGA和DSP固件从外部FLASH中读出来,然后通过SPI接口将FPGA固件配置到FPGA芯片中,以及解析DSP固件并将之存放到相应的地址段。在传统的启动代码中,这些操作是由CPU来执行的,虽然速度很慢,但程序设计简易。直观来看,其瓶颈在于:
外部FLASH比较慢,CPU从FLASH中读取数据花了较长时间;
通过SPI配置FPGA耗时较长;
在整个过程中,CPU都是按照串行方式执行的。
如果要缩短开机时间,除了开启指令、数据cache与打开编译器优化等基本方法外,通常考虑的无非是将外部FLASH的速度配快些。显然,如果将外部FLASH配得过快那是有风险的,完全可能导致读出来的数据出错,且速度提升效果并不明显。通过分析发现,最大的瓶颈在于操作的所有过程CPU是按照串行方式来执行的,而读FLASH与SPI配置FPGA等数据传输操作完全可以通过DMA来完成,利用CPU与DMA可并行运行的特点,将CPU资源释放出来用于并行解析DSP固件,这样一来开机速度就会大大地提升,详见下图。

示波器开机时间优化处理流程
通过上述优化后,开机速度有了明显的提升。由于FLASH读取速度太慢,因此进一步将代码压缩比达到了3:1甚至更大,那么FLASH中存放的是压缩后的代码,则读取FLASH的时间就少很多了。由于DSP的运算能力极强,解压速度快,因此启动的综合时间进一步缩短,最终不仅将开机时间控制在6秒,而且通过代码压缩减少了所需的FLASH空间。
史海拾趣
|
Windows CE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。接着我们来走进Windows CE的家族,了解一下她 ...… 查看全部问答> |
|
本人纯粹一新手,刚刚开始学习dsp,以前没有这方面的基础,所以觉得非常吃力。 有些东西,可能有高人指点,会比我自己看几天都管用,所以把下面一段程序发上来, 还希望有人能给指点指点,小弟在此先谢谢大家了。 片子是F28335,和2812差不多, ...… 查看全部问答> |
|
本帖最后由 jameswangsynnex 于 2015-3-3 20:00 编辑 据相关设备厂商透露,此次初验实际上推迟了时间,主要是个别城市推迟了建网进程。中国移动TD建网虽然在8个城市实际上举行,但以北京、上海、广州的建网规模最大,难度也最大。最终,秦皇岛和天 ...… 查看全部问答> |
|
最近同学参加招聘,遇到这样一道笔试题,我有点分析不懂,请论坛里的高手给指点下,顺便也把ttl和cmos电路的特点和区别给总结下呗 1. 在电阻R阻值很小时,发光管VD1、VD2是否发光? 2 ...… 查看全部问答> |
|
/********************************************************************程序名称:系统频率设置&精确延时硬件环境:EKK-LM3S9B92-CD-572软件环境:keil 4.12创建日期:2010.11.7修改日期:2010.11.8作 者:牙小 ...… 查看全部问答> |




