3 计算机组成原理第三章 存储系统 主存简单模型及寻址 半导体寄存器 存储器分类 主存与CPU连接 双口RAM和多模块寄存器
文章目錄
- 1 主存簡單模型及尋址的概念
- 1.1 主存儲器
- 1.1.1 存儲器芯片的基本結構
- 1.1.2 尋址
- 2 半導體存儲器
- 2.1 半導體隨機存取存儲器
- 2.1.1 DRAM的刷新
- 2.1.2 SRAM的讀周期
- 2.1.3 SRAM的寫周期
- 2.1.4 RAM-易失性存儲器
- 2.2 ROM
- 2.2.1 ROM分類
- 2.2.2 半導體隨機存儲器小結
- 3 存儲器分類
- 3.1 存儲器的性能指標
- 3.2 存儲器的層次化結構
- 3.3 存儲器概念小結
- 4 主存與CPU的連接
- 4.1 主存容量擴展-位擴展
- 4.2 主存容量擴展-字擴展
- 4.3 主存容量擴展-字位同時擴展
- 4.4 字位擴展實例
- 5 雙口RAM多模塊存儲器
- 5.1 雙端口RAM
- 5.2 多模塊存儲器
- 5.2.1 單體多字存儲器和多體并行存儲器
- 5.2.2 多體并行存儲器工作模式
- 5.2.3 流水線
存儲系統總述:
1 主存簡單模型及尋址的概念
1.1 主存儲器
存儲體負責存儲具體的二進制位
地址寄存器接收外部功能部件傳到存儲器的地址
數據寄存器暫存要傳出去或傳進來的數據信號
存儲體、地址寄存器、數據寄存器在一個時序控制邏輯的控制下協調工作
1.1.1 存儲器芯片的基本結構
如地址線10根,數據線8根,則芯片容量=210×8=8K位。
n位地址一>2n個存儲單元總容量=存儲單元個數×存儲字長
=23×8bit=23×1Byte=8B
8×8位的存儲芯片
常見的描述:
8K×8位,即213×8 bit = 8 KB 地址線13根,數據線8根
8K×1位,即213×1 bit = 8 Kb=1 KB
64K×16位,即216×16 bit
1.1.2 尋址
2 半導體存儲器
2.1 半導體隨機存取存儲器
2.1.1 DRAM的刷新
——為什么要用行列地址?減少選通線的數量
行列地址:行地址決定存儲單元在哪一行,列地址決定存儲單元在那一列,行列交叉即可得存儲單元位置
地址0000,0000 對應行地址0000,列地址0000,選中(0,0)號存儲單元(8位二進制,行4位,列4位)
假設DRAM內部結構排列成128×128的形式,讀/寫周期(存儲周期)0.5us
2ms共2ms/0.5us=4000個周期
2.1.2 SRAM的讀周期
2.1.3 SRAM的寫周期
2.1.4 RAM-易失性存儲器
2.2 ROM
用RAM做主存,一旦斷電,內容全部丟失,ROM掉電之后,內容不會丟失,而且ROM可以直接跟CPU通信
用ROM存儲一些開機之后必要的信息,而更詳細的、正在運行的程序的數據放在RAM中
2.2.1 ROM分類
2.2.2 半導體隨機存儲器小結
3 存儲器分類
按特點和使用方法的不同,可以分為以下幾類:
3.1 存儲器的性能指標
3.2 存儲器的層次化結構
3.3 存儲器概念小結
4 主存與CPU的連接
4.1 主存容量擴展-位擴展
CPU數據線數與存儲芯片的數據位數不相等時,此時必須對存儲芯片擴位,增加存儲字長,使其數據位數與CPU的數據線數相等
8Kx1位芯片說明:
1根數據線D0
13根數據線A0~A12
片選線 CS: 高電平有效, 收到1工作,收到 0 不工作
讀寫控制線 WE :高電平有效
位擴展:
4.2 主存容量擴展-字擴展
增加存儲器芯片中字的數量,位數不變
方案1:
當兩個芯片CS同為1時,無法進行正常讀寫,兩位存儲器芯片可能沖突
方案2:使用地址線控制片選信號
方案3:使用非門控制片選信號
譯碼器:
譯碼器左邊101對應5(A低位,C高位),則右邊Y5置1
片選信號區分芯片地址范圍:
- A13A14為00時,譯碼器對應0號線有效,其余皆無效,選中0號芯片,
地址范圍:00,0…00~00,1…11 - A13A14為01時,譯碼器對應1號線有效,其余皆無效,選中1號芯片,
地址范圍:01,0…00~01,1…11 - A13A14為10時,譯碼器對應0號線有效,其余皆無效,選中2號芯片,
地址范圍:10,0…00~10,1…11 - A13A14為11時,譯碼器對應0號線有效,其余皆無效,選中3號芯片,
地址范圍:11,0…00~11,1…11
特殊情況:
- A13A15為00時,譯碼器對應0號線有效,其余皆無效,選中0號芯片 , A14不用管,取0取1無影響
4.3 主存容量擴展-字位同時擴展
用8片16Kx4位的芯片組成64Kx8位的存儲器:
- 每兩片構成一組16Kx8位的存儲器(位擴展)
- 4組構成64Kx8位存儲器(字擴展)
- 地址線 A15A14經 2/4譯碼器得到4個片選信號
- A15A14=00時,輸出端0有效,選中第一組芯片(①②)
- A15A14=01時,輸出端1有效,選中第二組芯片(③④)
4.4 字位擴展實例
解題步驟:
數據線:CPU數據線8根→存儲器位數應擴展為8位,如果沒有8位的芯片,應選擇低位擴展到8位
地址線:首先確定內存空間的分配
- 67FFH-6000H+1=7FFH+1=800H 表示800H地址空間內有2K個存儲單元,每個存儲單元8位,則存儲容量2KB
- 6BFFH-6800H+1=3FFH+1=400H(B:11,11-8=3)
分析地址線如何跟CPU之間進行連接:把地址空間寫成二進制形式
總的地址線16根,而ROM 11根,RAM 10根,把低地址位位直接相連,剩下的高位作為選片信號
- 3/8譯碼器:在剩下的地址位中選三位做片選信號,選取原則:以低位占用最多的存儲為準,向它高位選三位,用此三位做3/8譯碼器的輸入。即100時選中ROM,101選中RAM
- 剩下的01做譯碼器使能端(使能端剛好需要一個1和0),最后的一個端口連MREQ,決定譯碼器是否工作。而MREQ是低電平有效,只能連0,不可以連1,是譯碼器開關
說明:
低10位 A0~A9直接連到每一塊存儲器芯片;
ROM需要11位地址線。把A10直接連到ROM;
CBA 剛好直接用,100對應Y4,連到ROM;
ROM 不僅要求 CBA 101 對應Y5,還要求第10位地址必須是0才可以選通;
A10=0 表示A10經過一個非得1,Y5非為0,經過一個非得1,將兩個1與一下,即得RAM的選通信號,非作用就是低電平有效;
A14A151 0 充當譯碼器使能端信號,A14連上1,A15連上0;
MREQ 是低電平有效,接最后一個使能端;
數據線 ROM 8 位直接連CPU數據線;
RAM 經過擴展了,一個連低四位,另外一個連高四位;
最后讀寫控制線WR的連接,只有RAM需要直接連接CPU的讀寫控制線,ROM讀寫控制線是一個靜態狀態,直接給一個固定信號,題意要求低電平有效,所以可以直接連接地面。
5 雙口RAM多模塊存儲器
為了提高CPU訪問存儲器的工作速度
5.1 雙端口RAM
雙口RAM空間上并行,當兩個端口地址不相同時,在兩個端口上讀寫一定不會沖突
兩個端口對同一主存操作有以下4種情況:
解決方法:置“忙”信號為0,由判斷邏輯決定暫時關閉一個端口(即被延時),未被關閉的端口正常訪問,被關閉的端口延長一個很短的時間段后再訪問。
5.2 多模塊存儲器
5.2.1 單體多字存儲器和多體并行存儲器
5.2.2 多體并行存儲器工作模式
多體并行存儲器工作模式依賴于地址的設置方式
高位交叉編址的多體存儲器:體號在前體內地址在后,地址的高位決定現在訪問的是哪個體,低位決定訪問體內的哪一塊單元
低位交叉編址的多體存儲器:體號在后體內地址在前,地址的低位決定現在訪問的是哪個體,高位決定訪問體內的哪一塊單元
高位交叉編址的多體存儲器:由上往下編,每個存儲體地址的高位一致,對應存儲體下標,如00對應M0
低位交叉編址的多體存儲器:由左往右編,每個存儲體地址的低位一致,對應存儲體下標,如01對應M1
5.2.3 流水線
微觀(計算題)
模塊數m=4,存儲周期為T,字長W,數據總線寬度為w,總線傳輸周期為r,連續存取n個字,求交叉存儲器的帶寬。
上面題目對應:有m個存儲體,存儲周期為T,字長W,每隔r時間啟動下一個存儲體,連續存取n個字,求存儲器的存取速率。
宏觀(概念題)
一個存儲周期內,交叉存儲器可以提供的數據量為單個模塊的m倍。
總結
以上是生活随笔為你收集整理的3 计算机组成原理第三章 存储系统 主存简单模型及寻址 半导体寄存器 存储器分类 主存与CPU连接 双口RAM和多模块寄存器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux下安装多个Tomcat服务器
- 下一篇: 13 操作系统第三章 内存管理 虚拟内