论文部分内容阅读
指令调度对于充分发挥现代高性能RISC(reducedinstructionsetcomputer)处理器的指令级并行处理能力至关重要。基于扩展的装入延时体系结构模型,提出了在代码生成过程中针对表达式树的森林的局部寄存器分配和局部指令调度的集成算法。此算法以DLS(delayed-loadschedulingalgorithm)算法为基础,在保持了使用寄存器少,算法复杂度低的特点的同时,还为适应新的模型和提高效率做了以下扩展:1)通过记录变量内存值的改变信息,设置调度缓冲区解决了多表达式树指令调度的数据相关性问题;2)将调度范围由单个表达式树扩展到森林更有效地减少指令延时;3)通过对调度生成的指令序列的局部调整来处理store延时,有效地减少了由于共享资源而引起的互锁。
Instruction scheduling is crucial to give full play to the instruction-level parallelism of modern high-performance RISC (reducedinstructionsetcomputer) processors. Based on the extended load-delay architecture model, an integrated algorithm of local register allocation and local instruction scheduling for the forest of the expression tree is proposed in the process of code generation. Based on the DLS (delayed-loadscheduling algorithm) algorithm, this algorithm expands to adapt to the new model and improve the efficiency while keeping the use of less registers and low complexity of the algorithm. 1) Of the change information, set the scheduling buffer to solve the multi-expression tree instruction scheduling data-related issues; 2) the scheduling range from a single expression tree extended to the forest more effectively reduce the instruction delay; 3) generated by the scheduling Local adjustment of instruction sequences to handle store delays effectively reduces interlocking caused by shared resources.