论文部分内容阅读
随着JPEG2000标准的普及,应用于不同领域的软件解决方案陆续出台,其中比较著名的是JasPer软件。JasPer软件是用C语言编写,具有很高的平台可移植性,已经被移植到APPLE、HP和SUN等多种平台,并可以顺利编译和执行。由于其属于开源软件,用户可以免费获得源代码,并根据需求对源代码进行裁减和修改。然而,由于JPEG2000标准本身的高算法复杂性,JPEG2000的编码时间一般是JPEG的3~4倍。在JasPer软件中,算术编码和离散小波变换两个模块就占据了整个系统近80%的时间开销。这对于实时性要求苛刻的应用方面,只能舍弃性能更强的JPEG2000转而采用JPEG。如何在不影响JPEG2000原有属性的基础上,对JPEG2000的算法和应用软件系统进行优化迫在眉睫。 目前大部分的研究都关注于JPEG2000的算法优化上,却很少有关于处理器指令一级优化的研究。本论文通过研究现代微处理器上提供的多媒体指令集,选择在通信和图像处理领域被广泛应用的PowerPC微处理器作为开发平台,利用Motorola公司为PowerPC G4系列以后的微处理器开发的AltiVec多媒体指令集,对JasPer软件进行了优化。实验结果证明,使用AltiVec这种SIMD(Single Instrument Multiply Data)单指令多数据扩展指令集对软件瓶颈进行优化,可以在不改变原有算法的基础上,有效的提高软件性能。