TEC-XP-II計算機組成原理與體系結構教學實驗系統,由清華大學科教儀器廠、清華大學計算機系王誠教授研制。TEC-XP-II是TEC-XP+系統的升級版機型,在硬件的組成、系統設計實現的手段、提高設備的實驗性能等多個方面作了重大的改進與完善,適用于本科、碩士研究生的計算機組成原理和計算機系統結構課程的教學實驗。該實驗系統的軟硬件配置完整,技術資料齊全。
TEC-XP-Ⅱ整機系統組成
完整的計算機系統由硬件和軟件兩個子系統組成,TEC-XP-Ⅱ教學計算機系統亦是如此,機器字長16位,基本指令30條,內存18K字,使用字尋址方式。
TEC-XP-Ⅱ的硬件系統由2個獨立的CPU、6個芯片的存儲器、2路串行接口電路、并通過接口接入PC機仿真終端來構成,包含了計算機傳統的全部五個功能部件:控制器部件,運算器部件,主存儲器,輸入設備(仿真終端鍵盤),輸出設備(仿真終端顯示器)。
TEC-XP-Ⅱ的軟件系統由監控程序(可理解為教學機的雛形操作系統)、交叉匯編程序、PC機仿真終端程序Pcec16.com組成,使用監控命令操作運行教學機,支持匯編語言程序設計,學生能夠設計自己的匯編程序,與日常操作PC機頗為相似。如果有興趣,還可以加入BASIC語言的解釋程序,使得TEC-XP-Ⅱ系統具備了計算機硬軟件系統的全部六層結構(數字邏輯層,微體系結構層,指令系統層,操作系統層,匯編語言層,語言層)的基本架構。
實驗設備的軟件仿真系統在PC機系統中實現和運行,其運行的外特性與實驗設備完全一致,通過監控命令可以建立匯編語言的源程序、執行匯編并予以運行,可以方便地以不同方式查看程序的運行結果,查看寄存器和存儲器內容,完成鍵盤輸入和屏幕顯示等。
TEC-XP-Ⅱ是TEC-XP+系統的升級版機型,在硬件的組成、系統設計實現的手段、提高設備的實驗性能等多個方面作了重大的改進與完善,從以下九個方面予以說明。
【1】TEC-XP-Ⅱ是雙CPU系統。個CPU系統選用高集成度的CPLD和中小規模的集成電路實現,選用ABEL-HDL語言對硬件組成和實現功能進行描述;第二個CPU系統選用更高集成度的一個FPGA芯片實現,選用VHDL語言對硬件組成和實現功能進行描述。在本次升級過程中,對個CPU系統的改進更多,第二個CPU系統更換了FPGA芯片的生產廠家,也選用Lattice公司的芯片,做到了兩個CPU系統使用同一個工具軟件,并使用同一條下載線完成芯片的下載操作,大大降低了同學學習和使用工具軟件的難度,而且使實驗操作更為簡單方便。
【2】在個系統的組成與實現中,把組合邏輯控制器和微程序控制器拆分成兩個獨立的部分分別來設計與實現,用到哪一種控制器就把哪一種控制器的.jed類型的文件下載到CPLD芯片中,使描述控制器的ABEL-HDL語言的程序大為精簡,消除了把兩種控制器合并到一起帶來的諸多不便;
【3】不再把運算器中的通用寄存器R5用作為程序計數器PC,已把PC設置到CPLD芯片中,
PC+1/PC+offset的計算功能也在CPLD芯片內完成,這樣確保讀取指令操作可以在一個CPU周期完成,這種處理比此前用二個CPU周期完成更合理,更接近于通用計算機系統運行的實際情形,還為實現簡單的指令流水準備好必要條件;
【4】取消原來在設備主板上的一些中小規模集成電路,將其功能一并納入到CPLD芯片內部實現,減少了所用器件數量,更重要的是確保設備主板上提供的都是核心必要電路,能更清楚地表現計算機功能部件及其相互之間的連接與信息傳輸關系,有利于課程教學和學生的學習與實驗操作;
【5】在描述CPLD芯片內部的電路組成與實現功能方面,我們選用的是ABEL-HDL硬件描述語言,用到的知識大體只限于數字電路和邏輯設計,外加一點ABEL程序結構和語句規則、實現功能的有關規定,容易學懂,方便使用;重要的變動是在ABEL程序中,改用真值表來描述每一條指令的每一執行步驟使用的控制信號,不再需要直接設計每一位控制信號的邏輯方程式,大為簡化了設計控制器的工作負擔,使增加或修改指令變得更為方便,也可以按自己意愿只實現幾條典型指令,拋開監控程序直接運行使用這幾條指令寫出的程序;
【6】在設備的主板上加入了3個40引腳的器件插座,可以插接多種型號的雙列直插封裝、引腳數不同的中小規模集成電路芯片,并能夠實現各器件的各個引腳之間的隨意連接,為電子線路和邏輯設計實驗提供了通用平臺;
【7】在設備主板上設置了6組8位通用的撥數開關,4組8位的通用指示燈,并在計算機部件之間傳送信息的主要通路上設置了專用的指示燈和接線插針(孔),方便地支持手工的單個重要芯片的功能實驗,芯片之間配合關系的實驗,單個部件的功能實驗,幾個部件之間的連接和組合運行的實驗,以及部件拆分和構建整機系統的實驗,提供出其他實驗設備難以實現的實驗手段。
【8】TEC-XP-Ⅱ設備具備計算機系統6層結構(數字邏輯層、微體系結構層、指令系統層、操作系統[監控程序]層、匯編語言層、語言層)的基本架構,具備硬件系統全部五個功能部件(控制器、運算器、存儲器、輸入設備、輸出設備),在監控程序管理控制下可以正常運行程序,和操作使用PC機頗為相似,是一臺簡單、完整的“真正”計算機系統,而不只是模型一級的實驗設備。
【9】TEC-XP-Ⅱ 設備充分保證了與原來的TEC-XP+(或本系列的其他型號)系統的軟件兼容性,可以說做到了無縫對接,這對原來選用本系列各型號實驗設備的師生是一種保護和尊重,避免對更新設備的院校教師帶來新的工作負擔。
在系統的規劃和設計過程中,始終把更好配合課堂授課、更好地滿足實驗要求放在位,盡力達到組成簡單,原理清晰,有利學懂、簡便易用的設計目標。
1、在個整機系統的基本組成中,其核心功能共使用了13片電路芯片實現:
控制器用1片CPLD、2片74LS374器件實現;
運算器用4片Am2901器件實現;
存儲器用2片RAM6116、2片ROM58C65器件實現;
接口電路選用2片INTEL-8251器件提供2路串行接口。
部件之間的連接關系:
數據總線DB用于傳送數據信息,連接到:存儲器和串行口的數據線引腳(雙向);
運算器的數據輸入引腳D和輸出引腳Y;控制器CPLD芯片的數據輸入輸出引腳(雙向),以及指令寄存器IR的數據輸入引腳;IR的輸出送到CPLD的16個輸入引腳;
地址總線AB用于傳送地址信息,由控制器CPLD送出,傳送到存儲器的地址線引腳;
控制器要產生如下的25位控制信號,它們需要被連接到各相關芯片的控制信號引腳:
用于運算器的21位控制信號;用于3片譯碼器的3位控制信號,再由譯碼器產生內存和串口的讀寫命令和片選信號;用于串口的C/D信號由控制器直接提供。
2、在第二個系統的基本組成中,其核心功能共使用了7片電路芯片實現:
CPU用1片門陣列的FPGA器件實現;
存儲器用2片RAM6116、2片ROM58c65器件實現(與個CPU分時使用);
接口電路用2片Intel-8251器件提供2路串行接口(與個CPU分時使用);
部件之間的連接關系:
數據總線DB用于傳送數據信息,連接到基本存儲器和串行口的數據線引腳(雙向)和實現CPU 的FPGA芯片的數據輸入輸出引腳(雙向);
地址總線AB用于傳送地址信息,地址信息由FPGA芯片送出,并傳送到基本存儲器的地址線引腳;
此外,FPGA芯片還通過另外一組擴展數據總線EDB、擴展地址總線EAB連接到2片擴展使用的ROM58C65,在實現指令流水時,用作為獨立于數據存儲器的指令存儲器。這2片ROM也可用作為第1個系統的擴展存儲區。
CPU需要產生3位的控制信號并送到3片譯碼器電路,再由3片譯碼器芯片產生控制內存和串口讀寫的控制命令和片選信號,用于串口的c_d信號由CPU直接提供。
3、在電路板的右側設置了40引腳的帶自鎖緊功能的3個LC座,可插接多種雙列直插封裝的器件,各器件的所有管腳之間可以實現隨意連接,再加上用于提供撥入數據信號的6組8位的開關和用于顯示的4組8位的指示燈,完成邏輯設計和電子線路實驗變得更加靈活。
二、支持的教學實驗,可以在TEC-XP-Ⅱ系統上完成的教學實驗項目
1、線路實驗:用于為計算機實驗打基礎。
RAM6116內存芯片的讀寫實驗;
ROM58C65內存芯片的讀寫實驗;
INTEL8251串口芯片的讀寫實驗;
74LS377、374兩種8位寄存器的讀寫實驗;
74LS138、139兩種譯碼器的實驗
74LS244三態門電路實驗
74LS161計數器電路實驗
微程序定序器(AM2910)芯片的運行實驗
多個芯片組和的線路實驗
高集成度的CPLD芯片內的電路組成與實現功能的設計與調試實驗
8位的運算器設計與實現
16位的程序計數器+1或者+8位補碼的專用加法器設計與實現
其他一些功能電路的設計與實現的實驗
2、計算機部件實驗
手撥開關控制的運算器部件實驗
手撥開關控制的存儲器部件實驗
手撥開關控制的串口和仿真終端運行實驗
手撥開關控制的控制器(組合邏輯方案)部件實驗
手撥開關控制的控制器(微程序方案)部件實驗
3、計算機系統實驗
監控程序使用和匯編語言程序設計實驗
指令系統選擇與控制器設計實驗
CPU(控制器+運算器)系統實驗
主機(CPU+內存)系統實驗
整機(主機+串行接口+仿真終端設備)系統實驗
3級嵌套的中斷實驗
使用和運行第2個CPU系統的實驗
在FPGA芯片內加入指令流水線功能的實驗