標題: 在超長指令集程式壓縮上,根據利益評估建造分離式字典
Building partitioned dictionary with benefit estimation for VLIW code compression
作者: 楊佳原
鍾崇斌
Chung-Ping Chung
資訊科學與工程研究所
關鍵字: 超長指令集;分離式字典;程式壓縮;VLIW;partitioned dictionary;code compression
公開日期: 2003
摘要: 在處理器上使用VLIW來提昇效能是個趨勢。但在可攜式系統上,程式總是希望越小越好。VLIW 鬆散的程式結構對記憶體的使用而言是不好的。程式記憶體的保存資料和存取,占了超過50%的耗電,而壓縮程式碼不但可以減低處理器對程式記憶體的需求,也能減少處理器和記憶體之間的傳送,因此希望設計一個方法減少大幅減小程式碼的大小。 在本篇論文中,引用操作碼( Opcode)和運算元(Operand)序列分開建立字典的想法。為了善用VLIW的重複性和規則性,我們採用壓縮程式碼附加長度欄位,一次壓縮數道指令。依據我們訂定的利潤評估公式,挑選出最佳的一群VLIW序列放入字典中。操作碼和運算元字典的建造先後順序和空間壓力,最長序列的限制也是我們討論的重點。 實驗結果顯示,在新的序列排列方法下可以達到42%的壓縮率。
It is a trend that people adopt VLIW to enhance processor performance. When it comes to embedded software, smaller is better. Decreasing code size to fit into cost- or space-constrained memory systems is important business these days. On VLIW embedded system, the power consumption of code memory is about 50%. By code compression, code size and traffic between memory and CPU could be reduced. So we hope to design an approach for VLIW code compression to reduce code size greatly. In this thesis, we adopt partitioned dictionary and codeword with length slot. Partitioned dictionary has opcode and operand dictionaries and has more chance to reuse dictionary entry. Codeword with length slot can reduce the number of codewords and let dictionary entry could be reused by different sequences. We mainly present a heuristic algorithm for building Dictionary. Depending on our benefit equation, we can judge which VLIW sequences are beneficial. Also, we discuss the relation between opcode and operand, the effect of max compress length and combine relation. Experimental results show that 40.2% compression ratio can be achieved on average.
URI: http://140.113.39.130/cdrfb3/record/nctu/#GT009017586
http://hdl.handle.net/11536/81658
Appears in Collections:Thesis