32位微機原理與接口技術課件06_第1頁
32位微機原理與接口技術課件06_第2頁
32位微機原理與接口技術課件06_第3頁
32位微機原理與接口技術課件06_第4頁
32位微機原理與接口技術課件06_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

6.1存儲系統(tǒng)層次結構存儲系統(tǒng)容量越大越好速度較快越好價格(成本)越低越好當前制造工藝的存儲器件:工作速度較快的存儲器,單位價格卻較高;容量較大的存儲器,雖然單位價格較低,但存取速度又較慢各種存儲器件需要相互配合形成完整的存儲系統(tǒng)第一頁,共87頁。第一頁,共87頁。6.1.1技術指標1.存儲容量主存存儲容量:以字節(jié)B(Byte)為基本單位半導體存儲器芯片:以位b(Bit)為基本單位存儲容量以210=1024規(guī)律表達KB,MB,GB和TB廠商常以103=1000規(guī)律表達KB,MB,GB和TB2.存取速度存取時間:發(fā)出讀/寫命令到數(shù)據(jù)傳輸操作完成所經歷的時間存取周期:兩次存儲器訪問所允許的最小時間間隔存儲器主要用容量、速度和成本來評價第二頁,共87頁。第二頁,共87頁。6.1.2層次結構寄存器處理器內部的存儲單元高速緩存(Cache)完全用硬件實現(xiàn)主存儲器的速度提高主存儲器存放當前運行程序和數(shù)據(jù),采用半導體存儲器構成輔助存儲器磁記錄或光記錄方式磁盤或光盤形式存放可讀可寫或只讀內容以外設方式連接和訪問示意圖第三頁,共87頁。第三頁,共87頁。存儲系統(tǒng)的層次結構CPU寄存器大容量輔助存儲器輔助存儲器主存儲器高速緩存①每位成本減少②容量增加③存取時間增加④處理器存取頻度減少返回解決容量、速度和價格矛盾的方法第四頁,共87頁。第四頁,共87頁。6.1.3局部性原理層次結構解決存儲器件的容量、速度和價格矛盾出色效率來源于存儲器訪問的局部性原理:

處理器訪問存儲器時,所訪問的存儲單元在一段時間內都趨向于一個較小的連續(xù)區(qū)域中空間局部:緊鄰被訪問單元的地方也將被訪問時間局部:剛被訪問的單元很快將再次被訪問程序運行過程中,絕大多數(shù)情況都能夠直接從快速的存儲器中獲取指令和讀寫數(shù)據(jù);當需要從慢速的下層存儲器獲取指令或數(shù)據(jù)時,每次都將一個程序段或一個較大數(shù)據(jù)塊讀入上層存儲器,后續(xù)操作就可以直接訪問快速的上層存儲器第五頁,共87頁。第五頁,共87頁。求平均值函數(shù)longmean(longd[],longnum){longi,temp=0;for(i=0;i<num;i++)temp=temp+d[i];temp=temp/num;return(temp);}時間局部空間局部時間局部和空間局部第六頁,共87頁。第六頁,共87頁。6.2主存儲器主存儲器由半導體存儲器構成按制造工藝,半導體存儲器可分為“雙極型”器件:存取速度快、集成度低、功耗大、價格高等特點,主要用于高速存儲場合“MOS型”器件:集成度高、功耗低、價格便宜,但速度較雙極型器件慢,用于通用微機的主存(RAM和ROM)按使用屬性,半導體存儲器可分為讀寫存儲器RAM只讀存儲器ROM第七頁,共87頁。第七頁,共87頁。6.2.1讀寫存儲器讀寫存儲器:可以讀出也可以寫入的存儲器半導體存儲器采用隨機存?。嚎梢詮娜我馕恢瞄_始讀寫,存取位置可以隨機確定,只要給出存取位置就可以讀寫內容,存取時間與所處位置無關磁帶存儲器采用順序存?。罕仨毎凑沾鎯卧捻樞蜃x寫,存取時間與所處位置密切相關磁盤和光盤則采用直接存?。捍蓬^以隨機方式尋道,以數(shù)據(jù)塊為單位順序方式讀寫扇區(qū)半導體讀寫存儲器是揮發(fā)性(Volatile)RAM,即斷電后原保存信息丟失半導體讀寫存儲器=隨機存取存儲器地址RAM第八頁,共87頁。第八頁,共87頁。1.主要類型SRAM(靜態(tài)RAM:StaticRAM)以觸發(fā)器為基本存儲單元不需要額外的刷新電路速度快,但集成度低,功耗和價格較高DRAM(動態(tài)RAM:DynamicRAM)以單個MOS管為基本存儲單元要不斷進行刷新(Refresh)操作集成度高、價格低、功耗小,但速度較SRAM慢第九頁,共87頁。第九頁,共87頁。2.存儲結構存儲器芯片具有大量存儲單元每個存儲單元擁有一個地址存儲1/4/8/16/32位數(shù)據(jù)存儲器芯片結構:

存儲單元數(shù)×每個存儲單元的數(shù)據(jù)位數(shù) =2M×N=芯片的存儲容量M=芯片地址線的個數(shù)N=數(shù)據(jù)線的個數(shù)舉例存儲結構2K×816K位存儲容量11個地址引腳8個數(shù)據(jù)引腳第十頁,共87頁。第十頁,共87頁。3.讀寫控制片選(CS*或CE*)片選有效,才可以對芯片進行讀/寫操作無效時,數(shù)據(jù)引腳呈現(xiàn)高阻狀態(tài),并可降低功耗讀控制(OE*)芯片被選中有效,數(shù)據(jù)輸出到數(shù)據(jù)引腳對應存儲器讀MEMR*寫控制(WE*)芯片被選中的前提下,若有效,將數(shù)據(jù)寫入對應存儲器寫MEMW*示意圖第十一頁,共87頁。第十一頁,共87頁。4.靜態(tài)讀寫存儲器SRAM主要被用于小型微機系統(tǒng)多為“存儲單元數(shù)×8”的存儲結構6264SRAM芯片芯片容量:64K位存儲結構:8K×828腳雙列直插(DIP)13個地址線:A12~A08個數(shù)據(jù)線:D7~D0控制引腳:CS1*,CS2,OE*,WE*無連接:NC(NoConnect)第十二頁,共87頁。第十二頁,共87頁。6264SRAM的引腳第十三頁,共87頁。第十三頁,共87頁。6264SRAM的引腳功能表第十四頁,共87頁。第十四頁,共87頁。5.動態(tài)讀寫存儲器DRAMDRAM芯片用一組地址引腳傳送兩批地址信號第一批地址稱行地址用行地址選通信號RAS*下降沿鎖存第二批地址稱列地址用列地址選通信號CAS*下降沿鎖存一個信號WE*實現(xiàn)讀寫控制數(shù)據(jù)輸入引腳Din數(shù)據(jù)輸出引腳Dout示意圖第十五頁,共87頁。第十五頁,共87頁。DRAM的引腳圖返回第十六頁,共87頁。第十六頁,共87頁。6.DRAM的刷新DRAM內部有“讀出再生放大電路”的刷新電路設計有僅行地址有效的刷新周期每次刷新一行存儲單元存儲系統(tǒng)的外部刷新控制電路將刷新行地址同時送達所有DRAM芯片所有DRAM芯片同時進行一行的刷新在一定時間間隔內啟動一次刷新每次行地址增量PC機刷新:15.6μs第十七頁,共87頁。第十七頁,共87頁。7.高性能DRAMFPMDRAM(快頁方式DRAM)同一行的傳送僅改變列地址頁內訪問速度加快EDODRAM(擴展數(shù)據(jù)輸出DRAM)數(shù)據(jù)輸出有效時間加長(擴展)SDRAM(同步DRAM)公共的系統(tǒng)時鐘,沒有等待狀態(tài)支持猝發(fā)傳送,內部采用交叉存儲DDRDRAM(雙速率DRAM)同步時鐘前沿和后沿各進行一次數(shù)據(jù)傳送RDRAM(RambusDRAM)Rambus公司專利技術,全新設計第十八頁,共87頁。第十八頁,共87頁。6.2.2只讀存儲器正常的工作狀態(tài),ROM只能讀出特殊的編程狀態(tài),多數(shù)ROM芯片也能寫入有些ROM芯片需要特殊方法先將原數(shù)據(jù)擦除,然后才能編程ROM芯片的集成度較高,但速度較DRAM還要慢,一般用來保存固定的程序或數(shù)據(jù)ROM芯片數(shù)據(jù)可長期保存,掉電亦不丟失,屬于非易失性存儲器件第十九頁,共87頁。第十九頁,共87頁。1.主要類型MROM(掩膜ROM)掩膜工藝直接制作OTP-ROM(一次性編程ROM)允許用戶進行一次性編程EPROM(可擦除可編程ROM)紫外光擦除、并可重復編程的ROMEEPROM(電擦除可編程ROM)擦除和編程(擦寫)通過加電進行FlashMemory(閃速存儲器)新型的電擦除可編程ROM快速擦除整片或數(shù)據(jù)塊第二十頁,共87頁。第二十頁,共87頁。2.EPROM2764EPROM存儲容量64K位存儲結構8K×813個地址線:A12~A08個數(shù)據(jù)線:O7~O0控制信號片選:CE*輸出:OE*編程控制:PGM*編程電源:Vpp第二十一頁,共87頁。第二十一頁,共87頁。EPROM工作方式第二十二頁,共87頁。第二十二頁,共87頁。3.EEPROMEEPROM2816存儲結構:2K×8有11個地址引腳A10~A08個數(shù)據(jù)引腳I/O7~I/O03個控制引腳片選CE*輸出允許OE*寫允許WE*字節(jié)擦寫查詢擦寫是否完成第二十三頁,共87頁。第二十三頁,共87頁。4.FlashMemoryAT29C040A存儲結構:512K×8有19個地址引腳A18~A08個數(shù)據(jù)引腳I/O7~I/O03個控制引腳片選CS*輸出允許OE*寫允許WE*扇區(qū)(256字節(jié))擦寫查詢擦寫是否完成第二十四頁,共87頁。第二十四頁,共87頁。6.2.3存儲器地址譯碼存儲器芯片與處理器的連接存儲器芯片有數(shù)據(jù)、地址、讀寫控制引腳處理器總線有數(shù)據(jù)、地址、讀寫控制信號功能上多數(shù)可以直接相連但是,地址信號需要譯碼處理器地址總線個數(shù)多于存儲器地址引腳個數(shù)多個存儲器芯片組成一定容量的存儲系統(tǒng)需要利用地址總線控制存儲器片選信號第二十五頁,共87頁。第二十五頁,共87頁。1.地址譯碼譯碼(Decode)將某個特定的編碼輸入翻譯為有效輸出的過程存儲器譯碼電路可編程邏輯器件PLD譯碼器門電路組合舉例:多輸入與非門實現(xiàn)譯碼32K×8結構的SRAM:地址引腳15個A14~A08088處理器:20個地址總線A19~A08位數(shù)據(jù)總線示意圖第二十六頁,共87頁。第二十六頁,共87頁。簡單的門電路譯碼返回第二十七頁,共87頁。第二十七頁,共87頁。存儲器地址分析第二十八頁,共87頁。第二十八頁,共87頁。2.譯碼器3∶8譯碼器:138譯碼器3個控制輸入引腳:E3,E2*和E1*都有效,才能實現(xiàn)譯碼功能3個編碼輸入引腳:C,B和A8種編碼各對應一個譯碼輸出引腳CBA=000編碼使Y0*低有效,其他高電平無效CBA=001編碼使Y1*低有效,其他高電平無效……CBA=111編碼使Y7*低有效,其它高電平無效示意圖第二十九頁,共87頁。第二十九頁,共87頁。譯碼器74LS138返回第三十頁,共87頁。第三十頁,共87頁。譯碼器譯碼Y0*譯碼輸出有效,必須:E3E2*E1*=100 A19A18A17=111CBA=000 A16A15A14=000。結論:A19~A14=111000地址范圍:E0000H~E3FFFH存儲容量:16KB示意圖存儲容量=結束地址-起始地址+1第三十一頁,共87頁。第三十一頁,共87頁。譯碼器譯碼示意圖返回第三十二頁,共87頁。第三十二頁,共87頁。不使用A13的譯碼存儲容量:8KBA13=0時,地址范圍: E0000H~E1FFFHA13=1時,地址范圍: E2000H~E3FFFH結論:該8KB存儲器芯片占用了E0000H~E1FFFH地址范圍(A13=0)E2000H~E3FFFH地址范圍(A13=1)實際應用中,常選擇第一個地址部分譯碼地址有重復第三十三頁,共87頁。第三十三頁,共87頁。不使用A0的譯碼存儲容量:8KBA0=0時,占用 E0000H~E3FFFH范圍的偶地址A0=1時,占用 E0000H~E3FFFH范圍的奇地址結論:該8KB存儲器芯片占用了E0000H~E3FFFH偶地址(A0=0)E0000H~E3FFFH奇地址(A0=1)實際應用中,常選擇偶地址部分譯碼地址有重復第三十四頁,共87頁。第三十四頁,共87頁。譯碼方式全譯碼方式使用全部微處理器地址總線片內尋址:低位地址與存儲器芯片地址引腳相連片選尋址:高位地址經譯碼與存儲器芯片片選引腳相連部分譯碼方式只使用部分微處理器地址總線進行譯碼沒有使用的地址信號對存儲器芯片的工作不產生影響部分譯碼地址重復譯碼簡單全譯碼地址唯一空間連續(xù)第三十五頁,共87頁。第三十五頁,共87頁。3.8086的16位存儲結構對稱的兩個存儲體(Bank)所構成偶存儲體(A0=0)對應所有的偶地址單元(0、2、4、……FFFEH)接處理器低8位數(shù)據(jù)總線D7~D0奇存儲體(BHE*=0)對應所有的奇地址單元(1、3、5、……FFFFH)接處理器高8位數(shù)據(jù)總線D15~D8兩個存儲器芯片的片選端連接在一起示意圖第三十六頁,共87頁。第三十六頁,共87頁。8086的16位存儲結構返回第三十七頁,共87頁。第三十七頁,共87頁。地址對齊(Align)高位地址A19~A17=111,片選信號有效低位地址A16~A1=0...0,那么:A0=0(地址E0000H),BHE*=0,訪問16位數(shù)據(jù)A0=0(地址E0000H),BHE*=1,訪問低8位數(shù)據(jù)A0=1(地址E0001H),BHE*=0,訪問高8位數(shù)據(jù)A0=1,BHE*=1,無效的數(shù)據(jù)訪問組合8086存儲器按16位數(shù)據(jù)寬度組織支持8位和16位數(shù)據(jù)訪問偶地址開始的16位訪問可以一次完成奇地址開始的16位訪問需要兩次操作地址對齊:16位數(shù)據(jù)以偶地址開始第三十八頁,共87頁。第三十八頁,共87頁。4.Pentium的64位存儲結構Pentium采用64位數(shù)據(jù)總線和32位地址總線沒有地址A2,A1和A08個字節(jié)允許信號區(qū)別8個8位存儲體支持64/32/16/8位數(shù)據(jù)讀寫多字節(jié)數(shù)據(jù)若地址對齊能夠一次完成讀寫2字節(jié)、16位數(shù)據(jù)是被2整除的地址(偶地址)4字節(jié)、32位數(shù)據(jù)是被4整除的地址(模4地址)8字節(jié)、64位數(shù)據(jù)是被8整除的地址(模8地址)示意圖地址A對齊s字節(jié)邊界Amods=0

(能夠被s整除的地址)第三十九頁,共87頁。第三十九頁,共87頁。Pentium的64位存儲結構返回第四十頁,共87頁。第四十頁,共87頁。6.2.4主存空間分配第四十一頁,共87頁。第四十一頁,共87頁。最低1MB主存系統(tǒng)RAM區(qū)地址最低端的640KB空間由DOS進行管理顯示RAM區(qū)128KB主存空間保留給顯示緩沖存儲區(qū)顯示RAM區(qū)并沒有被完全使用擴展ROM區(qū)I/O接口電路卡上的ROM系統(tǒng)ROM區(qū)ROM-BIOS程序640Koughttobeenoughforeverybody—BillGates1981第四十二頁,共87頁。第四十二頁,共87頁。擴展主存和擴充主存擴展主存XMS1MB后的RAM主存空間只能在保護方式使用遵循擴展主存使用規(guī)范XMS驅動程序HIMEM.SYS擴充主存EMS遵循擴充主存使用規(guī)范EMS擴充主存不是直接訪問的存儲空間體交換技術,不需要保護方式支持IA-32支持擴展主存XMS,不需擴充主存EMSEMM386.EXE驅動程序第四十三頁,共87頁。第四十三頁,共87頁。高端主存區(qū)HMA和上位主存塊UMB高端主存區(qū)HMA實方式下,地址A20開放,從100000H到10FFEFH之間約64KB的存儲區(qū)域8088/8086:地址自動回繞80286和80386:地址不自動回繞80486及以后有A20M引腳A20M=0,地址自動回繞A20M=1,地址不自動回繞上位主存塊UMB上位主存區(qū)UMA中未使用的區(qū)域EMM386.EXE驅動DOS應用第四十四頁,共87頁。第四十四頁,共87頁。ROM復制和影子主存ROM復制系統(tǒng)ROM區(qū)的BIOS等程序8086/8088在F0000H~FFFFFH80286在FF0000H~FFFFFFHIA-32微處理器在FFFFFFF0H~FFFFFFFFH影子主存用作ROM-BIOS的只讀的RAM區(qū)域啟動后ROM-BIOS映射到RAM因為ROM芯片的讀寫速度比RAM芯片慢第四十五頁,共87頁。第四十五頁,共87頁。6.3高速緩沖存儲器主存是一個影響性能的關鍵因素因為處理器的運行速度提高,但由DRAM組成的主存的存取時間較慢,跟不上處理器運行速度SRAM速度較快,但其容量較小、價格較貴,無法大量用于微機系統(tǒng)Cache:asafeplaceforhidingorstoringthings.主存儲器高速緩存CacheCPU字傳送塊傳送解決方案:高速緩存

高速緩沖存儲器 Cache(Memory)完全用硬件實現(xiàn)主存速度的提高第四十六頁,共87頁。第四十六頁,共87頁。6.3.1高速緩存的工作原理高速緩存:在相對容量較大而速度較慢的主存DRAM與高速處理器之間設置的少量但快速SRAM組成的存儲器高速命中(Hit):處理器讀取主存的內容已包含在Cache中,可以直接讀取Cache,不用訪問主存高速缺失(Miss):處理器讀取主存的內容不在Cache中,需要訪問主存讀取一個數(shù)據(jù)塊示意圖第四十七頁,共87頁。第四十七頁,共87頁。高速緩存的讀操作返回從CPU接收地址RAY(命中hit)N(失效miss)開始Cache中含RA?從Cache讀RA的字送CPU從主存讀含RA的塊向CPU傳送RA的字向Cache傳送含RA的主存塊結束第四十八頁,共87頁。第四十八頁,共87頁。1.高速緩存的結構主存以字(字節(jié))為尋址單位Cache以行(線Line,槽Slot)為尋址單位Cache行包含B個主存字,對應一個主存塊Cache與主存間的數(shù)據(jù)傳送以數(shù)據(jù)塊為單位主存劃分成M=2n÷B個“主存塊”Cache具有m個“Cache行”Cache由數(shù)據(jù)存儲器和標簽存儲器組成數(shù)據(jù)存儲器:高速緩存主存數(shù)據(jù)標簽存儲器:保存數(shù)據(jù)所在主存的地址信息示意圖第四十九頁,共87頁。第四十九頁,共87頁。高速緩存Cache和主存的組成結構返回第五十頁,共87頁。第五十頁,共87頁。2.高速緩存的容量和行大小高速緩存性能的主要指標是命中率(Hitrate)命中率(HitRate):高速命中的概率對于高速緩存容量希望它足夠大,使存取時間接近高速緩存希望它盡量小,使單位成本接近主存受可用的芯片面積限制同時還和運行的程序有關對于Cache行大小從很小增大,命中率開始會有提高進一步增大,命中率可能反而減小最優(yōu)?第五十一頁,共87頁。第五十一頁,共87頁。3.高速緩存的數(shù)量單級與多級Cache片上高速緩存(On-chipCache)第1級高速緩存(L1Cache)第2級高速緩存(L2Cache)第3級高速緩存(L3Cache)統(tǒng)一與分離Cache統(tǒng)一(Unified)Cache單個高速緩存既用于高速緩沖保存指令也用于保存數(shù)據(jù)分離(Split)Cache一個專用于緩沖指令(I-Cache)一個專用于緩沖數(shù)據(jù)(D-Cache)第五十二頁,共87頁。第五十二頁,共87頁。6.3.2地址映射Cache通過地址映象(mapping)的方法確定主存塊與Cache行之間的對應關系,確定一個主存塊應該存放到哪個Cache行中直接映象(directmapping) 將一個主存塊存儲到唯一的一個Cache行全相聯(lián)映象(fullyassociativemapping) 可以將一個主存塊存儲到任意一個Cache行組相聯(lián)映象(setassociativemapping) 可以將一個主存塊存儲到唯一的一個Cache組的任意一個行直接映象、2/4/8路組相聯(lián)映象使用較多第五十三頁,共87頁。第五十三頁,共87頁。1.直接映射(DirectMapping)將每個主存塊固定地映射到某個Cache行 第i個Cache行只能存儲所有主存頁的第i個主存塊硬件簡單、易于實現(xiàn),會發(fā)生沖突、利用率較低高速緩存容量m=2s行=2s+w字 Cache行=2w個字,具有2s行主存容量M=2n字=2n-w主存塊=2t個主存頁 每個主存頁的容量=高速緩存容量2s+wn位主存地址由3個部分組成:n=t+s+w高t位作標簽s位地址作為索引最低w位區(qū)別字比較s索引的一個標簽存儲器內容,說明是否命中組成圖示例圖第五十四頁,共87頁。第五十四頁,共87頁。直接映射的組成返回第五十五頁,共87頁。第五十五頁,共87頁。直接映射的示例返回第五十六頁,共87頁。第五十六頁,共87頁。2.全相關映射(FullAssociativeMapping)將一個主存塊存儲到任意一個Cache行使用靈活、利用率高,但實現(xiàn)電路比較復雜高速緩存容量m=2s行=2s+w字

主存容量M=2n字=2n-w主存塊標簽存儲器保存完整的主存塊地址:t=n-wn位主存地址由2個部分組成:n=t+w高t位作標簽最低w位區(qū)別字高速緩存控制邏輯必須比較全部標簽存儲器的內容,才能確定是否命中組成圖示例圖第五十七頁,共87頁。第五十七頁,共87頁。全相關映射的組成返回第五十八頁,共87頁。第五十八頁,共87頁。全相關映射的示例返回第五十九頁,共87頁。第五十九頁,共87頁。3.組相關映射(SetAssociativeMapping)將多個Cache行作為一個組(Set),組內各個Cache行采用全相關映射,各個組間采用直接映射取直接映射的簡單和全相關映射的靈活,而克服兩者的不足所有組中同位置Cache行稱為一路(Way)通常采用2、4、8或16個為一組,分別被稱為2路、4路、8路或16路組合相關映射比較s索引的2、4、8或16個標簽存儲器內容,說明是否命中組成圖示例圖只有一路(每組只有一個Cache行)就是直接相關映射只有一組(每個Cache行都是一路)就是全相關映射第六十頁,共87頁。第六十頁,共87頁。組相關映射的組成返回第六十一頁,共87頁。第六十一頁,共87頁。組合相關映射的示例返回第六十二頁,共87頁。第六十二頁,共87頁。6.3.3替換算法直接映象只有一個Cache行可以選擇組合相關和全相關有多個Cache行可以選擇替換算法有多種:1.隨機法(random)

隨意選擇被替換的行,不依賴以前的使用情況2.先進先出法(FIFO:firstinfirstout)

替換最早(存放時間最長)的行3.最近最少使用法(LRU:least-recentlyused)

本指替換近期最少使用的行,實際實現(xiàn)的是替換最久沒有被使用的行4.最不常用(LFU:least-frequentlyused)

替換使用次數(shù)最少的行第六十三頁,共87頁。第六十三頁,共87頁。LRU替換算法LRU能較好地反映程序的局部性,因而其命中率較高,應用廣泛;但實現(xiàn)的硬件較復雜2路組相聯(lián):使用一個U位。某個Cache塊被訪問,該塊U位置1;對應塊U位置0。替換U位為0的塊4/8/16路組相聯(lián):運用堆棧型算法。最近訪問的塊放上面,最下面存放最久沒有訪問的塊。替換最下面的塊第六十四頁,共87頁。第六十四頁,共87頁。6.3.4寫入策略處理器對高速緩存的訪問主要是讀取訪問寫入操作數(shù)的問題較復雜一些寫命中:寫入的數(shù)據(jù)在高速緩存中確認命中,才可以對Cache塊寫入,寫入后可能導致與主存內容不一致要解決主存內容更新問題,保持數(shù)據(jù)的正確性寫未命中:指令對主存進行寫入的操作數(shù)沒有在高速緩存中此時,寫入的數(shù)據(jù)是否還要將其讀回Cache呢?第六十五頁,共87頁。第六十五頁,共87頁。1.寫命中的處理直寫策略(writethrough) 寫入Cache的同時也寫入主存(下一級存儲器)優(yōu)點:簡單可靠缺點:總線操作頻繁、影響工作速度解決方法:在Cache與主存間設置一級/多級緩沖器,形成實用的“緩沖直寫”,提高速度回寫策略(writeback) 只寫入Cache,在被替換時才寫回主存優(yōu)點:可以減少寫入主存次數(shù)、提高速度缺點:硬件結構比較復雜實現(xiàn)方法:設置一個表明Cache是否被修改的更新位(update,污染位dirtybit)。替換時只需將被修改的Cache塊內容寫入主存第六十六頁,共87頁。第六十六頁,共87頁。2.寫未命中的處理寫未命中:指令對主存進行寫入的操作數(shù)沒有在高速緩存中此時,寫入的數(shù)據(jù)是否還要將其讀回Cache呢?寫分配法(writeallocate)

先把數(shù)據(jù)所在的塊調入Cache,然后再進行寫入 類似讀失效的方式,也稱fetchonwrite不寫分配法(no-writeallocate)

直接把數(shù)據(jù)寫入下一級存儲器,不將相應的塊調入Cache,也稱writearound直寫策略通常配合不寫分配法 回寫策略一般采用寫分配法第六十七頁,共87頁。第六十七頁,共87頁。3.數(shù)據(jù)一致性協(xié)議系統(tǒng)存在多級、多個Cache,一個主存數(shù)據(jù)可能具有多個副本,需要保持數(shù)據(jù)一致數(shù)據(jù)一致性協(xié)議:用硬件方法解決高速緩存的數(shù)據(jù)一致性問題MESI協(xié)議是廣泛應用的數(shù)據(jù)一致性協(xié)議修改M:該Cache塊已經被修改(與主存不同),而且只在這個Cache中可用唯一E:該Cache塊與對應主存塊相同,而且不存在于其它Cache中共享S:該Cache塊與對應主存塊相同,但可能存在于其它Cache中無效I:該Cache塊包含的數(shù)據(jù)無效第六十八頁,共87頁。第六十八頁,共87頁。6.3.580486的L1Cache指令和數(shù)據(jù)共用的4路組合相關Cache結構8KB容量分成128組,每組有4路,每組每路為一行,每行為16個字節(jié)(128位)每行對應21位標簽,一個有效位每組中4路對應3位LRU位,用于實現(xiàn)偽LRU替換算法采用4級緩沖直寫策略,允許6個連續(xù)的寫操作而無等待寫缺失時,采用不寫分配法,只將數(shù)據(jù)寫入主存,不進行Cache的回填示意圖第六十九頁,共87頁。第六十九頁,共87頁。80486第一級高速緩存的結構返回第七十頁,共87頁。第七十頁,共87頁。6.3.6Pentium的L1Cache指令和數(shù)據(jù)分離的2路組合相關Cache結構指令Cache和數(shù)據(jù)Cache都是8KB,共16KB8KB容量分成128組,每組2路,每行32字節(jié)LRU算法,回寫策略(可動態(tài)改變?yōu)橹睂懖呗?第七十一頁,共87頁。第七十一頁,共87頁。一次寫(writeonce)協(xié)議Pentium采用MESI協(xié)議,配合第一次直寫,以后回寫,實現(xiàn)L1和L2Cache的數(shù)據(jù)一致操作L1狀態(tài)L1數(shù)據(jù)L2數(shù)據(jù)復位或清洗后讀入數(shù)據(jù)第1次直寫再次回寫發(fā)生替換后無效I共享S唯一E修改M共享S無效有效有效有效有效無效有效有效無效有效第七十二頁,共87頁。第七十二頁,共87頁。6.4存儲管理存儲器是計算機系統(tǒng)的重要資源,操作系統(tǒng)的主要功能之一是存儲管理:

如何動態(tài)地為多個任務分配存儲器IA-32處理器從硬件上支持并加速操作系統(tǒng)的存儲管理:

分段和分頁機制構成存儲管理單元MMU分段(segment) 將程序按照邏輯關系分成可大可小的模塊分頁(page) 將程序分成為若干個大小相同的模塊第七十三頁,共87頁。第七十三頁,共87頁。6.4.1段式存儲管理系統(tǒng)維護段表硬件實現(xiàn)轉換第七十四頁,共87頁。第七十四頁,共87頁。1.段選擇器保護方式的16位段寄存器被定義為段選擇器包含3個域,指向一個段描述符索引域記錄段描述符在“描述符表”內的位置表指示位TI指示要尋址的描述符表請求特權層RPL反映請求本次存取的特權級別153210段選擇器=段寄存器索引TIRPL第七十五頁,共87頁。第七十五頁,共87頁。2.描述符描述符是保護方式引入的數(shù)據(jù)結構,8個字節(jié)64位,段描述符:“描述”段的屬性段界限(segmentlimit):用于存儲空間保護基地址(baseaddress):用于形成物理地址訪問權字節(jié)(accessrightsbyte):段訪問權限:該段當前是否駐留主存、該段所具有的特權層和段類型,用于特權保護第七十六頁,共87頁。第七十六頁,共87頁

溫馨提示

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

評論

0/150

提交評論