本發(fā)明涉及處理器設(shè)計(jì),特別是涉及一種基于處理器描述文件生成編譯器指令調(diào)度模型的方法。
背景技術(shù):
1、編譯器是處理器設(shè)計(jì)流程中一個(gè)關(guān)鍵模塊,每當(dāng)處理器設(shè)計(jì)發(fā)生變化時(shí),都需要重新生成編譯器,正確的指令調(diào)度模型能夠輔助編譯器正確的完成指令調(diào)度,生成性能更好的代碼?,F(xiàn)有方案大都依賴人工去閱讀處理器指令手冊(cè),人工分析依賴關(guān)系并完成調(diào)度模型的實(shí)現(xiàn),存在耗時(shí)較長(zhǎng),且容易出錯(cuò)的問題。
技術(shù)實(shí)現(xiàn)思路
1、為解決現(xiàn)有技術(shù)存在的上述問題,本發(fā)明提供了一種基于處理器描述文件生成編譯器指令調(diào)度模型的方法。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
3、一種基于處理器描述文件生成編譯器指令調(diào)度模型的方法,包括:
4、獲取處理器設(shè)計(jì)結(jié)果文件;所述處理器設(shè)計(jì)結(jié)果文件中存儲(chǔ)有處理器設(shè)計(jì)信息和接口函數(shù);
5、基于所述接口函數(shù)進(jìn)行入口變量初始化;
6、以初始化好的所述入口變量為入口,獲取當(dāng)前處理器中所有的指令,并對(duì)所述指令進(jìn)行逐個(gè)遍歷;
7、解析遍歷得到的每一條指令對(duì)應(yīng)的硬件行為得到指令描述信息;
8、按照llvm編譯器的要求處理所述編譯器指令調(diào)度模型中的指令描述信息生成調(diào)度相關(guān)代碼;
9、將所述調(diào)度相關(guān)代碼集成到llvm編譯器源代碼,以重新構(gòu)建llvm編譯器。
10、可選地,所述接口函數(shù)將所述處理器設(shè)計(jì)結(jié)果文件中存儲(chǔ)的處理器設(shè)計(jì)信息恢復(fù)到內(nèi)存中。
11、可選地,恢復(fù)到內(nèi)存中的所述處理器設(shè)計(jì)信息以結(jié)構(gòu)體和雙向鏈表形式表示。
12、可選地,所述結(jié)構(gòu)體為為c語言結(jié)構(gòu)體。
13、可選地,所述接口函數(shù)為farm_create_core。
14、可選地,初始化好的所述入口變量包括多個(gè)成員變量,每一所述成員變量對(duì)應(yīng)一類處理器設(shè)計(jì)信息。
15、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),存儲(chǔ)有計(jì)算機(jī)程序;所述計(jì)算機(jī)程序用于實(shí)施上述提供的基于處理器描述文件生成編譯器指令調(diào)度模型的方法。
16、根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開了以下技術(shù)效果:
17、本發(fā)明提供的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,通過自動(dòng)掃描分析處理器設(shè)計(jì)結(jié)果文件,提取每條指令的信息,按照編譯器內(nèi)處理器調(diào)度模型的要求,根據(jù)收集到的信息,自動(dòng)創(chuàng)建llvm編譯器,能夠極大的提高模型生成的速度,并能規(guī)避人工參與造成的容易出錯(cuò)的問題。
1.一種基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,所述接口函數(shù)將所述處理器設(shè)計(jì)結(jié)果文件中存儲(chǔ)的處理器設(shè)計(jì)信息恢復(fù)到內(nèi)存中。
3.根據(jù)權(quán)利要求2所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,恢復(fù)到內(nèi)存中的所述處理器設(shè)計(jì)信息以結(jié)構(gòu)體和雙向鏈表形式表示。
4.根據(jù)權(quán)利要求3所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,所述結(jié)構(gòu)體為為c語言結(jié)構(gòu)體。
5.根據(jù)權(quán)利要求1所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,所述接口函數(shù)為farm_create_core。
6.根據(jù)權(quán)利要求1所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法,其特征在于,初始化好的所述入口變量包括多個(gè)成員變量,每一所述成員變量對(duì)應(yīng)一類處理器設(shè)計(jì)信息。
7.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,存儲(chǔ)有計(jì)算機(jī)程序;所述計(jì)算機(jī)程序用于實(shí)施如權(quán)利要求1-6任意一項(xiàng)所述的基于處理器描述文件生成編譯器指令調(diào)度模型的方法。