第四章-存儲器_第1頁
第四章-存儲器_第2頁
第四章-存儲器_第3頁
第四章-存儲器_第4頁
第四章-存儲器_第5頁
已閱讀5頁,還剩164頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第4章存儲器4.1概述4.2主存儲器4.3高速緩沖存儲器4.4輔助存儲器14.1概述一、存儲器分類1.按存儲介質分類(1)半導體存儲器(2)磁表面存儲器(3)磁芯存儲器(4)光盤存儲器易失TTL、MOS磁頭、載磁體硬磁材料、環狀元件激光、磁光材料非易失2(1)存取時間與物理地址無關(隨機訪問)順序存取存儲器磁帶4.12.按存取方式分類(2)存取時間與物理地址有關(串行訪問)隨機存儲器只讀存儲器直接存取存儲器磁盤在程序的執行過程中可讀可寫在程序的執行過程中只讀3磁盤、磁帶、光盤高速緩沖存儲器(Cache)FlashMemory存儲器主存儲器輔助存儲器MROMPROMEPROMEEPROMRAMROM靜態RAM動態RAM3.按在計算機中的作用分類4.1易失非易失非易失非易失4高低小大快慢輔存寄存器緩存主存磁盤光盤磁帶光盤磁帶速度容量價格位/1.存儲器三個主要特性的關系二、存儲器的層次結構CPUCPU主機4.15緩存CPU主存輔存2.緩存主存層次和主存輔存層次緩存主存輔存主存虛擬存儲器10ns20ns200nsms虛地址邏輯地址實地址物理地址主存儲器4.1(速度)(容量)64.2主存儲器一、概述1.主存的基本組成存儲體驅動器譯碼器MAR控制電路讀寫電路MDR地址總線數據總線讀寫……………72.主存和CPU的聯系MDRMARCPU主存讀數據總線地址總線寫4.28

高位字節地址為字地址

低位字節地址為字地址設地址線24根按字節尋址按字尋址若字長為16位按字尋址若字長為32位字地址字節地址11109876543210840字節地址字地址4523014203.主存中存儲單元地址的分配4.2224=16M8M4M9(2)存儲速度4.主存的技術指標(1)存儲容量(3)存儲器的帶寬主存存放二進制代碼的總位數

讀出時間寫入時間存儲器的訪問時間

存取時間存取周期讀周期寫周期

連續兩次獨立的存儲器操作(讀或寫)所需的最小間隔時間

位/秒4.2

存取周期大于存取時間10芯片容量二、半導體存儲芯片簡介1.半導體存儲芯片的基本結構譯碼驅動存儲矩陣讀寫電路1K×4位16K×1位8K×8位片選線讀/寫控制線地址線…數據線…地址線(單向)數據線(雙向)1041411384.211二、半導體存儲芯片簡介1.半導體存儲芯片的基本結構譯碼驅動存儲矩陣讀寫電路片選線讀/寫控制線地址線…數據線…片選線讀/寫控制線(低電平寫高電平讀)(允許讀)4.2CSCEWE(允許寫)WEOE12存儲芯片片選線的作用用16K×1位的存儲芯片組成64K×8位的存儲器

32片當地址為65535時,此8片的片選有效8片16K×1位8片16K×1位8片16K×1位8片16K×1位4.2130,015,015,70,7

讀/寫控制電路

地址譯碼器

字線015……16×8矩陣………07D07D位線讀/寫選通A3A2A1A0……2.半導體存儲芯片的譯碼驅動方式(1)線選法4.200000,00,7…0…07…D07D讀/寫選通

讀/寫控制電路

用一根字線直接選中一個存儲單元的各位,結構簡單,適用于容量不大的存儲芯片。14A3A2A1A0A40,310,031,031,31

Y地址譯碼器

X地址譯碼器

32×32矩陣……A9I/OA8A7A56AY0Y31X0X31D讀/寫……(2)重合法4.200000000000,031,00,31……I/OD0,0讀用矩陣的形式,選中行、列,交叉點即為所要訪問的存儲單元。15三、隨機存取存儲器(RAM)1.靜態RAM(SRAM)(1)靜態RAM基本電路A′觸發器非端1T4T~觸發器5TT6、行開關7TT8、列開關7TT8、一列共用A

觸發器原端T1~T4T5T6T7T8A′A寫放大器寫放大器DIN寫選擇讀選擇DOUT讀放位線A位線A′列地址選擇行地址選擇4.2T1~T4基本R-S觸發器,用于記憶1位二進制代碼。控制存儲單元是否被選中。16A′T1

~T4T5T6T7T8A寫放大器寫放大器DIN寫選擇讀選擇讀放位線A位線A′列地址選擇行地址選擇DOUT

①靜態RAM基本電路的讀

操作行選

T5、T6開4.2T7、T8開列選讀放DOUTVAT6T8DOUT讀選擇有效17T1~T4T5T6T7T8A′ADIN位線A位線A′列地址選擇行地址選擇寫放寫放讀放DOUT寫選擇讀選擇

②靜態RAM基本電路的寫

操作行選T5、T6開兩個寫放DIN4.2列選T7、T8開(左)

反相T5A′(右)

T8T6ADINDINT7寫選擇有效T1~T418(2)靜態RAM芯片舉例①Intel2114外特性存儲容量1K×4

位4.2I/O1I/O2I/O3I/O4A0A8A9WECSVCCGNDIntel2114…19

②Intel2114RAM矩陣(64×64)讀A3A4A5A6A7A8A0A1A2A915…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS第一組第二組第三組第四組4.22015…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS第一組第二組第三組第四組00000000004.2

②Intel2114RAM矩陣(64×64)讀21第一組第二組第三組第四組15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS00000000004.2

②Intel2114RAM矩陣(64×64)讀150311647326348…………22第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000150311647326348…………0…164832………2315…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000150311647326348…………0…164832………第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀0163248CSWE2415…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0…164832………第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀150311647326348…………01632480000000000…………2515…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000…………第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀150311647326348…………01632480…164832………2615…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000…………第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀150311647326348…………0163248讀寫電路讀寫電路讀寫電路讀寫電路0…164832………2715…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000…………第一組第二組第三組第四組4.2

②Intel2114RAM矩陣(64×64)讀150311647326348…………0163248讀寫電路讀寫電路讀寫電路讀寫電路0…164832………I/O1I/O2I/O3I/O428A3A4A5A6A7A8A0A1A2A915…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫2915…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS第一組第二組第三組第四組00000000004.2

③Intel2114

RAM矩陣(64×64)寫30第一組第二組第三組第四組15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS00000000004.2

③Intel2114

RAM矩陣(64×64)寫150311647326348…………31第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼I/O1I/O2I/O3I/O4WECS0000000000150311647326348…………WECS0…164832………32第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫I/O1I/O2I/O3I/O4WECS15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼0000000000150311647326348…………I/O1I/O2I/O3I/O40…164832………33第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫I/O1I/O2I/O3I/O4WECS15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼0000000000150311647326348…………I/O1I/O2I/O3I/O4讀寫電路讀寫電路讀寫電路讀寫電路0…164832………34第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫I/O1I/O2I/O3I/O4WECS15…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼0000000000150311647326348…………I/O1I/O2I/O3I/O4讀寫電路讀寫電路讀寫電路讀寫電路0…164832………35第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫I/O1I/O2I/O3I/O415…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼WECS0000000000150311647326348…………讀寫電路讀寫電路讀寫電路讀寫電路I/O1I/O2I/O3I/O40…164832………36第一組第二組第三組第四組4.2

③Intel2114

RAM矩陣(64×64)寫I/O1I/O2I/O3I/O415…031…1647…3263…48150311647326348讀寫電路讀寫電路讀寫電路讀寫電路……………………0163015……行地址譯碼列地址譯碼WECS0000000000150311647326348…………I/O1I/O2I/O3I/O4讀寫電路讀寫電路讀寫電路讀寫電路01632480…164832………37ACSDOUT地址有效地址失效片選失效數據有效數據穩定高阻(3)靜態RAM讀時序tAtCOtOHAtOTDtRC片選有效4.2讀周期

tRC

地址有效下一次地址有效讀時間

tA

地址有效數據穩定tCO

片選有效數據穩定tOTD

片選失效輸出高阻tOHA

地址失效后的數據維持時間38ACSWEDOUTDIN(4)靜態RAM(2114)寫

時序tWCtWtAWtDWtDHtWR寫周期

tWC

地址有效下一次地址有效4.2寫時間

tW

寫命令WE

的有效時間tAW地址有效片選有效的滯后時間tWR片選失效下一次地址有效tDW數據穩定

WE失效tDH

WE失效后的數據維持時間39DD預充電信號讀選擇線寫數據線寫選擇線讀數據線VCgT4T3T2T11(1)動態RAM基本單元電路2.動態RAM(DRAM)讀出與原存信息相反讀出時數據線有電流為“1”數據線CsT字線DDV010110寫入與輸入信息相同寫入時CS充電為“1”放電為“0”4.2T3T2T1T無電流有電流40單元電路讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D行地址譯碼器001131311A9A8A7A6A531A4A3A2A1A0刷新放大器寫數據線讀數據線……………0…(2)動態RAM芯片舉例①三管動態RAM芯片(Intel1103)讀00000000000D…004.2單元電路讀寫控制電路…41A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0…②三管動態RAM芯片(Intel1103)寫4.242111114.2②三管動態RAM芯片(Intel1103)寫A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0…43A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0…11111…4.2②三管動態RAM芯片(Intel1103)寫44A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……01000111114.2②三管動態RAM芯片(Intel1103)寫45A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……11111101000114.2②三管動態RAM芯片(Intel1103)寫…46A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……D111110100014.2②三管動態RAM芯片(Intel1103)寫…47A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……D111110100014.2②三管動態RAM芯片(Intel1103)寫讀寫控制電路…48A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……D111110100014.2②三管動態RAM芯片(Intel1103)寫讀寫控制電路…49A9A8A7A6A5讀寫控制電路列地址譯碼器………讀選擇線寫選擇線D單元電路行地址譯碼器00113131131A4A3A2A1A0刷新放大器寫數據線讀數據線……………0……D111110100014.2②三管動態RAM芯片(Intel1103)寫讀寫控制電路…50時序與控制行時鐘列時鐘寫時鐘

WERASCAS

A'6A'0存儲單元陣列基準單元行譯碼列譯碼器再生放大器列譯碼器讀出放大基準單元存儲單元陣列行譯碼

I/O緩存器數據輸出驅動數據輸入寄存器

DINDOUT~行地址緩存器列地址緩存器③單管動態RAM4116(16K×

1位)外特性4.2DINDOUTA'6A'0~51

讀放大器

讀放大器

讀放大器………………………06364127128根行線Cs01271128列選擇讀/寫線數據輸入器I/O緩沖輸出驅動DOUTDINCs④4116(16K×1位)芯片讀

原理

讀放大器

讀放大器

讀放大器……4.263000I/O緩沖器輸出驅動器OUTD列地址選擇管行選擇線左邊反相右邊同相52

讀放大器

讀放大器

讀放大器………………………06364127128根行線Cs01271128列選擇讀/寫線數據輸入I/O緩沖輸出驅動DOUTDINCs…⑤4116(16K×1位)芯片寫

原理數據輸入器I/O緩沖I/O緩沖DIN讀出放大器

讀放大器4.263053(3)動態RAM時序

行、列地址分開傳送寫時序行地址RAS有效寫允許WE有效(高)數據

DOUT

有效數據

DIN

有效讀時序4.2行地址RAS有效寫允許WE有效(低)列地址CAS有效列地址CAS有效54(4)動態RAM刷新

刷新與行地址有關①集中刷新(存取周期為0.5s

)“死時間率”為128/4000×100%=3.2%“死區”為0.5s

×128=64s

周期序號地址序號tc0123871387201tctctctc3999VW01127讀/寫或維持刷新讀/寫或維持3872個周期(1936s)

128個周期(64s)

刷新時間間隔(2ms)刷新序號??????tcXtcY??????4.2以128×128矩陣為例55tC=tM

+tR讀寫刷新無“死區”②

分散刷新(存取周期為1

s

)(存取周期為0.5s

+0.5s

)4.2以128

×128矩陣為例W/RREF0W/RtRtMtCREF126REF127REFW/RW/RW/RW/R刷新間隔128個存取周期…56③分散刷新與集中刷新相結合(異步刷新)對于128×128的存儲芯片(存取周期為0.5s

)將刷新安排在指令譯碼階段,不會出現“死區”“死區”為0.5s

若每隔15.6s

刷新一行每行每隔2ms

刷新一次4.2573.動態RAM和靜態RAM的比較DRAMSRAM存儲原理集成度芯片引腳功耗價格速度刷新電容觸發器高低少多小大低高慢快有無主存緩存4.258四、只讀存儲器(ROM)1.掩模ROM(MROM)行列選擇線交叉處有MOS管為“1”行列選擇線交叉處無MOS管為“0”2.PROM(一次性編程)VCC行線列線熔絲熔絲斷為“0”為“1”熔絲未斷4.2593.EPROM(多次性編程)(1)N型溝道浮動柵MOS電路——基本存儲單元4.2·初始態:每個單元的浮動柵極上都沒有電荷,源極與漏極之間不導電,此時表示該存儲單元保存的信息為“1”。

·寫入信息“0”:在漏極和源極(即S)之間加上十25v的電壓,同時加上編程脈沖信號(50ns),漏極與源極間被瞬時擊穿,電子注入到浮動柵。在高壓電源去除之后,浮動柵為負,就形成了導電溝道,從而使相應單元導通,即將0寫入該單元。·清除信息:用一定波長的紫外光照射浮動柵,使負電荷獲取足夠的能量,擺脫SiO2的包圍,以光電流的形式釋放掉,即原來存儲的信息也就不存在了。60G柵極S源D漏紫外線全部擦洗D端加正電壓形成浮動柵S與D不導通為“0”D端不加正電壓不形成浮動柵S與D導通為“1”SGDN+N+P基片GDS浮動柵

SiO2+++++___

4.261…控制邏輯Y譯碼X譯碼數據緩沖區Y控制128×128存儲矩陣……PD/ProgrCSA10A7…A6A0……DO0…DO7112…A7A1A0VSSDO2DO0DO1…27162413…VCCA8A9VPPCSA10PD/ProgrDO3DO7…(2)2716EPROM的邏輯圖和引腳4.2PD/ProgrPD/Progr功率下降/編程輸入端

讀出時為低電平624.EEPROM(多次性編程)電可擦寫局部擦寫全部擦寫5.FlashMemory(閃速型存儲器)4.2FLASH存儲器也翻譯成閃速存儲器,它是高密度非失易失性的讀/寫存儲器。高密度意味著它具有巨大比特數目的存儲容量。非易失性意味著存放的數據在沒有電源的情況下可以長期保存。總之,它既有RAM的優點,又有ROM的優點,稱得上是存儲技術劃時代的進展。63用1K

×

4位存儲芯片組成1K

×

8位的存儲器?片五、存儲器與CPU的連接1.存儲器容量的擴展(1)位擴展(增加存儲字長)10根地址線8根數據線DD……D0479AA0???21142114CSWE4.22片64(2)字擴展(增加存儲字的數量)用1K

×

8位存儲芯片組成2K

×

8位的存儲器11根地址線8根數據線4.2?片2片1K×8位1K×8位D7D0???????????????WEA1A0???A9CS0A10

1CS165(3)字、位擴展用1K

×

4位存儲芯片組成4K

×

8位的存儲器8根數據線12根地址線WEA8A9A0...D7D0…A11A10CS0CS1CS2CS3片選譯碼……………………4.21K×41K×41K×41K×41K×41K×41K×41K×4?片8片66(4)存儲器模塊條存儲器通常以插槽用模塊條形式供應市場。這種模塊條常稱為內存條,它們是在一個條狀形的小印制電路板上,用一定數量的存儲器芯片,組成一個存儲容量固定的存儲模塊。如圖所示。內存條有30腳、72腳、100腳、144腳、168腳等多種形式。30腳內存條設計成8位數據線,存儲容量從256KB~32MB。72腳內存條設計成32位數據總線100腳以上內存條既用于32位數據總線又用于64位數據總線,存儲容量從4MB~512MB。67練習:1.某計算機字長為16位,他的存儲容量是1MB,按字編址,他的尋址范圍是()2.某一RAM芯片,其容量為128K×16位,除電源和接地端外,該芯片引出線的最少數目是()

3.若主存每個存儲單元為16位,則()A.其地址線為16根B.其地址線數與16無關C.其地址線數與16有關684.下列敘述中()是正確的A.主存可由RAM和ROM組成B.主存只能由RAM組成5.設機器字長為32位,存儲容量為16MB,若按雙字編址,其尋址范圍是()A。8MBB.2MC.4M69

2.存儲器與CPU的連接

(1)地址線的連接(2)數據線的連接(3)讀/寫命令線的連接(4)片選線的連接(5)合理選擇存儲芯片(6)其他時序、負載4.2CPU低位和存儲芯片地址線相連,CPU高位產生片選信號等。擴充存儲芯片位數,使其與CPU數據線數相等。直接與存儲器讀寫控制端相連。可由CPU高位地址線產生;與訪存控制信號MREQ(低電平有效)有關ROM存放系統程序、標準子程序、各類常數。RAM(動態)存放用戶程序。70例4.1

設CPU有16根地址線,8根數據線,并用MREQ作訪存控制信號(低電平有效),用WR作讀/寫控制信號(高電平為讀,低電平為寫)。現有下列存儲芯片:1K×4位RAM;4K×8位RAM;8K×8位RAM;2K×8位ROM;4K×8位ROM;8K×8位ROM及74LS138譯碼器和各種門電路,如圖4.1所示。畫出CPU與存儲器的連接圖,要求①主存地址空間分配:6000H~67FFH為系統程序區;6800H~6BFFH為用戶程序區。②合理選用上述存儲芯片,說明各選幾片?③詳細畫出存儲芯片的片選邏輯圖。7172例4.1

解:

(1)寫出對應的二進制地址碼(2)確定芯片的數量及類型0110000000000000A15A14A13A11A10…A7…

A4A3…

A0…01100111111111110110100000000000…01101011111111112K×8位1K×8位RAM2片1K×4位ROM1片2K×8位4.273(3)分配地址線A10~A0接2K

×

8位ROM的地址線A9~A0接1K

×

4位RAM的地址線(4)確定片選信號CBA0110000000000000A15A13A11A10…A7…A4A3…

A0…01100111111111110110100000000000…01101011111111112K

×

8位1片ROM1K

×

4位2片RAM4.2742K

×8位ROM

1K

×4位

RAM1K

×4位

RAM………&PD/ProgrY5Y4G1CBAG2BG2A……MREQA14A15A13A12A11A10A9A0…D7D4D3D0WR…………例4.1

CPU與存儲器的連接圖4.2………75(1)寫出對應的二進制地址碼練習1

假設同前,要求最小4K為系統程序區,相鄰8K為用戶程序區。(2)確定芯片的數量及類型(3)分配地址線(4)確定片選信號1片4K

×

8位

ROM2片4K

×

8位

RAMA11~A0接ROM和RAM的地址線4.276練習2

設CPU有20根地址線,8根數據線。并用IO/M作訪存控制信號。RD為讀命令,WR為寫命令。現有2764EPROM(8K×8位),外特性如下:用138譯碼器及其他門電路(門電路自定)畫出CPU和2764的連接圖。要求地址為F0000H~FFFFFH,

并寫出每片2764的地址范圍。4.2…D7D0CEOECE片選信號OE允許輸出PGM可編程端PGM…A0A1277例4.2CPU及其它芯片假設同上題,畫出CPU與存儲器的連接圖。要求的地址空間滿足下述條件:最小8K地址為系統程序區,與其相鄰的16K地址為用戶程序區,最大4K地址空間為系統程序工作區。詳細畫出存儲芯片的片選邏輯并指出存儲芯片的種類及片數。78第二步,根據地址范圍的容量及其在計算機系統中的作用,確定最小8K系統程序區選1片8K×8位ROM;與其相鄰的16K用戶程序區選2片8K×8位RAM;最大4K系統程序工作區選1片4K×8位RAM。第三步,分配CPU地址線。將CPU的低13位地址線A12~A0與1片8K×8位ROM和兩片8K×8位RAM的地址線相連;將CPU的低12位地址線A11~A0與1片4K×8位RAM的地址線相連。第四步,形成片選信號。7980例4.3設CPU有20根地址線和16根數據線,并用IO/M作訪存控制信號,RD為讀命令,WR為寫命令。CPU可通過BHE和A0來控制按字節或字兩種形式訪存(如表4.1所示)。要求采用圖4.4所示的芯片,門電路自定。試回答:(1)CPU按字節訪問和按字訪問的地址范圍各是多少?(2)CPU按字節訪問時需分奇偶體,且最大64KB為系統程序區,與其相鄰的64KB為用戶程序區。寫出每片存儲芯片所對應的二進制地址碼。(3)畫出對應上述地址范圍的CPU與存儲芯片的連接圖。81解:(1)CPU按字節訪問的地址范圍為1M,CPU按字訪問的地址范圍是512K。82(2)由于CPU按字節訪存時需區分奇偶體,并且還可以按字訪問,因此如果選64K×8位的芯片,按字節訪問時體現不出奇偶分體;如果選32K×16位的芯片,雖然能按字訪問,但滿足不了以字節為最小單位。故一律選擇32K×8位的存儲芯片,其中系統程序區64KB選兩片32K×8位ROM,用戶程序區64KB選兩片32K×8位RAM。它們對應的二進制地址范圍是:8384六、存儲器的校驗編碼的糾錯、檢錯能力與編碼的最小距離有關L——編碼的最小距離D——檢測錯誤的位數C——糾正錯誤的位數漢明碼是具有一位糾錯能力的編碼4.2L1=D+C(D≥C)1.編碼的最小距離任意兩組合法代碼之間二進制位數的最少差異L=3具有一位糾錯能力85a)漢明碼的組成需增添?位檢測位b)檢測位的位置?c)檢測位的取值?2k

n+k+1檢測位的取值與該位所在的檢測“小組”中承擔的奇偶校驗任務有關組成漢明碼的三要素4.22.漢明碼的組成2i

(i=0,1,2,3,)…86各檢測位Ci

所承擔的檢測小組為gi

小組獨占第2i-1

位gi

和gj

小組共同占第2i-1+2j-1

位gi、gj

和gl

小組共同占第2i-1+2j-1+2l-1

位C1

檢測的g1小組包含第1,3,5,7,9,11,…C2

檢測的g2

小組包含第2,3,6,7,10,11,…C4

檢測的g3

小組包含第4,5,6,7,12,13,…C8

檢測的g4

小組包含第8,9,10,11,12,13,14,15,24,…4.287例4.4求0101按“偶校驗”配置的漢明碼解:∵n=4根據2k

≥n+k+1得k=3漢明碼排序如下:二進制序號名稱1234567C1C2C40∴0101的漢明碼為

010010101014.21088按配偶原則配置0011的漢明碼二進制序號名稱1234567C1C2C41000011解:∵n=4根據2k

≥n+k+1取k=3C1=357=1C2=367=0C4=567=0∴0011的漢明碼為

1000011練習14.2893.漢明碼的糾錯過程形成新的檢測位Pi

,如增添3位(k=3),新的檢測位為P4P2P1

。以k=3為例,Pi

的取值為P1=13

57P2=23

67P4=45

67對于按“偶校驗”配置的漢明碼不出錯時P1=0,P2=0,P4=0C1C2C4其位數與增添的檢測位有關,4.290P1=1357=0無錯P2=2367=1有錯P4=4567=1有錯∴

P4P2P1=110第6位出錯,可糾正為0100101,故要求傳送的信息為

0101。糾錯過程如下例4.5解:

已知接收到的漢明碼為0100111(按配偶原則配置)試問要求傳送的信息是什么?4.2

91練習2P4=4567=1P2=2367=0P1=1357=0∴P4P2P1=100第4位錯,可不糾寫出按偶校驗配置的漢明碼0101101的糾錯過程練習3按配奇原則配置0011的漢明碼配奇的漢明碼為01010114.292七、提高訪存速度的措施采用高速器件:SDRAM、RDRAM調整主存結構:單體多字系統、多體并行系統1.單體多字系統W位W位W位W位W位

地址寄存器

主存控制器......單字長寄存器數據寄存器存儲體采用層次結構:Cache–主存增加存儲器的帶寬4.2932.多體并行系統(1)高位交叉M0……M1……M2M3…………4.2體內地址體號體號地址000000000001001111010000010001011111100000100001101111110000110001111111順序編址(順序存儲)94各個體并行工作4.2M0地址01……n-1M1nn+1……2n-1M22n2n+13n-1M33n3n+14n-1…………地址譯碼體內地址體號體號(1)高位交叉951.各模塊間順序存儲,一模塊滿才能存儲下一模塊。2.高位地址為體號,低位地址為體內地址。地址是連續的,有利于存儲器的擴充。3.并行工作:不同的請求源可同時訪問不同的體。4.2高位交叉的特點:

96M0……M1……M2M3…………

體號體內地址地址000000000001000010000011000100000101000110000111111100111101111110111111(2)低位交叉(交叉存儲)各個體輪流編址97M0地址04……4n-4M115……4n-3M2264n-2M3374n-1…………地址譯碼

體號體內地址

體號(2)低位交叉各個體輪流編址(模m編址)98低位交叉的特點在不改變存取周期的前提下,增加存儲器的帶寬,適用于成批數據的讀取。時間單體訪存周期單體訪存周期4.2啟動存儲體0啟動存儲體1啟動存儲體2啟動存儲體399

4.2設四體低位交叉存儲器,存取周期為T,總線傳輸周期為τ,為實現流水線方式存取,應滿足T=4τ。連續讀取4個字所需的時間為

T+(4

-1)τ若為高位交叉編址,則連續讀取4個字所需的時間為4T100例:設有四個模塊組成的四體存儲器結構,每個體的存儲字長為32位,存取周期為200ns。假設數據總線寬度為32位,總線傳輸周期為50ns,試求順序存儲和交叉存儲的存儲器帶寬。解:順序存儲(高位交叉編址)和交叉存儲(低位交叉編址)連續讀出4個字的信息量是32×4=128位。順序存儲存儲器連續讀出4個字的時間是200ns×4=800ns=8×10-7s交叉存儲存儲器連續讀出4個字的時間是200ns+50ns×(4-1)=350ns=3.5×10-7s順序存儲器的帶寬是128/(8×10-7)=16×107bps交叉存儲器的帶寬是128/(3.5×10-7)=37×107bps101(3)存儲器控制部件(簡稱存控)合理安排各部件請求訪問的順序以及控制主存讀寫操作的功能。易發生代碼丟失的請求源,優先級最高(如:外設)一旦響應某請求源的請求,CM置1,啟動節拍發生器。4.2控制線路排隊器節拍發生器QQCM來自各個請求源

…主脈沖存控標記觸發器嚴重影響CPU工作的請求源,給予次高優先級(如:寫數>讀數>讀指令)1024.23.高性能存儲芯片(1)SDRAM(同步DRAM)在系統時鐘的控制下進行讀出和寫入。以處理器-存儲器總線的最高速度運行,不需插入等待狀態。CPU無須等待:CPU給出的地址信號會被SDRAM鎖存,直到指定的時鐘周期數后再響應。支持猝發訪問模式:CPU發出一個地址可以連續訪問一個數據塊。可包含多個存儲體,這些體可以輪流工作,提高訪問速度。f)DDR-SDRAM:雙數據速率,每周期兩次向CPU送出數據。1034.2(2)RDRAM由Rambus

開發,主要解決存儲器帶寬問題,通過高速總線獲得存儲器請求,總線最多可尋址320塊RDRAM芯片,傳輸率可達1.6GBps。b)采用異步的面向塊的傳輸協議傳送地址信息和數據信息。通過互連電路RamLink連接,數據交換以包為單位。(3)CDRAM(帶

Cache

DRAM)在DRAM的芯片內集成了一個由SRAM

組成的Cache

,有利于猝發式讀取

.SRAM用于保存一行內容。允許在寫操作完成同時啟動同一行的讀操作。c)在SRAM讀出期間可同時對DRAM陣列進行刷新。104(3)雙端口存儲器1)因同一個存儲器具有兩組相互獨立的讀寫控制電路而得名。兩個端口,一個面向CPU,一個面向外設和I/O處理機,兩端口可獨立使用,也可訪問同一單元,增大信息吞吐量。由于進行并行的獨立操作,因而是一種高速工作的存儲器,在科研和工程中非常有用。2)在運算器中,可作為通用寄存器組,能快速提供雙操作數。3)在多機系統中,作為CPU的共享存儲器,實現多CPU間的通信。105雙端口存儲器IDT7133的邏輯框圖106補充:相聯存儲器原理:按內容存取的存儲器,可以選擇記錄(關鍵字)的一個字段作為地址組成:見下一頁圖主要用途:在虛擬存儲器中存放段表、頁表和快表,也可以作Cache的行地址1071084.3高速緩沖存儲器一、概述1.問題的提出a.避免CPU“空等”現象b.CPU和主存(DRAM)的速度差異緩存CPU主存容量小速度高容量大速度低根據:程序訪問的局部性原理:在一個較短的時間間隔內,程序所訪問的存儲器地址在很大比例上集中在存儲器地址空間的很小范圍內。1092.Cache的工作原理(1)主存和緩存的編址主存和緩存按塊存儲塊的大小相同B

為塊長~~~~……主存塊號主存儲器012m-1字塊0字塊1字塊M-1主存塊號塊內地址m位b位n位M塊B個字緩存塊號塊內地址c位b位C塊B個字~~~~……字塊0字塊1字塊C-1012c-1標記Cache緩存塊號4.3110(2)命中與未命中緩存共有C

塊主存共有M

塊M>>C主存塊調入緩存主存塊與緩存塊建立了對應關系用標記記錄與某緩存塊建立了對應關系的主存塊號命中未命中主存塊與緩存塊未建立對應關系主存塊未調入緩存4.3111(3)Cache的命中率命中率:CPU欲訪問的信息在Cache中的比率b.命中率與Cache的容量與塊長有關c.

一般每塊可取4~8個字d.塊長也可取一個存取周期內從主存調出的信息長度CRAY_116體交叉塊長取16個存儲字

IBM370/1684體交叉

塊長取4個存儲字4.3a.命中率用來衡量Cache的效率。命中率h=訪問Cache的總命中次數Nc/Nc+訪問主存的總次數112(4)Cache–主存系統的效率效率e

與命中率有關

設Cache命中率為h,訪問Cache

的時間為tc

訪問主存的時間為tm

4.3則

e=×100%tc

h

×

tc+(1-h)×tm

訪問Cache的時間

平均訪問時間

e=×100%113例1.假設CPU執行某段程序時,共訪問Cache命中2000次,訪問主存50次。已知Cache的存取周期為50ns,主存的存取周期為200ns。求Cache-主存系統的命中率、效率和平均訪問時間。(1)Cache的命中率為2000/(2000+50)=0.97(2)由題可知,訪問主存的時間是訪問Cache時間的4倍(200/50=4),設訪問Cache的時間為t,訪問主存的時間為4t,Cache-主存系統的訪問效率為e,則(3)平均訪問時間=50ns×0.97+200ns×(1–0.97)=54.5ns1142.CRAY_1的主存是16體交叉,每個體為單字寬,則存放指令的Cache塊長為

個存儲字。3.IBM370的主存是4體交叉,每個體寬為64位,則存放指令的Cache塊長為

個字節。1153.Cache的基本結構4.3Cache替換機構Cache存儲體主存Cache地址映射變換機構由CPU完成CPU與Cache之間的數據傳送是以字為單位,主存與Cache之間的數據傳送是以塊為單位116cache基本原理地址映射;替換策略;寫一致性;性能評價。1174.Cache的讀寫操作

訪問Cache取出信息送CPU

訪問主存取出信息送CPU將新的主存塊調入Cache中執行替換算法騰出空位

結束命中?Cache滿?CPU發出訪問地址

開始是否是否讀4.3118Cache和主存的一致性4.Cache的讀寫操作寫4.3寫直達法(Write–

through)寫回法(Write–

back)寫操作時數據既寫入Cache又寫入主存

寫操作時只把數據寫入Cache而不寫入主存當Cache數據被替換出去時才寫回主存

寫操作時間就是訪問主存的時間,讀操作時不涉及對主存的寫操作,更新策略比較容易實現寫操作時間就是訪問Cache的時間,讀操作Cache失效發生數據替換時,被替換的塊需寫回主存,增加了Cache的復雜性更新策略1195.Cache的改進(1)增加Cache的級數片載(片內)Cache片外Cache(2)統一緩存和分立緩存指令Cache數據Cachea.與主存結構有關b.與指令執行的控制方式有關超前控制和流水線控制方式都要分立緩存。4.3

參見課本116頁圖4.52120

字塊2m-1

字塊2c+1

字塊2c+1-1

字塊2c

+1

字塊2c

字塊2c-1

字塊1字塊0………主存儲體字塊1

標記字塊0

標記字塊2c-1標記Cache存儲體t位012c-1…字塊字塊地址主存字塊標記t

位c

位b

位主存地址比較器(t位)=≠不命中有效位=1?*m位Cache內地址否是命中二、Cache–

主存的地址映射1.直接映射每個緩存塊

i

可以和若干個主存塊對應每個主存塊

j

只能和一個緩存塊對應i=j

mod

C4.3

字塊2c+1

字塊2c字塊0字塊01212.全相聯映射主存中的任一塊可以映射到緩存中的任一塊字塊2m-1字塊2c-1字塊1

字塊0……字塊2c-1字塊1字塊0…標記標記標記主存字塊標記

字塊內地址主存地址m=t+c

位b位m

=

t+cCache存儲器主存儲器

字塊04.3122字塊2m-1字塊2c-r+1

字塊2c-r+

1字塊2c-r字塊2c-r

字塊1字塊0………字塊3標記字塊1標記字塊2c-1標記字塊2標記字塊0標記字塊2c-2標記…………字塊內地址組地址主存字塊標記s=t+r

位q=

c-r

位b

位組012c-r-1主存地址Cache主存儲器m

位共Q

組,每組內兩塊(r=1)1某一主存塊

j

按模Q

映射到緩存的第i

組中的任一塊i=j

mod

Q直接映射全相聯映射3.組相聯映射4.3字塊0字塊1字塊0字塊2c-r字塊2c-r+1123三、替換算法隨機算法:用軟的或硬的隨機數產生器來形成主存重要被替換頁的頁號。簡單,易于實現;沒有利用歷史信息;命中率低,很少使用2.近期最少使用

溫馨提示

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

評論

0/150

提交評論