欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于指令計算模型與反饋補償?shù)哪M方法與系統(tǒng)的制作方法

文檔序號:9375338閱讀:372來源:國知局
一種基于指令計算模型與反饋補償?shù)哪M方法與系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明屬于處理器軟件模擬技術領域,具體涉及一種模擬處理器運行的方法與系統(tǒng)。
【背景技術】
[0002]人類已進入信息爆炸時代,信息與人類生活的關系變得越來越密切。隨著信息技術的不斷發(fā)展,新型電子產(chǎn)品的種類不斷豐富,人均擁有的電子產(chǎn)品數(shù)也不斷增加。人們?nèi)粘J褂玫碾娮赢a(chǎn)品已由功能簡單的手機和MP3過渡到功能強大的MP4、電子書、智能手機和智能可穿戴設備等。IDC最新數(shù)據(jù)顯示,2014年中國的智能手機出貨量將同比增加13%,達到4.2億部。隨著網(wǎng)絡技術的飛速發(fā)展,各種新型應用和應用模式如雨后春筍般層出不窮,如云計算、智能計算、圖計算、移動計算和可穿戴計算等。
[0003]隨著應用的極大豐富,對底層處理平臺也提出了越來越高的要求,造成各種處理器產(chǎn)品的不斷豐富,這也意味著處理器產(chǎn)品來自方方面面的競爭壓力越來越大,留給處理器產(chǎn)品的軟硬件開發(fā)周期也越來越短。由于競爭的不斷加劇,硬件芯片產(chǎn)品的設計開發(fā)周期通常為8個月到I年。開發(fā)周期越短,產(chǎn)品越有競爭力,盈利空間也越大。然而,IntelSoC設計部門的統(tǒng)計數(shù)據(jù)顯示,一般處理器產(chǎn)品從開始設計到完成生產(chǎn)的周期一般為9個月,而對應軟件部分的開發(fā)周期也為9個月。在這種背景下,一方面要求硬件工程師盡快完成芯片的設計和評估,另一方面,也要求在芯片設計的早期(如3個月),可以盡早為軟件設計和開發(fā)人員提供可用的模擬測試平臺。
[0004]為了提高體系結(jié)構設計開發(fā)的效率、節(jié)省開發(fā)成本,當前大多使用模擬器通過軟件模擬整體體系結(jié)構的運行。模擬器作為體系結(jié)構研究與系統(tǒng)評估工具被廣泛使用在工業(yè)生產(chǎn)與研究領域,能夠提升硬件及體系結(jié)構的生產(chǎn)開發(fā)效率,縮短開發(fā)周期,同時能提升相關研究效率,縮短不必要的等待時間。
[0005]在模擬過程中為了保證模擬結(jié)果的精確性,現(xiàn)有模擬模型通常采用時鐘驅(qū)動的方式模擬各個功能單元。雖然這種緊耦合方式保證了模擬結(jié)果的精確性,卻導致模擬模型面臨嚴重的性能挑戰(zhàn)。為了提升模擬速度,已有很多模擬機加速的相關研究。按其加速方式不同,可以將模擬加速技術粗略分為基于FPGA的加速技術、采樣技術和并行加速。
[0006]基于FPGA的加速技術:該技術主要是通過利用FPGA等硬件平臺的高效性和并行性等特點提升模擬器的運行速度,其模擬速度一般可以達到10 MIPS的數(shù)量級別。由于比軟件模擬器可以快10-100個數(shù)量級,這種技術已經(jīng)被國外一些著名高校和研究機構廣泛應用。但是基于FPGA開發(fā)的模擬器系統(tǒng)參數(shù)調(diào)整復雜,每次參數(shù)調(diào)整都需要重新生成FPGA網(wǎng)表文件。而在網(wǎng)表文件生成和到FPGA的映射過程中,系統(tǒng)的調(diào)試十分復雜,從而限制了這種方法的易用性。同時,雖然FPGA是一種硬件模擬,但由于目前的FPGA系統(tǒng)的主頻要比主流通用處理器的主頻慢I個數(shù)量級以上,因此,F(xiàn)PGA的低主頻也造成了這種技術在模擬速度提升方面存在一定的限制。
[0007]采樣加速技術:采樣技術是另一種目前應用比較普遍的模擬器加速技術。采樣技術的原理是通過獲得被模擬測試程序指令子集的特征來推斷整體的特征,此類技術能獲得比較精確的模擬結(jié)果的關鍵是確保所選擇的子集的特征能夠充分代表測試程序整體的特征。雖然采樣技術可以提高模擬速度,但是采樣技術在提高性能的同時需要犧牲模擬的精確性。同時,由于并行程序的復雜性,采樣技術對多核模擬器的性能提升也有限,目前典型的多核采樣模擬器也只能達到幾個MIPS的模擬速度。
[0008]并行模擬技術:隨著多核硬件平臺的普及,底層硬件環(huán)境提供了更多的計算資源,如何盡可能多的利用底層硬件的計算資源來加速模擬器的執(zhí)行速度也逐漸引起人們的關注。在現(xiàn)有針對模擬器并行性的研究中,一種方法是對已有多核模擬器進行手工并行化。這種方法雖然可以獲得相對較好的加速效果,卻十分繁瑣。另一種方法是設計一種新的針對模擬器的編程模型,然后基于該模型編寫模擬器程序,并在此基礎上對模擬器進行自動并行劃分。這種方法雖然提供了自動并行的手段,但是由于基于特定的編程模型,無法應用到目前還在廣泛使用的各種基于串行模型開發(fā)的模擬器上。雖然并行模擬可以提升模擬性能,但是目前的并行模擬也面臨較大的挑戰(zhàn)。在多核處理器中通常存在核間共享硬件資源,如共享Cache或者片上網(wǎng)絡等。為了保證模擬精確性,并行后的模擬線程需要頻繁同步以保證模擬結(jié)果的精確性。然而這種方式導致較差的并行可擴展性。有些并行方法采用降低同步的方式提升并行性能,但卻導致模擬精確性的損失。
[0009]鑒于這些技術方案不能在保證精確性的同時進行快速模擬,本發(fā)明提出一種基于指令計算模擬模型與投機執(zhí)行的技術構建模擬系統(tǒng)平臺的方法,提高了處理器模擬系統(tǒng)的性能與可用性。同時,本發(fā)明可以在現(xiàn)有相應系統(tǒng)的任意計算機上運行,能夠精確并快速地模擬可以支持的不同硬件結(jié)構、系統(tǒng)和應用。本系統(tǒng)的應用,有利于提高處理器設計和對應軟件的開發(fā)效率,降低開發(fā)成本;本系統(tǒng)使得軟件開發(fā)大為提前,有效縮短了計算機軟硬件產(chǎn)品的開發(fā)周期,對計算機軟硬件開發(fā)行業(yè)的發(fā)展有著重要意義,同時本系統(tǒng)能廣泛應用到研究領域中,提升處理器設計與相關軟硬件研究效率。

【發(fā)明內(nèi)容】

[0010]本發(fā)明的目的在于提供一種能夠提高處理器及其對應軟件開發(fā)效率,降低開發(fā)成本,縮短開發(fā)周期的處理器軟件模擬方法及系統(tǒng)。
[0011]本發(fā)明提供的處理器軟件模擬方法,是基于指令計算模型的,包括:
首先,其模擬過程圍繞指令序列進行,以逐條計算指令時序信息的模擬方法方式代替?zhèn)鹘y(tǒng)模擬器基于時鐘周期更新功能模塊狀態(tài)的模擬方式,模擬器通過計算的方式獲得流經(jīng)功能部件的指令的發(fā)射周期和完成周期,而非通過模擬處理器部件的在每個周期的運行過程獲取。
[0012]其次,使用多線程并行加速計算過程,處理器對于共享資源的訪問以投機執(zhí)行的方式進行,即私有資源維護一份共享資源的備份,當系統(tǒng)需要對共享資源進行訪問時,先基于自己維護的共享資源信息推測實際的訪問周期以用于自己的后繼計算,從而減少同步操作以提升性能。在投機執(zhí)行的過程中,為保證訪問共享資源時序信息的準確性,各個私有資源模塊會將訪問信息發(fā)送給共享資源模塊,由一個全局時序矯正算法進行正確的執(zhí)行時序計算。如果投機執(zhí)行時序與實際共享資源計算時序不一致,時序矯正算法計算這個累計誤差,并在程序模擬結(jié)束后將累積誤差反饋補償給產(chǎn)生該誤差的處理器核,這種反饋機制可以消除模擬過程中由于私有核交互訪問共享資源而產(chǎn)生的誤差。
[0013]本發(fā)明方法具體流程如下:系統(tǒng)通過二進制翻譯的方式模擬運行目標系統(tǒng)鏡像和應用程序,提取指令流及內(nèi)存訪問信息;根據(jù)提取的指令流及內(nèi)存訪問信息,計算指令在執(zhí)行過程中的時序信息,涉及到共享資源的訪問,通過虛擬共享資源計算模擬的投機執(zhí)行方式減少同步操作,收集共享資源訪問信息,統(tǒng)一進行正確的共享資源時序計算并累計矯正結(jié)果,于系統(tǒng)執(zhí)行結(jié)束后進行反饋補償,系統(tǒng)執(zhí)行結(jié)束時最終返回時序結(jié)果和微體系結(jié)構?目息O
[0014]對于傳統(tǒng)模擬器而言,模擬過程主要基于每個時鐘周期處理器部件的執(zhí)行過程,對于目標體系結(jié)構的每個處理器核而言,需要維護每個核的處理器部件狀態(tài)信息以及對應的輸入輸出信息。在模擬過程中的每個時鐘周期,每個核上的所有部件需要檢查輸入信息存儲塊來確定該部件將執(zhí)行的指令,之后對這條指令在該部件的行為進行模擬,更新部件狀態(tài)后再將其存儲到輸出信息存儲塊。這種方式在模擬過程中存在一些缺陷。首先,每個核需要維護大量的信息存儲塊,而每個部件在每個時鐘周期都需要訪問相應的信息存儲塊來決定其輸入指令、狀態(tài)更新以
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
永川市| 东丽区| 晋江市| 嘉祥县| 新密市| 资中县| 泰顺县| 江西省| 大新县| 勐海县| 高陵县| 武冈市| 鄂托克前旗| 香港| 福贡县| 莱州市| 开化县| 年辖:市辖区| 阿拉善左旗| 五莲县| 河源市| 霍州市| 冀州市| 长兴县| 长顺县| 宣威市| 涡阳县| 交口县| 霍山县| 渭源县| 浦江县| 高碑店市| 射洪县| 沙田区| 青州市| 清流县| 车险| 平潭县| 长宁区| 阳高县| 红原县|