




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
...wd......wd......wd...一、本課程在計算機系統中的位置一、課程目標1、構造與原理掌握建設計算機系統的整機概念;掌握計算機各部件的組成原理與技術;了解計算機系統組成與構造的新技術2、分析與計算能力掌握對組成與構造進展性能分析的方法;通過量化計算,加深對組成原理的理解與掌握3、應用與設計能力通過實驗,培養邏輯設計及理論指導實踐的能力二、課程內容組織第1章計算機系統概論計算機的模型、硬件組成,計算機的工作過程、性能指標第2章數據的表示和運算數據的編碼及表示,定點及浮點運算方法,ALU構造與組成第3章存儲系統層次構造,RAM組成,主存、Cache、虛存的組成原理第4章指令系統指令功能與指令格式,操作數存放及尋址方式,CISC/RISC第5章中央處理器CPU的功能與構造、工作流程,指令執行過程,數據通路組織,CU的構造及組成,微程序控制器技術,指令流水技術計算機軟件(指令串及數據)計算機軟件(指令串及數據)CUALU存儲器…系統總線I/O設備1I/O接口1I/O設備2I/O接口2I/O設備nI/O接口n第6章總線概述,操作步驟,仲裁/定時方式,互連構造第7章I/O系統組成,I/O設備,I/O接口,I/O方式(4種)1、學習方法建設整機概念,將所學知識點融合在一起;從邏輯設計出發,分析多種方案的利與弊;通過量化分析,加深對原理的掌握與理解。2、學習效率第1章計算機系統概論◆計算機:按照內部存儲的指令序列,對數字化信息進展自動高速處理、存儲、傳送、控制的裝置。指令:指示計算機硬件完成某種功能的明確的命信息:有用的數據,有多種不同類型,其表現手段可以采用數字化形式或模擬量形式;運算:包括算術運算和邏輯運算,要求自動與高速;處理:對信息進展搜索、識別、變換,甚至聯想、思考和推理等等。◆計算機的基本功能主要包括數據處理數據存儲數據傳送控制◆數據處理功能運算功能:算術運算功能和邏輯運算,應用于數值計算和非數值計算兩個方面;處理對象:數值、字符、圖形、圖像、聲音和視頻等。◆數據存儲功能主存儲器:保存指令和數據;輔助存儲器:以文件的形式保存大量數據信息。◆數據傳送功能內部數據流動:CPU和主存以及CPU內部存放器與運算器之間的數據流動;外部數據傳送:輸入/輸出〔I/O〕和計算機通信。◆控制功能控制器:產生各種基本操作信號并按某種時序發出以完成相應功能;指令編碼、指令系統:一臺計算機的所有指令集合。1.1.1計算機系統的軟硬件*計算機系統的組成:功能的實現方式—①硬件具備數據的存儲、傳送及處理和過程控制功能②軟件表示應用的數據處理及過程控制需求└→程序(指令序列,硬件用不同指令表示不同功能)③執行軟件實現應用的數據處理及過程控制功能*計算機系統組成的特性:軟件功能靠硬件實現,硬件性能靠軟件反映*計算機系統構造:機器語言程序員所看到的計算機屬性概念性構造和功能特性←┘ *計算機組成:實現計算機系統構造時所表達的計算機屬性*計算機實現:實現計算機組成時所表達的計算機屬性*相互關系:計算機系統構造—確定軟硬件功能分配及其界面特性;計算機組成—邏輯實現系統構造的內容;計算機實現—物理實現計算機組成的內容舉例 系統構造 計算機組成 計算機實現乘法功能 是否有乘法指令 乘法器還是加法+移位 器件、電路主存系統 最大容量、編址方式 速度保證、單體/多體MEM總線 帶寬 信號線數、時鐘、傳輸方式§1.2計算機系統基本組成一、馮·諾依曼模型計算機*構造與組成:由運算器、存儲器、控制器、輸入及輸出設備組成,以運算器為中心;輸入設備輸入設備存儲器運算器控制器輸出設備注:數據信息
指令信息
控制信息
狀態信息*數據表示與運算:指令及數據均用二進制方式表示,運算亦采用二進制方式*存儲程序原理—程序存儲方式:指令及數據預先存放(以等同地位)在存儲器中;*存儲器構造:由定長單元構成的一維空間,存儲器按地址訪問;*指令組成:由操作碼及地址碼組成;例:假設加法運算的操作碼用010表示,第01000號與第10000號兩個存儲單元內容相加的操作可表示為:0100100010000*存儲程序原理—程序控制機制:按程序邏輯順序、自動地、逐條地取出指令并執行。馮·諾依曼計算機模型。1〕計算機由運算器、存儲器、控制器和輸入/輸出五個部件組成;2〕存儲器以二進制形式存儲指令和數據;3〕存儲程序工作方式;4〕五部件以運算器為中心進展組織。二、計算機硬件的基本組成1、計算機硬件的構造現代計算機均在馮·諾依曼模型根基上進展改進*采用以存儲器為中心的構造:使數據傳送與數據處理并行,有利于提高系統性能*由多種存儲器構成存儲系統:解決速度-容量-價格間的矛盾,有利于提高性能/價格 *采用總線互連形式:實現部件操作標準化,有利于提高系統的可擴展性 2、計算機部件的基本組成(1)存儲器*功能:存儲程序和數據、通過讀/寫操作接收/提供信息*組成:*完成操作的過程:讀操作—①接收地址及命令,內部操作;②輸出數據寫操作—①接收地址及命令;②接收數據,內部操作(2)運算器*功能:實現算術運算及邏輯運算,并暫存運算結果*組成:*(AC)+[Y]→AC的運算過程:(0)(AC)為被加數(1)加數[Y]→TEMP(2)(AC)+(TEMP)(3)ALU結果→AC△約定:(X)表示存放器X中內容,[Y]表示存儲單元Y中內容(3)控制器*功能:指揮及控制各部件協調地工作,以實現程序執行過程*程序執行過程:①循環的指令執行過程(取指令及執行指令);②下條指令地址由當前指令產生(按程序邏輯順序)取指令取指令取指階段分析指令執行指令執行階段(4)輸入/輸出設備*功能:實現外部-內部信息的輸入/輸出及格式轉換;*種類:鍵盤、鼠標、顯示器、打印機、磁盤等;*連接:通過I/O接口(又稱適配器或控制器)與總線連接,I/O接口實現信息傳送時的緩沖、中轉等功能三、計算機軟件的基本組成三、計算機軟件的基本組成四、計算機工作過程計算機的工作過程就是執行程序的過程。考察指令ADDNUM,R0的執行過程。圖1.4CPU組成以及和存儲器的連接圖1.4CPU組成以及和存儲器的連接考察指令ADDNUM,R0的執行過程。程序執行過程*程序執行的初始條件:(a)程序及數據已存放在主存儲器MM中;(b)PC內容已經為即將執行的程序首條指令地址*程序執行的實現方法:--控制器指揮與控制①取指—(PC)→[MM]→IR,(PC)+“1〞→PC;②分析—(IR)→ID→CU;③執行—實現指令約定操作(指令轉移時重寫PC);④循環—假設無中斷執行的要求,轉①§1.3計算機系統的性能指標一、計算機系統的性能指標*系統性能:指在計算機硬件上運行的計算機軟件的性能1、硬件性能參數*機器字長:指CPU一次能處理的二進制位數。└→指ALU一次能處理的n位CPU—指機器字長為n個二進制位的CPU;例如,Core2CPU為64位CPU對系統性能的影響—機器字長越長,數據處理性能越好;(∵應用數據長度>機器字長時,需分次運算)對其它硬件的影響—直接影響ALU、REG長度,間接影響存儲字長、數據總線位數*機器主頻:指CPU內部主時鐘脈沖的頻率,常用f表示。主頻單位—1GHz=1×103MHz=1×106KHz=1×109Hz;時鐘周期—CPU內部基本操作的時長,常用TC表示;f與TC關系—倒數關系,即f=1/TC*存儲容量:指存儲器可存儲二進制信息的總位數。主存容量—容量S=存儲單元個數×存儲字長;輔存容量—容量S=存儲塊個數×存儲塊長度;容量單位—1GB=1×210MB=1×220KB=1×230B=8×230bit;最大主存容量—CPU能夠訪問的主存最大容量,它決定了CPU的地址和數據引腳數量2、系統性能指標時間是唯一標準,主要有響應時間和吞吐量兩個指標。*響應時間:指一個任務從任務輸入到結果輸出的總時間,*吞吐量:又稱吞吐率,指單位時間內能處理的工作量,即吞吐量=n個任務的總工作量÷n個任務的總時間特點—反映了多任務計算機系統的軟硬件總體性能表示—因工作量無統一定義,通常用MIPS及MFLOPS代替△MIPS(每秒百萬次指令)△MFLOPS(每秒百萬次浮點運算)*其他:RAS(可靠性/可用性/可維護),兼容性等二、計算機軟件的開展歷史1、計算機語言的開展機器語言→匯編語言→高級語言→應用語言*高級語言例:FORTRAN、PASCAL、C/C++、Java2、系統軟件的開展*語言處理程序:匯編程序、編譯程序、解釋程序;*操作系統:DOS、UNIX、Windows;(多道程序、分時/實時、網絡、分布式、面向對象)*服務性程序:裝配、調試、診斷、排錯;*數據庫:數據庫(網狀、層次、關系型)、數據庫管理軟件;*網絡:協議(NetNIOS、TCP/IP等)及實現庫三、計算機系統分類按規模及功能分類超級計算機—科學計算等;大型計算機—多用戶使用等;小型計算機—辦公應用等;工作站—圖形處理及分布式計算等;微型計算機—應用廣泛;單片機/嵌入式系統—工業控制等第二章數據的表示和運算§2.1數據的編碼一、數制及其轉換1、進位計數制*進位計數制:又稱進制或數制,是用一組固定的符號和統一的規那么來表示數值的方法。有數碼、基數和位權3個基本參數*常用的4種進制:*R進制數表示:(N)R=(kn-1…k1k0.k-1k-2…k-m)R=其中,ki∈{0,1,…(R-1)}(2)十進制數小數轉換成R進制數小數*小數轉換規那么:乘基取整、上左下右例3—將(0.6875)10分別轉換成二、八進制數(3)十進制數轉換成R進制數*轉換規那么:整數局部、小數局局部別轉換后再合并練習1—(19.6875)10=(X)2=(Y)8,X=Y=4、二、八、十六進制數相互轉換*隱含規律:2=21,8=23,16=24(1)二進制、八進制數相互轉換*轉換規那么:①從小數點向兩邊分別轉換;②3個二進制數位(不夠時補零)等價于1個八進制數位例4—(13.724)8=(001011.111010100)2=(1011.1110101)2(10011.01)2=(010011.010)2=(23.2)8(2)二進制、十六進制數相互轉換*轉換規那么:①從小數點向兩邊分別轉換;②4個二進制數位(不夠時補零)等價于1個十六進制數位例5—(2B.E)16=(00101011.1110)2=(101011.111)2(11001.11)2=(00011001.1100)2=(19.C)16二、機器數及其編碼*數值數據:組成—由符號、小數點及數值構成,可缺省符號及小數點運算—①符號與數值分開運算;②加減法需先比較大小*機器數:符號數字化的數,通常0/1表示+/-;如(+101)2→(0101)2、(-0.101)2→(-.101)2→(1.101)2真值—帶“+〞或“-〞符號的數*機器數的運算方法:①采用手工運算方法,硬件實現很不方便;如—(+x)+(-y)時,先求x-y、再求結果符號、最后求x-y或y-x☆②采用新運算方法,便于硬件實現(如符號與數值一起運算)└→必須使用新的編碼方法!*機器數的編碼方法:原碼、補碼、反碼、移碼等1、原碼表示法(原碼編碼方法)*基本思想:用0/1表示符號+/-,數值位為真值的絕對值*純整數原碼定義:設X=±xn-2…x0,xi=0或1,那么[X]原=xn-1xn-2…x0,*純小數原碼定義:設X=±0.x-1…x-(n-1),那么[X]原=x0.x-1…x-(n-1)*原碼的特性:①X與[X]原關系—·[X]原與X表示值的范圍一樣,·[+0]原≠[-0]原;②運算方法—符號與數值分開運算(與手工運算一致)└→適合于乘除法,加減法較復雜2、補碼表示法*目標:實現符號與數值一起運算(1)有模運算與補數例如—將時針從10點撥向7點,有兩種撥法:①倒撥10-3=7;②順撥10+9=7+12=7*有模運算:運算時只計量小于“模〞的局部,多余局部被丟棄模—計量系統的計數范圍;同余—假設A、B、M滿足A=B+kM(k為有符號整數),那么記A≡B(modM),稱B和A為模M的同余*補數:假設a、b、M滿足a+b=M,稱a、b互為模M的補數運算特征—c-a=c-(M-b)=c+b(modM),即減去一個數等價于加上這個數的補數└→可將減法運算轉化為加法運算(2)補碼定義一個負數的補碼應等于模與該數絕對值之差。即某負數X的補碼為:[X]補=M+X(modM)*純整數補碼定義:設X=±xn-2…x0,xi=0或1,那么[X]補=x’n-1x’n-2…x’0,即說明—因X連同符號位共n位,故模為2n例6—[+0001]補=00001,[-0001]補=100000-0001=11111[+1111]補=01111,[-1111]補=100000-1111=10001※正數補碼最高位(符號位)為0,負數最高位為1[+0000]補=[-0000]補=00000※數0的補碼惟一練習2—假設X=-01000、Y=+01000,[X]補=[Y]補=例7—n=5、X≥0時,最大[X]補=01111,Xmax=24-1=+15X<0時,最小[X]補=10000,Xmin=-24=-16※補碼表示數的個數比原碼多1個原碼無11…1110…0110…0000…0000…0101…11補碼10…0010…0111…1100…0000…0101…11真值-2n-1-(2n-1-1)-10+1+(2n-1-1)*定點純小數補碼定義:設X=±0.x-1…x-(n-1),那么[X]補=x’0.x’-1…x’-(n-1)例8—[+0.1011]補=0.1011[-0.1011]補=2-0.1011=10.0000-0.1011=1.0101(3)補碼的特性△X→[X]補—假設X為正數,改符號位為0,其余各位不變;假設X為負數,改符號位為1,其余各位取反、末位加1△[X]補→X—假設[X]補最高位為0,改其為正號,其余各位不變;假設[X]補最高位為1,改其為負號,其余各位取反、末位加1△[X]原→[X]補—假設[X]原最高位為0,[X]補=[X]原;假設[X]原最高位為1,[X]補=[X]原各數值位取反、末位加1△[X]補→[X]原—假設[X]補最高位為0,[X]原=[X]補;假設[X]補最高位為1,[X]原=[X]補各數值位取反、末位加1*[X]補與[-X]補的關系:△[X]補→[-X]補—[X]補的各位取反(含符號位)、末位加1[-X]補→[X]補—[-X]補的各位取反(含符號位)、末位加1練習4—①假設X=+01001,[X]原=001001,[X]補=001001;②假設X=-01010,[X]原=101010,[X]補=110110;③假設[X]原=001010,X=+01010,[X]補=001010;④假設[X]原=101110,X=-01110,[X]補=110010;⑤假設[X]補=001110,X=+01110,[-X]補=110010;⑥假設[X]補=101110,X=-10010,[-X]補=010010;⑦假設[-X]補=101011,[X]補=010101,[X]原=010101;⑧假設[-X]補=001001,[X]補=110111,[X]原=1010013、反碼表示法*目標:作為原碼與補碼相互轉換時的一種過渡編碼*純整數反碼定義:設X=±xn-2…x0,xi=0或1,取模=2n-1,那么例14—[+1101]反=01101,[-1101]反=10010*純小數反碼定義:設X=±0.x-1…x-(n-1),xi=0或1,模=2-2-(n-1),那么例15—[+0.1101]反=0.1101,[-0.1101]反=1.0010*反碼與補碼關系:假設X為正數,[X]補=[X]反;假設X為負數,[X]補=[X]反+1
原碼、補碼、反碼比較:①機器數的最高位均為符號位(0/1表示正/負);②假設真值X為正數,[X]原=[X]補=[X]反;③假設真值X為負數,[X]補=[X]反+1,[X]反=[X]原各位求反(符號位除外);④[+0]補=[-0]補,補碼比原碼、反碼多表示一個負數4、移碼表示法*目標:實現符號與數值一起編碼←數連續時編碼連續*純整數移碼定義:設X=±xn-2…x0,其中xi=0或1,取模=2n,那么[X]移=2n-1+X(mod2n)=2n-1+X-2n-1≤X<2n-1例16—[-111]移=0001,[-001]移=0111,[±000]移=1000,[+001]移=1001,[+111]移=1111,[-1000]移=0000*移碼的特性:①數在數軸上為連續編碼(無符號數),便于比較大小;②[X]移=[X]補符號位取反、其余各位不變三、十進制數編碼*BCD碼(BinaryCodedDicimal):又稱二-十進制編碼,是指用4位二進制編碼表示1位十進制數位的編碼方式。*BCD碼種類:分有權碼和無權碼兩種,最常用的是8421碼。
BCD碼缺省指8421碼(特殊聲明除外)!四、字符及字符串編碼1、字符編碼*字符編碼:字符在字符集中惟一的數字化代碼,表示字符在字符集中的序號或特征號*字符編碼的類型:有輸入碼、內碼、交換碼、字模碼4種*有關字符編碼的約定:字符編碼—均指交換碼的編碼!字符數據—均指內碼的編碼!*常見字符編碼(交換碼)種類:2、字符串編碼*字符串特性:①由多個字符構成;②所含字符數不固定。*字符串編碼方法:①由各個字符編碼組成;②通過特定編碼標志字符串的完畢,完畢編碼放在最后└→字符集必須包含該字符(如ASCII碼中編碼為0的字符)例—C語言中字符串“am〞可編碼為11000011101101000000五、校驗碼*冗余校驗思想:①用待發數據(M)形成校驗信息(P),M與P一起傳送;②用接收數據(M’)形成新校驗信息(P〞),檢錯并糾錯*術語:校驗碼—由數據位和校驗位組成的信息編碼;檢錯(檢驗)—檢查數據在傳送過程中有/無錯誤;糾錯(校正)—根據錯誤位置糾正數據(取反)*常見校驗碼:奇偶校驗碼、海明校驗碼奇偶校驗碼*編碼原理:采用1位校驗位,使數據位及校驗位中“1〞的位數為奇數或偶數個數*校驗方法:故障字S—S=P’P〞,其中P’是接收的、P〞是形成的;檢錯—假設S=0無錯誤,假設S=1有錯誤;糾錯—無此能力(∵無法獲得錯誤位置)*校驗能力:只能檢測奇數個錯誤,無糾錯能力例3—以下接收的校驗碼①01001、②10100、③10011中,只有一個有奇數位錯,請問發送時采用的是奇校驗還是偶校驗碼*應用:廣泛應用于I/O傳輸的數據校驗§2.2數據的表示
計算機用編碼表示數據:
計算機只支持最常用(最基本)的數據類型:數據表示—計算機硬件能夠直接識別和引用的數據類型應用數據→數據表示的轉換:程序員或編譯程序完成一、數值數據的數據表示方法1、數值數據的數學特征①進制可有多種;②符號為“+〞或“-〞,可以沒有符號;③小數點為“.〞,可隱含表示,小數點位置可任意變化;④數碼長度可任意變化;⑤不會產生運算溢出2、馮·諾依曼模型計算機的硬件特征①指令和數據用二進制表示,采用二進制運算;②二進制中只有0和1,無法表示符號和小數點;③機器字長固定,CPU內部全部采用定長方式處理。3、數值數據的表示方法*進制問題處理:只支持二進制方式;*符號問題處理:有符號數—用數字表示符號,數據本身無法區分無符號數—符號位置為數值;在指令級進展區分 *小數點問題處理:①點的表示—用隱含方式表示;②位置表示—約定不同數據類型的位置不同*數碼長度問題處理:①不同數據類型—數碼長度固定;←便于定長方式處理②同一數據類型—可有幾種長度;←可提高處理及存儲效率*運算問題處理:①運算方法—按數據表示的格式及編碼進展相應運算;②數據類型區分—由指令操作碼區分;③溢出處理—硬件檢測并發出通知,由軟件處理
數值數據的處理方法:包括數據的表示和數據的操作方法二、數的定點表示1、定點表示方法指約定數據中隱含的小數點位置固定不變。*定點表示形式:有約定在數值最低位之后和最高位之前兩種2、定點數的表示采用定點表示格式的數稱為定點數,通常有幾種數碼長度。*定點數的表示范圍:(設數碼長度為n位)三、數的浮點表示1、浮點表示方法指約定數據中隱含的小數點位置是可變的。*浮點表示形式:由尾數和階組成格式—表示—尾數用定點純小數表示,階用定點整數表示2、浮點數的表示采用浮點表示格式的數稱為浮點數,通常有幾種數碼長度。*浮點數的表示范圍與精度:假設尾數及階的基均為2,數值長度分別為m位及e位例1—假設浮點表示格式中m=10、e=4,尾數及階均為補碼編碼方式,寫出(-54)10的機器碼。解:(-54)10=(-110110)2=-0.11011×2+110,浮點數機器碼為0011010010100000例2—假設浮點表示格式中尾數為8位(含1位符號位)、階為5位(含1位符號位),寫出以下實數的浮點數及機器碼。例3—浮點表示格式同例2,寫出以下機器碼的浮點數。3、浮點數的規格化*目的:在現有的浮點數表示格式中,使表示精度最大化。例4—假設浮點表示格式中m=3、e=3、尾數和階均為原碼編碼方式,不同表示方法的浮點數精度不同:+101.1=0.1011×23=0.01011×24=0.001011×25*規格化數的要求:尾數真值的最高位為1,即1/2≤|M|<1*規格化的操作:左規—尾數左移一位,階碼減一;右規—尾數右移一位,階碼加一。應用—非規格化數→規格化數,可能需屢次規格化操作例5—假設浮點數尾數及階的基均為2,答復以下問題:原碼尾數—最高數值位為1;補碼尾數—最高數值位與符號相反←便于硬件實現4、IEEE754標準*表示格式及數碼長度:有單精度、雙精度兩種格式及長度*編碼方式:①數制—M和E均采用二進制方式(即RM=RE=2);②碼制—M為原碼編碼的定點純小數(改進了定點位置),E為移碼編碼的定點整數(改進了移碼值)*階的碼制:采用的是余127碼和余1023碼余X碼—偏移值為X的移碼稱為余X碼,標準移碼:真值=E-28-1=E-128,余127碼:真值=E-(28-1-1)=E-127;階的范圍—1≤E≤254,而0和255另作他用,即-126≤階的真值≤127*尾數的碼制:(以單精度格式為例)支持非規格化尾數和規格化尾數兩種方式;非規格化尾數—尾數真值=±0.m-1…m-23,機器碼M=m-1…m-23,尾數精度=23位;規格化尾數—規格化的尾數真值=±1.m-2…m-24,機器碼M=m-2…m-24,尾數精度=24位*IEEE754標準浮點表示的特征:(以單精度格式為例)例5—求(-11/128)10的IEEE754單精度規格化數的機器碼解—(-11/128)10=(-1011)2×2-7=(-0.1011)2×2-3=(-1.011)2×2-4=(-1.011)2×2123-127例6—求IEEE754單精度碼為(CC968000)16的浮點數的真值N解—(CC968000)16=11001100100101101000000000000000N為負數,浮點數為規格化數(∵1<10011001<254);階=(10011001)2-(01111111)2=(00011010)2=(26)10尾數=(1.00101101)2=(1.17578125)10∴N=(―1)1×1.17578125×226=-1.17578125×226
數值數據的表示小結:表示格式有定點和浮點兩種,編碼方式決定運算器的運算方法,數碼長度總是固定的四、非數值數據的數據表示
MEM字長的特征:MEM字長—均為2n位(n為常數);←便于數據長度的二進制運算MEM字長種類—有二進制位、機器字長、折中長度3類
提高MEM的存儲效率:1、字符數據的表示指字符的交換碼在存儲/處理時的表示方式,即字符的內碼。2、邏輯數據的表示*數學特征:值域—真、假;運算—與(AND)、或(OR)、非(NOT)等*數據的表示方法:數碼長度—1位→n位(n為MEM字長倍數);←以提高存儲效率編碼方式—各位獨立編碼,1/0可表示真/假*運算處理方法:可采用所有位同時按位進展與/或/非運算可獲得最大性能←┘└→一位操作時,軟件負責準備數據例2—8位邏輯數A和B如何實現第0位的OR操作(結果在A中)解:步驟為①C=BAND01H;②A=AORC§2.3定點數運算方法一、移位運算1、移位及移位運算*移位:數值相對于某個位置的移動例—20.0m=2000.0cm,稱20相對于小數點左移了2位*移位操作:有左移、右移2種類型;二進制數左移或右移n位相當于乘以或除以2n*移位運算:對計算機中機器數的移位操作運算種類—對有符號數,有算術左移、算術右移;對無符號數,有邏輯左移、邏輯右移運算參數—操作數、移動位數2、邏輯移位運算*操作數類型:無符號機器數*運算規那么:機器數整體移位,移出的數丟棄,出現的空位補0例1—某REG內容為00111001,邏輯移位運算結果如下:練習—假設(REG)=11001001,邏輯左移1位再右移1位的結果?*溢出判斷方法:左移、移丟數碼為1時運算溢出3、算術移位運算*操作數類型:有符號機器數(原碼、補碼等)*運算規那么:符號位不變,數值局部整體移位,空位添補規那么如下表(根據編碼方式的數學特征添補)*運算實現方法:通常用移位存放器實現右移移丟數值1僅影響精度右移移丟數值1僅影響精度*溢出判斷方法:左移移丟數值1時溢出原碼左移、移丟數碼為1時溢出;補碼/反碼左移、移丟與符號相反的數碼時溢出二、定點加減運算1、補碼加減運算(1)補碼加減運算規那么*加法:[A+B]補=[A]補+[B]補*減法:[A-B]補=[A+(-B)]補=[A]補+[-B]補(2)補碼運算溢出判斷方法*溢出判斷①:用1位符號位判斷例4—假設n=4,補碼表示范圍-8≤X≤+70110(+6)1111(-1)0101(+5)1011(-5)+1011(-5)+1100(-4)+0100(+4)+1100(-4)10001(+1)11011(-5)01001(+9)10111(-9)即:一樣符號數相加、且結果與操作數符號不同時溢出!設[A]補=An-1An-2…A0,[B]補=Bn-1Bn-2…B0,[Z]補=[A]補+[±B]補=Zn-1Zn-2…Z0例5—設A=-11/16,B=+7/16,[A+B]補、[A-B]補是否溢出?解:[A+B]補=1.0101[A-B]補=1.0101+0.0111+1.1001=1.1100=10.1110對[A+B]補,OVR=(10)(00)=0不溢出對[A-B]補,OVR=(10)(10)=1溢出*溢出判斷①優化:用結果的符號位及最高數值位進位判斷An-1An-2…A0+Bn-1Bn-2…B0Zn-1Zn-2…Z0Cn-1Cn-2*溢出判斷②:用2位符號位判斷變形補碼—采用2個符號位的補碼[A]變補=AnAn-1An-2…A0,AnAn-1表示符號(00為正數、11為負數)例6—假設X=-010,Y=-110,[X+Y]變補溢出否?解:[X]變補=11110,[Y]變補=11010[X+Y]變補=11110+11010=1100011=0不溢出(3)補碼加減運算所需的硬件配置*加減法實現思路:加減法統一處理C-1=1,
C-1=0,=1…=1C-1=1,
C-1=0,=1…=1減法—[A]補+[-B]補=[A]補+[B]補+1*加減法實現思路:加減法統一處理加法—[A]補+[B]補+0;減法—[A]補+[-B]補=[A]補+[B]補+1◆筆---紙乘法方法▲例1.X=1011,Y=1101,X×Y的筆---紙乘法過程:1.原碼一位乘◆用原碼實現乘法運算時,符號位與數值位是分開計算的;設:[X]原=xnxn-1x1x0,[Y]原=ynyn-1y1y0(其中xn、yn分別為它們的符號位)假設[X×Y]原=z2nz2n-1z1z0(z2n為結果之符號位)那么z2n=xnynz2n-1z1z0=(xn-1x1x0)×(yn-1y1y0)類似兩個無符號數相乘。◆就筆---紙乘法方法,為提高效率而采取的改進措施①每將乘數Y的一位乘以被乘數得X×yi后,就將該結果與前面所得的結果累加,得到局部積Pi;②將局部積Pi右移一位與X×yi相加;加法運算始終對局部積中的高n位進展;③對乘數中“1〞的位執行加法和右移運算,對“0〞的位只執行右移運算,而不執行加法運算;▲上述乘法運算可以歸結為循環地計算以下算式:設P0=0P1=2-1(P0+X×y0)P2=2-1(P1+X×y1)Pi+1=2-1(Pi+X×yi)(i=0,1,2,3,n-1)……Pn=2-1(Pn-1+X×yn-1)顯然,X×Y=Pn▲對于兩個n位無符號數乘法的一種可行的算法:1〕置計數器為n;2〕去除2n位局部積存放器;3〕檢查乘數最右位〔初始時為最低位〕,假設為“1〞,加被乘數到局部積高n位中;4〕將局部積右移一位;5〕將乘數右移一位;6〕計數器減1,結果不為0,那么從3〕開場重新執行;假設結果為0,那么從局部積存放器讀出乘積。▲實現這種方法的二個定點數乘法的邏輯電路框圖nnn▲例1.[X]原=01101,[Y]原=01011,假設[X×Y]原=z8z7z0那么z8=00=0z7…z0=1101×1011的計算采用上述乘法流程,實現的具體過程如下:補碼乘法例:X=0.1011,Y=-0.0001[X]補=01011,[Y]補=11111[X×Y]補=111110101[X]補×[Y]補=101010101顯然,[X×Y]補[X]補×[Y]補▲對兩個正數來說,它們補碼的乘積等于它們乘積的補碼。假設乘數是負數時,這種情況就不成立了。◆Booth〔布斯〕乘法▲A.D.Booth算法思想:相乘二數用補碼表示,它們的符號位與數值位一起參與乘法運算過程,得出用補碼表示的乘法結果。▲Booth算法推導:[X]補=xnxn-1……x0,[Y]補=ynyn-1……y0;根據補碼定義:可得出其真值:Y=[Y]補-2n+1ynX×Y=X×{[Y]補-2n+1yn}=X{yn2n+yn-12n-1+……+y121+y020-2n+1yn}=X{-yn2n+yn-12n-1+……+y121+y020}=2n(yn-1-yn)X+2n-1(yn-2–yn-1)X+……+21(y0–y1)X+20(0–y0)Xy-1為增設的一個附加位,初值為0;[X×Y]補=[2n(yn-1-yn)X+2n-1(yn-2–yn-1)X+……+21(y0–y1)X+20(y-1–y0)X]補令[X×Y]補=[X×Y]’補×2n[X×Y]’補=[(yn-1-yn)X+2-1(yn-2–yn-1)X+……得到如下遞推公式令[P0]補=0,有:[P1]補=[2-1(P0+(y-1-y0)×X]補[P2]補=[2-1(P1+(y0-y1)×X]補[Pi]補=[2-1(Pi-1+(yi-2-yi-1)×X)]補(i=1~n)[Pn]補=[2-1(Pn-1+(yn-2-yn-1)×X)]補[X*Y]’補=[Pn+1]補=[Pn+(yn-1-yn)×X]補(yi-1–yi)X實際上并不做乘法,只要比較相鄰兩位乘數以決定+X、–X或+0。在計算機中,對于定點整數,只要認定小數點在乘積之末,相當于將小數點右移n位。對乘數的連續兩位yi和yi-1進展判斷假設yiyi-1=01,那么[Pi+1]補=[2-1(Pi+X)]補假設yiyi-1=10,那么[Pi+1]補=[2-1(Pi-X)]補假設yiyi-1=00或11,那么[Pi+1]補=[2-1Pi]補一個補碼數據的右移是連同符號位右移,且最高位補充符號位的值。▲例3:[X]補=01101,[Y]補=10110,[-X]補=10011。用布斯乘法計算[X×Y]補的過程如下因此,[X×Y]補=101111110▲布斯乘法的算法過程為n+1次的“判斷—加減—右移〞的循環,判斷的次數為n+1次,右移的次數為n次。▲在布斯乘法中,遇到連續的“1〞或連續的“0〞時,是跳過加法運算,直接實現右移操作的,運算效率高。3.5.1浮點數的加、減運算◆計算機中實現X和Y加、減法運算的步驟為:第1步:對階▲對階使得原數中較大的階碼成為兩數的公共階碼;小階碼的尾數按兩階碼的差值決定右移的數量。第2步:尾數加減 ▲對尾數進展加、減運算第3步:規格化▲設浮點數的尾數用補碼表示,且加、減運算時采用雙符號位,那么規格化形式的尾數應是如下形式:尾數為正數時:001xxx尾數為負數時:110xxx▲尾數違反規格化的情況有以下兩種可能:①尾數加、減法運算中產生溢出正溢出時,符號位為01;負溢出時,符號位為10;規格化采取的方法是:尾數右移一位,階碼加1;這種規格化稱為右規。②尾數的絕對值小于二進制的0.1。補碼形式的尾數表現為最高數值位與符號位同值。采取規格化的方法:符號位不動,數值位逐次左移,階碼逐次減1,直到滿足規格化形式的尾數。這種規格化稱為左規。第4步:舍入▲對結果尾數進展舍入處理方法①恒舍法無論戒備位的值是多少,都舍去。②恒置1法不管戒備位為何值,尾數的有效最低位恒置1。③0舍1入法戒備位〔q位〕中的最高位為1時,就在尾數末尾加1;戒備位〔q位〕中的最高位為0時,舍去所有的戒備位;第5步:階碼溢出判斷浮點數運算結果是否溢出,應由階碼來判斷。例2:X=0.11011011×2010,Y=-0.10101100×2100;用補碼來表示浮點數的尾數和階碼①對階②尾數加法③尾數規格化尾數沒有溢出,但符號位與最高數值位有K=1位一樣,需左規:Mb左移K=1位:Mb=11000101011Eb減1:Eb=00011④舍入處理采用恒舍法,執行舍操作。得:Mb=1100010101⑤階碼溢出判斷階碼無溢出,X+Y正常完畢,得:[X+Y]浮=1001100010101,即X+Y=-0.11101011×2011§2.5算術邏輯單元ALU一、加法器組成*全加器輸出的邏輯表達式:2、串行加法器加法器由1個全加器組成;n位加法分成n步完成。3、并行加法器*組成:n個全加器、進位鏈;(1)串行進位加法器*組成:*加法器特點:進位電路簡單,運算速度慢(T加法=nΔt)(2)先行進位加法器*先行進位邏輯形成:其中Gi=AiBi,Pi=AiBiC0=G0+P0C-1C1=G1+P1C0=G1+P1G0+P1P0C-1C2=G2+P2C1=G2+P2G1+P2P1G0+P2P1P0C-1C3=G3+P3C2=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C-1*先行進位產生電路:*4位先行進位加法器組成:*n位先行進位加法器組成:組內并行、組間串行進位加法器—組內并行、組間并行進位加法器—二、算術邏輯部件ALU1、ALU的功能*計算機中數據的運算方法及實現部件:*ALU的功能:邏輯運算及算術運算功能;提供算術運算結果狀態等ALU的基本構造*功能選擇方法:設置相關引腳,以選擇當前欲實現的功能*構造與組成:構造—以加法器為根基擴大功能;組成—全部由組合邏輯電路構成運算器的組織*CPU中運算器的功能:早期—只包含邏輯運算和定點算術運算功能;└→乘除法功能用加法器+移位實現后期—包含邏輯運算、定點算術運算及浮點運算功能└→乘除法功能用陣列乘除法器實現*運算器基本構造:由ALU、鎖存器、狀態存放器、MUX多路開關等組成第三章存儲系統存儲器的基本概念存儲介質:能表示二進制1和0的物理部件;存儲元:存儲1位二進制代碼信息的器件;存儲單元:假設干個存儲元的集合,它可以存放一個字或一個字節;存儲體:假設干個存儲單元的集合;地址:存儲單元的編號;§3.1存儲系統概述一、存儲器分類1、按存儲介質分類存儲介質必須有區別明顯的兩個物理狀態(表示0/1)2、按存取方式及功能分類*順序存取存儲器(SAM):按記錄塊為單位進展編址,存取時間與讀/寫頭到訪問地址的相對位置有關;*隨機存取存儲器(RAM):按存儲字為單位進展編址,存取時間與訪問的地址無關(時間固定);*直接存取存儲器(DAM):信息存取區域定位與RAM類似,區域內操作與SAM類似;*只讀存儲器(ROM):操作方式為只能取、不能存可由RAM或DAM構成,信息讀取的定位由存儲器構造決定3、按在計算機中的作用分類*主存儲器(MM):可直接與CPU交換信息的MEM構成—MOS型半導體、動態RAM和ROM*輔助存儲器(AM):主存的后援MEM構成—磁性/光介質材料、SAM/DAM*高速緩沖存儲器(Cache):CPU與主存間的緩沖MEM構成—MOS型半導體、靜態RAM*控制存儲器(CM):CPU內部存放微程序的MEM構成—MOS型半導體、ROM二、存儲器的主要性能指標*容量(S):能存儲的二進制信息總量,常以字節(B)為單位*速度(B):常用帶寬、存取時間或存取周期表示存取時間(TA)—指MEM從收到命令到結果輸出所需時間;存取周期(TM)—指連續訪存的最小間隔時間,TM=TA+T恢復帶寬(BM)—指單位時間內MEM最多可讀寫的二進制位數;BM=W/TM,其中W為一次讀寫的數據寬度,常以bps為單位*價格:常用總價格C或每位價格c表示,c=C/S。三、層次構造存儲系統1、層次構造的引入*程序訪問局部性規律:程序執行時,指令和數據呈現的相對簇聚特性。時間局部性—被訪問過的信息,可能很快被再次訪問;空間局部性—被訪問信息的相鄰信息,可能很快被訪問*用戶需求矛盾的解決方案:近期常用數據—放在“前方〞MEM(快而小)中;近期不用數據—放在“前方〞MEM(慢而大)中。高速度、大容量、低價格高速度、大容量、低價格2、層次構造的存儲系統(1)層次存儲系統組成*思想:①用多種類型MEM構成前方-前方的層次構造;②前方MEM中信息為前方MEM中信息的副本;③各層MEM之間信息傳遞是“透明〞的(2)常見的存儲系統層次構造圍繞主存的層次構造一般為“Cache-主存-輔存〞三種MEM構成的兩個存儲層次*“Cache-主存〞存儲層次:--設置高速緩沖存儲器目標—解決主存速度問題(Cache的速度,主存的容量)*“主存-輔存〞存儲層次:目標—解決主存容量問題(主存的速度,輔存的容量)└→可能存在:(執行的)程序空間≥主存空間(3)層次存儲系統的工作方式*程序執行需求:即將執行的指令和數據存放在主存中*層次存儲系統的工作方式:§3.2半導體存儲器根基*靜態RAM—用觸發器存儲信息,長時間不訪問及信息讀出后信息值(狀態)保持不變;*動態RAM—用電容存儲信息,長時間不訪問及信息讀出后信息值(狀態)被破壞,需及時恢復信息值(稱為刷新及再生)。一、靜態RAM(StaticRAM,SRAM)1、SRAM存儲元的組成原理存儲元—RAM中存儲1位二進制信息的電路;*6管MOS靜態存儲元工作原理:讀出—①在W線上加正脈沖;②D=D=V中→D或D產生壓降(假設信息為“0〞那么D電壓下降)→用差動放大器可檢測出所讀信息,T1、T2狀態保持不變(非破壞性讀)。2、SRAM芯片的組成原理(1)存儲芯片基本組成主要由存儲陣列、地址譯碼器、I/O電路、控制電路等組成*地址譯碼器:有一維、二維兩種譯碼方式↓↓譯碼器輸出線數—2M根2×2M/2根常見譯碼方式—二維譯碼方式→同一列存儲元共用位選擇線*驅動器:X譯碼器每個輸出需控制同一行各存儲元的字選線├→設置驅動器增加驅動能力I/O電路輸出時需驅動總線信號(負載大)*I/O電路:根據內部讀/寫信號,檢測/控制D及D線└→被選存儲元*片選與控制電路:片選—MEM常由多個芯片組成,讀/寫操作常針對某個芯片(2)SAM芯片參數與構造*芯片相關參數:存儲陣列容量—數據引腳數量—地址引腳數量—3、SRAM芯片的讀寫時序*讀周期時序:(存儲器對外部信號的時序要求)*寫周期時序:、動態存儲器(DynamicRAM,DRAM)
動態RAM目標:降低功耗、節約成本*單管MOS式動態存儲元工作原理:第三章存儲系統存儲器的基本概念存儲介質:能表示二進制1和0的物理部件;存儲元:存儲1位二進制代碼信息的器件;存儲單元:假設干個存儲元的集合,它可以存放一個字或一個字節;存儲體:假設干個存儲單元的集合;地址:存儲單元的編號;§3.1存儲系統概述一、存儲器分類1、按存儲介質分類存儲介質必須有區別明顯的兩個物理狀態(表示0/1)2、按存取方式及功能分類*順序存取存儲器(SAM):按記錄塊為單位進展編址,存取時間與讀/寫頭到訪問地址的相對位置有關;*隨機存取存儲器(RAM):按存儲字為單位進展編址,存取時間與訪問的地址無關(時間固定);*直接存取存儲器(DAM):信息存取區域定位與RAM類似,區域內操作與SAM類似;*只讀存儲器(ROM):操作方式為只能取、不能存可由RAM或DAM構成,信息讀取的定位由存儲器構造決定3、按在計算機中的作用分類*主存儲器(MM):可直接與CPU交換信息的MEM構成—MOS型半導體、動態RAM和ROM*輔助存儲器(AM):主存的后援MEM構成—磁性/光介質材料、SAM/DAM*高速緩沖存儲器(Cache):CPU與主存間的緩沖MEM構成—MOS型半導體、靜態RAM*控制存儲器(CM):CPU內部存放微程序的MEM構成—MOS型半導體、ROM二、存儲器的主要性能指標*容量(S):能存儲的二進制信息總量,常以字節(B)為單位*速度(B):常用帶寬、存取時間或存取周期表示存取時間(TA)—指MEM從收到命令到結果輸出所需時間;存取周期(TM)—指連續訪存的最小間隔時間,TM=TA+T恢復帶寬(BM)—指單位時間內MEM最多可讀寫的二進制位數;BM=W/TM,其中W為一次讀寫的數據寬度,常以bps為單位*價格:常用總價格C或每位價格c表示,c=C/S。三、層次構造存儲系統1、層次構造的引入*程序訪問局部性規律:程序執行時,指令和數據呈現的相對簇聚特性。時間局部性—被訪問過的信息,可能很快被再次訪問;空間局部性—被訪問信息的相鄰信息,可能很快被訪問*用戶需求矛盾的解決方案:近期常用數據—放在“前方〞MEM(快而小)中;近期不用數據—放在“前方〞MEM(慢而大)中。高速度、大容量、低價格高速度、大容量、低價格2、層次構造的存儲系統(1)層次存儲系統組成*思想:①用多種類型MEM構成前方-前方的層次構造;②前方MEM中信息為前方MEM中信息的副本;③各層MEM之間信息傳遞是“透明〞的(2)常見的存儲系統層次構造圍繞主存的層次構造一般為“Cache-主存-輔存〞三種MEM構成的兩個存儲層次*“Cache-主存〞存儲層次:--設置高速緩沖存儲器目標—解決主存速度問題(Cache的速度,主存的容量)*“主存-輔存〞存儲層次:目標—解決主存容量問題(主存的速度,輔存的容量)└→可能存在:(執行的)程序空間≥主存空間(3)層次存儲系統的工作方式*程序執行需求:即將執行的指令和數據存放在主存中*層次存儲系統的工作方式:§3.2半導體存儲器根基*靜態RAM—用觸發器存儲信息,長時間不訪問及信息讀出后信息值(狀態)保持不變;*動態RAM—用電容存儲信息,長時間不訪問及信息讀出后信息值(狀態)被破壞,需及時恢復信息值(稱為刷新及再生)。一、靜態RAM(StaticRAM,SRAM)1、SRAM存儲元的組成原理存儲元—RAM中存儲1位二進制信息的電路;*6管MOS靜態存儲元工作原理:讀出—①在W線上加正脈沖;②D=D=V中→D或D產生壓降(假設信息為“0〞那么D電壓下降)→用差動放大器可檢測出所讀信息,T1、T2狀態保持不變(非破壞性讀)。2、SRAM芯片的組成原理(1)存儲芯片基本組成主要由存儲陣列、地址譯碼器、I/O電路、控制電路等組成*地址譯碼器:有一維、二維兩種譯碼方式↓↓譯碼器輸出線數—2M根2×2M/2根常見譯碼方式—二維譯碼方式→同一列存儲元共用位選擇線*驅動器:X譯碼器每個輸出需控制同一行各存儲元的字選線├→設置驅動器增加驅動能力I/O電路輸出時需驅動總線信號(負載大)*I/O電路:根據內部讀/寫信號,檢測/控制D及D線└→被選存儲元*片選與控制電路:片選—MEM常由多個芯片組成,讀/寫操作常針對某個芯片(2)SAM芯片參數與構造*芯片相關參數:存儲陣列容量—數據引腳數量—地址引腳數量—3、SRAM芯片的讀寫時序*讀周期時序:(存儲器對外部信號的時序要求)*寫周期時序:數據線DCD字選擇線X數據線DCD字選擇線XT1CS動態存儲器(DynamicRAM,DRAM)
動態RAM目標:降低功耗、節約成本*單管MOS式動態存儲元工作原理:寫入—①所寫數據加到D上,②翻開T1→對CS充電或放電;保持—斷開T1→無放電回路→信息存儲在CS中(會緩慢泄漏);讀出—①在D上加正脈沖→對CD預充電,②翻開T1→讀D上電壓變化(破壞性讀)└→CS得到充電2、DRAM芯片的基本組成(2)單管MOS式DRAM芯片的組成*基本構造:通常采用地址分兩次傳送方式組織增設①地址鎖存器、時序控制電路,②再生電路*芯片操作:讀、寫、刷新(行刷新方式[無列地址])(3)DRAM芯片組成例如*Intel4116芯片:單管MOS存儲元、地址分兩次傳送參數—容量=16K×1位;地址引腳=14/2=7根;數據引腳=2根(單向DIN/DOUT、共1位寬度)構造—2個64×128存儲陣列,時鐘發生器串聯3、DRAM芯片的操作時序*讀周期時序:*刷新周期時序:與讀周期類似,區別在于CAS在整個操作過程中無效└→行刷新時不需要列地址4、DRAM芯片的刷新*刷新周期:同一存儲元連續兩次刷新的最大間隔;與DRAM存儲元材料及芯片組成有關*刷新方法:每個刷新周期內,循環進展所有行的行刷新(1)DRAM芯片刷新方式通常有集中式、分散式、異步式三種方式*集中式刷新:將所有行刷新集中在刷新周期的后部特點—存在“死區〞(不能進展讀/寫操作的時間段)*分散式刷新:將行刷新分散在每個存取周期中特點—防止了“死區〞,增加了存取時間(1倍)*異步式刷新:將行刷新均勻分布在刷新周期中設芯片需刷新128次,那么每次刷新間隔2000/128=15.5μs特點—“死區〞可忽略,支持固有的存取周期→最常用(2)DRAM芯片刷新實現按約定的刷新方式,由專用電路定時產生行刷新命令*DRAM芯片的刷新電路:*刷新電路在計算機的位置:通常獨立存在于DRAM芯片/模塊之外→DRAM控制器5、MOS型SRAM與DRAM芯片比較*DRAM芯片的優點:①DRAM集成度遠高于SRAM;←常采用單管MOS存儲元②DRAM地址引腳是SRAM的一半;←常采用地址分兩次傳送方式③DRAM功耗約為SRAM的1/4;←采用單管MOS存儲元所致④DRAM成本遠低于SRAM*DRAM芯片的缺點:DRAM速度遠低于SRAM←使用動態元件(電容)所致*RAM芯片應用:SRAM芯片—常用來構成高速度、小容量MEM,如CacheDRAM芯片—常用來構成大容量MEM,如主存三、只讀存儲器(ReadonlyMemory,R0M)*ROM:信息注入MEM后不能再改變,它具有非易失性*半導體ROM:具有非易失性的半導體MEM,如EPROM、FLASH等*ROM芯片組成:與SRAM類似,區別在于存儲元的實現及操作1、掩模ROM(MROM)*特征:用戶不可修改信息;*存儲元狀態:用MOS管的有/無表示“1〞/“0〞;*數據讀出:字選線加電壓時,位線電壓為所選存儲元的數據VCC字選擇線XVCC字選擇線X數據線DVCC熔絲未斷(“1〞)字選擇線X數據線D熔絲已斷(“0〞)VDVD2、可編程ROM(PROM)*特征:用戶可一次性修改信息(電寫入);*存儲元狀態:用二極管/熔絲的通/斷表示“1〞/“0〞;*數據寫入:字線X加電壓,假設寫0—VD=V地→熔絲熔斷,假設寫1—VD=V中→熔絲不斷;*數據讀出:字線X加電壓、VD=V中,檢測VD變化可讀出數據3、可擦除可編程ROM(EPROM)*特征:用戶可屢次修改信息(電寫入、光擦除);*存儲元狀態:常用浮柵雪崩注入MOS管(即FAMOS管)的浮柵Gf是/否帶電荷表示“1〞/“0〞;N基體N基體PSDGCSiO2PDSGC4、電可擦除可編程ROM(E2PROM)*特征:用戶可屢次修改信息(電寫入、電擦除);*存儲元狀態:用浮柵隧道氧化層MOS管(即Flotox管)的浮柵是/否帶電荷表示“1〞/“0〞;5、閃速存儲器(FLASH)*特征:用戶可屢次修改信息(電寫入、電擦除);*存儲元狀態:與疊柵EPROM類似,但氧化層更薄§3.3主存儲器一、主存儲器的組成*主存儲器相關概念:主存容量=主存單元長度×主存單元個數*應用對主存空間的需求:二、主存儲器的邏輯設計*存儲器容量擴展方法:位擴展法、字擴展法、字位擴展法*主存邏輯設計:使用ROM、SRAM或DRAM芯片進展容量擴展,實現主存單元長度和主存單元個數。1、位擴展法(又稱并聯擴展)*目的:擴展存儲器的存儲字長*芯片連接特征:各芯片數據引腳連接不同,其余引腳連接一樣例1—用1K×1位SRAM芯片構成1K×4位存儲模塊2、字擴展法(又稱串聯擴展)*目的:擴展存儲器的存儲字數例2—用1K×4位SRAM芯片構成2K×4位存儲模塊解:①芯片數量—共需(2K×4b)÷(1K×4b)=2片;②各芯片地址范圍—存儲模塊有log2(2K)=11位地址,各芯片片選有效邏輯—0#、1#芯片分別為A10=0、A10=1練習1—用1M×4位SRAM芯片構成4M×4位存儲模塊3、字位擴展法*目的:同時擴展存儲器的存儲字長和存儲字數例3—用1K×4位SRAM芯片構成2K×8位存儲模塊解:①芯片數量—共需(2K×8b)÷(1K×4b)=4片;②各芯片地址范圍—存儲模塊有log2(2K)=11位地址,練習2—用1K×4位SRAM芯片構成4K×8位存儲模塊例4—用1K×4位ROM、1K×8位SRAM芯片構成4K×8位存儲模塊,其中前1KB空間為只讀空間解:①芯片數量—共需ROM2片、SRAM3片;ROM1#ROM0#SRAM1#00XXXXXXXXXX
01XXXXXXXXXX
10XXXXXXXXXX
11XXXXXXXXXXROM1#ROM0#SRAM1#00XXXXXXXXXX
01XXXXXXXXXX
10XXXXXXXXXX
11XXXXXXXXXXSRAM2#SRAM3#模塊有log2(4K)=12位地址芯片有10位地址③連接圖—三、提高訪存速度的措施*CPU的訪存特征:一次訪存的信息常為多個存儲字,屢次訪存的地址常為連續的;1、多模塊存儲器--多體存儲器2、高性能存儲器(1)EDODRAM(ExtendedDataOutputDRAM,擴展數據輸出DRAM)*提高性能思路:同時讀出并緩沖一行信息,減小平均TM*實現原理:用SRAM保存上次讀操作的一行信息,當前讀操作的行地址假設與上次讀操作一樣,那么直接從SRAM中取出信息SDRAM(SynchronousDRAM,同步DRAM)MEM從所接收地址開場,連續讀/寫多個存儲字(內部計數器產生各存儲字地址),減少了多個地址連續數據傳送的平均TM(3)DDRSDRAM(DoubleDataRateSDRAM,雙數據速率DRAM)3、雙端口存儲器--同時支持兩個操作*構造:2套譯碼+I/O+讀寫電路,1個存儲陣列+判斷邏輯電路§3.4高速緩沖存儲器一、Cache的基本原理*Cache的性能:命中率(H)—HC=NC/(NC+NM)其中,NC、NM—CPU訪存在Cache、主存中的命中次數√平均訪問時間—TA=HCTCache+(1-HC)TMem1、Cache的存儲空間管理(1)Cache與主存的信息交換單位*目標:盡量減小平均訪問時間TA*Cache與主存的信息交換單位:字塊(又稱塊或行)(2)Cache的存儲空間管理2、Cache的基本工作原理3、Cache的構造與組成*存儲體:由SRAM構成*地址映像及變換機構:由目錄表、比較器等組成;目錄表—行數=Cache塊數,表項=有效位+塊標記+…地址映像機構—決定查目錄表的哪些行及塊標記組成└→影響變換的性能及成本地址變換機構—查表并比較,命中時直接形成Cache地址不命中時調入塊或替換塊后再形成二、Cache的相關技術1、地址映像及變換*實現功能:某主存塊可存放到Cache中哪些塊位置*性能指標:調入塊時的塊沖突概率、地址變換的速度與成本(1)全相聯地址映像及變換*映像規那么:主存塊i可映射到Cache的任意一個塊;*地址變換方法:比較目錄表所有行,命中時行號即為變換后的塊號;例1:CPU支持最大主存容量1MB、按字節編址,塊大小16B,Cache容量為8KB。全相聯映像方式時,⑴主存地址格式及參數⑵Cache地址格式及參數⑶目錄表行數塊標記位數⑷假設目錄表項為<有效位,塊標記>,CPU訪問36454H主存單元時,那么Cache命中時的目錄表項(2)直接地址映像及變換*映像規那么:主存塊i可映射到Cache的塊j=(imodG);*地址變換方法:比較目錄表相應行,命中時主存地址的區內塊號即為變換后的塊號;例2:CPU支持最大主存容量1MB、按字節編址,塊大小16B,Cache容量為8KB。直接映像方式時,⑴主存及Cache地址格式及參數⑵目錄表行數塊標記位數⑶假設目錄表項為<有效位,塊標記>,CPU訪存地址為36454H時,那么可能命中的Cache塊號命中時的目錄表項(3)組相聯地址映像及變換--直接映像與全相聯映像的折中*映像規那么:將Cache中塊分組,每組為n個塊(共G/n個組),主存塊i可映像到Cache的第j組(j=imodG/n)中的任意塊。※n路組
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 飯店感人測試題及答案
- 求摩托車考試題庫及答案
- 西方政治制度與民間組織的互動分析試題及答案
- 公共政策的前瞻性與預見性分析試題及答案
- 選舉過程中的法律法規作用探討試題及答案
- 醫學影像學設備與技術考試題庫
- 機電工程考生應掌握的技能與試題及答案
- 職業發展指南2025年機電工程考試試題及答案
- 解決問題的軟件設計師考試試題及答案
- 軟件項目中的技術選型原則與試題與答案
- 2023年上海高考英語真題及答案
- GA/T 1556-2019道路交通執法人體血液采集技術規范
- 公路工程施工測量課件
- 新部編版四年級語文下冊第三單元整理與復習課件(含字詞句段篇)
- 電動執行機構培訓教學課件
- 面板堆石壩課件
- 中醫護理技術操作并發癥的預防及處理
- 消防管道無水消防應急預案
- DBJ50∕T-334-2019 建筑施工鋼管腳手架和模板支撐架選用技術標準
- CPK計算表格EXCEL模板
- 保衛黃河 合唱簡譜
評論
0/150
提交評論