freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于lc-3isa處理器的設計與仿真畢業(yè)論文-全文預覽

2025-07-15 15:46 上一頁面

下一頁面
  

【正文】 周期數(shù)(CPI)指令數(shù)(IC)時鐘周期長度進行計算:CPI=11696700247。證明本次基于LC3ISA的處理器的實現(xiàn)是正確的。圖中紅點處即排序結果已經(jīng)排序完成,在此設置斷點便于觀察程序共執(zhí)行指令數(shù),可以看出,指令數(shù)為146207條指令。if(i!=0),back to LOOP1SSS JSR SSS 。j=j+1 ADD R6,R6,1 NOT R7,R3 ADD R7,R7,1 ADD R7,R4,R7 。R7=arry[j+1]arry[j] BRp SKIP2 。load base address of arry ADD R3,R3,0 。R2=0 AND R3,R3,0 。測試程序匯編代碼如下: .ORIG x0000 AND R4,R4,0 。本次測試程序均是采用匯編語言寫成,然后通過原作者附帶的匯編指令編輯器,編譯成機器碼,將機器碼放入“.txt”文件中。非法操作碼指令與RTI指令測試過程類似,觀察向量控制器中的Vector中的數(shù)值變化,Vector中的數(shù)值為x01時,則證明發(fā)生異常,與設計相符;如果Vector中的值不是x01則沒有發(fā)生異常,執(zhí)行錯誤,則說明設計中有錯誤。這證明了本設計的自陷服務功能以及存儲器映射I/O的部分與理論設計一致,是正確的。 end,對本次設計進行路徑覆蓋。 3500。h0005。 KBDRIN=1639。 1500。我們都知道LC3是采用存儲器映射I/O,將內(nèi)存的幾個地址單元映射成鍵盤數(shù)據(jù)寄存器(KBDR)、鍵盤狀態(tài)寄存器(KBSR)、顯示器數(shù)據(jù)寄存器(DDR)和顯示器狀態(tài)寄存器(DSR)。驗證人員在關心規(guī)范需求的同時又關心電路的詳細設計方案。這樣驗證法為驗證人員提供了很好的可控性和可觀測性。本文主要采用基于Testbench的技術。自底向上的驗證方法主要步驟為:設計文件通過工具軟件檢測確認沒有語法錯誤;0層驗證,獨立地驗證每個設計單元;1層驗證,驗證設計內(nèi)部模塊之間的接口和系統(tǒng)存儲映射的正確性;2層驗證,即系統(tǒng)級驗證,驗證整個設計的功能;門級網(wǎng)表驗證和時序驗證同自頂向下的驗證方法一致。驗證(Verification)的目的是為了確認設計符合設計規(guī)范。原因在于百萬門設計并不困難,然而驗證百萬門的設計是一件非常難的事情。實現(xiàn)自陷、中斷和異常的另外兩個關鍵部件,當前棧指針產(chǎn)生器和向量控制器,均可以從數(shù)據(jù)通路RTl視圖中找到,這里不再具體列出。雖然LC3的指令周期只有6個階段,但是數(shù)據(jù)通路部件還是比較長。從圖中可以看出,LC3多周期處理器總共使用了727個LE,其中包含了683個組合功能模塊和232個專用邏輯寄存器。LE是Cyclone II FPGA器件的最基本的可編程單元。本次設計選擇的優(yōu)化選項是平衡。編譯將硬件描述語言描述的電路編譯成對應的功能模塊以及模塊與模塊的拓撲結構;優(yōu)化根據(jù)設置的面積和時間約束,按照一定的算法對編譯的結構進行邏輯重組和優(yōu)化;映射根據(jù)設置的時序和面積約束從基本單元庫中選擇符合條件的單元構成實際的門級網(wǎng)表。第五章 綜合驗證與性能分析綜合和仿真測試是集成電路中一個非常重要的環(huán)節(jié)。綜上所述,當前棧指針產(chǎn)生器、PSR系統(tǒng)和向量控制器以及一個PC減1的功能部件,添加到已實現(xiàn)的數(shù)據(jù)通路上,就實現(xiàn)了自陷、中斷和異常的功能。自陷服務程序的起始地址向量是通過自陷指令產(chǎn)生,不在向量控制器中。在中斷結束后,被打斷的事件的優(yōu)先級別從棧中彈出,寫回到Priority中。 Priv模塊圖優(yōu)先級模塊由一個當前優(yōu)先級寄存器,一個優(yōu)先級比較模塊,一個多路選擇器以及一個三態(tài)門和一些連線組成, 所示。在處理器發(fā)生自陷、中斷或異常時,處理器會自動將Priv置成0。根據(jù)LC3的設計,當前棧指針產(chǎn)生器有一個輸入(R6的內(nèi)容,棧指針)和一個輸出端口,內(nèi)部有兩個寄存器SavedUSP和SavedSSP,兩個運算部件“+1”和“1”部件,對應PC和PSR壓棧和彈棧的操作。 分支判斷實現(xiàn)邏輯結構圖 自陷、中斷和異常的實現(xiàn)本文在第三章中介紹了自陷中斷和異常運行機制的原理。N、Z、P是三個1bit寄存器,通過COMPCC邏輯運算部件與IR的[11:9]進行邏輯運算。然后在執(zhí)行分支指令時,N、Z、P與分支指令的bit[11:9]的三個比特位分別進行進行邏輯與運算,產(chǎn)生發(fā)生分支指令的信號BEN。 多路選擇器 分支判斷的實現(xiàn)前面章節(jié)介紹到LC3在處理器狀態(tài)寄存器(PSR)中有三個條件碼(N、Z、P),均是1bit。實例化代碼如下:MUX4 (16) ADDR2MUX4(1639。MUX2 (16) MARMUX2(ADDERR,ZEXT8,MARMUX,MARMUX2OUT)。兩路選擇器:(1)所示,兩個數(shù)據(jù)來源A和B,S是選擇信號,C是輸出信號。ALU部件的B數(shù)據(jù)的來源有兩處,一是寄存器組,另一是指令中符號位擴展后的立即數(shù);還有MAR寄存器的數(shù)據(jù)有兩個來源在數(shù)據(jù)通路中產(chǎn)生,一是自陷指令零擴展生成的自陷向量表項的地址,另一個來源是load 或store類指令通過地址計算生成的訪問存儲器的地址。 ALU的分析與設計ALU部件具有兩個數(shù)據(jù)輸入端口A和B,一個數(shù)據(jù)輸出端ALUOUT,一個ALUK控制信號。 寄存器IR、PC、MAR、MDR實例化如下:REGISTER (16) IREG(clk,LD_IR,RESET,BUSDATA,IR)。寄存器需要一個數(shù)據(jù)輸入端口DATAIN,用于將數(shù)據(jù)寫進寄存器。在構建數(shù)據(jù)通路時,只要這個部件是寄存器,就可以復用REGISTER模塊,即可實現(xiàn)IR、PC、MDR、MAR等功能部件。(5)執(zhí)行該階段負責指令的執(zhí)行操作,不同的操作碼在該節(jié)拍的操作也不同。(2)指令譯碼該階段將IR中指令進行指令譯碼,即:將指令的操作碼發(fā)送給控制通路,譯碼產(chǎn)生相應的控制信號;操作數(shù)字段發(fā)送給寄存器組;立即數(shù)字段進行符號位擴展后傳送給相應的部件。我們稱這個執(zhí)行的步驟順序為指令周期(instruction cycle)其中每一步稱為一個階段,每一個階段又包含一個或多個時鐘周期。商家瑋負責控制通路存儲器與I/O部分的設計與實現(xiàn),我負責進行數(shù)據(jù)通路部分的實現(xiàn)與本次設計的綜合仿真測試。接著對LC3的自陷、中斷和異常機制功能模塊進行解析。此外,異常服務程序的處理細節(jié)取決于不同的異常類型,和操作系統(tǒng)的處理風格。LC3計算機系統(tǒng)定義了兩種異常情況,即“特權模式?jīng)_突”和“非法指令”。在介紹中斷處理機制之前,要理解兩個概念:系統(tǒng)??臻g和用戶站空間。中斷和異常一共256個表項,每個表項是中斷或異常服務程序的起始地址。xFD70HALT停止執(zhí)行,并在屏幕上輸出信息圖310 自陷向量表 中斷和異常處理在處理器運行時,外部事件能夠打斷當前正在運行的程序,我們稱之為中斷(interrupt)。x04A0IN先顯示提示在屏幕上,然后等待鍵盤輸入一個字符。(4)返回:返回到用戶程序,操作系統(tǒng)提供返回的機制。(2)自陷向量表:包含自陷程序的起始地址。這些服務程序是操作系統(tǒng)的組成部分,存儲于固定的存儲器地址單元中。BR采用的是PC相對尋址方式,JMP和RET采用的是寄存器尋址方式,JSR采用的是PC相對尋址方式,JSRR采用的是寄存器尋址,TRAP指令是間接尋址方式。LD和ST采用PC相對尋址方式,LDI和STI采用間接尋址方式,LDR和STR采用的是基址偏移尋址方式。如果是load類型指令,則該字段代表DR(Destination Register,目的寄存器);如果是store類指令,則該字段代表SR(Source Register,源寄存器)。AND指令也是這樣。 基址偏移尋址(indirect),程序計數(shù)器(PC)與指令中偏移地址的和為存儲器的地址,該地址存儲單元中的內(nèi)容作為尋址的地址。LC3支持五種尋址方式:(兩種尋址過程),其一,指令的操作數(shù)是指令中的一部分,(1)中所示立即數(shù)字段;另一種情況,數(shù)由程序計數(shù)器和偏移量的和 LC3指令集全部指令格式(注:+表示該指令將修改條件碼)作為操作數(shù),(2)所示。在LC3中,操作數(shù)采用二的補碼方式表示。用于TRAP指令確定trap服務程序的入口地址。16位寄存器,指向下一個待獲取指令的地址。R0~R7Imm55bit立即數(shù)。第16個4bit操作碼未做定義。 操作碼指令的長度是設計中最基本的問題,它與存儲器的結構、總線結構、CPU復雜程度和CPU速度等相互影響。 指令集LC3 ISA是一種精簡指令系統(tǒng)結構,定義了一組豐富而簡潔的指令集,能夠進行編寫適度復雜的匯編程序。在LC3中定義了八個優(yōu)先級,分別是PL0~PL7,PL7最高,PL0最低。訪問存儲器是通過這兩個寄存器完成的。x0000到x00FF用于存儲自陷向量表;x0100到x01FF用于存儲中斷異常向量表,其中x0100到x017F是異常向量表,x0180到x01FF是中斷向量表;x0200到x2FFF是操作系統(tǒng)區(qū)域和系統(tǒng)棧空間。LC3的存儲器的地址是16bit 寬的二進制數(shù),它的尋址空間是216 即64K大小。第三章 LC3指令系統(tǒng)結構指令系統(tǒng)結構(Instruction Set Architecture,以下簡稱ISA)對計算機整個系統(tǒng)是有著重要意義的[2]。ModelSim仿真工具提供波形窗口和數(shù)據(jù)流窗口來對設計進行調(diào)試。進行語法檢測并建立ModelSim仿真?zhèn)螜C器碼。例如波形窗口、數(shù)據(jù)流窗口等。設計編譯完成后,本文可以針對頂層模塊、結構、實體加載仿真器。(2) 編譯設計文件。ModelSim的基本仿真流程如下:(1) 創(chuàng)建一個工作庫。 對系統(tǒng)級描述語言的最全面支持,SystemVerilog,SystemC,PSL; 集成了性能分析、波形比較、代碼覆蓋、數(shù)據(jù)流ChaseX、Signal Spy、虛擬對象Virtual Object、Memory窗口、Assertion窗口、源碼窗口顯示信號值、信號條件斷點等眾多調(diào)試功能;主要特點:PowerPlay功率分析器完成功率分析,并生成一個高亮的包含按類型和實體分割、功耗等信息的功率報告。Quartus II Timing Analyzer允許用戶分析設計中所有邏輯的性能,并協(xié)助引導Fitter滿足設計中的時序要求。Quartus II Fitter也稱為PowerFitTM Fitter,用于完成布局布線,在Quartus II軟件中也成為“布局布線”。 Synthesis”模塊分析、綜合設計文件并建立工程數(shù)據(jù)庫。 II設計流程,接下來簡要介紹本次設計使用的Quartus II基本功能模塊。說明部分和語句部分可以散布在模塊中的任何地方;但是變量、寄存器、線網(wǎng)和參數(shù)等的說明部分必須在使用前出現(xiàn)。也就是說,模塊描述中可以包含實例化的門、模塊實例化語句、連續(xù)賦值語句以及always語句和initial語句的混合。一個設計的結構可使用開關級原語、門級原語和用戶定義的原語方式描述;設計的數(shù)據(jù)流行為使用連續(xù)賦值語句進行描述;時序行為使用過程結構進行描述。該語言允許設計者進行各種級別的邏輯設計,進行數(shù)字邏輯系統(tǒng)的仿真驗證、時序分析、邏輯綜合。因其邏輯功能和延時特性與真實的物理元件完全一致,所以在仿真工具的支持下能驗證復雜數(shù)字系統(tǒng)物理結構的正確性,使投片的成功率達到100%。數(shù)字電路系統(tǒng)的設計者利用這種語言可以從上層到下層(從抽象到具體)逐層描述自己的設計思想,用一系列分層次的模塊來表示極其復雜的數(shù)字系統(tǒng)。從數(shù)模角度分,IC設計又分為數(shù)字設計和模擬設計。(10) 版圖后驗證根據(jù)后端設計取得的延時信息,再次驗證設計是否能夠實現(xiàn)所有的功能和性能指標。(7) 門級驗證對綜合生成的門級網(wǎng)表進行驗證。這一階段可以使用VHDL和Verilog HDL語言的輸入工具編寫代碼。(3) 根據(jù)設計的功能需求和算法分析的結果,設計芯片的架構,并對不同的方案進行比較。IC設計[5]是一個非常復雜的過程,它的流程不是固定不變的,而是隨著設計方法學和EDA(Electronic Design Automation)工具的進步而不斷演化的。2012年,我校計算機學院軟件工程專業(yè)采用該教材《計算機系統(tǒng)概論 英文版第二版》[5]作為二年級學生計算機組成課程的教材,為深入理解書中LC3 ISA的處理器微體系結構、工作原理、中斷自陷等相關異常處理機制,決定采用Verilog HDL硬件描述語言設計教材中LC3的CPU,實現(xiàn)完整LC3 ISA處理器的邏輯設計,完成處理器的前端設計。1995年秋季,Yale Patt和Kevin Compton教授開設EECS100課程,這一課程是計算機科學(CS)、計算機工程(CE)和電子工程(EE)三個專業(yè)的第一門計算機類主修課程。這就是著名的“摩爾定律”[2]。1964年4月7日IBM公司研制成功了世界上第一個采用集成電路的通用計算機IBM 360,計算機從此進入了集成電路時代。計算機的發(fā)展是建立在集成電路技術的基礎上的,而作為計算機核心部件的處理器,更是集成電路技術的結晶。此后微處理器芯片的集成度一直約每隔12至18個月便會增加一倍,性能也將提升一倍。1993年,Yale Patt教授在密歇根大學提出對傳統(tǒng)教學思路的改革。LC3是一個Von Neumann存儲程序型計算機,具有比較完備的指令系統(tǒng)結構(ISA),對理解計算機各個組成部件的結構特點、工作原理及相互協(xié)同運行機制具有重要作用。為了完成這一過程, 人們研究出了層次化和結構化的設計方法:層次化的設計方法能使復雜的系統(tǒng)簡化,并能在不同的設計層次及時發(fā)現(xiàn)錯誤并加以糾正;結構化的設計方法是把復雜抽象的系統(tǒng)劃分成一些可操作的模塊,允許多個設計者同時設計,而且某些子模塊的資源可以
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1