Upload
riordan-nyhan
View
85
Download
0
Embed Size (px)
DESCRIPTION
第三单元 层次存储器系统. 第二讲 动态存储器和教学计算机存储器设计 刘卫东 [email protected]. 内容提要. 有关大实验的说明 动态存储器 教学计算机存储器设计. 关于大实验检查. 请各组抓紧时间,完成大实验设计和调试。 15 周 (12 月 15 日至 19 日 ) 进行并完成最终检查。请同学们按组准备好以下材料: 调试完成的教学计算机 检查方案:供检查设计的汇编语言程序以及预期结果(包含扩展指令) 设计文档 最终检查时间、地点请各班科代表在 14 周与我们确定。 16 周,请各班选出一组,在课堂上和大家交流. - PowerPoint PPT Presentation
Citation preview
2
内容提要• 有关大实验的说明• 动态存储器• 教学计算机存储器设计
3
关于大实验检查
• 请各组抓紧时间,完成大实验设计和调试。• 15 周 (12 月 15 日至 19 日 ) 进行并完成最终检查。
请同学们按组准备好以下材料:– 调试完成的教学计算机– 检查方案:供检查设计的汇编语言程序以及预期结果
(包含扩展指令)– 设计文档
• 最终检查时间、地点请各班科代表在 14 周与我们确定。
• 16 周,请各班选出一组,在课堂上和大家交流
4
大实验提交文档列表• 指令系统设计文档
– 指令系统列表– 设计说明;
• 运算器设计文档– 线路逻辑图– 设计说明– 有关 GAL 芯片的逻辑表达式
• 控制器设计文档(包括组合逻辑和微程序)– 线路逻辑图– 指令执行流程图– 指令执行流程表– 有关 GAL 、 MACH 芯片的逻辑表达式
• 内存储器、总线、接口等部分设计文档– 线路逻辑图– 设计说明
• 软件设计文档– 对监控程序、交叉汇编程序修改的文档和源程序
• 组装、调试过程中遇到的问题和相应的解决办法• 项目完成后的心得体会、有关建议和意见
5
大实验评分标准• 完成基本要求,起评分数为 80 分,视情况酌情增减。
– 监控程序运行正确(微程序和组合逻辑)– 扩展指令能正常运行– 提供的实验报告完整,规范
• 有创新和特色,可有加分因素。– 修改了监控,能完成对扩展指令的汇编– 修改交叉汇编
• 其他– 你们认为有特点的地方,可以陈述
• 总评成绩 =40%* 考试成绩 +50%* 大实验成绩 +10%* 作业成绩
• 若考试成绩低于特定值,则无论实验成绩如何,均为不及格
6
层次存储器系统
选用生产与运行成本不同的、存储容量不同的、读写速度不同的多种存储介质,组成一个统一的存储器系统,使每种介质都处于不同的地位,发挥不同的作用,充分发挥各自在速度 容量 成本方面的优势,从而达到最优性能价格比,以满足使用要求。
例如,用容量更小但速度最快的 SRAM 芯片组成 CACHE ,容量较大速度适中的 DRAM芯片组成 MAIN MEMORY ,用容量特大但速度极慢的磁盘设备构成 VIRTUAL MEMORY 。
7
程序的局部性原理
• 程序在一定的时间段内通常只访问较小的地址空间
• 两种局部性:– 时间局部性– 空间局部性
地址空间
访问概率
8
现代计算机的层次存储器系统• 利用程序的局部性原理 :
– 以最低廉的价格提供尽可能大的存储空间– 以最快速的技术实现高速存储访问
Control
Datapath
SecondaryStorage(Disk)
Processor
Registers
MainMemory(DRAM)
SecondLevelCache
(SRAM)
On
-Ch
ipC
ache
1ns Milliseconds GB
Speed (ns): 10ns 50-100nsMB-GB100sSize (bytes): KB-MB
TertiaryStorage(Disk)
SecondsTerabytes
9
SRAM 典型时序
写时序 :
D
读时序 :
WE_L
A
写保持时间写建立时间
A
DOE_L
2 Nwordsx M bitSRAM
N
M
WE_L
写入数据
写入地址
OE_L
High Z
读地址
Junk
读访问时间
读出数据
读访问时间
读出数据
读地址
10
动态存储器的存储原理• 动态存储器,是用金属氧化物半导体
( MOS )的单个MOS管来存储一个二进制位( bit )信息的。信息被存储在 MOS管 T 的源极的寄生电容 CS 中,例如,用 CS 中存储有电荷表示 1 ,无电荷表示0 。
11
+ +
- -
VDD
CS
字线
位线
T
写 1 :使位线为低电平,
高, T 导通,低, T 截止。
低
若 CS 上无电荷,则 VDD 向 CS 充电; 把 1 信号写入了电容 CS 中。
若 CS 上有电荷,则 CS 的电荷不变,保持原记忆的 1 信号不变。
12
+ +
- -
VDD
CS
字线
位线
T
写 1 :使位线为低电平,
高, T 导通,低, T 截止。
低
若 CS 上无电荷,则 VDD 向 CS 充电; 把 1 信号写入了电容 CS 中。
若 CS 上有电荷,则 CS 的电荷不变,保持原有的内容 1 不变;
13
+ +
- -
VDD
CS
字线
位线
T
高, T 导通,低, T 截止。
高
写 0 :使位线为高电平,若 CS 上有电荷,则 CS 通过 T 放电;
若 CS 上无电荷,则 CS 无充放电动作, 保持原记忆的 0 信号不变。
把 0 信号写入了电容 CS 中。
14
VDD
CS
字线
位线
T
高, T 导通,低, T 截止。
高
写 0 :使位线为高电平,若 CS 上有电荷,则 CS 通过 T 放电;
若 CS 上无电荷,则 CS 无充放电动作, 保持原记忆的 0 信号不变。
把 0 信号写入了电容 CS 中。
15
++
- -
VDD
CS
字线
位线
T
接在位线上的读出放大器会感知这种变化,读出为 1 。
高, T 导通,
高
读操作: 首先使位线充电至高电平,当字线来高电平后, T 导通,低
1. 若 CS 上无电荷,则位线上无电位变化 ,读出为 0 ;2. 若 CS 上有电荷,
并使位线电位由高变低,则会放电,
16
位线 127
位线 0
CS
VDD
CS
VDD
CS/2VDD
CS/2VDD
VSSVSS VDD VDD
CS/2 CS/2VDD VDD
参考单元
参考单元
预充电 放大器
另一侧 64 行
本侧 64 行
D
D’
字线 0
字线 127
读出电路
17
破坏性读出:读操作后,被读单元的内容一定被清为零,必须把刚读出的内容立即写回去,通常称其为预充电延迟,它影响存储器的工作频率,在结束预充电前不能开始下一次读。
要定期刷新:在不进行读写操作时, DRAM 存储器的各单元处于断路状态,由于漏电的存在,保存在电容 CS 上的电荷会慢慢地漏掉,为此必须定时予以补充,通常称其为刷新操作。刷新不是按字处理,而是每次刷新一行,即为连接在同一行上所有存储单元的电容补充一次能量。 刷新有两种常用方式: 集中刷新,停止内存读写操作,逐行将所有各行刷新一遍; 分散刷新,每一次内存读写后,刷新一行,各行轮流进行。 或在规定的期间内,如 2 ms ,能轮流把所有各行刷新一遍。快速分页组织的存储器:行、列地址要分两次给出,但连续地读写用到相同的行地址时,也可以在前一次将行地址锁存,之后仅送列地址,以节省送地址的时间,支持这种运行方式的被称为快速分页组织的存储器。
18
动态存储器读写过程
动态存储器芯片
行地址和列地址
数据总线 DB
片选信号 /CS
读写信号 /WE
动态存储器集成度高,存储容量大,为节约管脚数,地址分为行地址和列地址
19
DRAM 写时序
AD
OE_L
256K x 8DRAM9 8
WE_LCAS_LRAS_L
WE_L
A 行地址
OE_L
Junk
写访问时间 写访问时间
CAS_L
RAS_L
列地址 行地址 Junk列地址
D Junk Junk写入数据 写入数据 Junk
DRAM 写周期时间
WE_L 在 CAS_L 信号之前有效 WE_L 在 CAS_L 信号之后有效
• DRAM 写访问开始于 :
– RAS_L信号有效– 两种写方式 : WE_L信号早和晚于 CA
S_L信号有效
20
DRAM 读时序
AD
OE_L
256K x 8DRAM9 8
WE_LCAS_LRAS_L
OE_L
A 行地址
WE_L
Junk
读访问时间 输出使能延迟
CAS_L
RAS_L
列地址 行地址 Junk列地址
D High Z 读出数据
读周期时间
OE_L 在 CAS_L 有效之前有效 OE_L 在 CAS_L 有效之后有效
• DRAM 读访问开始于 :
– RAS_L信号有效– 两种读方式 :
OE-L早于或晚于 CAS_L 有效
Junk 读出数据 High Z
21
静态和动态存储器芯片特性 SRAM DRAM
存储信息 触发器 电容 破坏性读出 非 是需要刷新 不要 需要 送行列地址 同时送 分两次送运行速度 快 慢集成度 低 高发热量 大 小存储成本 高 低
22
主存储器的多体结构
为了提高计算机系统的工作效率,需要提高主存储器的读写速度。为此可以实现多个能够独立地执行读写的主存储器体,以便提高多个存储体之间并行读写的能力。多体结构同时适用于静态和动态的存储器。考虑到程序运行的局部性原理,多个存储体应按低位地址交叉编址的方式加以组织。类似的也可按一体多字的方式设计存储器。
23
地址寄存器
主存储器存储体
W W W W
数据总线
一体多字结构
24
地址寄存器
数据总线
0 字 1 字 2 字 3 字
单字多体结构
25
小结 :• 程序的局部性原理 :
– 时间局部性:最近被访问过的程序和数据很可能再次被访问
– 空间局部性: CPU很可能访问最近被访问过的地址单元附近的地址单元。
• 利用程序的局部性原理:– 使用尽可能大容量的廉价、低速存储器存放程序和数据。– 使用高速存储器来满足 CPU 对速度的要求。
• DRAM 速度慢,但容量大,价格低– 可用于实现大容量的主存储器系统。
• SRAM 速度快,但容量小,价格高– 用于实现高速缓冲存储器 Cache 。
26
小结• 设计主存储器
– 确定最大寻址空间– 确定字长– 确定读写时序– 得到控制信号
27
教学计算机 TEC-2000 存储器设计
• 设计要求– 需要 ROM来存放监控程序– 需要 RAM 供用户和监控程序使用– 能够让用户进行扩展
• 设计原则– 尽量简单,能体现出原理课教学要求– 不追求高速度
28
控制总线设计• 时钟信号
– 与 CPU 时钟同步(降低了 CPU主频)• 读写信号
/MIO REQ /WE
0 0 0 内存写 /MWR 接 /WE
0 0 1 内存读 /MRD 接 /OE
0 1 0 I/O写 /WR
0 1 1 I/O读 /RD
1 X X 不用 用 DC3 实现
29
TEC-2000 内存控制信号获取
1B 1A 1G
DC3 1392B 2A 2G
1Y0 1Y1 1Y2 1Y3 2Y0 2Y1
REQ WE GND MIO
MWR MRD WR RD MMREQ IOREQ
74LS139 :双 2-4译码器
30
地址总线设计• 片选信号
– A15 、 A14 和 A13 最高位地址译码产生– /MMREQ 作为使能信号
• 地址信号– A10~A0 : 11位地址– 1个地址单元对应 4个地址– 来自地址寄存器
用 DC5 实现
31
TEC-2000 片选信号
DC5
138
A15
A14
A13
GND
MMREQ
VCC
C
B
A
G2A
G2B
G1
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
0000~1FFF
2000~3FFF
4000~5FFF
6000~7FFF
8000~9FFF
A000~BFFF
C000~DFFF
E000~FFFF
DC5 74LS138: 3-8译码器
32
TEC-2000 地址信号
RAML 6116
ROML 28C64
RAMH 6116
ROMH 28C64
MWR
WE
WE
A10~A0
D15~D8 D7~D0
D15~D0
A12~A0 A12~A0
A10~A0 A10~A0
OE
CS CS
OE
OE OE
CS CS
Y1Y1
Y0 Y0
MRDMRD
D15~D8 D7~D0
地址总线
数据总线
WE
WE
MRD MRD
33
A10~A0
A11
A12 A10~A0
A10~A0
D7~D0
D7~D0
D7~D0
A11
WE
CS
OE
OE
CS
CS
OE
WE
WE
19~11
19~11
17~919 22 23 1~8
......
......短路子
8位机短接16位机断开
A11
/MWR 23
A12 A10~A023 2 21 24 25 3~10
VCC
/MWR
/MRD
GND
/MRD
GND
2 21 24 25 3~10
19 22 23 1~8
2 21 24 25 3~10
2 21 24 25 3~10
A12 A10~A0
A12 A10~A0
D7~D0
D7~D0
D7~D0
19~11
19~11
A11
A11
23
23
17~9
/MWR
VCC
/MWR
WE
/MWR
VCC
/MWR
WE
/MWR
VCC
/MWR
OE
CS
OE
CS
OE
CS
/MRD
GND
/MRD
GND
WE
A11
A11
A11
/MWR
/MRD
23
23
23
23
23
23
1Y0
1A
2B2A
G1
G2
1Y11Y21Y3
2Y0
2Y1
1B /MWR/MRD/WR/RD
/MMREQ/IOREQ
/WEREQ
MIO
GND
CBA
G1
2AG2BG
Y0Y1Y2Y3Y4Y5Y6Y7
CBA
G1
2AG2BG
Y0Y1Y2Y3Y4Y5Y6Y7
80~8F90~9FA0~AFB0~BFC0~CFD0~DFE0~EFF0~FF
0000~1FFF2000~3FFF4000~5FFF
E000~FFFF
6000~7FFF8000~9FFFA000~BFFFC000~DFFF
A6A5A4
A7
A15A14A13
GND
GND
VCC
CBA
G1
2AG2BG
Y0Y1Y2Y3Y4Y5Y6Y7
CBA
G1
2AG2BG
Y0Y1Y2Y3Y4Y5Y6Y7
DC12DC11DC10
DC22DC21DC20
Link
GND
Link
GND
/SWTOIB/RTOIB/ETOIB/FTOIB/STOIB/INTVH/INTVLNC
NC/GIR/GARH/GARL/INTR
/DI
/INTN/EI
321
131415
4567
1211
123
456
15141312111097
12
456
15141312111097
15141312111097
15141312111097
123
456
123
456
Q3 Q2 Q1 Q0
P3 P2 P1 P0CLK
Load
CLRTP
VCC GND
VCCR1out
R1in T1out
T1in
R2in T2out
T2inR2out
串口2
13 14 8 7
12 11 9 10
307.2KHz153.6KHz
D7~D0
TxDCTSRTS
RD
DC/
CS
RESETWRDC/
CLK TxC RxCRxD
......
......
153.6KHz
1.8432MHz
1.8432MHz/WR/RD
CS CTSRTS
/RESET13 10 21 20 9 25
1723
8~1 28 27
193
11
12A0
IRH0
MicroPMACH_8251/CS
I/O地址译码器 80~8F
D7~D0 RD RESETWR CLK TxC RxC
TxDRxD
A0
P1 P0 INTE /INT
/INTR /INTN /EI /DI
CK1RESET
IBH3IBH2
/GIRDC23
S2 R2 S1 R1 S0 R0
CK1
IBH IBL
D7~D0
Q7~Q0
用于置中断向量的 3排插针
Q7~Q0
D7~D4
P1P0 GND
D3~D0
串口1
17 18 19 20
111
78
1 1011
15 19172 3 4
2 3 4 5 6 7
2中断源 1中断源 0中断源
DBHABH、ABL
内存地址译码器2000~3FF F
内存地址译码器0000~2FF F
18 17 14 13 8 7 4 3
19 16 15 12 9 6 5 2 19 16 15 12 9 6 5 2
18 17 14 138 7 4 3
DC3 139
DC4 138
DC5 138
A11
ROML 28C64
ExtROML 28C64
RAML 6116
ROMH 28C64
27
20
27
20
2118
27
20
27
20
21 18
ExtROMH 28C64
RAMH 6116
DC1 138
DC2 138
MAX202 161
COM2 8251
COM1 8251
INTP GAL
INTS GAL
INTVTH 374 INTVTL 374
5 6 9 10
3-6 图 存储器、接口、中断线路逻辑图
11~149
6~3
1107
2
/OE
11CLK CLK
/OE
111 1
CK CK
/INTVL/INTVH
内存储器和串行接口存储器由 2 组 8 位区组成,可运行于 8 位或 16 位方式;每组由 1 片 2716 RAM 和 2 片 28C64 ROM 芯片组成,亦可选用 2764 ROM 芯片。
对 16 位地址的最高 3 位译码,产生 8 个存储器片选信号,各自对应 8192 的存储容量。
2 路串行接口,其中一路正常运行,另一路经扩展后方可使用。对 8 位 IO 端口地址的最高 4位译码,产生 8 个 IO 芯片的片选信号。
1 片双 2-4 译码器 139 给出内存和 IO 的读写命令信号。
2 片 GAL 和 2 片 373 寄存器用于支持中断响应与处理实验。
34
数据总线设计• 与内部总线相连• 三态门控制
35
思考题和作业1.多级结构的存储器系统由哪几级组成?每一级存储器一般使用何种类型的存储介质?这些介质的主要特性是什么?在多级结构的存储器系统中,何谓信息的一致性和包含性原则?
2. 存储器读写操作时,地址信号、片选信号、读写命令、读出的数据或写入的数据在时序配合上要满足什么关系?
作业请在网络学堂下载,请使用手写版交作业。本次作业和下次的 Cache 作业一起在下周五交。