第21講-輸入輸出系統(tǒng)_第1頁
第21講-輸入輸出系統(tǒng)_第2頁
第21講-輸入輸出系統(tǒng)_第3頁
第21講-輸入輸出系統(tǒng)_第4頁
第21講-輸入輸出系統(tǒng)_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

實驗課題4控制器設計實驗內(nèi)容:按照題目要求設計計算機控制器的基本邏輯(不包括微操作信號產(chǎn)生電路),決定外部的端口(名稱、有效電平)和內(nèi)部各元件的連接,畫出系統(tǒng)框圖和邏輯圖,設計仿真數(shù)據(jù),用VHDL編程和仿真。用層次結構設計的方法設計控制器的指令部件。下層元件的設計已經(jīng)在實驗3中完成。包括:程序計數(shù)器、指令寄存器、數(shù)據(jù)寄存器、地址寄存器、指令譯碼器等。本實驗只需要做頂層設計。(2學時)1jlsheng@實驗課題4控制器設計實驗內(nèi)容:二、頂層設計

功能要求:

具有控制器的部分基本功能,能夠控制取指令操作、控制訪存取數(shù)據(jù)操作、控制訪存存數(shù)據(jù)操作、指令譯碼,等。

取指令機器周期:把程序計數(shù)器的內(nèi)容送到地址總線,延遲一段時間后把從存儲器中讀出的指令(通過數(shù)據(jù)總線讀入),送到指令寄存器;每取一個指令字程序計數(shù)器加1。

取數(shù)據(jù)機器周期:把地址寄存器的內(nèi)容送到地址總線,延遲一段時間后把從存儲器中讀出的數(shù)據(jù)(通過數(shù)據(jù)總線)送到數(shù)據(jù)寄存器。

存數(shù)據(jù)機器周期:把地址寄存器的內(nèi)容送到地址總線,把數(shù)據(jù)寄存器中的數(shù)據(jù)送到數(shù)據(jù)總線,延遲一段時間后結束。指令譯碼:假設操作碼在指令字的最高3位。2jlsheng@實驗課題4控制器設計

提示1:控制器內(nèi)部數(shù)據(jù)通路,可以是總線結構,也可以是直接連接結構。

提示2:控制器與系統(tǒng)總線的連接方法,有兩種結構可以考慮:①程序計數(shù)器、指令寄存器、數(shù)據(jù)寄存器、地址寄存器都與系統(tǒng)總線有直接連接。②只有數(shù)據(jù)寄存器和地址寄存器與系統(tǒng)總線連接。程序計數(shù)器和指令寄存器不與系統(tǒng)總線連接。程序計數(shù)器內(nèi)容必須先送到地址寄存器,然后才能到地址總線。從存儲器中讀出的指令必須先送到數(shù)據(jù)寄存器,然后才能到指令寄存器。三、仿真設計仿真波形數(shù)據(jù),模擬取指令、訪存取數(shù)據(jù)、訪存存數(shù)據(jù)等操作。要考慮到所有可能的情況。在實驗報告中必須清楚說明仿真波形數(shù)據(jù)是怎樣設計的。3jlsheng@計算機組成原理Principlesof

ComputerOrganization廣義雙語教學課程09/skyclass25/青島理工大學

校級精品課程/ec/C84/4jlsheng@第10章輸入輸出系統(tǒng)Chapter10Input/outputSystemInputsarethesignalsordatareceivedbythesystem,andoutputsarethesignalsordatasentfromit.I/Odevicesareusedbyaperson(orothersystem)tocommunicatewithacomputer.輸入輸出設備的編址輸入輸出的控制方式中斷方式DMA方式接口總線5jlsheng@輸入輸出系統(tǒng)包括外部設備(I/O設備,輔助存儲器)及其與主機之間的控制部件。§10.1輸入輸出系統(tǒng)概述Incomputing,input/output,orI/O,referstothecommunicationbetweenaninformationprocessingsystem(suchasacomputer),andtheoutsideworld–possiblyahuman,oranotherinformationprocessingsystem.I/OInterfaceisrequiredwhenevertheI/Odeviceisdrivenbytheprocessor.Theinterfacemusthavenecessarylogictointerpretthedeviceaddressgeneratedbytheprocessor.6jlsheng@在計算機系統(tǒng)中實際應用的有兩類編址方法:①主存與I/O統(tǒng)一編址(Memory-mappedI/O),②主存與I/O分開獨立編址(IsolatedI/O)

。1.獨立編址IsolatedI/O主存與I/O分開獨立編址是將主存儲器與I/O設備放在兩個獨立的地址空間。必須有專門的控制信號來區(qū)分出現(xiàn)在地址總線上的地址是訪存還是訪問I/O,有專門的輸入輸出指令。I/O指令的指令地址碼短,但不能對端口進行運算操作。輸入輸出設備的編址7jlsheng@2.統(tǒng)一編址Memory-mappedI/O

主存與I/O統(tǒng)一編址是將主存儲器與I/O設備放在同一個地址空間,CPU用和訪問主存相同的方法訪問I/O設備。沒有專門的I/O指令,用對存儲器的數(shù)據(jù)傳送指令進行輸入輸出。

所有能夠對存儲器進行運算操作的指令都可以用于對端口進行運算操作。缺點是訪問I/O設備的指令地址碼太長。Acomputerthatusesmemory-mappedI/Oaccesseshardwarebyreadingandwritingtospecificmemorylocations,usingthesameassemblerlanguageinstructionsthatcomputerwouldnormallyusetoaccessmemory.8jlsheng@不同的外部設備在數(shù)據(jù)寬度(1/8/16/32位),傳送方式(串行/并行),控制信號/狀態(tài)信號,一次交換的數(shù)據(jù)量(位/字符/數(shù)據(jù)塊),等方面都有或多或少的差別。接口、設備控制器、設備適配器控制并實現(xiàn)主機與外部設備之間的數(shù)據(jù)傳送。

設備控制器(接口)CPU必須通過接口與外部設備交換數(shù)據(jù)。主機與外部設備之間交換的信息包括:數(shù)據(jù)信息、控制信息、狀態(tài)信息和外設識別信息等。外部設備多是慢速的光機電設備。外設的工作與CPU是異步的。外設不僅速度遠低于主機,而且信號類型(模擬/數(shù)字)和工作電平往往與主機不同。9jlsheng@接口(Interface)的基本功能:(1)實現(xiàn)主機與外部設備之間的數(shù)據(jù)傳送控制。其中包括:同步控制,設備選擇和中斷控制等。DMA接口還有直接訪問存儲器的功能。CPU必須給出設備的地址,發(fā)出輸入/輸出控制命令。(2)實現(xiàn)數(shù)據(jù)緩沖。在接口電路中一般有1個或幾個數(shù)據(jù)緩沖寄存器,用于數(shù)據(jù)的暫存,以避免因為速度不一致而丟失數(shù)據(jù)。

接口的功能和組成

通過數(shù)據(jù)緩沖達到主機與外設之間的速度匹配。

10jlsheng@Handshakingshouldbeimplementedbytheinterfaceusingappropriatecommandslike(BUSY,READY,WAIT)theprocessorcancommunicatewithI/Odevicethroughtheinterface.Ifincasedifferentdataformattedbeingexchanged,interfacemustbeabletoconvertserialdatatoparallelformandvice-versa.(3)傳遞控制命令和狀態(tài)信息接口接受處理機的命令,提供設備接口的狀態(tài),并按照主機的命令控制設備。(4)數(shù)據(jù)格式的變換

如果主機與外部設備之間的數(shù)據(jù)寬度或數(shù)據(jù)格式不同,就需要做數(shù)據(jù)格式的變換。例如,串行/并行轉換,模擬/數(shù)字轉換,碼制轉換等。

11jlsheng@接口的基本組成:

控制/狀態(tài)信息主機外設地址數(shù)據(jù)系統(tǒng)總線數(shù)據(jù)選通/聯(lián)絡信息接口數(shù)據(jù)緩沖端口控制邏輯Interface

Theinterfacebetweenahumanandacomputeriscalledauserinterface.Interfacesbetweenhardwarecomponentsarephysicalinterfaces.12jlsheng@§10.1.2

I/O設備數(shù)據(jù)傳送控制方式輸入輸出的控制方式分為:程序直接控制,程序中斷傳送,直接存儲器存取,I/O通道控制和外圍處理機。1.程序直接控制方式(ProgrammedDirectControl)程序直接控制I/O方式是CPU通過執(zhí)行一段程序完成輸入/輸出。分為無條件輸入/輸出和(條件)查詢式輸入/輸出。無條件輸入/輸出不需要知道I/O設備的狀態(tài),直接用輸入輸出指令完成輸入/輸出。例如,讀入某開關的狀態(tài),使某指示燈亮/滅,使喇叭發(fā)出聲音,等。

查詢式輸入/輸出(條件輸入/輸出)是在數(shù)據(jù)傳送前,必須先查詢I/O設備的狀態(tài)。只有當I/O設備的狀態(tài)為Ready時,才能夠用輸入輸出指令完成數(shù)據(jù)的輸入/輸出。13jlsheng@由于I/O設備的速度遠比CPU低。而且二者又是異步工作的,往往需要花費大量的CPU時間進行查詢,效率很低。Y預置傳送參數(shù)啟動外設取外設狀態(tài)外設準備好?傳送1次數(shù)據(jù)修改傳送參數(shù)傳送完否?結束NNYCPU與I/O設備之間是串行工作的。程序查詢式輸入/輸出方式的工作過程:

查詢14jlsheng@EarlycomputersperformedI/Obywaitinginaloopfortheperipheraltobecomeready.EngineersthusarrangedfortheperipheralstointerrupttheCPU.Thiswasawasteoftimeforprogramsthathadothertaskstodo.Also,iftheprogramattemptedtoperformthoseothertasks,itmighttaketoolongfortheprogramtocheckagain,resultinginlossofdata.2.程序中斷傳送方式(ProgrammedInterruptTransfer)Hardwareinterruptswereintroducedasawaytoavoidwastingtheprocessor'svaluabletimeinpollingloops,waitingforexternalevents.

15jlsheng@程序中斷傳送方式是CPU在啟動I/O設備后,就可以執(zhí)行其他程序。當I/O設備準備好后,主動向CPU發(fā)出中斷請求。CPU響應中斷后,暫時停止正在運行的程序,轉而執(zhí)行一個中斷服務程序,完成輸入/輸出或其他服務。處理完后再返回繼續(xù)執(zhí)行原來的程序。CPU與I/O設備之間是并行工作的,效率很高,但不適用于高速設備的成組數(shù)據(jù)輸入/輸出。Theinterruptshadtobeprioritized,becausetheCPUcanonlyexecutecodeforoneperipheralatatime,andsomedevicesaremoretime-criticalthanothers.16jlsheng@3.直接存儲器存取方式(DirectMemoryAccess)DMA是I/O設備與主存儲器之間由硬件組成的直接數(shù)據(jù)通路。DMA方式是CPU在啟動將要進行I/O的外部設備,并完成DMA控制器的初始化后,就可以執(zhí)行其他程序。當I/O設備準備好后,向DMA控制器發(fā)出傳送請求。DMA控制器用竊取處理機一個總線周期的方法完成I/O設備與主存儲器之間的直接數(shù)據(jù)傳送。當所要求的數(shù)據(jù)塊傳送完畢,DMA控制器向CPU發(fā)出中斷請求。CPU做一些傳送后處理工作。DMA數(shù)據(jù)傳送與CPU之間是并行工作的,適用于磁盤等高速設備的成組數(shù)據(jù)輸入/輸出。17jlsheng@4.I/O通道控制方式(I/OChannelControl)小型機、微型機用中斷方式和DMA方式進行輸入輸出處理是有效的。大型機的外部設備多,數(shù)據(jù)傳輸頻繁。如果仍然用DMA方式有以下問題:

如果大量的外設都配置專用的DMA控制器將大幅度增加硬件成本。而且還要解決多個DMA同時訪存的沖突,使控制復雜化。在DMA方式下,外設由CPU管理和初始化,過多占用CPU時間。頻繁的總線竊取會降低CPU的效率。AchannelisanindependenthardwarecomponentthatcoordinatesallI/Otoasetofcontrollersordevices.通道(I/OChannel)是計算機系統(tǒng)中代替CPU控制外設的獨立部件,能執(zhí)行有限的I/O指令(通道命令)。18jlsheng@通道能獨立地執(zhí)行用通道命令編寫的輸入輸出控制程序,產(chǎn)生相應的控制信號送給由它管轄的設備控制器,完成復雜的輸入輸出過程。通道是一種通用性和綜合性都較強的輸入輸出方式,代表了現(xiàn)代計算機組織向功能分布方向發(fā)展的初始發(fā)展階段。通道有自己的簡單指令系統(tǒng),并能實現(xiàn)指令所控制的操作。但僅僅是面向外部設備的控制和數(shù)據(jù)的傳送。通道要在CPU的I/O指令指揮下啟動、停止或改變工作狀態(tài)。Incomputerscience,channelI/Oisagenerictermthatreferstoahigh-performanceinput/output(I/O)architecturethatisimplementedinvariousformsonanumberofcomputerarchitectures,especiallyonmainframecomputers.19jlsheng@CPUMM

BUS通道通道CUCUDDDCUCUDDDDCUD設備控制器I/O設備采用通道方式組織I/O系統(tǒng),多為主機-通道-設備控制器-I/O設備四級連接方式。一個主機可連接幾個通道,每個通道又可連接多臺I/O設備。20jlsheng@5.外圍處理機方式(PeripheralProcessor)外圍處理機的結構接近一般的處理機,甚至就是一般的完整的小型計算機或微型計算機。外圍處理機基本上獨立于主機工作。它可完成I/O通道所要完成的I/O控制,還可完成碼制變換、格式處理,數(shù)據(jù)塊的檢錯、糾錯等操作;可具有相應的運算處理部件、緩沖部件,還可形成I/O程序所必需的程序轉移手段。在某些大型、巨型計算機系統(tǒng)中,設置多臺外圍處理機,分別承擔I/O控制、通信、維護、診斷等任務。有了外圍處理機后,計算機系統(tǒng)結構從功能集中式發(fā)展為功能分散的分布式系統(tǒng)。CPUMMBUS外圍處理機外圍處理機CUCUDDDCUCUDDDDCUD21jlsheng@Homework補充題1.WhatisthedifferencebetweenisolatedI/Oandmemory-mappedI/O?Whataretheadvantagesanddisadvantagesofeachother?10-1,3,8,22jlsheng@測驗3參考答案23jlsheng@②設控制器采用微程序控制,有92個微命令,直接兩地址指令14條及三地址指令15條。CPU結構如下圖一.某計算機的指令系統(tǒng)有零地址指令16條,一地址指令31條,解釋,問最多可能有多少條微指令?分析控制存儲器的容量。MDRinPCout地址總線數(shù)據(jù)總線PCinAd(IR)outMDRoutMARinALURiYZYinZinRiinRioutZoutALUinALU控制+-PCMARMDR+1IRinIR①寫出指令MOV@R4,R2在指令分析和執(zhí)行階段發(fā)出的控制信號(不包括取指令)。@表示間接尋址。控制法。如果每個零地址指令需要2條微指令解釋,一地址指令需要3條微指令解釋,兩地址指令需要5條微指令解釋,三地址指令需要8條微指令24jlsheng@解:操作表達式為:(R2)→((R4))CPU結構如下圖一、(20分)MDRinPCout地址總線數(shù)據(jù)總線PCinAd(IR)outMDRoutMARinALURiYZYinZinRiinRioutZoutALUinALU控制+-PCMARMDR+1IRinIR①寫出指令MOV@R4,R2在指令分析和執(zhí)行階段發(fā)出的控制信號(不包括取指令)。@表示間接尋址。指令分析和執(zhí)行階段發(fā)出的控制信號:R2OUT,MDRIN,R4OUT,MARIN,Write25jlsheng@一、(20分)某計算機有零地址指令16條,一地址指令31條,兩地址指令14條及三地址指令15條。②設控制器采用微程序控制,有92個微命令,直接控制法。如果每個零地址指令需要2條微指令解釋,一地址指令需要3條微指令解釋,兩地址指令需要5條微指令解釋,三地址指令需要8條微指令解釋,問最多可能有多少條微指令?分析控制存儲器的容量。測驗3參考答案解:微指令可能有=16×2+31×3+14×5+15×8=32+93+70+120=315條控制存儲器的字數(shù)為512,微指令的順序控制字段=9bit微指令的操作控制字段為92bit微指令字長=9+92=101bit控制存儲器的容量=512×101bit26jlsheng@二、(共20分)設控制器采用微程序控制,控制存儲器容量為2K×50bit,影響微程序轉移的條件有5個。問微指令的各個字段分別為幾位?若采用字段直接編碼法,每個小字段3位,最多可以有多少個微命令?微指令字長=50bit根據(jù)控存有2K字,微指令的順序控制字段=11bit5個轉移條件,若采用編碼法,需要3位。微指令的操作控制字段=50—11—3=36bit每個小字段3位,分成12個小字段。如果每個小字段都表示7個微命令,則最多可以有12×7=84個微命令解1:27二、(共20分)設控制器采用微程序控制,控制存儲器容量為2K×50bit,影響微程序轉移的條件有5個。問微指令的各個字段分別為幾位?若采用字段直接編碼法,每個小字段3位,最多可以有多少個微命令?微指令字長=50bit根據(jù)控存有2K字,微指令的順序控制字段=11bit5個轉移條件,若采用直接控制,需要5位或者:微指令的操作控制字段=50—11—5=34bit分成11個3位的小字段和1個1位的小字段。如果每個小字段都表示7個微命令,最多可以有11×7+1=78個微命令解2:28CPT1T2(rs1)→ALUALU→PCPC→ABPC+1PC→ALUALU→GRDB→DRALU→DRDR→ALUDR→DBDB→IRALU→ARAR→ABrs1→GRResetimm/disp→ALUrs,rd→GR程序計數(shù)器PC指令寄存器IR指令譯碼器ID微操作控制信號形成部件脈沖源啟停線路時序信號產(chǎn)生部件ALU通用寄存器組GRFlag數(shù)據(jù)寄存器DR地址寄存器ARCLK2DBABCB主存儲器(rs)→ALUOPimm/disprs1rs,rdCLK+ADS-三.CPU結構如教材122頁圖6.6,29jlsheng@三.(共20分)CPU結構如教材122頁圖6.6,寫出指令ANDAC,X在指令分析和執(zhí)行階段發(fā)出的控制信號(不包括取指令)。X是某一存儲單元的地址,在指令的disp字段中。AC是累加器(在通用寄存器組中)。該指令的操作表達式為:(AC)∧(X)→AC解:指令分析階段:把操作數(shù)地址送到存儲器地址寄存器AR,取數(shù)階段:將AR中的地址送上地址總線AB,發(fā)訪存控制信號,等待一段時間后從數(shù)據(jù)總線DB將取來的數(shù)送到存儲器數(shù)據(jù)寄存器DR執(zhí)行階段:將AC中的數(shù)與DR中的數(shù)送到ALU進行與運算,結果送到AC,置標志寄存器30CPT1T2(rs1)→ALUALU→PCPC→ABPC+1PC→ALUALU→GRDB→DRALU→DRDR→ALUDR→DBDB→IRALU→ARAR→ABrs1→GRResetimm/disp→ALUrs,rd→GR程序計數(shù)器PC指令寄存器IR指令譯碼器ID微操作控制信號形成部件脈沖源啟停線路時序信號產(chǎn)生部件ALU通用寄存器組GRFlag數(shù)據(jù)寄存器DR地址寄存器ARCLK2DBABCB主存儲器(rs)→ALUOPimm/disprs1rs,rdCLK+ADS-三.CPU結構如教材122頁圖6.6,指令ANDAC,X分析和執(zhí)行階段31jlsheng@三.(共20分)CPU結構如教材122頁圖6.6,寫出指令ANDAC,X在指令分析和執(zhí)行階段發(fā)出的控制信號(不包括取指令)。X是某一存儲單元的地址,在指令的disp字段中。AC是累加器(在通用寄存器組中)。該指令的操作表達式為:(AC)∧(X)→AC解:指令分析階段發(fā)出的控制信號:disp→ALU,“+”,ALU→AR,取數(shù)階段發(fā)出的控制信號:AR→AB,ADS,,,DB→DR執(zhí)行階段發(fā)出的控制信號:rs→GR,(rs)→ALU,DR→ALU,“∧”,rd→GR,ALU→rd,置標志寄存器32四.(共10分)某CPU的主頻為10MHz,若已知每個機器周期平均含4個時鐘周期,該機的平均指令執(zhí)行速度為1MIPS,試求該機的平均指令周期及每個指令周期含幾個機器周期?若改用時鐘周期為0.4μs的CPU芯片,則計算機的平均指令執(zhí)行速度是多少MIPS?若要得到平均每秒80萬次的指令執(zhí)行速度,則應采用主頻為多少的CPU芯片?(1)主頻=10MHz,解:時鐘周期TC=1/10MHz=0.1×10—6S=0.1μs機器周期TM=4×0.1μs=0.4μs平均指令周期TI=1/1MIPS=1μs每個指令周期含2.5個機器周期。33四.(共10分)某CPU的主頻為10MHz,若已知每個機器周期平均含4個時鐘周期,該機的平均指令執(zhí)行速度為1MIPS,試求該機的平均指令周期及每個指令周期含幾個機器周期?若改用時鐘周期為0.4μs的CPU芯片,則計算機的平均指令執(zhí)行速度是多少MIPS?若要得到平均每秒80萬次的指令執(zhí)行速度,則應采用主頻為多少的CPU芯片?(2)若改用時鐘周期為0.4μs的CPU芯片,則解:機器周期TM=4×0.4μs=1.6

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論