网站做好优化后,一次投资,长期有效

DSP的汇编法式优化方式及真例阐发

作者:天 日期: 2018-03-19 22:56 点击:

  龙8娱乐官网,)相对于模仿信号处置器有很大的优胜性,表示正在精度高,矫捷性大,靠得住性好,易于大规模集成等方面。跟着半导体系体例制工艺的成长和计较机系统布局的改良,数字信号处置器的功能越来越强大,对信号处置系统的研究沉点又从头回到软件算法上,而不再像过去那样过多地考虑硬件的可实现性。跟着运算能力的不竭提高,可以或许及时处置的信号带宽也大大添加,数字信号处置的研究沉点也由最后的非及时性使用转向高速及时使用。

  目前大大都DSP虽然都支撑C言语编程,可是正在现实工程使用中,最常用的方式是用C言语编写流程节制。搭建工程框架,具体的算法模块及比力耗时的功能模块仍是采用汇编言语来编写。这是由于C言语虽然具有易读性、可移植性等长处,可是它未便于对系统硬件资本的间接节制,无法阐扬DSP本身的特点,无法充实操纵DSP系统布局中无限的资本。出格是正在硬及时性系统中,用汇编言语进行编程可操纵DSP本身硬件布局的特点对进行优化取精简,往往可以或许使一些复杂的算法和功能模块正在及时性方面取得很是好的结果。

  DSP的品种繁多.各类DSP都有其本身的硬件特点,而对DSP汇编法式进行优化的过程就是按照法式本身特点充实操纵DSP硬件资本的过程。因而,具体到分歧的器件.其优化体例也不尽不异。目前比力风行的大大都DSF,都支撑法式并行和软件流水,本文从这二方面出发,归纳综合归纳出对汇编法式进行优化的一般方式。但愿可以或许正在对分歧DSP汇编法式优化的过程中供给一些思虑体例上的切人点。为了易于申明,笔者供给了一些实例,这些例子均是用AD公司TSl01系列电的汇编言语编写的。

  法式的并行是汇编优化的环节。可是,正在起头进行任何优化之前,必需领会从何处动手,起首领会瓶颈正在何处。软件的某些部门可能只施行一次(初始化)或者只施行少数几回,费尽心思优化此部门代码并非明智之举,由于获得的全体节流结果是微乎其微。对法式的优化应将次要力量集中正在最为费时的部门。

  通过对大量DSP法式的研究.能够发觉整个法式比力耗时的部门往往是正在1个或几个大的轮回中。这些轮回部门又往往可分为取数、处置、储存处置成果3个挨次施行的步调,这3个步调有较着的时间先后关系.只要取了数才能处置。处置后才能存储成果,这种时间上的彼此依赖性为法式的并行带来了很是大的坚苦。

  轮回展开是最常用的一种优化技巧。1次轮回处置过程中的各语句是具有很强的时间先后挨次的,可是正在持续2次轮回过程中的各类语句倒是彼此的,它们是以不异的语句处置分歧的数据。因而能够采用将轮回次数减半,每2次(也能够是3次、4次等,应按照具体环境来确定,同时轮回次数要做响应改变)轮回归并为1次轮回过程的方式来使法式并行,提高效率。

  例1是一段对图像进行二值化的代码的次要部门.是一段2次的轮回,并未颠末优化;实例2是将其轮回展开,2次轮回过程归并为1次轮回的代码段(这里假设其每行像素个数为偶数,若是不为偶数只需正在内轮回外额外处置一个像素即可);实例3是轮回展开并进行优化精简后的代码段。这3段代码均用TSl01的汇编言语编写,此中j4指向待处置的图像;i5指向处置后的图像;xrO、xrl别离为图像行、列个数;xr2为二值化的阈值,像素灰度值大于或等于该值的使其等于该值,而像素灰度值小于该值的设为零。