




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第四章第四章 內存儲器接口的基本技術內存儲器接口的基本技術4 41 1 存儲器分類存儲器分類4 42 2 隨機存取存儲器隨機存取存儲器RAMRAM4 43 3 只讀存儲器只讀存儲器ROMROM4 44 CPU4 CPU與存儲器的連接與存儲器的連接4 45 5 典型的半導體芯片舉例典型的半導體芯片舉例 4 41 1 存儲器分類存儲器分類u存儲器是計算機存儲器是計算機( (包括微機包括微機) )硬件系統的重要組成部分硬件系統的重要組成部分u有了存儲器,計算機才具有有了存儲器,計算機才具有“記憶記憶”功能功能u才能把程序及數據的代碼保存起來才能把程序及數據的代碼保存起來u才能使計算機系統脫離人的干預
2、才能使計算機系統脫離人的干預u而自動完成信息處理的功能而自動完成信息處理的功能一、按用途分類一、按用途分類內部存儲器、外部存儲器內部存儲器、外部存儲器1 1、內部存儲器、內部存儲器 也稱內存,是主存儲器,位于主機內部,存放當前正在使用或經常使也稱內存,是主存儲器,位于主機內部,存放當前正在使用或經常使用的程序和數據,可供用的程序和數據,可供CPUCPU直接訪問。一般由半導體存儲器件構成。直接訪問。一般由半導體存儲器件構成。特點:存取速度較快特點:存取速度較快; ;容量大小受到地址總線位數的限制容量大小受到地址總線位數的限制80868086系統是系統是2020條地址總線,可尋址內存空間為條地址總
3、線,可尋址內存空間為1MB1MB8038680386系統是系統是3232條地址總線,可尋址內存空間為條地址總線,可尋址內存空間為4GB4GBPP以上系統是以上系統是3636條地址總線,可尋址內存空間為條地址總線,可尋址內存空間為64GB64GB存放系統軟件(系統引導程序、監控程序或操作系統的存放系統軟件(系統引導程序、監控程序或操作系統的BIOSBIOS)和當前要)和當前要運行的應用程序運行的應用程序2 2、外部存儲器、外部存儲器 也稱外存,是輔助存儲器,一般由磁表面存儲器件構成。也稱外存,是輔助存儲器,一般由磁表面存儲器件構成。特點:存取速度較慢特點:存取速度較慢; ;存儲容量大,要由專用的
4、設備來管理,配存儲容量大,要由專用的設備來管理,配置專門的驅動設備才能訪問外存置專門的驅動設備才能訪問外存( (軟盤驅動器、硬盤驅動器、軟盤驅動器、硬盤驅動器、光盤驅動器等光盤驅動器等) )微機中常見的外存有:軟盤、硬盤、光盤、微縮膠片等微機中常見的外存有:軟盤、硬盤、光盤、微縮膠片等計算機啟動一般由內存計算機啟動一般由內存ROMROM中的引導程序啟動系統,再從外存中中的引導程序啟動系統,再從外存中讀取系統程序和應用程序,送到內存的讀取系統程序和應用程序,送到內存的RAMRAM,程序運行的中間,程序運行的中間結果放在結果放在RAMRAM中,程序運行結束時將最后結果存入外存。中,程序運行結束時將
5、最后結果存入外存。二、按存儲器性質分類二、按存儲器性質分類只讀存儲器只讀存儲器(ROM)(ROM)、隨機存儲器、隨機存儲器(RAM)(RAM)。(1 1)隨機存取存儲器)隨機存取存儲器RAMRAM(Random Access MemoryRandom Access Memory):):RAMRAM中中的任意一個存的任意一個存儲單元都可被隨機讀寫,且存取時間與存儲單元的物理位置無關,讀寫儲單元都可被隨機讀寫,且存取時間與存儲單元的物理位置無關,讀寫速度較快。速度較快。RAMRAM主要用來存放輸入、輸出數據及中間結果并與外存儲器交主要用來存放輸入、輸出數據及中間結果并與外存儲器交換信息。換信息。
6、RAMRAM可分為兩種:可分為兩種: SRAM SRAM靜態靜態RAMRAM(Static RAMStatic RAM) 速度非???,有電存儲的內容不會消失,集成度較低(速度非常快,有電存儲的內容不會消失,集成度較低(6 6各各MOSMOS管組成管組成1 1位),功耗較大。一般是構成高速緩沖存儲器(位),功耗較大。一般是構成高速緩沖存儲器(Cache memoryCache memory)存儲器)存儲器件。件。 DRAMDRAM的運行速度比的運行速度比SRAMSRAM慢慢2 25 5倍。一般倍。一般PCPC機的標準存儲器都由機的標準存儲器都由DRAMDRAM組成組成 DRAM DRAM動態動態
7、RAMRAM(Dynamic RAMDynamic RAM) 必須周期性的在內容消失之前刷新(必須周期性的在內容消失之前刷新(RefreshRefresh)(DRAM(DRAM的內容會在的內容會在10103 3或或10106 6秒后消失秒后消失) ) 基本存儲電路由一個晶體管和一個電容構成,集成度高,功耗小,成本基本存儲電路由一個晶體管和一個電容構成,集成度高,功耗小,成本低,但需一個額外的刷新電路低,但需一個額外的刷新電路 DRAMDRAM的運行速度比的運行速度比SRAMSRAM慢慢2 25 5倍。一般倍。一般PCPC機的標準存儲器都由機的標準存儲器都由DRAMDRAM組成組成(2 2)只讀
8、存儲器)只讀存儲器ROM(Read Only Memory)ROM(Read Only Memory):ROMROM中所存儲的內容是固定中所存儲的內容是固定不變的,即只能讀出不能寫入。不變的,即只能讀出不能寫入。ROMROM一般用來存放微機的系統管理程一般用來存放微機的系統管理程序、監控程序等。序、監控程序等。 ROMROM按集成電路內部結構不同,可分為三種:按集成電路內部結構不同,可分為三種: PROMPROM可編程的可編程的ROMROM(Programable ROMProgramable ROM) 將設計的程序固化進去后,將設計的程序固化進去后,ROMROM內容不可更改內容不可更改 EP
9、ROMEPROM可擦除、可編程的可擦除、可編程的ROMROM(Erasable PROMErasable PROM)可編程固化程序,但可通過紫外光照擦除固化程序,以便重新固化程序可編程固化程序,但可通過紫外光照擦除固化程序,以便重新固化程序 EEPROMEEPROM電可擦除可編程的電可擦除可編程的ROMROM(Electrically Erasable PROMElectrically Erasable PROM) 可編程固化程序,但可用電擦除固化程序,以便重新固化程序可編程固化程序,但可用電擦除固化程序,以便重新固化程序圖圖 存儲器的分類存儲器的分類其中,光盤不是磁表面存儲器件其中,光盤不是
10、磁表面存儲器件內部存儲器內部存儲器(半導體存儲器)(半導體存儲器) RAM ROM SRAM(靜態(靜態RAM) DRAM(動態(動態RAM)PROMEPROMEEPROM外部存儲器外部存儲器(磁表面存儲器)(磁表面存儲器)硬盤硬盤軟盤軟盤磁帶磁帶光盤光盤存儲器存儲器三、三、 存儲器的體系結構存儲器的體系結構1. 1. 存儲體系的組成存儲體系的組成 計算機對計算機對存儲器的基本要求是容量大、速度快和成本低,存儲器的基本要求是容量大、速度快和成本低,盡量少出盡量少出錯,平均無故障間隔時間要長。錯,平均無故障間隔時間要長。三、三、 存儲器的體系結構存儲器的體系結構1. 1. 存儲體系的組成存儲體系
11、的組成 要想在一個存儲器中同時兼顧這些指標是很困難的,為了要想在一個存儲器中同時兼顧這些指標是很困難的,為了解決存儲器的容量、速度和價格之間的矛盾,人們除了不斷研解決存儲器的容量、速度和價格之間的矛盾,人們除了不斷研制新的存儲器件和改進存儲性能外,還從存儲系統體系上研究制新的存儲器件和改進存儲性能外,還從存儲系統體系上研究合理的結構模式。合理的結構模式。把多種類型的存儲器有機地組成存儲體系,可以如圖所示。把多種類型的存儲器有機地組成存儲體系,可以如圖所示。 CPU工作寄存器內存外存0級存儲器1級存儲器2級存儲器容量 大速度慢價格低調用方向間接直接保存方向 非易失易失CPUM0M2M1 圖 存儲
12、體系的組成 2. 2. 存儲系統的多級層次結構存儲系統的多級層次結構把各種不同存儲容量、存取速度和價格的存儲器按層次結構組成多層存儲器,并通過管理軟件和輔助硬件有機組合成統一的整體,使所存放的程序和數據按層次分布在各種存儲器中,形成存儲系統的多級層次結構。2. 2. 存儲系統的多級層次結構存儲系統的多級層次結構在計算機系統中通常采用三級層次結構來構成存儲系統,主要由高速緩沖存儲器Cache、主存儲器和輔助存儲器組成,如圖4-2所示。 CPU 高速緩存 主存儲器 I/O 控制電路 高速緩存 輔存 磁盤 光盤 磁帶 圖 存儲系統的多級層次結構 四、四、 主要性能指標主要性能指標存儲器的主要性能指標
13、反映了計算機對它們的要求,存儲器系統的三項主要性能指標要求是【容量】、【速度】和【可靠性】 四、四、 主要性能指標主要性能指標1. 1. 存儲容量存儲容量是指存儲器可以存儲的二進制信息總量,是存儲器系統的首要性能指標,因為存儲容量越大,則系統能夠保存的信息量就越多,相應計算機系統的功能就越強。 四、四、 主要性能指標主要性能指標1. 1. 存儲容量存儲容量目前使用的存儲容量達MB(兆字節)、GB(千兆字節)、TB(兆兆字節)或更大的存儲空間。存儲容量通常以字節(Byte)為單位來表示,各層次之間的換算關系為: 1KB=210B=1024B;1MB=220B=1024KB; 1GB=230B=1
14、024MB;1TB=240B=1024GB 2. 2. 存取速度存取速度直接決定了整個微機系統的運行速度,因此,存取速度也是存儲器系統的重要的性能指標;存儲器的存取速度可以用存取時間和存取周期來衡量。(1)存取時間:是指完成一次存儲器讀/寫操作所需要的時間,故又稱讀寫時間。具體是指從存儲器接收到尋址地址開始,到取出或存入數據為止所需要的時間。 (2)存取周期:是連續進行讀/寫操作的所需的最小時間間隔。當CPU采用同步時序控制方式時,對存儲器讀、操作的時間安排,應不小于讀取和寫入周期中的最大值。這個值也確定了存儲器總線傳輸時的最高速率。 3、存儲器可靠性:也是存儲器系統的重要性能指標。通常用平均
15、故障間隔時間來衡量。 為了在存儲器系統中兼顧以上三個方面的指標,目前在計算機系統中通常采用三級存儲器結構,即使用高速緩沖存儲器、主存儲器和輔助存儲器,由這三者構成一個統一的存儲系統。從整體看,其速度接近高速緩存的速度,其容量接近輔存的容量,而其成本則接近廉價慢速的輔存平均價格。 52 隨機存儲器(Random Access Memory,RAM):在微機系統的工作過程中,可以隨機地對其中的各個存儲單元進行讀寫操作。 半導體存儲器RAMROMSRAMDRAM掩膜ROMPROMEPROMEEPROMFlash ROM一、靜態隨機存儲器(Static RAM,SRAM) SRAM其存儲電路是以雙穩態
16、觸發器為基礎,只要不掉電,信息永不會丟失,不需要刷新電路。SRAM的主要性能是:存取速度快、功耗較大、容量較小。它一般適用于構成高速緩沖存儲器(Cache)。 VCC(+5V)T3T2T1T4VCCT3T1T4T2X地址譯碼線ABD0D0T5T6T7T8(I/O)I/O接Y地址譯碼器AB圖5-1(a)圖5-1(b)1.靜態RAM的構成 基本存儲單元靜態RAM的基本存儲單元是由兩個增強型的NM0S反相器交叉耦合而成的觸發器,每個基本的存儲單元由六個MOS管構成,所以,靜態存儲電路又稱為六管靜態存儲電路。圖圖5-1(a)5-1(a)為六管靜態存儲單元的原理示意圖。其中為六管靜態存儲單元的原理示意圖
17、。其中T1T1、T2T2為控制管,為控制管,T3T3、T4T4為負載管。這個電路具有兩個相對的穩態狀態,若為負載管。這個電路具有兩個相對的穩態狀態,若TlTl管截管截止則止則A A“l”(l”(高電平高電平) ),它使,它使T2T2管開啟,于是管開啟,于是B B“0”(0”(低電平低電平) ),而而B B“0”0”又進一步保證了又進一步保證了T1T1管的截止。所以,這種狀態在沒有管的截止。所以,這種狀態在沒有外觸發的條件下是穩定不變的。外觸發的條件下是穩定不變的。同樣,同樣,T1T1管導通即管導通即A A“0”(0”(低電平低電平) ),T2T2管截止即管截止即B B“1”(1”(高電高電平平
18、) )的狀態也是穩定的。因此,可以用這個電路的兩個相對穩定的狀態也是穩定的。因此,可以用這個電路的兩個相對穩定的狀態來分別表示邏輯的狀態來分別表示邏輯“1”1”和邏輯和邏輯“0”0”。當把觸發器作為存儲電路時,就要使其能夠接收外界來的觸發控制信號,用當把觸發器作為存儲電路時,就要使其能夠接收外界來的觸發控制信號,用以讀出或改變該存儲單元的狀態,這樣就形成了如圖以讀出或改變該存儲單元的狀態,這樣就形成了如圖5-l(b)5-l(b)所示的六管所示的六管基本存儲電路。其中基本存儲電路。其中T5T5、T6T6為門控管。為門控管。當當X X譯碼輸出線為高電平時,譯碼輸出線為高電平時,T5T5、T6T6管
19、導通,管導通,A A、B B端就分別與位線端就分別與位線D0D0及及D0D0相相連;若相應的連;若相應的Y Y譯碼輸出也是高電平,則譯碼輸出也是高電平,則T7T7、T8T8管管( (它們是一列公用的,它們是一列公用的,不屬于某一個存儲單元不屬于某一個存儲單元) )也是導通的,于是也是導通的,于是D0D0及及D0(D0(這是存儲單元內部的這是存儲單元內部的位線位線) )就與輸入就與輸入/ /輸出電路的輸出電路的I/OI/O線及線及I/OI/O線相通。線相通。寫入操作:寫入信號自I/O線及I/O線輸入,如要寫入“1”,則I/O線為高電平而I/O線為低電平,它們通過T7、T8管和T5、T6管分別與A
20、端和B端相連,使A=“1”,B=“0”,即強迫T2管導通,Tl管截止,相當于把輸入電荷存儲于Tl和T2管的柵級。當輸入信號及地址選擇信號消失之后,T5、T6、T7、T8都截止。由于存儲單元有電源及負載管,可以不斷地向柵極補充電荷,依靠兩個反相器的交叉控制,只要不掉電,就能保持寫入的信息“1”,而不用再生(刷新)。若要寫入“0”,則I/O線為低電乎而I/O線為高電平,使Tl管導通,T 2管截止即A=“0”,B=“1”。讀操作:只要某一單元被選中,相應的T5、T6、T7、T8均導通,A點與B點分別通過T5、T6管與D0及D0相通,D0及D0又進一步通過T7、T8管與I/O及I/O線相通,即將單元的
21、狀態傳送到I/O及I/O線上。由此可見,這種存儲電路的讀出過程是非破壞性的,即信息在讀出之后,原存儲電路的狀態不變。3232=1024存儲單元驅動器X譯碼器地址反向器I/O電路Y譯碼器地址反向器控制電路輸出驅動12321232輸入輸出321231讀/寫選片1A0A2A3A4A5A6A7A8A9A321231圖5-2 存儲器芯片的內部結構框圖p210n存儲器的系統結構存儲器的系統結構一般情況下,一個存儲器系統由以下幾部分組成。一般情況下,一個存儲器系統由以下幾部分組成。1 1 基本存儲單元:基本存儲單元: 一個基本存儲單元可以存放一位二進制信息,其內一個基本存儲單元可以存放一位二進制信息,其內部
22、具有兩個穩定的且相互對立的狀態,并能夠在外部具有兩個穩定的且相互對立的狀態,并能夠在外部對其狀態進行識別和改變。部對其狀態進行識別和改變。 不同類型的基本存儲單元,決定了由其所組成的存不同類型的基本存儲單元,決定了由其所組成的存儲器件的類型不同。儲器件的類型不同。 n存儲器的系統結構存儲器的系統結構2 2 存儲體:存儲體:一個基本存儲單元只能保存一位二進制信息,若要存放一個基本存儲單元只能保存一位二進制信息,若要存放M MN N個二進制信息,就需要用個二進制信息,就需要用M MN N個基本存儲單元,它們按一個基本存儲單元,它們按一定的規則排列起來,由這些基本存儲單元所構成的陣列稱為存定的規則排
23、列起來,由這些基本存儲單元所構成的陣列稱為存儲體或存儲矩陣。儲體或存儲矩陣。3 3 地址譯碼器:地址譯碼器:由于存儲器系統是由許多存儲單元構成的,每個存儲單元一般存由于存儲器系統是由許多存儲單元構成的,每個存儲單元一般存放放8 8位二進制信息,為了加以區分,必須首先為這些存儲單元編號,位二進制信息,為了加以區分,必須首先為這些存儲單元編號,即分配給這些存儲單元不同的地址。即分配給這些存儲單元不同的地址。地址譯碼器的作用就是用來接受地址譯碼器的作用就是用來接受CPUCPU送來的地址信號并對它進行送來的地址信號并對它進行譯碼,選擇與此地址碼相對應的存儲單元,以便對該單元進行讀譯碼,選擇與此地址碼相
24、對應的存儲單元,以便對該單元進行讀/ /寫操作。寫操作。3 3 地址譯碼器地址譯碼器存儲器地址譯碼有兩種方式,通常稱為單譯碼與雙譯碼。存儲器地址譯碼有兩種方式,通常稱為單譯碼與雙譯碼。單譯碼:單譯碼:單譯碼方式又稱字結構,適用于小容量存儲器。單譯碼方式又稱字結構,適用于小容量存儲器。雙譯碼:雙譯碼:雙譯碼結構中,將地址譯碼器分成兩部分,即行譯碼器雙譯碼結構中,將地址譯碼器分成兩部分,即行譯碼器( (又叫又叫X X譯碼器譯碼器) )和列譯碼器和列譯碼器( (又叫又叫Y Y譯碼器譯碼器) )。X X譯碼器輸出行地址譯碼器輸出行地址選擇信號,選擇信號,Y Y譯碼器輸出列地址選擇信號,行列選擇線交叉處
25、即譯碼器輸出列地址選擇信號,行列選擇線交叉處即為所選中的單元。為所選中的單元。4. 片選與讀/寫控制電路:片選信號用以實現芯片的選擇。對于一個芯片來講,只有當片選信號有效時,才能對其進行讀/寫操作。片選信號一般由地址譯碼器的輸出及一些控制信號來形成,而讀/寫控制電路則用來控制對芯片的讀/寫操作。 5 I/O電路:I/O電路位于系統數據總線與被選中的存儲單元之間,用來控制信息的讀出與寫入,必要時,還可包含對I/O信號的驅動及放大處理功能。 6 集電極開路或三態輸出緩沖器:為了擴充存儲器系統的容量,常常需要將幾片RAM芯片的數據線并聯使用或與雙向的數據線相連,這就要用到集電極開路或三態輸出緩沖器。
26、 7 其它外圍電路:對不同類型的存儲器系統,有時,還專門需要一些特殊的外圍電路,如動態RAM中的預充電及刷新操作控制電路等,這也是存儲器系統的重要組成部分。 nSRAM芯片61166116芯片的容量為2 K8 bit,有2048個存儲單元,需11根地址線,7根用于行地址譯碼輸入,4根用于列譯碼地址輸入,每條列線控制8位,從而形成了128128個存儲陣列,即16 384個存儲體。6116的控制線有三條,片選CS、輸出允許OE和讀寫控制WE。A71A62A53A44A35A26A17A08D09D110D211GND12242322212019181716151413VCCA8A9WEOEA10C
27、SD7D6D5D4D3行譯碼128128存儲矩陣A10A4列I/O列譯碼輸入數據控制邏輯D7D0CSWEOEA3A0nSRAM芯片6116nIntel 6116存儲器芯片的工作過程如下: 讀出時,地址輸入線A10A0送來的地址信號經地址譯碼器送到行、列地址譯碼器,經譯碼后選中一個存儲單元(其中有8個存儲位),由CS、OE、WE構成讀出邏輯(CS=0,OE=0,WE=1),打開右面的8個三態門,被選中單元的8位數據經I/O電路和三態門送到D7D0輸出。 nSRAM芯片6116nIntel 6116存儲器芯片的工作過程如下: 寫入時,地址選中某一存儲單元的方法和讀出時相同,不過這時CS=0,OE=
28、1,WE=0,打開左邊的三態門,從D7D0端輸入的數據經三態門和輸入數據控制電路送到I/O電路,從而寫到存儲單元的8個存儲位中。當沒有讀寫操作時,CS=1,即片選處于無效狀態,輸入輸出三態門至高阻狀態,從而使存儲器芯片與系統總線“脫離”。 6116的存取時間在85150 ns之間。. 靜態RAM存儲器芯片Intel 2114Intel 2114是一種1K4的靜態RAM存儲器芯片,其最基本的存儲單元就是如上所述的六管存儲電路,其它的典型芯片有Ietel 6264/62256等。 芯片的內部結構如圖5-2所示,它包括下列幾個主要組成部分:圖5-3 Intel2114靜態存儲器芯片的內部結構框圖 存
29、儲矩陣:Intel2114內部共有4096個存儲電路,排成6464的短陣形式; 地址譯碼器:輸入為10根線,采用兩級譯碼方式,其中6根用于行譯碼,4根用于列譯碼; I/O控制電路:分為輸入數據控制電路和列IO電路,用于對信息的輸入輸出進行緩沖和控制; 片選及讀寫控制電路:用于實現對芯片的選擇及讀寫控制。(2)Intel 2114的外部結構Intel2114RAM存儲器芯片為雙列直插式集成電路芯片,共有18個引腳,引腳圖如圖5-3所示,各引腳的功能如下: A0-A9 A0-A9:10根地址信號輸入引腳。123456789181716151413121110A1A2A3A4A5A6A0CSGNDV
30、CCA7A8A9I/O1I/O2I/O3I/O4WE引腳圖 圖5-3 Intel 2114引腳圖 WE : 讀寫控制信號輸入引腳,當WE為低電平時,使輸入三態門導通,信息由數據總線通過輸入數據控制電路寫入被選中的存儲單元;反之從所選中的存儲單元讀出信息送到數據總線。 I/O1-I/O4 I/O1-I/O4 :4根數據輸入輸出信號引腳 CS CS :低電平有效,通常接地址譯碼器的輸出端。 +5V +5V:電源。 GND GND:地。2、動態隨機存取存儲器DRAM 動態RAM基本存儲單元靜態RAM的基本存儲單元是一個RS觸發器,因此,其狀態是穩定的,但由于每個基本存儲單元需由6個MOS管構成,就大
31、大地限制了RAM芯片的集成度。DRAM是依靠電容來存儲信息,電路簡單集成度高,但電容漏電,信息會丟失,故需要專用電路定期進行刷新。DRAM的主要性能是:容量大、功耗較小、速度較慢。它被廣泛地用作內存貯器的芯片。 如圖5-4所示,就是一個動態RAM的基本存儲單元,它由一個MOS管Q和位于其柵極上的分布電容C構成。當柵極電容C上充有電荷時,表示該存儲單元保存信息“1”。反之,當柵極電容上沒有電荷時,表示該單元保存信息“0”。由于柵極電容上的充電與放電是兩個對立的狀態,因此,它可以作為一種基本的存儲單元。 圖5-4 單管動態存儲單元寫操作:行選擇線為高電平,Q管導通,寫信號通過位線存入電容C中;讀操
32、作:行選擇線仍為高電平,存儲在電容C上的電荷,通過Q輸出到數據線上,通過讀出放大器,即可得到所保存的信息。刷新:動態RAM存儲單元實質上是依靠Q管柵極電容的充放電原理來保存信息的。時間一長,電容上所保存的電荷就會泄漏,造成了信息的丟失。因此,在動態RAM的使用過程中,必須及時地向保存“1”的那些存儲單元補充電荷,以維持信息的存在。這一過程,就稱為動態存儲器的刷新操作。 動態RAM存儲器芯片Intel 2164AIntel2164A是一種64K1的動態RAM存儲器芯片,它的基本存儲單元就是采用單管存儲電路,其它的典型芯片有Intel 21256/21464等。 Intel 2164A的內部結構如
33、圖5-5所示,其主要組成部分如下:8位地址鎖存器1/4I/O門 輸出緩沖器A0A1A2A3A4A5A6A7DOUTVDDVSS行時鐘緩沖器列時鐘緩沖器寫允許時鐘緩沖器數據輸入緩沖器RASCASWEDIN128128存儲矩陣1/128行譯碼器128128存儲矩陣128讀出放大器1/2(1/128列譯碼器)128讀出放大器128讀出放大器128讀出放大器1/2(1/128列譯碼器)128128存儲矩陣128128存儲矩陣1/128行譯碼器圖5-5 Intel 2164A內部結構 存儲體:64K1的存儲體由4個128128的存儲陣列構成; 地址鎖存器:由于Intel 2164A采用雙譯碼方式,故其1
34、6位地址信息要分兩次送入芯片內部。但由于封裝的限制,這16位地址信息必須通過同一組引腳分兩次接收,因此,在芯片內部有一個能保存8位地址信息的地址鎖存器; 數據輸入緩沖器: 用以暫存輸入的數據; 數據輸出緩沖器: 用以暫存要輸出的數據; 1/4I/O門電路:由行、列地址信號的最高位控制,能從相應的4個存儲矩陣中選擇一個進行輸入輸出操作; 行、列時鐘緩沖器:用以協調行、列地址的選通信號; 寫允許時鐘緩沖器:用以控制芯片的數據傳送方向; 128讀出放大器:與4個128128存儲陣列相對應,共有4個128讀出放大器,它們能接收由行地址選通的4128個存儲單元的信息,經放大后,再寫回原存儲單元,是實現刷
35、新操作的重要部分; 1/128行、列譯碼器: 分別用來接收7位的行、列地址,經譯碼后,從128128個存儲單元中選擇一個確定的存儲單元,以便對其進行讀/寫操作。 Intel 2164A的外部結構Intel 2164A是具有16個引腳的雙列直插式集成電路芯片,其引腳安排如圖5-6所示。 A0 A0A7A7:地址信號的輸入引腳,用來分時接收CPU送來的8位行、列地址; RAS :行地址選通信號輸入引腳,低電平有效,兼作芯片選擇信號。當RAS為低電平時,表明芯片當前接收的是行地址; 12345678910111213141516N/CDINWERASA0A2A1VDDVSSCASDOUTA6A5A4
36、A3A7圖5-6 Intel 2164A引腳 CAS CAS :列地址選通信號輸入引腳,低電平有效,表明當前正在接收的是列地址(此時RAS應保持為低電平);WE WE :寫允許控制信號輸入引腳,當其為低電平時,執行寫操作;否則,執行讀操作。 D DININ:數據輸入引腳; D DOUTOUT:數據輸出引腳;VDDVDD:十5V電源引腳; Css Css:地; N/C N/C:未用引腳。 Intel 2164A的工作方式與時序 讀操作在對Intel 2164A的讀操作過程中,它要接收來自CPU的地址信號,經譯碼選中相應的存儲單元后,把其中保存的一位信息通過DOUT數據輸出引腳送至系統數據總線。地
37、址WEDOUT有效數據輸出RASCAS高阻狀態列地址行地址tRAStCACtRACtASRtASC圖5-7 Intel 2164A讀操作的時序Intel 2164A的讀操作時序如圖5-7所示。從時序圖中可以看出,讀周期是由行地址選通信號RAS有效開始的,要求行地址要先于RAS信號有效,并且必須在有效后再維持一段時間。同樣,為了保證列地址的可靠鎖存,列地址也應領先于列地址鎖存信號CAS有效,且列地址也必須在CAS有效后再保持一段時間。要從指定的單元中讀取信息,必須在RAS有效后,使CAS也有效。由于從RAS有效起到指定單元的信息讀出送到數據總線上需要一定的時間,因此,存儲單元中信息讀出的時間就與
38、CAS開始有效的時刻有關。存儲單元中信息的讀寫,取決于WE控制信號。為實現讀出操作,要求WE控制信號無效,且必須在CAS有效前變為高電平。 寫操作在Intel 2164A的寫操作過程中,它同樣通過地址總線接收CPU發來的行、列地址信號,選中相應的存儲單元后,把CPU通過數據總線發來的數據信息,保存到相應的存儲單元中去。Intel2164A的寫操作時序如圖5-8所示。RASCAS地址WEDINDOUT高阻狀態列地址tRAStASRtASC行地址tWCStDHtDS圖5-8 Intel 2164A寫操作的時序 讀-修改-寫操作這種操作的性質類似于讀操作與寫操作的組合,但它并不是簡單地由兩個單獨的讀
39、周期與寫周期組合起來,而是在RAS和CAS同時有效的情況下,由WE信號控制,先實現讀出,待修改之后,再實現寫入。其操作時序如圖5-9所示。CAS地址RASWEDINDOUT高阻狀態有效數據輸出有效行地址列地址tRACtCRPtCRWtASRtCWDtCACtOFF圖5-9 Intel 2164A讀-修改-寫操作的時序 刷新操作Intel 2164A內部有4128個讀出放大器,在進行刷新操作時,芯片只接收從地址總線上發來的行地址(其中RA7不起作用),由RA0RA6共七根行地址線在四個存儲矩陣中各選中一行,共4128個單元,分別將其中所保存的信息輸出到4128個讀出放大器中,經放大后,再寫回到原
40、單元,即可實現512個單元的刷新操作。這樣,經過128個刷新周期就可完成整個存儲體的刷新。RASCAS地址行地址DOUTtRAStCRFtASR圖5-10 Intel 2164A唯RAS有效刷新操作的時序 數據輸出數據輸出具有三態緩沖器,它由CAS控制,當CAS為高電平時,輸出Dout呈高阻抗狀態,在各種操作時的輸出狀態有所不同。 頁模式操作在這種方式下,維持行地址不變(RAS不變),由連續的CAS脈沖對不同的列地址進行鎖存,并讀出不同列的信息,而RAS脈沖的寬度有一個最大的上限值。在頁模式操作時,可以實現存儲器讀、寫以及讀-修改-寫等操作。有關上述時序圖中參數的具體值,請參考有關的技術手冊。
41、三、 高速緩沖存儲器Cache【回顧】 微型系統的存儲器組織,內、外存的基本概念,存儲器系統的容量、存取速度及成本等項性能指標及其相互關系。【本講重點】高速緩沖存儲器Cache的基本概念與作用,Cache-主存存儲結構及其實現,Cache的基本操作,地址映象方式,替換策略,虛擬存儲器的基本概念及實現方法。1、問題的提出微機系統中的內部存儲器通常采用動態RAM構成,具有價格低,容量大的特點,但由于動態RAM采用MOS管電容的充放電原理來表示與存儲信息,其存取速度相對于CPU的信息處理速度來說較低。這就導致了兩者速度的不匹配,也就是說,慢速的存儲器限制了高速CPU的性能,影響了微機系統的運行速度,
42、并限制了計算機性能的進一步發揮和提高。高速緩沖存儲器就是在這種情況下產生的。2 2、存儲器訪問的局部性、存儲器訪問的局部性微機系統進行信息處理的過程就是執行程序的過程,微機系統進行信息處理的過程就是執行程序的過程,這時,這時,CPUCPU需要頻繁地與內存進行數據交換,需要頻繁地與內存進行數據交換,包括取指令代碼及數據的讀寫操作。包括取指令代碼及數據的讀寫操作。通過對大量典型程序的運行情況分析結果表明通過對大量典型程序的運行情況分析結果表明: :在一個較短的時間內,取指令代碼的操作往往集中在存儲器邏輯地址空在一個較短的時間內,取指令代碼的操作往往集中在存儲器邏輯地址空間的很小范圍內(因為在多數情
43、況下,指令是順序執行的,因此指令間的很小范圍內(因為在多數情況下,指令是順序執行的,因此指令代碼地址的分布就是連續的,再加上循環程序段和子程序段都需要重代碼地址的分布就是連續的,再加上循環程序段和子程序段都需要重復執行多次,因此對這些局部存儲單元的訪問就自然具有時間上集中復執行多次,因此對這些局部存儲單元的訪問就自然具有時間上集中分布的傾向);分布的傾向);數據讀寫操作的這種集中性傾向雖不如取指令代碼那么明顯,但對數組的存儲和訪問以及工作單元的選擇也可以使存儲器單元相對集中。這種對局部范圍的存儲器單元的防問比較頻繁,而對此范圍以外的存儲單元訪問相對甚少的現象,稱為程序訪問的局部性。3、Cach
44、e-主存存儲結構及其實現為了解決存儲器系統的容量、存取速度及單位成本之間的矛盾,可以采用Cache-主存存儲結構,即在主存和CPU之間設置高速緩沖存儲器Cache,把正在執行的指令代碼單元附近的一部分指令代碼或數據從主存裝入Cache中,供CPU在一段時間內使用,由于存儲器訪問的局部性,在一定容量Cache的條件下,我們可以做到使CPU大部分取指令代碼及進行數據讀寫的操作都只要通過訪問Cache,而不是訪問主存而實現?!緝烖c】Cache的讀寫速度幾乎能夠與CPU進行匹配,所以微機系統的存取速度可以大大提高;Cache的容量相對主存來說并不是太大,所以整個存儲器系統的成本并沒有上升很多。采用了C
45、ache-主存存儲結構以后,整個存儲器系統的容量及單位成本能夠主存相當,而存取速度可以與Cache的讀寫速度相當,這就很好地解決了存儲器系統的上述三個方面性能之間的矛盾。如圖5-21,是Cache-主存結構示意圖,在主存和CPU之間增加了一個容量相對較小的雙極型靜態RAM作為高速緩沖存儲器Cache,為了實現Cache與主存之間的數據交換,系統中還相應地增加了輔助的硬件電路。圖5-21 主存-Cache層次示意圖 管理這兩級存儲器的部件為Cache控制器,CPU與主存之間的數據傳輸必須經過Cache 控制器(見圖5-22 (P108)進行,Cache控制器將來自CPU的數據讀寫請求,轉向Cac
46、he存儲器,如果數據在Cache中,則CPU對Cache進行讀寫操作,稱為一次命中一次命中。命中時,CPU從Cache中讀(寫)數據。由于Cache速度與CPU速度相匹配,因此不需要插入等待狀態,故CPU處于零等待狀態,也就是說也就是說CPU與Cache達到了同步,因此,有時稱高速緩存為同步Cache;若數據不在Cache中,則CPU對主存操作,稱為一次失敗一次失敗。失敗時, CPU必須在其總線周期中插入等待周期TW。CPU主存主存地址寄存器MA替 換控制部件主存-Cache地址變換機 構Cache地址寄存器Cache存儲器地址總線數據總線不命中命中單字寬多字寬圖5-22 Cache存儲系統基
47、本結構在主存Cache存儲體系中,所有的程序代碼和數據仍然都存放在主存中,Cache存儲器只是在系統運行過程中,動態地存放了主存中的一部分程序塊和數據塊的副本,這是一種以塊為單位的存儲方式。塊的大小稱為“塊長”,塊長一般取一個主存周期所能調出的信息長度。假設主存的地址碼為n位,則其共有2n個單元,將主存分塊(block),每塊有B個字節,則一共可以分成2n/B塊。Cache也由同樣大小的塊組成,由于其容量小,所以塊的數目小得多,也就是說,主存中只有一小部分塊的內容可存放在Cache中。在Cache中,每一塊外加有一個標記,指明它是主存中哪一塊的副本,所以該標記的內容相當于主存中塊的編號。假定主
48、存地址為nMb位,其中M稱為主存的塊地址,而b則稱為主存的塊內地址,即:主存的塊數為2,塊內字節數為2b;同樣,假定Cache地址n十b位,其中N稱為Cache塊地址,而b為Cache的塊內地址,即Cache的塊數為2N,塊內字節數為2b,通常使主存與Cache的塊內地址碼數量相同,即bb,即Cache的塊內字節數與主存的塊內字節數相同。當CPU發出讀請求時,將主存地址位(或位中的一部分)與Cache某塊的標記相比較,根據其比較結果是否相等而區分出兩種情況:當比較結果相等時,說明需要的數據已在Cache中,那么直接訪問Cache就行了,在CPU與Cache之間,通常一次傳送一個字;當比較結果不
49、相等時,說明需要的數據尚未調入Cache,那么就要把該數據所在的整個字塊從主存一次調進來。4 4、Cache-Cache-主存存儲結構的命中率主存存儲結構的命中率命中率指命中率指CPUCPU所要訪問的信息在所要訪問的信息在CacheCache中的比率,相應地將所要訪問的中的比率,相應地將所要訪問的信息不在信息不在CacheCache中的比率稱為失效率。中的比率稱為失效率。CacheCache的命中率除了與的命中率除了與CacheCache的容量有關外,還與地址映象的方式有關。的容量有關外,還與地址映象的方式有關。目前,目前,CacheCache存儲器容量主要有存儲器容量主要有256KB256K
50、B和和512KB512KB等。這些大容量的等。這些大容量的CacheCache存儲器,使存儲器,使CPUCPU訪問訪問CacheCache的命中率高達的命中率高達9090至至9999,大大提高了,大大提高了CPUCPU訪問數據的速度,提高了系統的性能。訪問數據的速度,提高了系統的性能。 5 5、兩級、兩級Cache-Cache-主存存儲結構主存存儲結構CPUCPU內部的內部的CacheCache與主機板上的與主機板上的CacheCache就形成兩級就形成兩級CacheCache結構。結構。CPUCPU工作時,首先在第一級工作時,首先在第一級Cache(Cache(微處理器內的微處理器內的Cac
51、he)Cache)中查找數據,如果中查找數據,如果找不到,則在第二級找不到,則在第二級Cache(Cache(主機板上的主機板上的Cache)Cache)中查找,若數據在第二中查找,若數據在第二級級CacheCache中,中,CacheCache控制器在傳輸據的同時,修改第一級控制器在傳輸據的同時,修改第一級CacheCache;如果;如果數據既不在第一級數據既不在第一級CacheCache也不在第二級也不在第二級CacheCache中,中,CacheCache控制器則從主控制器則從主存中獲取數據,同時將數據提供給存中獲取數據,同時將數據提供給CPUCPU并修改兩級并修改兩級CacheCach
52、e。兩級。兩級CacheCache結構,提高了命中率,加快了處理速度,使結構,提高了命中率,加快了處理速度,使CPUCPU對對CacheCache的操作命中率的操作命中率高達高達9898以上。圖以上。圖4-224-22給出了主板上給出了主板上CacheCache存儲器系統的基本結構。存儲器系統的基本結構。6 6、CacheCache的基本操作的基本操作讀操作讀操作當當CPUCPU發出讀操作命令時,要根據它產生的主存地址分兩種情形:發出讀操作命令時,要根據它產生的主存地址分兩種情形:一種是需要的數據已在一種是需要的數據已在CacheCache存儲器中,那么只需直接訪問存儲器中,那么只需直接訪問C
53、acheCache存儲器,從對應單元中讀取信息到數據總線;另一種是所需要的存儲器,從對應單元中讀取信息到數據總線;另一種是所需要的數據尚未裝入數據尚未裝入CacheCache存儲器,存儲器,CPUCPU在從主存讀取信息的同時,由在從主存讀取信息的同時,由CacheCache替換部件把該地址所在的那塊存儲內容從主存拷貝到替換部件把該地址所在的那塊存儲內容從主存拷貝到CacheCache中。中。CacheCache存儲器中保存的字塊是主存相應字塊的副本。存儲器中保存的字塊是主存相應字塊的副本。寫操作當CPU發出寫操作命令時,也要根據它產生的主存地址分兩種情形:其一,命中時,不但要把新的內容寫入Ca
54、che存儲器中,必須同時寫入主存,使主存和Cache內容同時修改,保證主存和副本內容一致,這種方法稱寫直達法或稱通過式寫(Write-through,簡稱通寫法)。其二,未命中時,許多微機系統只向主存寫入信息,而不必同時把這個地址單元所在的主存中的整塊內容調入Cache存儲器。7、地址映象及其方式我們知道,主存與Cache之間的信息交換,是以數據塊的形式來進行的,為了把信息從主存調入Cache,必須應用某種函數把主存塊映象到Cache塊,稱作地址映象。當信息按這種映象關系裝入Cache后,系統在執行程序時,應將主存地址變換為Cache地址,這個變換過程叫做地址變換(由于Cache的存儲空間較小
55、,因此,Cache中的一個存儲塊要與主存中的若干個存儲塊相對應,即若干個主存塊將映象到同一個Cache塊)。根據不同的地址對應方法,地址映象的方式通常有直接映象、全相聯映象和組相聯映象三種。直接映象每個主存塊映象到Cache中的一個指定塊的方式稱為直接映象。在直接映象方式下,主存中某一特定存儲塊只可調入Cache中的一個指定位置,如果主存中另一個存儲塊也要調入該位置,則將發生沖突。地址映象的方法:將主存塊地址對Cache的塊號取模,即可得到Cache中的塊地址,這相當于將主存的空間按Cache的大小進行分區,每區內相同的塊號映象到Cache中相同的塊的位置。一般來說,如果Cache被分成2N塊
56、,主存被分成同樣大小的2M塊,則主存與Cache中塊的對應關系如圖4-23所示。直接映象函數可定義為:ji mod 2N 其中j是Cache中的塊號;i是主存中的塊號。在這種映象方式中,主存的第0塊,第2N塊,第2N+l塊,只能映象到Cache的第0塊,而主存的第1塊,第2N十l塊,第2N+1十1塊,只能映象到Cache的第1塊,依次類推。例如,一個Cache的大小為2K字,每個塊為16字,這樣Cache中共有128個塊。假設主存的容量是256K字,則共有16384個塊。主存的地址碼將有18位。在直接映象方式下,主存中的第1128塊映象到Cache中的第1128塊,第129塊則映象到Cache
57、中的第1塊,第130塊映象到Cache中的第2塊,依次類推。直接映象函數的優點是實現簡單,缺點是不夠靈活,尤其是當程序往返訪問兩個相互沖突的塊中的數據時,Cache的命中率將急劇下降。全相聯映象如圖5-24所示,它允許主存中的每一個字塊映象到Cache存儲器的任何一個字塊位置上,也允許從確實已被占滿的Cache存儲器中替換出任何一個舊字塊當訪問一個塊中的數據時,塊地址要與Cache塊表中的所有地址標記進行比較以確定是否命中。在數據塊調入時,存在著一個比較復雜的替換策略問題,即決定將數據塊調入Cache中什么位置,將Cache中哪一塊數據調出到主存。全相聯方法塊沖突的概率低,Cache的利用率高
58、,是一種最理想的解決方案,但全相聯Cache中塊表查找的速度慢,由于Cache的速度要求高,因此全部比較和替換策略都要用硬件實現,控制復雜,實現起來也比較困難。Cache主 存第 0 塊第 1 塊2N-1塊2N塊2N+1-1塊第 0 塊第 1 塊2N-1塊.第1區第2區Cache第 0 塊第 1 塊2N-1塊.主 存第 0 塊第 1 塊2M-1塊.圖5-23直接映像示意圖圖5-24全相聯映像示意圖組相聯映象組相聯映象方式是全相聯映象和直接映象的一種折衷方案。這種方法將存儲空間分成若干組,各組之間是直接映象,而組內各塊之間則是全相聯映象。如圖5-25所示,在組相聯映象方式下,主存中存儲塊的數據可
59、調入Cache中一個指定組內的任意塊中。它是上述兩種映象方式的一般形式,如果組的大小為1時就變成了直接映象;如果組的大小為整個Cache的大小時就變成了全相聯映象。主 存第 0 塊第2k-1塊第 0 塊第2k-1塊第2N-1塊.第2k塊.第2M-1塊第2k塊.第 0 組第 1 組第2M-R組第 0 組第 1 組第2C組圖5-25組相聯映像示意圖例如,把Cache子塊分成2C組,每組包含2R個字塊,那么,主存字塊MM(i)(0i2M-1)可以用下列映象函數映象到Cache字塊MN(j)( 0j2N-1)上:j(i mod 2C)2R十k ( 0k2R-1)例如, 設C3位,R1位,考慮主存字塊1
60、5可映象到Cache的哪一個字塊中。根據公式,可得:j (i mod 2C)2R十k (15 mod 23)21十k 72十k 14十k 又:0k2R-121-11 即: k0或1代入后得j14(k0)或15(k1)。所以主存模塊15可映象到Cache字塊14或15,在第7組。同樣可計算出主存字塊17可映象到Cache的第0塊或第1塊,在第1組。 組相聯映象方法在判斷塊命中以及替換算法上都要比全相聯映象方法簡單,塊沖突的概率比直接映象方法的低,其命中率介于直接映象和全相聯映象方法之間。8、替換策略主存與Cache之間的信息交換,是以存儲塊的形式來進行的,主存的塊長與Cache的塊長相同,但由于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年財務決策能力試題及答案
- 股份轉讓合同股權購買付款協議
- 空運貨物運輸合同協議
- 微生物檢驗技術生命周期的考察試題及答案
- 項目管理根本理論解析及答案
- 項目管理中的反饋文化建設與重要性試題及答案
- 品牌定位的動態調整策略計劃
- 城市供水設施的智慧化建設計劃
- 2025年國際金融理財師歷年試題及答案
- 大數據地震預警技術重點基礎知識點
- 勞務派遣勞務外包服務方案(技術方案)
- 趣說中國史宋朝篇
- 委托持股協議
- 《新概念英語》第三冊課文詳解及課后答案
- 拔罐技術操作考核評分標準
- 工業機器人操作與運維實訓(高級)-教學大綱、授課計劃
- 蛤蟆先生去看心理醫生
- 心臟康復護理專家共識PPT
- 汽車充電站生產安全事故隱患清單-有依據
- 浙江省杭州市蕭山區第二學期六年級語文期中試題(含答案)
- 《中餐烹飪美學》課后答案
評論
0/150
提交評論