天天看點

計算機組成原理 設計指令系統,計算機組成原理設計指令系統.doc

摘要

本次計算機組成原理課程設計課題是基本模型機的設計與實作。利用CPU與簡單模型機來實作計算機組成原理課程設計,編寫指令的應用程式,用微程式控制器實作一系列的指令功能,最終達到将理論與實踐相聯系。本次設計完成了相關指令的格式以及編碼的設計,實作了機器指令微代碼,完成具有一定功能的程式。

在基本模型機的基礎上建構一組能實作輸入、輸出、加、減、邏輯與、邏輯或、邏輯非、轉移指令等8個功能的指令,這些指令的助記符不得與指導書上相同。指令包括立即數尋址、寄存器直接尋址、存儲器直接尋址三種尋址方式。利用新建構的指令系統程式設計,實作交換兩存儲單中繼資料的功能。

關鍵字:指令系統,尋址方式,算術邏輯

目錄

摘要1

目錄2

1系統分析4

1.1 設計背景4

1.2 設計目标6

2系統設計7

2.1 模型機的指令系統設計7

2.2 模型機的微指令設計8

2.3實作除法功能的程式設計11

3系統實作13

4總結16

5參考文獻17

1系統分析

1.1 設計背景

一台計算機所能執行的各種指令集合稱為指令系統或指令集。一台特定的計算機隻能執行自己指令系統中的指令。是以,指令系統就是計算機的機器語言。指令系統表征着計算機的基本功能和使用屬性,它是計算機系統設計中的核心問題。指令系統的設計主要括指令功能、操作類型的設計,尋址方式和指令格式的設計。

計算機的性能與它所設定的指令系統有很大的關系,指令系統反映了計算機的主要屬性,而指令系統的設定又與機器的硬體結構密切相關。指令是計算機執行某種操作的指令,而指令系統是一台計算機中所有機器指令的集合。通常性能較好的計算機都設定有功能齊全、通用性強、指令豐富的指令系統,而指令功能的實作需要複雜的硬體結構來支援。

本課程設計的模型機的指令碼為8位,根據指令類型的不同,可以有0到2個操作數,指令碼的最低兩位用來選擇R0-R3寄存器。在微程式控制方式下,用指令碼作為微位址來尋址微程式存儲器,找到執行該指令的微程式。在本模型機中,一條指令最多分為四個狀态周期,一個狀态周期為一個時鐘脈沖,每個狀态周期産生不同的控制邏輯,實作模型機的各種功能。模型機有24位控制位以控制寄存器的輸入輸出,選擇運算器的運算功能,存儲器的讀寫。

簡言之,這次設計,計算機資料通路的控制将由微程式控制器來完成,CPU從記憶體中取出一條機器指令到指令執行結束的一個指令周期,全部由微指令組成的序列來完成,即一條機器指令對應一條微程式,一條微程式又有若幹微指令組成,一條微指令的功能由24位操作信号(即控制位)實作。

本設計是在DJ-CPT816計算機組成原理實驗儀和仿真軟體上進行的

24位控制位分别介紹如下:

XRD:外部裝置讀信号,當給出個外設的位址後,輸出此信号,從指定外設讀資料。

EMWR:程式存儲器EM寫信号

EMRD:程式存儲器EM讀信号

PCOE:将程式計數器PC的值送到位址總線ABUS上

EMEN:将程式存儲器EM與資料總線DBUS接通,有EMWR和EMRD決定是将DBUS資料寫入EM中,還是從EM讀出資料到DBUS

IREN:将程式存儲器EM獨處的資料打入指令寄存器IR和微指令計數器uPC

EINT:中斷傳回時清除中斷響應和中斷請求标志,便于下次中斷。

ELP:PC打入允許,與指令寄存器的IR2.,IR3位結合,控制程式跳轉。

MAREN:将資料總線DBUS上資料打入位址寄存器MAR

MAROE:将位址寄存器MAR的值送到位址總線ABUS上

OUTEN:将資料總線DBUS上資料送到輸出端口寄存器OUT裡

STEN:将資料總線DBUS上資料存到堆棧寄存器裡

RRD:讀寄存器組R0-R3,寄存器R?的選擇由指令的最低兩位決定

RWR:寫寄存器組R0-R3,寄存器R?的選擇由指令的最低兩位決定

CN:決定運算器是否帶進位移位,CN=1帶進位,CN=0不帶進位

FEN:将标志位存入ALU内部的标志寄存器

X2,X1,X0三位組合來譯碼選擇将資料送到DBUS上的哪個寄存器,見表1

WEN:将資料總線DBUS的值打入工作寄存器W中

AEN:将資料總線DBUS的值打入累加器A中

S2,S1,S0三位組合決定ALU做何種運算,見表2

表1 選擇具體的寄存器

X2 X1 X0輸出寄存器0 0 0IN_OE 外部輸入門0 0 1IA_OE 中斷向量0 1 0ST_OE 堆棧寄存器0 1 1PC_OE PC寄存器1 0 0D_OE 直通門1 0 1R_OE 右移門1 1 0L_OE 左移門1 1 1沒有輸出

表2 ALU運算

S2 S1 S0功能