一种基于音频处理器的系统固件压缩方法及其解压缩方法技术方案

技术编号:13605926 阅读:273 留言:0更新日期:2016-08-28 20:11
本发明专利技术提供一种基于音频处理器的系统固件压缩方法及其解压缩方法,所述系统固件压缩方法包括以下步骤:步骤S1,对基于音频处理器的系统固件进行字符串压缩编码,得到压缩后的功能程序段,所述功能程序段为系统固件源数据对应的各段功能程序;步骤S2,加入解压缩程序段的字符串,得到未经压缩的解压缩程序段;步骤S3,将未经压缩的解压缩程序段和压缩后的功能程序段合在一起,并生成软件镜像。本发明专利技术能够解决了存储介质过小存储不足问题,从而可以选择小容量存储介质,达到了降低成本的目的;而因为系统固件的软件镜像变得更小时,将缩短整个系统固件的软件升级时间,同时也降低了设备升级过程当中出错的概率,提高了产品的稳定性。

【技术实现步骤摘要】

本专利技术涉及一种压缩方法及解压缩方法,尤其涉及一种基于音频处理器的系统固件压缩方法及其解压缩方法
技术介绍
在传统的音频处理器系统中,开发者通过编译器将软件源代码编译成镜像文件,如*.axf、*.hex、*.bin、*.coff、*.ais等格式文件,再通过各种烧录器将镜像文件烧写到存储介质当中,其中存储介质有诸如sd卡、nand flash、norflash、spi flash和MCU内部闪存等,其中有些存储介质不可以用于执行代码如sd卡、nandflash和spi flash,这些部件在音频处理器系统中仅充当存储介质,系统启动时,需通过内部启动程序先加载这些存储介质中的软件镜像到内存中,然后跳转到软件镜像的入口地址,软件镜像得以正确执行。当音频处理器功能变得更复杂时,软件镜像将变得庞大,这时候我们需要选择存储空间更大的存储介质,烧录存储介质的时间也变得更长,而在真正的产品开发中,不仅需要考虑生产效率问题,还要考虑系统成本的问题;因此,必须要寻找一种更优的方案来解决以上问题,而不是接受这种让人吃力不讨好的方案。
技术实现思路
本专利技术所要解决的技术问题是需要提供一种能够通过更小的容量存储介质容纳更复杂的音频处理器的系统固件软件镜像,以实现优化烧录镜像存储介质时间等目的的系统固件压缩方法及其解压缩方法。对此,本专利技术提供一种基于音频处理器的系统固件压缩方法,包括以下步骤:步骤S1,对基于音频处理器的系统固件进行字符串压缩编码,得到压缩后的功能程序段,所述功能程序段为系统固件源数据对应的各段功能程序;步骤S2,加入解压缩程序段的字符串,得到未经压缩的解压缩程序段;步骤S3,将未经压缩的解压缩程序段和压缩后的功能程序段合在一起,并生成软件镜像。本专利技术的进一步改进在于,所述步骤S1中,在对系统固件进行字符串压缩编码时,加入各段功能程序的运行地址。本专利技术的进一步改进在于,所述步骤S1通过哈夫曼编码压缩算法对系统固件的源数据进行字符串压缩编码。本专利技术的进一步改进在于,所述步骤S1中,包括以下子步骤:步骤S101,统计出系统固件的源数据中各个字符出现频率;步骤S102,按照出现频率对各个字符进行排序;步骤S103,根据排序构建哈夫曼树的编码结构;步骤S104,依据哈夫曼树的编码结构对字符串进行编码。本专利技术的进一步改进在于,所述步骤S1中,还包括步骤S105,将编码后的功能程序段进行按位存储。本专利技术的进一步改进在于,还包括步骤S4,将步骤S3生成的软件镜像烧录至存储介质中。本专利技术的进一步改进在于,所述音频处理器的系统固件为基于OmapL138的系统固件。本专利技术的进一步改进在于,步骤S1中,得到压缩后的功能程序段后生成功能程序镜像,所述步骤S2中,通过未经压缩的解压缩程序段生成解压缩程序镜像,所述步骤S3将功能程序镜像和功能程序镜像合在一起生成软件镜像。本专利技术还提供一种基于音频处理器的系统固件解压缩方法,所述系统固件解压缩方法用于对上述的软件镜像进行解压缩。本专利技术的进一步改进在于,包括以下步骤:步骤A,启动并加载整个软件镜像到内存中;步骤B,跳转到解压缩程序段的程序入口,通过解压缩程序对压缩后的功能程序段的镜像文件进行解压缩得到原始的功能程序镜像数据;步骤C,根据功能程序镜像数据将数据拷贝至各段的运行地址;步骤D,跳转至功能程序段入口,正常运行所述系统固件。与现有技术相比,本专利技术的有益效果在于:能够使得原有系统固件的软件镜像变为更小的镜像,解决了存储介质过小存储不足问题,从而可以选择小容量存储介质,达到了降低成本的目的;而因为系统固件的软件镜像变得更小时,将缩短整个系统固件的软件升级时间,同时也降低了设备升级过程当中出错的概率,提高了产品的稳定性;由于系统固件的软件镜像变得更小,缩短了烧录镜像文件的时间,从而提高了生产效率,减少了人力成本,加之,由于存储介质中的功能程序段镜像被压缩,可防止黑客对存储介质读出并直接进行静态分析从而得到一些程序关键的信息,提高了产品的保密性。附图说明图1是本专利技术一种实施例的工作流程示意图;图2是本专利技术一种实施例步骤S1的工作流程示意图;图3是本专利技术一种实施例哈夫曼树的编码结构示意图;图4是本专利技术一种实施例的工作原理示意图。具体实施方式下面结合附图,对本专利技术的较优的实施例作进一步的详细说明。如图1所示,本例提供一种基于音频处理器的系统固件压缩方法,包括以下步骤:步骤S1,对基于音频处理器的系统固件进行字符串压缩编码,得到压缩后的功能程序段,所述功能程序段为系统固件源数据对应的各段功能程序;步骤S2,加入解压缩程序段的字符串,得到未经压缩的解压缩程序段;步骤S3,将未经压缩的解压缩程序段和压缩后的功能程序段合在一起,并生成软件镜像。如果对一段数据进行非失真压缩可以去掉数据当中的冗余部分使数据变得更小,但是数据中的信息量并不会改变;而通常烧录到存储介质中的软件镜像含有较大数据冗余,故可以对软件镜像进行压缩。本例所述步骤S1中,在对系统固件进行字符串压缩编码时,加入各段功能程序的运行地址,以便在解压缩之后,能够快速便捷地找到各段功能程序的运行地址;所述步骤S1通过哈夫曼编码压缩算法对系统固件的源数据进行字符串压缩编码。如图2所示,本例所述步骤S1中,优选包括以下子步骤:步骤S101,统计出系统固件的源数据中各个字符出现频率;步骤S102,按照出现频率对各个字符进行排序;步骤S103,根据排序构建哈夫曼树的编码结构;步骤S104,依据哈夫曼树的编码结构对字符串进行编码;步骤S105,将编码后的功能程序段进行按位存储。本例所述步骤S104中,依据哈夫曼树的编码结构对字符串进行编码,即为依据哈夫曼树的编码结构对源数据的字符串进行编码;本例还优选包括步骤S4,将步骤S3生成的软件镜像烧录至存储介质中;所述音频处理器的系统固件优选为基于OmapL138的系统固件;步骤S1中,得到压缩后的功能程序段后生成功能程序镜像,所述步骤S2中,通过未经压缩的解压缩程序段生成解压缩程序镜像,所述步骤S3将功能程序镜像和功能程序镜像合在一起生成软件镜像,这样操作能够便于整个系统固件的软件镜像的生成,降低出错率。在本例中,优选采用了哈夫曼编码压缩算法;哈夫曼编码的主导思想是根据字符出现的概率来构造平均长度最短的编码,并且保存编码的唯一可解性。例如一个系统固件源数据的字符串是abcabcabcabcabcabcddddddddd,其中a、b和c的出现次数均为6次,d的出现次数为9次;按照一般的存储方法,一个字符占用一个字节,需要27个字节来存储该字符串;本例采用哈夫曼进行压缩编码时,可首先构建哈夫曼树的编码结构,如图3所示。然后再根据图3的编码结构对字符串进行编码,得出001,1000,0110,0001,1000,0110,0001,1000,0110,1111,1111,1111,1111,11,这里是按位存储,之前的27字节就被压缩到了7字节,这样,在解压的时候按照哈夫曼树译码进行还原;其压缩编码的框图如图2所示。而对应的解压缩过程相对比较简单,直接根据构建的哈夫曼树进行译码得到源数据。因此,本例还提供一种基于音频处理器的系统固件解压缩方法,所述系统固件解压缩方法用于对上述的软件镜像进行解压缩。本例所述系统固件本文档来自技高网...

【技术保护点】
一种基于音频处理器的系统固件压缩方法,其特征在于,包括以下步骤:步骤S1,对基于音频处理器的系统固件进行字符串压缩编码,得到压缩后的功能程序段,所述功能程序段为系统固件源数据对应的各段功能程序;步骤S2,加入解压缩程序段的字符串,得到未经压缩的解压缩程序段;步骤S3,将未经压缩的解压缩程序段和压缩后的功能程序段合在一起,并生成软件镜像。

【技术特征摘要】
1.一种基于音频处理器的系统固件压缩方法,其特征在于,包括以下步骤:步骤S1,对基于音频处理器的系统固件进行字符串压缩编码,得到压缩后的功能程序段,所述功能程序段为系统固件源数据对应的各段功能程序;步骤S2,加入解压缩程序段的字符串,得到未经压缩的解压缩程序段;步骤S3,将未经压缩的解压缩程序段和压缩后的功能程序段合在一起,并生成软件镜像。2.根据权利要求1所述的基于音频处理器的系统固件压缩方法,其特征在于,所述步骤S1中,在对系统固件进行字符串压缩编码时,加入各段功能程序的运行地址。3.根据权利要求1所述的基于音频处理器的系统固件压缩方法,其特征在于,所述步骤S1通过哈夫曼编码压缩算法对系统固件的源数据进行字符串压缩编码。4.根据权利要求3所述的基于音频处理器的系统固件压缩方法,其特征在于,所述步骤S1中,包括以下子步骤:步骤S101,统计出系统固件的源数据中各个字符出现频率;步骤S102,按照出现频率对各个字符进行排序;步骤S103,根据排序构建哈夫曼树的编码结构;步骤S104,依据哈夫曼树的编码结构对字符串进行编码。5.根据权利要求4所述的基于音频处理器的系统固件压缩方法,其特征在于,所述步骤S1中,还包括步骤S105,将...

【专利技术属性】
技术研发人员:张涛磊
申请(专利权)人:深圳市东微智能科技有限公司
类型:发明
国别省市:广东;44

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

1