複雜模型機組成原理課程設計報告

2021-03-04 00:48:58 字數 4596 閱讀 5041

課程設計報告

課題: 複雜模型機設計

同組姓名: 陳珊(1108030416)

徐麗娜(1108030417)

宋利英(1108030421)

專業班級: 計科1104班

指導教師: 牟琦

設計時間: 2013-12-31

一、 課程設計目的和意義 3

二、複雜模型機的設計與實現內容 3

1.資料格式 3

2.指令格式 3

3.指令系統 4

三、總體設計 4

1.設計複雜模型機的監控軟體 4

2.設計微程式流程圖 5

3.轉換格式 5

4.實驗接線 6

5.寫微程式和程式 6

6.執行程式 7

7.驗證 8

四、系統測試及實驗截圖 8

五、總結 14

經過一系列硬體課程如計算機原理的學習及相關實驗後,綜合應用所學理論知識解決實際設計和應用問題,進行乙個綜合的系統的實驗。培養實際動手能力,進一步提高硬體設計能力。培養實事求是和嚴肅認真的工作態度。

通過設計過程,熟悉和掌握微機系統的硬體設計方法、設計步驟,真正做到理論聯絡實際,提高動手能力和分析問題、解決問題的能力。

綜合運用所學計算機原理知識,設計並實現較為完整的計算機。

模型機規定採用定點補碼表示法表示資料,且字長為8位,其格式如下:

其中第7位為符號位,數值表示範圍是:-1≤x<1。

模型機設計四大類指令共十六條,其中包括算術邏輯指令、i/o指令、存數指令、取數指令、轉移指令和停機指令。

1 算術邏輯指令

設計9條算術邏輯指令並用單位元組表示,定址方式採用暫存器直接定址,其格式如下:

7 6 5 4 3 2 1 0

其中,op-code為操作碼,rs為源暫存器,rd為目的暫存器。

2 訪問指令及轉移指令

模型機設計2條訪問指令:即存數sta、取數lda;2條轉移指令:即無條件轉移jmp、有進製轉移指令bzc。指令格式為:

7 6 5 4 3 2 1 0

其中,op-code 為操作碼,rd為目的暫存器位址(lda、sta 指令使用)。d為位移量(正負均可),m為定址模式,其定義如下:

本模型機規定變址ri指定為暫存器r2。

3 i / o指令

輸入in和輸出out指令採用單位元組指令,其格式如下:

7 6 5 4 3 2 1 0

其中,addr=01時,選中輸入資料開關組kd0~kd7作為輸入裝置,addr=10時,選中2位數碼管作為輸出裝置。

4 停機指令指令格式如下:

7 6 5 4 3 2 1 0

halt指令,用於實現停機操作。

本模型機共有16條基本指令,其中算術邏輯指令7條,訪問記憶體指令和程式控制指令4條,輸入輸出指令2條,其它指令1條。表3-8列出了各條指令的格式、彙編符號、指令功能。

複雜模型機的資料通路框圖如圖3-16,圖3-17所示。根據複雜模型機的硬體電路設計機器指令,再根據機器指令要求,設計微程式流程圖及微程式,最後形成16進製制檔案。

圖3-16

圖3-17

$p00 44in 01, r0

$p01 46in 01, r2

$p02 98adc r2, r0

$p03 81mov r0, r1

$p04 f5rlc r1, r1

$p05 0cbzc 00, 00

$p06 00

按照實驗機設計的微指令格式,參照微指令流程圖,設計微指令,並形成二進位制**表。

程式:$p00 44 $p01 46 $p02 98$p03 81

$p04 f5 $p05 0c $p06 00

微程式:

$m00 088105 $m01 82ed0 $m02 50c004

$m03 04a004 $m04 a0e004 $m05 06e004

$m06 07a004 $m07 a0e004 $m08 8aed05

$m09 8ced05 $m0a 3ba004 $m0b 018005

$m0c 3c2004 $m0d 0ea004 $m0e 0fb605

$m0f 25ea95 $m10 83ed05 $m11 85ed05

$m12 8ded05 $m13 a6ed05 $m14 011004

$m15 010407 $m16 168005 $m17 019a3d

$m18 019205 $m19 2aa205 $m1a 2cb205

$m1b 32a205 $m1c 33a205 $m1d 36a205

$m1e 378235 $m1f 398235 $m20 019004

$m21 018406 $m22 81db05 $m23 e48005

$m24 018005 $m25 a0aa95 $m26 27a004

$m27 28bc05 $m28 29ea95 $m29 a0aa95

$m2a 2bb405 $m2b 419b95 $m2c 2da405

$m2d 6eab05 $m2e 2faa0d $m2f 30aa05

$m30 71810d $m31 419b95 $m32 019a05

$m33 35b405 $m34 81db05 $m35 419bbd

$m36 019a0d $m37 38882d $m38 019805

$m39 3a881d $m3a 019805 $m3b 080a07

$m3c 098a06

在實驗八的基礎上將跳線器j13和j14由右邊相連改為左邊相連,再將ij1連ij2。詳細如下:

a、跳線器j1~j12全部撥在右邊(自動工作方式);

b、跳線器j16、j18、j23、j24全部撥在左邊;

c、跳線器j15、j19、j25全部撥在右邊,跳線器j13、j14撥在左邊;

d、跳線器j20~j22、j26、j27連上短路片;

e、uj1連uj2,jse1連jse2,sj1連sj2;

f、mbus連bus2;

g、regbus連bus5;

h、pcbus連exj2;

i、alubus連exj3;

j、aluo1連bus1;

k、exj1連bus3;

l、aluo2連bus4;

n、ij1連ij2。

連線實驗線路,仔細查綫無誤後接通電源。

① 手動方法寫微程式參看實驗六。

手動方法寫**程式(機器指令)步驟如下: 通過上一步將機器指令對應的微**正確地寫入e2rom 2816晶元後,再進行機器指令程式的裝入和檢查。

a. 將"程式設計開關"置"執行"位置,"執行方式"開關置"單步"位置。

b. 撥動總清開關(0→1),微位址暫存器清零,程式計數器清零。然後使控制開關swc、swa開關置為"0 1",按動一次"啟動執行"開關,微位址顯示燈lua0~lua5顯示"001001",再按動一次"啟動執行"開關,微位址顯示燈lua0~lua5顯示"001100",此時資料開關的內容置為要寫入的機器指令,再按動一次"啟動執行"開關,即完成該條指令的寫入。

若仔細閱讀微程式流程,就不難發現,機器指令的首位址只要第一次給入即可,pc會自動加1,所以,每次按動"啟動執行"開關,只有在微位址燈顯示"001100"時,才設定內容,直到所有機器指令寫完。

c. 寫完程式後須進行檢驗。撥動總清開關(0→1)後,微位址清零,pc程式計數器清零,然後使控制開關swc、swa為"0 0",按動"啟動執行"開關,微位址燈將顯示"001000",再按"啟動執行"開關,微位址燈顯示為"001010",第三次按"啟動執行"開關,微位址燈顯示為"111011",此時匯流排資料顯示燈lzd0~lzd7顯示為該首位址的內容,再次按動"啟動執行"開關,微位址燈顯示為"001000",此時,2位數碼管顯示的內容即為ram中的資料,不斷按動"啟動執行"開關,可檢查後續單元內容。

注意:每次僅在微位址燈顯示為"001000"時,2位數碼管顯示的內容才是相應位址中的機器指令內容。

② 聯機讀/寫微程式和程式

用聯機軟體的裝載功能將16進製制格式檔案(檔名為c8jhe3)裝入實驗機即可(詳細操作見聯機軟體的readme)。

① 單步執行程式

a. "程式設計開關"置"執行"狀態,"執行方式"開關置為"單步"狀態,"執行控制"開關置為"執行"狀態。

b. 撥動總清開關(0→1),微位址清零,pc計數器清零,程式首位址為ooh。

c. 按動"啟動執行"開關,即單步執行一條微指令。對照微程式流程圖,觀察微位址顯示燈是否和流程一致。

《計算機組成原理》課程設計報告

電子資訊學院 實驗報告書 課程名 計算機組成原理 題目 實驗類別 驗證 班級 學號 姓名 目錄 第一章實訓任務概述 2 1.1實訓目的 2 1.2 實訓任務 2 第二章設計內容 4 2.1 指令的執行流程 4 2.1.1 異或 指令 4 2.1.2讀取指令 4 2.1.3 add 指令 4 2.2 ...

計算機組成原理課程設計報告

學生課程設計報告 課程設計名稱 計算機組成原理 設計專案名稱 基本模型機設計與實現 專業名稱 網路工程 班級 1220551 學號 學生姓名 指導教師 2015年1月3日 目錄課程設計任務書 3 1 課程設計目的 4 2 課程設計裝置 4 3 課程設計內容 4 3.1 課程設計原理 4 3.2 實驗...

計算機組成原理課程設計報告

專業名稱 j計算機 班級學號 0501 3051110004 學生姓名 孫陽陽 指導教師 劉芳 設計時間 200 7 年 12 月 26 日 2008 年 1 月4 日 第一天熟悉微程式的設計和除錯方法 一 設計要求 按照 計算機組成設計指導書 的1.4和1.5節的步驟完成設計與除錯的示例,掌握設計...