魂芯DSP軟件流水框架的研究與實現(xiàn)
本文選題:多簇DSP 切入點:編譯器優(yōu)化 出處:《中國科學技術大學》2017年碩士論文 論文類型:學位論文
【摘要】:魂芯DSP(BWDSP)是一款采用分簇體系結構,支持超長指令字運行,通過在同一時鐘周期發(fā)射多條指令的數(shù)字信號處理器。分簇結構的設計提高了指令的并行性,同時保證體系結構上不會有太高的硬件代價。本文以中電38所自主研制的魂芯DSP(BWDSP)編譯系統(tǒng)中的后端軟件流水優(yōu)化為研究課題。本文的主要工作有以下幾點:(1)本文首先論述了自主研發(fā)的魂芯DSP的主體框架結構,即其硬件架構和指令系統(tǒng)。同時介紹了 BWDSP平臺上的Open64編譯器,從Open64編譯器的整體編譯框架角度,詳細描述編譯器支持的中間語言結構以及后端中間代碼表示。(2)軟件流水優(yōu)化技術是編譯器后端一項重要的優(yōu)化技術,對于具有循環(huán)的程序提高性能有著重要意義。軟件流水的主要思想是挖掘循環(huán)迭代之間不同指令的并行性。通過對指令的重疊執(zhí)行,充分利用平臺中的硬件資源,提高程序的運行效率。本文的主要工作是在BWDSP平臺上實現(xiàn)軟件流水優(yōu)化技術,采用經(jīng)典的軟件流水實現(xiàn)方法模調度框架。通過對模調度框架的分析,實現(xiàn)了模調度框架在BWDSP分簇結構上的移植。在實現(xiàn)模調度軟件流水移植于BWDSP平臺的基礎上,本文還提出了一種激進的軟件流水調度框架,改變了以往具有依賴環(huán)及歸約變量的循環(huán)體無法進行軟件流水的現(xiàn)狀,實現(xiàn)了該種循環(huán)體在BWDSP平臺的軟件流水。通過典型的算法核心測試,實驗證明,該框架能夠使更多類型的循環(huán)實現(xiàn)軟件流水。(3)在基于軟件流水,循環(huán)展開,SIMD等優(yōu)化思想的指導下,同時結合BWDSP體系結構中的指令特點,利用高效訪存指令、能夠提升循環(huán)執(zhí)行效率的零開銷循環(huán)機制、指令重排技術,結合具體功能函數(shù)的循環(huán)特性,本文對字符串與內存處理函數(shù)的指令級并行性進行挖掘。實驗結果表明,這些庫函數(shù)優(yōu)化后的時間周期能夠達到硬件平臺限制下的理論運行時間1.5倍左右,對BWDSP平臺整體性能提升具有重要意義。
[Abstract]:Soul Core DSP (BWDSP) is a kind of digital signal processor which adopts cluster architecture and supports very long instruction word running. The design of cluster structure improves the parallelism of instruction by transmitting more than one instruction in the same clock cycle. At the same time, it is guaranteed that the hardware cost will not be too high. This paper focuses on the optimization of the back-end software income in the Soulcore DSPO BWDSP-based compilation system developed by CLP 38. The main work of this paper is as follows: 1. First of all, the main frame structure of the self-developed soul core DSP is discussed. At the same time, it introduces the Open64 compiler on the BWDSP platform, from the angle of the whole compiling framework of the Open64 compiler, Describes in detail the intermediate language structure supported by the compiler and the back-end intermediate code representation. Income optimization technology is an important optimization technique for the compiler back-end. The main idea of software income is to exploit the parallelism of different instructions between iterations of the loop. By the overlapping execution of instructions, the hardware resources in the platform can be fully utilized. The main work of this paper is to realize the optimization technology of software income on the BWDSP platform, and to implement the method model scheduling framework by adopting the classical software income. This paper has realized the transplantation of module scheduling framework on BWDSP cluster structure. On the basis of realizing the migration of module scheduling software income to BWDSP platform, this paper also proposes a radical scheduling framework of software income. This paper changes the situation that the loop with dependent ring and reduced variables can not carry out software income in the past, and realizes the software income of this kind of loop on BWDSP platform. Through the typical algorithm core test, the experiment proves that the loop can not be used in software income. This framework can make more kinds of cycles realize software income. 3) under the guidance of optimized ideas such as the software income, the loop unfolded SIMD and so on, at the same time, combining the instruction characteristics in the BWDSP architecture, using the high efficiency memory access instruction. In this paper, we mine the parallelism between string and memory processing function at instruction level, which can improve the efficiency of loop execution, such as zero-overhead loop mechanism, instruction rearrangement technology, and the loop characteristic of specific function. The optimized time period of these library functions can reach about 1.5 times of the theoretical running time limited by hardware platform, which is of great significance to the overall performance improvement of BWDSP platform.
【學位授予單位】:中國科學技術大學
【學位級別】:碩士
【學位授予年份】:2017
【分類號】:TP332;TP311.5
【參考文獻】
相關期刊論文 前10條
1 樊永朝;鄭啟龍;耿銳;王向前;王昊;;BWDSP10x上地址和數(shù)據(jù)謂詞執(zhí)行的編譯優(yōu)化[J];計算機系統(tǒng)應用;2016年12期
2 甄揚;顧乃杰;葉鴻;;數(shù)字信號變換函數(shù)在多簇VLIW DSP上的優(yōu)化[J];計算機工程;2016年03期
3 王向前;鄭啟龍;洪一;;分簇結構模調度框架研究[J];中國科學技術大學學報;2016年02期
4 徐金龍;趙榮彩;徐曉燕;劉金國;;軟件流水向量化算法研究[J];信息工程大學學報;2015年06期
5 王向前;洪一;王昊;鄭啟龍;;魂芯DSP的編譯器設計與優(yōu)化[J];電子學報;2015年08期
6 黃勝兵;鄭啟龍;郭連偉;;分簇VLIW DSP上支持單雙字模式選擇的SIMD編譯優(yōu)化[J];計算機應用;2015年08期
7 王向前;洪一;鄭啟龍;;分塊內存的數(shù)據(jù)分布優(yōu)化[J];小型微型計算機系統(tǒng);2015年04期
8 王昊;王向前;;BWDSP SIMD編譯的寄存器分配優(yōu)化技術研究[J];單片機與嵌入式系統(tǒng)應用;2015年04期
9 王昊;黃光紅;王向前;;基于BWDSP100的傳播分簇算法研究與實現(xiàn)[J];中國集成電路;2014年08期
10 劉曉嫻;趙榮彩;趙捷;徐金龍;;面向規(guī)則DOACROSS循環(huán)的流水并行代碼自動生成[J];軟件學報;2014年06期
相關博士學位論文 前2條
1 王向前;魂芯DSP編譯設計與優(yōu)化[D];合肥工業(yè)大學;2015年
2 林海波;基于EPIC體系結構的軟件流水技術研究[D];清華大學;2003年
相關碩士學位論文 前4條
1 洪立濤;面向BWDSP104X軟流水框架研究與實現(xiàn)[D];中國科學技術大學;2016年
2 趙高義;BWDSP104X字節(jié)尋址模式擴展及64位數(shù)據(jù)類型模擬支持[D];中國科學技術大學;2016年
3 索維毅;面向DSP的自動向量化及優(yōu)化技術研究[D];解放軍信息工程大學;2013年
4 李愷;Glibc庫在龍芯2F上的優(yōu)化[D];中國科學技術大學;2010年
,本文編號:1633747
本文鏈接:http://sikaile.net/shoufeilunwen/xixikjs/1633747.html