基于GCC的软件流水技术的研究

来源 :哈尔滨工程大学 | 被引量 : 0次 | 上传用户:loganhuang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在计算机、互联网和通信技术高速发展的今天,嵌入式系统取得了长足的进步。这不仅表现在从事嵌入式系统开发研究的人员队伍日益壮大,嵌入式处理器和实时操作系统的性能增强和产品升级换代,更重要的体现在嵌入式技术应用范围的急剧扩大。 在现在日益信息化的社会中,各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机,任何一个普通人都可能拥有从大到小的各种使用嵌入式技术的电子产品,小到mp3,PDA等微型数字化产品,大到网络家电,智能家电,车载电子设备。而在工业和服务领域中,使用嵌入式技术的数字机床,智能工具,工业机器人等也将逐渐改变传统的工业和服务方式。 随着嵌入式系统应用领域的不断加深,对嵌入式系统性能的要求也不断的提高。为了满足这种不断提高的要求就必须从硬件和软件两个方面来着手。在硬件方面,应用于嵌入式系统中的大量的微处理器都采用了多发射的体系结构,从而能够支持指令级别上的并行执行。为了适应处理器的这种功能以便充分发挥处理器的性能,通常需要在编译过程中通过各种代码优化技术来发掘程序的指令级并行性。软件流水就是这样一种通过发掘循环的不同迭代的不同部分的指令间并行性,使这些指令并行执行,从而提高循环的执行效率的优化技术。 GCC是嵌入式系统开发中广泛使用的一种开放源代码的编译器。其在4.0.0版本中开始加入采用模调度算法的软件流水技术。摆动模调度是一种在进行近似最优化调度的同时尽力减小寄存器压力的软件流水算法。虽然其在调度过程中尽力减小寄存器压力,但该算法与其他软件流水算法一样,还是会导致调度后代码的寄存器压力增加。为了解决这种情况在提高指令并行性的同时也增加了寄存器压力,而寄存器溢出技术正是解决寄存器压力的有效方法。 本文首先对软件流水技术进行了研究,并着重探讨了软件流水技术导致调度后代码寄存器压力增大的原因以及解决办法。然后分析了软件流水在
其他文献
随着互联网(Internet)的出现和普及,人们的信息来源得到极大的丰富,获取信息的方式也随之改变。互联网成为人们获取信息的主要来源之一。在Web信息以几何级数增长的情况下,如何
可重复向量与死锁是Petri网理论中两个非常重要的概念,在Petri网的活性、公平性的研究中起着举足轻重的作用,因此,可重复向量与死锁的求解就成了一个必要的环节。本文在对Petri
随着医学影像技术的发展及新技术的出现,新一代成像方式及扫描设备产生了大量的图像数据,对2D/3D图像处理软件的需求也随之快速增长;用于诊断的信息量的增加也对具有快速数据
随着计算机和互联网技术的飞速发展,以计算机网络为工具和媒介的犯罪活动不断增长。传统的计算机取证技术依赖对个人电脑和本地服务器数据存储介质的获取。而在网络与云计算
人脸识别具有重要的理论价值和广泛的应用前景。尽管近年来人脸识别技术取得了长足的进步,但现有算法的性能尚不能满足各种应用的实际需求。从某种意义上讲,人脸识别问题的核
制造企业的质量成本核算,存在业务过程复杂、核算方法多样、核算情况多变等问题,在制造业信息化的今天,要在ERP系统中正确有效的实现质量成本核算,需要寻求切实有效的实现方
日益激烈的市场竞争要求软件工程必须有效率的满足用户个性化需求的定制,能够快速响应和适应市场业务的变化。但是,软件行业大多数的开发还处于手工劳动阶段,软件开发是针对单一
融合数据挖掘技术和数据仓库技术的客户关系管理(CRM)系统对企业的信息管理和决策支持起着至关重要的作用。目前基于数据挖掘的客户关系管理系统的研究偏重于理论和算法研究,
传统中医舌诊是通过观察舌的各种特征来了解人体的健康状况,从而对各种疾病做出诊断及病情评估,是传统中国医学应用最广、最有价值的诊断方法之一。中医的客观化、现代化研究
近年来,由于拥有广泛的应用前景,无线传感器网络(WSN)得到了迅速发展。传感器网络由大量能够对外界环境变化作出反应的传感器结点组成,在典型的应用环境中,传感器结点散布在整个