| With the popularity of mobile devices and embedded devices in our life,the requirementes by processor will be increasingly high considering of the low power property.A bottlenecks problem happened when we try to optimize the Full-connectivity VLIW architectures in the aspects of delay,area,and the visiting port numbers of register,which led us to creat clustered VLIW architectures.The latter has obvious advantages,but it also increased the complexity and difficulty in the procedure of corresponding software designing.And the potential problem is creating additional energy consumption when the processor run.An excellent instruction scheduling algorithm will reduce energy consumption through a reasonable instruction scheduling arrangement,thereby reducing the energy consumption of the entire process.This method plays a very important role in the researching of low-power processor.when choosing a cluster for an instruction,we have to consider the number of clusters where the father node of current instruction was scheduled to meet the needs of dependency relations between instructions in the C lustered VLIW architectures scheduling algorithms.If the current instruction was not scheduled to the same cluster with its’ s father node,this will caused a data transferring in different clusters at least once.Copying instruction increased extra energy consumption,at the same time,may prolong the execution time of the entire program.Other instructons which depends on current instruction will be impacted by current scheduling.All above requirements,we analyze the status of several existed scheduling algorithms in the paper.By referencing good ideas of other papers and overcoming its shortcomings,we present a new height-first and close dependency scheduling algorithm.Basing data dependency graph,the main idea of the algorithm is that we regard all unscheduled nodes as a new data dependency graph.We define the key node in real time for scheduling through the Height property and it is choosing from the nodes which can be scheduled in current cycle.Then calculate the degree of close dependency between current node and other nodes and deside the scheduling cluster number.Compared with other algorithms,the advantages of this algorithm are that it can satisfy dependencies of all instructions from the global perspective,and take the influence into consideration between current node and close dependency nodes from the local perspective to balance the load in all clusters.By scheduling the node on real-time critical path priority,this algorithm will balance the running time of all parts.A lot of experiments show that this algorithm has obvious advantages in numbers of running cycle and data transfering in different clusters. |