第五章(主存儲(chǔ)器)×完成_第1頁(yè)
第五章(主存儲(chǔ)器)×完成_第2頁(yè)
第五章(主存儲(chǔ)器)×完成_第3頁(yè)
第五章(主存儲(chǔ)器)×完成_第4頁(yè)
第五章(主存儲(chǔ)器)×完成_第5頁(yè)
已閱讀5頁(yè),還剩72頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第 5 章 主存儲(chǔ)器 存儲(chǔ)器是用來(lái)存儲(chǔ)二進(jìn)制信息(程序、數(shù)據(jù))。 存儲(chǔ)器是計(jì)算機(jī)中各種信息的存儲(chǔ)與交流中心。在控制器的控制下,存儲(chǔ)器可與I/O設(shè)備、運(yùn)算器、控制器交換信息,起存儲(chǔ)、緩沖、傳遞信息的作用。5.1主存儲(chǔ)器的基本原理主要有主存容量、存儲(chǔ)器存取時(shí)間和存儲(chǔ)周期、數(shù)據(jù)帶寬。 1、存儲(chǔ)容量存儲(chǔ)器可以容納的二進(jìn)制信息位數(shù)稱(chēng)為存儲(chǔ)容量。單位:位、字節(jié)、字。指令中地址碼的位數(shù)決定了可直接尋址的空間。例如機(jī)器提供了n位物理地址,支持2n字的物理主存空間的訪(fǎng)問(wèn)。1G210M220K230 一、主存儲(chǔ)器的主要性能指標(biāo) 2、速度 (1)存儲(chǔ)器存取時(shí)間TA啟動(dòng)一次存儲(chǔ)器操作(從收到讀或?qū)懖僮鞯拿?到該操作

2、完成所需要的時(shí)間稱(chēng)為訪(fǎng)問(wèn)時(shí)間或存取時(shí)間。存儲(chǔ)器的存取時(shí)間在ns(毫微秒,1ns=10-9 秒)級(jí)。 (2)存儲(chǔ)周期TM指連續(xù)啟動(dòng)兩次獨(dú)立的存儲(chǔ)器操作所需要的最小間隔時(shí)間,或者指存儲(chǔ)器進(jìn)行一次完整的讀寫(xiě)操作所需要的全部時(shí)間。存儲(chǔ)周期大于等于存取時(shí)間。 (3)數(shù)據(jù)傳送速率BM(頻寬、帶寬)指在單位時(shí)間內(nèi)存儲(chǔ)器能傳送(交換)信息的位數(shù)。 BMW/TM (位/秒)W是存儲(chǔ)器一次讀寫(xiě)數(shù)據(jù)的寬度二、主存儲(chǔ)器的基本操作 主存儲(chǔ)器和CPU是通過(guò)總線(xiàn)連接的,如下圖。MARMDR2k字(n位/字)主存儲(chǔ)器地址總線(xiàn)k位數(shù)據(jù)總線(xiàn)n位ReadWriteReadyCPU圖主存儲(chǔ)器和CPU的連接 總線(xiàn)包括數(shù)據(jù)總線(xiàn)、地址總線(xiàn)

3、和控制總線(xiàn)。 CPU通過(guò)MAR(存儲(chǔ)器地址寄存器)和MDR(存儲(chǔ)器數(shù)據(jù)寄存器)與主存進(jìn)行數(shù)據(jù)交換。 控制總線(xiàn)包括控制數(shù)據(jù)傳送的讀(Read)、寫(xiě)(Write)和表示存儲(chǔ)器完成的(Ready)控制線(xiàn)。 讀操作:(1)CPU需要把信息字的地址送到MAR,經(jīng)地址總線(xiàn)送往主存儲(chǔ)器。(2)CPU應(yīng)用控制線(xiàn)(Read)發(fā)一個(gè)“讀”請(qǐng)求。(3)CPU等待從主存儲(chǔ)器發(fā)來(lái)的回答信號(hào)Ready ,通知CPU“讀”操作完成。 若Ready信號(hào)為“1”,說(shuō)明存儲(chǔ)字的內(nèi)容已經(jīng)讀出,并放在數(shù)據(jù)總線(xiàn)上,送入MDR。 寫(xiě)操作:(1)CPU需要把信息字的地址送到MAR,經(jīng)地址總線(xiàn)送往主存儲(chǔ)器。(2)將信息字送存儲(chǔ)器的同時(shí),CP

4、U應(yīng)用控制線(xiàn)(Write)發(fā)一個(gè)“寫(xiě)”請(qǐng)求。(3)CPU等待“寫(xiě)”操作完成信號(hào)Ready。 主存儲(chǔ)器從數(shù)據(jù)總線(xiàn)接收到信息字并按地址總線(xiàn)指定的地址存儲(chǔ),然后經(jīng)Ready控制線(xiàn)發(fā)回存儲(chǔ)器操作完成信號(hào)。主存芯片的基本組成主存芯片的基本組成存儲(chǔ)體存儲(chǔ)體驅(qū)動(dòng)器驅(qū)動(dòng)器譯碼器譯碼器MARMAR控制電路控制電路讀讀寫(xiě)寫(xiě)電電路路MDRMDR.地址總線(xiàn)地址總線(xiàn)數(shù)據(jù)總線(xiàn)數(shù)據(jù)總線(xiàn)讀讀寫(xiě)寫(xiě)三、半導(dǎo)體讀/寫(xiě)存儲(chǔ)器芯片(隨機(jī)存儲(chǔ)器) 要求存儲(chǔ)單元的內(nèi)容既能寫(xiě)入又能讀出。 缺點(diǎn)是所保存的信息在斷電后會(huì)立即消失,是易失性存儲(chǔ)器。 讀/寫(xiě)存儲(chǔ)器按所用元件的類(lèi)型分為 雙極型存儲(chǔ)器 MOS存儲(chǔ)器 按MOS存儲(chǔ)器在運(yùn)行中能否長(zhǎng)時(shí)間保存

5、信息可分為:1、靜態(tài)存儲(chǔ)器SRAM。存放的內(nèi)容,在不停電、不訪(fǎng)問(wèn)的情況下能長(zhǎng)時(shí)間保持不變。2、動(dòng)態(tài)存儲(chǔ)器DRAM。存放的內(nèi)容,即使在不停電、不訪(fǎng)問(wèn)的情況下,隔一段時(shí)間之后也會(huì)自動(dòng)消失。動(dòng)態(tài)存儲(chǔ)器為了保持存放的信息不消失,在信息消失之前根據(jù)原來(lái)存放的內(nèi)容重新寫(xiě)入一遍,這個(gè)過(guò)程稱(chēng)為刷新或再生。半導(dǎo)體存儲(chǔ)芯片的基本結(jié)構(gòu)半導(dǎo)體存儲(chǔ)芯片的基本結(jié)構(gòu)譯譯碼碼驅(qū)驅(qū)動(dòng)動(dòng)存存儲(chǔ)儲(chǔ)矩矩陣陣讀讀寫(xiě)寫(xiě)電電路路片選線(xiàn)片選線(xiàn)讀讀/ /寫(xiě)控制線(xiàn)寫(xiě)控制線(xiàn)地地址址線(xiàn)線(xiàn)數(shù)數(shù)據(jù)據(jù)線(xiàn)線(xiàn)芯片容量芯片容量地址線(xiàn)地址線(xiàn)(單向)(單向)數(shù)據(jù)線(xiàn)數(shù)據(jù)線(xiàn)(雙向)(雙向)1K 4位位10416K 1位位1418K 8位位138 注意:讀寫(xiě)是分開(kāi)的,數(shù)

6、據(jù)輸入與輸出好是分開(kāi)為。 seli 稱(chēng)為地址選擇線(xiàn)或字線(xiàn)。數(shù)據(jù)線(xiàn)d稱(chēng)為位線(xiàn) 下面給出一個(gè)字長(zhǎng)8位,容量32個(gè)字的SDRAM的Verilog HDL code。SDRAM codemodule SDRAM ( clk , / Clock Input address , / Address Input data , / Data bi-directional cs , / Chip Select we , / Write Enable/Read Enable oe / Output Enable ); parameter DATA_WIDTH = 8 ; parameter ADDR_WIDTH

7、= 8 ; parameter RAM_DEPTH = 1 ADDR_WIDTH; /-Input Ports- input clk , cs , we, oe ; input ADDR_WIDTH-1:0 address ; /-Inout Ports- inout DATA_WIDTH-1:0 data ; /-Internal variables- reg DATA_WIDTH-1:0 data_out ; reg DATA_WIDTH-1:0 mem 0:RAM_DEPTH-1; reg oe_r; /-Code Starts Here- / Tri-State Buffer cont

8、rol . output : When we = 0, oe = 1, cs =1 assign data= (cs & oe & ! we) ? data_out : 8bz; / Memory Write Block . Write Operation : When we = 1, cs = 1 always (posedge clk) begin : MEM_WRITE if ( cs & we ) begin memaddress = data; endend / Memory Read Block . Read Operation : When we = 0,

9、 oe = 1, cs = 1 always (posedge clk) begin : MEM_READ if (cs & ! we & oe) begin data_out = memaddress; oe_r = 1; end else begin oe_r = 0; end end endmodule SDRAM testbench codetimescale 1ns/1nsmodule test_sdram; parameter DATA_WIDTH = 8 ; parameter ADDR_WIDTH = 8 ; parameter RAM_DEPTH = 1 AD

10、DR_WIDTH; /-Input Ports- reg clk , cs , we, oe; wire DATA_WIDTH-1:0 data; /-Inout Ports- reg DATA_WIDTH-1:0 data_reg ; /-Internal variables- reg ADDR_WIDTH-1:0 address , i;initial begin for(i=0;i256;i=i+1) begin #100 clk=0; cs=0;we=0;oe=0; #100 address=i; data_reg=i+2; #100 clk=1;cs=1;we=0;oe=0; end

11、 end assign data=data_reg;SDRAM m(.clk(clk),.address(address),.data(data),.cs(cs),.we(we),.oe(oe);endmodule 5.1.1 靜態(tài)存儲(chǔ)器 1、存儲(chǔ)單元和存儲(chǔ)器 靜態(tài)存儲(chǔ)器(SRAM)的基本單元是一個(gè)雙穩(wěn)態(tài)觸發(fā)器電路,可有多種方案。下圖是其中的一種。 說(shuō)明:由兩個(gè)反相器首尾相連構(gòu)成。a為輸出端。反向器符號(hào)小的強(qiáng)度弱。當(dāng)兩信號(hào)在同一結(jié)點(diǎn)相遇時(shí),由信號(hào)強(qiáng)度高者決定該結(jié)點(diǎn)的值。 圖中sel由地址譯碼器的輸出控制:sel=1表示此單元被選中,可以讀或者寫(xiě)操作。sel=0表示此單元未被選中,不能進(jìn)行讀或者

12、寫(xiě)操作。 write和read的作用如下表selwrite reada的取值0XX保持原狀100保持原狀101a的值輸出110由di決定111不允許 靜態(tài)MOS型與雙極型器件比較 優(yōu)點(diǎn):位密度高,制造容易。阻抗高,功耗小。在不掉電情況下,信息不會(huì)丟失。 缺點(diǎn):速度慢,功耗大,集成度低。 半導(dǎo)體存儲(chǔ)芯片的譯碼驅(qū)動(dòng)方式半導(dǎo)體存儲(chǔ)芯片的譯碼驅(qū)動(dòng)方式 用存儲(chǔ)元構(gòu)成存儲(chǔ)器,如何安排存儲(chǔ)元的排列?如16*8位存儲(chǔ)元排成16*8矩陣,地址譯碼采用單譯碼方式。1K*1位可以排列成32*32矩陣,地址譯碼采用雙譯碼方式。0,015,015,70,7 讀讀/寫(xiě)控制電路寫(xiě)控制電路 地地址址譯譯碼碼器器 字線(xiàn)字線(xiàn)01

13、5168矩陣矩陣07D07D 位線(xiàn)位線(xiàn) 讀讀 / 寫(xiě)選通寫(xiě)選通A3A2A1A0(1)單譯碼方式00000,00,7007D07D 讀讀 / 寫(xiě)寫(xiě)選通選通A3A2A1A0A40,310,031,031,31 Y 地址譯碼器地址譯碼器 X地地址址譯譯碼碼器器 3232 矩陣矩陣A9I/OA8A7A56AY0Y31X0X31D讀讀/寫(xiě)寫(xiě)(2)雙譯碼方式00000000000,031,00,31I/OD0,0讀讀圖7.81K靜態(tài)存儲(chǔ)器框圖讀寫(xiě)信號(hào)片選信號(hào)地址碼地址碼存儲(chǔ)陣列 下圖所示是1K*1靜態(tài)存儲(chǔ)器的框圖表1K靜態(tài)存儲(chǔ)器的功能表CS#WE#DINDOUT操作方式XX高阻態(tài)未選LLL寫(xiě)“0”LL寫(xiě)“

14、1”LXDOUT讀片選信號(hào)CS#用于擴(kuò)展靜態(tài)存儲(chǔ)器的字?jǐn)?shù)。下表為其功能表下表為其功能表兩種譯碼方式的比較地址寬度地址寬度譯碼器輸出線(xiàn)數(shù)譯碼器輸出線(xiàn)數(shù)驅(qū)動(dòng)器數(shù)驅(qū)動(dòng)器數(shù)基本單元接收基本單元接收的選擇端數(shù)的選擇端數(shù)單譯碼1665536655361雙級(jí)譯碼X8162565122565122Y8256256 以地址碼寬度16b為例進(jìn)行比較。說(shuō)明:地址譯碼器的輸出是地址選擇線(xiàn),連接到一個(gè)字的所有基本單元,負(fù)載較重,所以需要使用驅(qū)動(dòng)器。 與單級(jí)譯碼和雙級(jí)譯碼相對(duì)應(yīng),CPU向主存?zhèn)魉偷刂酚幸淮蝹魉秃投蝹魉偷姆桨浮6蝹魉头桨钢械谝淮蝹魉托械刂?,第二次傳送列地址?二次傳送的使地址總線(xiàn)的寬度減半,減少了引腳的

15、數(shù)量,降低了成本。但是由此而增加了地址傳送所需的時(shí)間,降低了讀寫(xiě)速度。 一般情況下,當(dāng)某個(gè)存儲(chǔ)單元被訪(fǎng)問(wèn)后,其臨近的單元也可能很快被訪(fǎng)問(wèn)。所以第一次訪(fǎng)問(wèn)主存時(shí),既要傳送行地址,又要傳送列地址,后續(xù)訪(fǎng)問(wèn)主存時(shí),就可以判斷本次的行地址是否與上次的行地址相同,如果相同就只可傳送列地址,從而節(jié)省時(shí)間。CPU第一次訪(fǎng)問(wèn)主存CPU向主存發(fā)送行地址主存接收行地址并譯碼CPU向主存發(fā)送列地址主存接收列地址并譯碼CPU后續(xù)訪(fǎng)問(wèn)主存本次行地址與上次相同?YN主存執(zhí)行讀寫(xiě)5.1.2動(dòng)態(tài)MOS型存儲(chǔ)元件 (1)存儲(chǔ)元和存儲(chǔ)器原理 動(dòng)態(tài)存儲(chǔ)元電路是利用MOS管柵極電容(MOS電容)上充積的電荷來(lái)存儲(chǔ)信息的。 由于有漏電

16、阻存在,電容上的電荷不可能長(zhǎng)久保存,需要周期性地對(duì)電容充電,以補(bǔ)充泄漏的電荷,通常把這種補(bǔ)充電荷的做法叫刷新。 單管動(dòng)態(tài)存儲(chǔ)元電路如下圖。它由一只晶體管和一個(gè)電容組成。圖單管存儲(chǔ)單元線(xiàn)路圖特制的MOS電容CS有無(wú)電荷分別表示“1”和“0”。 寫(xiě)入過(guò)程:對(duì)某單元寫(xiě)入時(shí),字線(xiàn)為高電平,T導(dǎo)通。 若數(shù)據(jù)線(xiàn)為高電平(寫(xiě)1)且CS上無(wú)儲(chǔ)存電荷,則通過(guò)T對(duì)CS充電。 若數(shù)據(jù)線(xiàn)為低電平(寫(xiě)0)且CS上有儲(chǔ)存電荷,則CS通過(guò)T放電。 如寫(xiě)入的數(shù)據(jù)與原存數(shù)據(jù)相同,則CS上的電荷保持不變。 讀出過(guò)程:讀出時(shí),數(shù)據(jù)線(xiàn)預(yù)充電至高電平。 當(dāng)字線(xiàn)上加高電平,T導(dǎo)通,若原來(lái)CS上就有電荷,則CS放電,使數(shù)據(jù)線(xiàn)有電位,此時(shí)若

17、在數(shù)據(jù)線(xiàn)上接一個(gè)讀出放大器,便可檢出CS的“1”態(tài)。 若原來(lái)CS上無(wú)電荷,則數(shù)據(jù)線(xiàn)無(wú)電位變化,放大器無(wú)輸出。表示CS上存儲(chǔ)的是“0”。 優(yōu)點(diǎn):線(xiàn)路簡(jiǎn)單,單元占用面積小,速度快。 缺點(diǎn):讀出是破壞性的,在讀出后要立即對(duì)單元進(jìn)行“重寫(xiě)”,以恢復(fù)原來(lái)存放的信息。圖 16K*1動(dòng)態(tài)存儲(chǔ)器框圖 以16K*1位的動(dòng)態(tài)存儲(chǔ)器為例介紹動(dòng)態(tài)存儲(chǔ)器的原理,如下圖。 16K字存儲(chǔ)器需要14位地址碼,分兩批(每批7位)送至存儲(chǔ)器。先送行地址,后送列地址。 行地址由行地址選通信號(hào)RAS#送入。 列地址由列地址選通信號(hào)CAS#送入。 16K位存儲(chǔ)單元矩陣由兩個(gè)64*128陣列組成。 讀出放大器由觸發(fā)器構(gòu)成(如下圖),其原

18、理:考慮一個(gè)完全平衡的對(duì)稱(chēng)觸發(fā)器,在無(wú)外力強(qiáng)制作用下,其輸出D,D有一個(gè)必為高電平,另一個(gè)為低電平。若對(duì)它施加一外力,如把D,D短路,則D,D有相等的電位。移去外力后,觸發(fā)器有可能穩(wěn)定在D為高電位狀態(tài),也可能穩(wěn)定在D為低電平狀態(tài)。如在移去外力的瞬間,把一個(gè)很小的電荷量引入某一輸出端,則觸發(fā)器必朝某確定方向轉(zhuǎn)換。圖動(dòng)態(tài)存儲(chǔ)器讀出放大器 用觸發(fā)器作讀出放大器具有靈敏度高、讀出速度快等優(yōu)點(diǎn)。 問(wèn)題: 存儲(chǔ)矩陣每一列有很多個(gè)存儲(chǔ)單元,如果把這么多存儲(chǔ)單元的數(shù)據(jù)線(xiàn)都接在讀放的一端,那么分布電容會(huì)使觸發(fā)器失去平衡。 如果單元存儲(chǔ)的是“0”,則在讀出時(shí)數(shù)據(jù)線(xiàn)電位是不變的,此時(shí)相當(dāng)于在移去外力時(shí),無(wú)電荷引入觸

19、發(fā)器輸出端,則觸發(fā)器的狀態(tài)將不穩(wěn)定。 采取辦法如下圖。圖 16K*1動(dòng)態(tài)存儲(chǔ)器的存儲(chǔ)矩陣、讀出放大器及參考單元 (2)再生 為了保證存儲(chǔ)的信息不遭破壞,必須在電荷漏掉以前就進(jìn)行充電,以恢復(fù)原來(lái)的電荷。這一充電過(guò)程稱(chēng)為再生,或刷新。 一般情況下,再生應(yīng)2ms的時(shí)間內(nèi)進(jìn)行一次。 靜態(tài)RAM是以雙穩(wěn)態(tài)電路為存儲(chǔ)單元進(jìn)行的,因此不需要再生。 動(dòng)態(tài)RAM采用“讀出”方式進(jìn)行再生。 接在單元數(shù)據(jù)線(xiàn)上的讀放是一個(gè)再生放大器,在讀出的同時(shí),讀放又使該單元存儲(chǔ)的信息自動(dòng)地得以恢復(fù)。 由于動(dòng)態(tài)RAM每列都有自己的讀放,因此只要依次改變列行地址,輪流對(duì)存儲(chǔ)矩陣的每一行所有單元同時(shí)進(jìn)行讀出,當(dāng)把所有行全部讀一遍,就完

20、成了對(duì)存儲(chǔ)器的再生(行地址再生)。 (3)時(shí)序圖 DRAM有以下幾種工作方式: 讀工作方式 寫(xiě)工作方式 讀改寫(xiě)工作方式 頁(yè)面工作方式 再生工作方式 時(shí)序圖中所用的時(shí)序符號(hào)如下表。表 常用的時(shí)序符號(hào) RAS#,CAS#與Adr的關(guān)系如下圖。圖 動(dòng)態(tài)存儲(chǔ)器RAS#/CAS#與Adr的相互關(guān)系 在以后給出各種工作方式的時(shí)序圖中,RAS#,CAS#,Adr的相互關(guān)系就不再詳細(xì)畫(huà)出了。圖 動(dòng)態(tài)存儲(chǔ)器讀工作方式時(shí)序圖圖 動(dòng)態(tài)存儲(chǔ)器寫(xiě)工作方式時(shí)序 (4)小結(jié)類(lèi)型存儲(chǔ)單元容量引腳數(shù)價(jià)格功耗速度電路動(dòng)態(tài)單管大少便宜 小慢需要再生,復(fù)雜靜態(tài)觸發(fā)器小多貴大快外圍電路簡(jiǎn)單5.2 主存儲(chǔ)器與CPU的連接 前面講過(guò),CP

21、U要訪(fǎng)問(wèn)主存就要將被訪(fǎng)問(wèn)的存儲(chǔ)單元的地址通過(guò)地址總線(xiàn)(AB)送到存儲(chǔ)器,CPU和主存之間的數(shù)據(jù)交換是通過(guò)數(shù)據(jù)總線(xiàn)(DB)進(jìn)行傳輸,讀寫(xiě)控制信號(hào)是通過(guò)控制總線(xiàn)(CB)傳遞。 CPU與存儲(chǔ)器連接時(shí),需要考慮以下問(wèn)題。 1、存儲(chǔ)芯片的地址分配和片選 線(xiàn)選法-除片內(nèi)尋址外,高位地址線(xiàn)直接(或經(jīng)非門(mén))分別接到各個(gè)存儲(chǔ)芯片的片選端,當(dāng)某根地址線(xiàn)(只允許一根)上的信號(hào)為有效時(shí),與該地址線(xiàn)相連的芯片被選中工作。 部分譯碼-除片內(nèi)尋址外,高位地址線(xiàn)中選擇幾根送到譯碼器,譯碼器的輸出分別接到各個(gè)存儲(chǔ)芯片的片選端,只有譯碼器輸出信號(hào)為有效時(shí),與該輸出線(xiàn)相連的芯片被選中工作。 全譯碼-除片內(nèi)尋址外,高位地址線(xiàn)中全部送

22、到譯碼器。 注:前兩種地址不唯一,后一種地址唯一。 2、數(shù)據(jù)總線(xiàn)匹配和存儲(chǔ)器接口 數(shù)據(jù)總線(xiàn)寬度是指數(shù)據(jù)總線(xiàn)一次能并行傳輸二進(jìn)制的位數(shù)。 假設(shè)主存按字節(jié)編址(8位),CPU的數(shù)據(jù)總線(xiàn)分別是8位,16位,32位,64位時(shí),如何進(jìn)行連接? (1)8位存儲(chǔ)器接口(MDR) 如果數(shù)據(jù)總線(xiàn)是8位,則關(guān)系比較簡(jiǎn)單。只需要按排一個(gè)存儲(chǔ)周期來(lái)讀寫(xiě)一個(gè)字節(jié)。 (2) 16位存儲(chǔ)器接口(MDR) 即在一個(gè)存儲(chǔ)周期中要讀寫(xiě)2個(gè)字節(jié)。 方法1 采用讀寫(xiě)2次的辦法,然后進(jìn)行組裝。 方法2 采用1次讀寫(xiě)就能得到2個(gè)字節(jié),這要求存儲(chǔ)器做一些處理(采用多體交叉存儲(chǔ)器技術(shù))。 具體方法見(jiàn)P120。 (3)32、64位存儲(chǔ)器接口(

23、MDR)類(lèi)似。 3、控制總線(xiàn)的連接 用于存儲(chǔ)器的控制信號(hào)主要有讀/寫(xiě)(WE#),IO和存儲(chǔ)器選通信號(hào)(IO/M#)。IO/MWE操作操作11I/O讀10I/O寫(xiě)01存儲(chǔ)器讀00存儲(chǔ)器寫(xiě)5.2.1 半導(dǎo)體存儲(chǔ)器的組成與控制 半導(dǎo)體存儲(chǔ)器芯片有多字一位片和多字多位(4位,8位)片,如1M*1位和256K*4位。 如何用這些小容量的芯片構(gòu)成大容量的存儲(chǔ)器? 雖然這里是以小容量的芯片為例,但原理是相同的。 1、存儲(chǔ)器容量擴(kuò)展 存儲(chǔ)器在字?jǐn)?shù)或者字長(zhǎng)方面與實(shí)際的要求有很大的差距時(shí),需要在字向和位向上進(jìn)行擴(kuò)充。 (1)位擴(kuò)展 位擴(kuò)展的連接方式是將多片存儲(chǔ)器的地址、片選、讀/寫(xiě)端相應(yīng)并聯(lián),數(shù)據(jù)端單獨(dú)引出。 例

24、如用16K*1位芯片組成16K*8位的存儲(chǔ)器,如何連接? 首先計(jì)算一下地址線(xiàn)和數(shù)據(jù)線(xiàn)。芯片存儲(chǔ)器倍地址線(xiàn)14根14根1數(shù)據(jù)線(xiàn)1位8位816K=214即14根地址線(xiàn) 芯片數(shù)=存儲(chǔ)器容量/芯片容量=(16K/16K)*(8/1)=8片 如下圖。圖位擴(kuò)展連接方式每個(gè)芯片字長(zhǎng)1位,存儲(chǔ)器字長(zhǎng)8位。每片有14條地址線(xiàn)引出端,每條地址接8個(gè)芯片;每片有1條數(shù)據(jù)線(xiàn)引出端。 (2)字?jǐn)U展 字?jǐn)U展是指增加存儲(chǔ)器中字的數(shù)量。 靜態(tài)存儲(chǔ)器進(jìn)行字?jǐn)U展時(shí),將各芯片的地址線(xiàn)、數(shù)據(jù)線(xiàn)、讀/寫(xiě)控制線(xiàn)并聯(lián),而用片選信號(hào)來(lái)區(qū)分各芯片的地址范圍。 例如用16K*8位芯片組成64K*8位存儲(chǔ)器,如何連接? 首先計(jì)算一下地址線(xiàn)和數(shù)據(jù)線(xiàn)

25、。 數(shù)據(jù)線(xiàn)D0D7與各片的數(shù)據(jù)端相連,地址總線(xiàn)低位地址A0A13與各芯片的14位地址端相連,而兩位高位地址A14、A15經(jīng)過(guò)譯碼器和4個(gè)芯片的片選端相連。如下圖。芯片存儲(chǔ)器多余地址線(xiàn)14根16根2根數(shù)據(jù)線(xiàn)8位8位0用于選擇芯片圖字?jǐn)U展連接方式 (3)字位擴(kuò)展 實(shí)際存儲(chǔ)器往往需要字向和位向同時(shí)擴(kuò)充。一個(gè)存儲(chǔ)器的容量為M*N位,若使用L*K位存儲(chǔ)器芯片,那么這個(gè)存儲(chǔ)器共需要(M/L)*(N/K)個(gè)存儲(chǔ)器芯片。 例如用2114芯片(1K*4位)構(gòu)成容量為4K*8位的存儲(chǔ)器,如何連接? 解:整個(gè)存儲(chǔ)器共需要(4K/1K)*(8/4)8個(gè)芯片。 2114芯片有10個(gè)地址端(A0-A9)、4位數(shù)據(jù)端(D0

26、-D3)、一個(gè)片選端(CS#)和一個(gè)讀寫(xiě)控制信號(hào)WE#。 CPU提供了12位地址,其中低10位(A0-A9)并行連接到各芯片的地址端,還有兩位地址(A10,A11)連向譯碼器,產(chǎn)生四個(gè)片選信號(hào),分別控制四組芯片。 此處譯碼器還要受到CPU的訪(fǎng)問(wèn)信號(hào)MREQ#控制,只在需要訪(fǎng)問(wèn)主存時(shí)才產(chǎn)生譯碼輸出。 CPU提供8位數(shù)據(jù)總線(xiàn)(D0-D7),每根數(shù)據(jù)線(xiàn)連接4個(gè)芯片。如下圖。圖 靜態(tài)存儲(chǔ)器芯片與CPU的連接SRAM和ROM存儲(chǔ)器混合連接舉例 用 44256(256K*4 位)RAM 芯片和 27010(128K*8位)ROM 芯片設(shè)計(jì)總?cè)萘繛?1MB 的存儲(chǔ)器,其中RAM占據(jù)低768KB,ROM占據(jù)高

27、 256KB。畫(huà)出存儲(chǔ)芯片與 CPU 的連接圖。 解:設(shè)計(jì)步驟: 確定地址線(xiàn)數(shù) 總存儲(chǔ)容量:1MB = 1M*8 位,2X =1M,求得 X = 20,20 位地址 A19 A0。 確定芯片數(shù)量 RAM 芯片數(shù)量為 (768/256)*(8/4)= 3*2 = 6(片)。 表示2片為1組做位擴(kuò)展構(gòu)成 256KB,再由三組做字?jǐn)U展構(gòu)成 768KB。 ROM 芯片數(shù)量為 (256K/128K)*(8/8)= 2*1 = 2(片)。 表示由 2 片做字?jǐn)U展構(gòu)成 256KB。 確定片選信號(hào)個(gè)數(shù) 兩種存儲(chǔ)芯片中最小芯片容量為 128K,應(yīng)對(duì)應(yīng)一個(gè)片選信號(hào),共需 1M / 128K = 8個(gè)片選信號(hào)。采用

28、 38 譯碼器,由 A19 A17 地址信號(hào)譯碼產(chǎn)生 8 個(gè)片選信號(hào)。 RAM 芯片容量為 256K=128K*2,每片對(duì)應(yīng) 2 個(gè)片選信號(hào),片選信號(hào)低電平有效,可將兩個(gè)片選信號(hào)與起來(lái)。 當(dāng) ROM 與 RAM 混合編址時(shí),ROM 占據(jù)高位地址,RAM占據(jù)低位地址。 768KB RAM 地址范圍為 00000H BFFFFH 256KB ROM 地址范圍為 C0000H FFFFFH 芯片地址計(jì)算。芯片地址根數(shù)地址符號(hào)128K ROM17A16 A0256K RAM18A17 A0A17 既作為38譯碼器輸入,又作為RAM的地址使用。 RAM 芯片受讀寫(xiě)控制信號(hào)控制,為高時(shí)讀出;為低時(shí)寫(xiě)入。R

29、OM 芯片為只讀存儲(chǔ)器,不受該信號(hào)控制。256K4D3-D0 A16-A0256K4D7-D4 A16-A0256K4256K4256K4256K4128K8D7-D0 A16-A0128K8D7-D0 A16-A0CPU0CS1CS2CS3CS4CS5CS6CS7CS1819AA17A016AA07DDWE3 8 譯碼器圖RAM和ROM存儲(chǔ)器連接ANDANDAND 2.動(dòng)態(tài)存儲(chǔ)器(DRAM)的存儲(chǔ)控制 在動(dòng)態(tài)存儲(chǔ)器中,需要增設(shè)附加電路: 地址多路轉(zhuǎn)換線(xiàn)路 地址選通 刷新邏輯 讀/寫(xiě)控制邏輯 在大容量存儲(chǔ)器芯片中,為了減少芯片地址引出端數(shù)目,將地址碼分兩次送到存儲(chǔ)器芯片,因此芯片地址線(xiàn)引出端減

30、少一半。 刷新邏輯是為動(dòng)態(tài)MOS隨機(jī)存儲(chǔ)器的刷新準(zhǔn)備的。通過(guò)定時(shí)刷新,保證動(dòng)態(tài)MOS存儲(chǔ)器的信息不致丟失。 動(dòng)態(tài)MOS存儲(chǔ)器采用“讀出”方式進(jìn)行刷新。 刷新是以行為單位,以16K1 的DRAM 有 128行128 列。每行的字線(xiàn)相通,選中某字線(xiàn)時(shí),所有位均被讀出并刷新。 從上一次對(duì)整個(gè)存儲(chǔ)器刷新結(jié)束到下一次對(duì)整個(gè)存儲(chǔ)器全部刷新一遍為止,這段時(shí)間間隔稱(chēng)為再生時(shí)間(刷新周期),一般為2ms。 在2ms 內(nèi)所有行都必須刷新一次。 刷新方式: (1)集中刷新(brust refresh) 集中刷新是指在一個(gè)刷新周期內(nèi),利用一段固定的時(shí)間,依次對(duì)存儲(chǔ)器的所有行逐一再生,在此期間停止對(duì)存儲(chǔ)器的讀和寫(xiě)。 缺點(diǎn)是在刷新期間不能訪(fǎng)問(wèn)存儲(chǔ)器。 假設(shè)讀 / 寫(xiě)周期 Tc 和刷新周期 Tr 均為 0.5s,刷新間隔 2ms = 4000Tc。前 3872 Tc 用于讀寫(xiě),后 128 Tc 用于刷新。 (2)分散式刷新(Distributed Re

溫馨提示

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

評(píng)論

0/150

提交評(píng)論