1第三单元层次存储器系统第二讲动态存储器和教学计算机存储器设计刘卫东liuwd@tsinghua.edu.cn2内容提要•有关大实验的说明•动态存储器•教学计算机存储器设计3关于大实验检查•请各组抓紧时间,完成大实验设计和调试。•15周(12月15日至19日)进行并完成最终检查。请同学们按组准备好以下材料:–调试完成的教学计算机–检查方案:供检查设计的汇编语言程序以及预期结果(包含扩展指令)–设计文档•最终检查时间、地点请各班科代表在14周与我们确定。•16周,请各班选出一组,在课堂上和大家交流4大实验提交文档列表•指令系统设计文档–指令系统列表–设计说明;•运算器设计文档–线路逻辑图–设计说明–有关GAL芯片的逻辑表达式•控制器设计文档(包括组合逻辑和微程序)–线路逻辑图–指令执行流程图–指令执行流程表–有关GAL、MACH芯片的逻辑表达式•内存储器、总线、接口等部分设计文档–线路逻辑图–设计说明•软件设计文档–对监控程序、交叉汇编程序修改的文档和源程序•组装、调试过程中遇到的问题和相应的解决办法•项目完成后的心得体会、有关建议和意见5大实验评分标准•完成基本要求,起评分数为80分,视情况酌情增减。–监控程序运行正确(微程序和组合逻辑)–扩展指令能正常运行–提供的实验报告完整,规范•有创新和特色,可有加分因素。–修改了监控,能完成对扩展指令的汇编–修改交叉汇编•其他–你们认为有特点的地方,可以陈述•总评成绩=40%*考试成绩+50%*大实验成绩+10%*作业成绩•若考试成绩低于特定值,则无论实验成绩如何,均为不及格6层次存储器系统选用生产与运行成本不同的、存储容量不同的、读写速度不同的多种存储介质,组成一个统一的存储器系统,使每种介质都处于不同的地位,发挥不同的作用,充分发挥各自在速度容量成本方面的优势,从而达到最优性能价格比,以满足使用要求。例如,用容量更小但速度最快的SRAM芯片组成CACHE,容量较大速度适中的DRAM芯片组成MAINMEMORY,用容量特大但速度极慢的磁盘设备构成VIRTUALMEMORY。7程序的局部性原理•程序在一定的时间段内通常只访问较小的地址空间•两种局部性:–时间局部性–空间局部性地址空间访问概率8现代计算机的层次存储器系统•利用程序的局部性原理:–以最低廉的价格提供尽可能大的存储空间–以最快速的技术实现高速存储访问ControlDatapathSecondaryStorage(Disk)ProcessorRegistersMainMemory(DRAM)SecondLevelCache(SRAM)On-ChipCache1nsMillisecondsGBSpeed(ns):10ns50-100nsMB-GB100sSize(bytes):KB-MBTertiaryStorage(Disk)SecondsTerabytes9SRAM典型时序写时序:D读时序:WE_LA写保持时间写建立时间ADOE_L2NwordsxMbitSRAMNMWE_L写入数据写入地址OE_LHighZ读地址Junk读访问时间读出数据读访问时间读出数据读地址10动态存储器的存储原理•动态存储器,是用金属氧化物半导体(MOS)的单个MOS管来存储一个二进制位(bit)信息的。信息被存储在MOS管T的源极的寄生电容CS中,例如,用CS中存储有电荷表示1,无电荷表示0。11++--VDDCS字线位线T写1:使位线为低电平,高,T导通,低,T截止。低若CS上无电荷,则VDD向CS充电;把1信号写入了电容CS中。若CS上有电荷,则CS的电荷不变,保持原记忆的1信号不变。12++--VDDCS字线位线T写1:使位线为低电平,高,T导通,低,T截止。低若CS上无电荷,则VDD向CS充电;把1信号写入了电容CS中。若CS上有电荷,则CS的电荷不变,保持原有的内容1不变;13++--VDDCS字线位线T高,T导通,低,T截止。高写0:使位线为高电平,若CS上有电荷,则CS通过T放电;若CS上无电荷,则CS无充放电动作,保持原记忆的0信号不变。把0信号写入了电容CS中。14VDDCS字线位线T高,T导通,低,T截止。高写0:使位线为高电平,若CS上有电荷,则CS通过T放电;若CS上无电荷,则CS无充放电动作,保持原记忆的0信号不变。把0信号写入了电容CS中。15++--VDDCS字线位线T接在位线上的读出放大器会感知这种变化,读出为1。高,T导通,高读操作:首先使位线充电至高电平,当字线来高电平后,T导通,低1.若CS上无电荷,则位线上无电位变化,读出为0;2.若CS上有电荷,并使位线电位由高变低,则会放电,16位线127位线0CSVDDCSVDDCS/2VDDCS/2VDDVSSVSSVDDVDDCS/2CS/2VDDVDD参考单元参考单元预充电放大器另一侧64行本侧64行DD’字线0字线127读出电路17破坏性读出:读操作后,被读单元的内容一定被清为零,必须把刚读出的内容立即写回去,通常称其为预充电延迟,它影响存储器的工作频率,在结束预充电前不能开始下一次读。要定期刷新:在不进行读写操作时,DRAM存储器的各单元处于断路状态,由于漏电的存在,保存在电容CS上的电荷会慢慢地漏掉,为此必须定时予以补充,通常称其为刷新操作。刷新不是按字处理,而是每次刷新一行,即为连接在同一行上所有存储单元的电容补充一次能量。刷新有两种常用方式:集中刷新,停止内存读写操作,逐行将所有各行刷新一遍;分散刷新,每一次内存读写后,刷新一行,各行轮流进行。或在规定的期间内,如2ms,能轮流把所有各行刷新一遍。快速分页组织的存储器:行、列地址要分两次给出,但连续地读写用到相同的行地址时,也可以在前一次将行地址锁存,之后仅送列地址,以节省送地址的时间,支持这种运行方式的被称为快速分页组织的存储器。18动态存储器读写过程动态存储器芯片行地址和列地址数据总线DB片选信号/CS读写信号/WE动态存储器集成度高,存储容量大,为节约管脚数,地址分为行地址和列地址19DRAM写时序ADOE_L256Kx8DRAM98WE_LCAS_LRAS_LWE_LA行地址OE_LJunk写访问时间写访问时间CAS_LRAS_L列地址行地址Junk列地址DJunkJunk写入数据写入数据JunkDRAM写周期时间WE_L在CAS_L信号之前有效WE_L在CAS_L信号之后有效•DRAM写访问开始于:–RAS_L信号有效–两种写方式:WE_L信号早和晚于CAS_L信号有效20DRAM读时序ADOE_L256Kx8DRAM98WE_LCAS_LRAS_LOE_LA行地址WE_LJunk读访问时间输出使能延迟CAS_LRAS_L列地址行地址Junk列地址DHighZ读出数据读周期时间OE_L在CAS_L有效之前有效OE_L在CAS_L有效之后有效•DRAM读访问开始于:–RAS_L信号有效–两种读方式:OE-L早于或晚于CAS_L有效Junk读出数据HighZ21静态和动态存储器芯片特性SRAMDRAM存储信息触发器电容破坏性读出非是需要刷新不要需要送行列地址同时送分两次送运行速度快慢集成度低高发热量大小存储成本高低22主存储器的多体结构为了提高计算机系统的工作效率,需要提高主存储器的读写速度。为此可以实现多个能够独立地执行读写的主存储器体,以便提高多个存储体之间并行读写的能力。多体结构同时适用于静态和动态的存储器。考虑到程序运行的局部性原理,多个存储体应按低位地址交叉编址的方式加以组织。类似的也可按一体多字的方式设计存储器。23地址寄存器主存储器存储体小结:•程序的局部性原理:–时间局部性:最近被访问过的程序和数据很可能再次被访问–空间局部性:CPU很可能访问最近被访问过的地址单元附近的地址单元。•利用程序的局部性原理:–使用尽可能大容量的廉价、低速存储器存放程序和数据。–使用高速存储器来满足CPU对速度的要求。•DRAM速度慢,但容量大,价格低–可用于实现大容量的主存储器系统。•SRAM速度快,但容量小,价格高–用于实现高速缓冲存储器Cache。26小结•设计主存储器–确定最大寻址空间–确定字长–确定读写时序–得到控制信号27教学计算机TEC-2000存储器设计•设计要求–需要ROM来存放监控程序–需要RAM供用户和监控程序使用–能够让用户进行扩展•设计原则–尽量简单,能体现出原理课教学要求–不追求高速度28控制总线设计•时钟信号–与CPU时钟同步(降低了CPU主频)•读写信号/MIOREQ/WE000内存写/MWR接/WE001内存读/MRD接/OE010I/O写/WR011I/O读/RD1XX不用用DC3实现29TEC-2000内存控制信号获取1B1A1GDC31392B2A2G1Y01Y11Y21Y32Y02Y1REQWEGNDMIOMWRMRDWRRDMMREQIOREQ74LS139:双2-4译码器30地址总线设计•片选信号–A15、A14和A13最高位地址译码产生–/MMREQ作为使能信号•地址信号–A10~A0:11位地址–1个地址单元对应4个地址–来自地址寄存器用DC5实现31TEC-2000片选信号DC5138A15A14A13GNDMMREQVCCCBAG2AG2BG1Y0Y1Y2Y3Y4Y5Y6Y70000~1FFF2000~3FFF4000~5FFF6000~7FFF8000~9FFFA000~BFFFC000~DFFFE000~FFFFDC574LS138:3-8译码器32TEC-2000地址信号RAML6116ROML28C64RAMH6116ROMH28C64MWRWEWEA10~A0D15~D8D7~D0D15~D0A12~A0A12~A0A10~A0A10~A0OECSCSOEOEOECSCSY1Y1Y0Y0MRDMRDD15~D8D7~D0地址总线数据总线WEWEMRDMRD33A10~A0A11A12A10~A0A10~A0D7~D0D7~D0D7~D0A11WECSOEOECSCSOEWEWE19~1119~1117~91922231~8............短路子8位机短接16位机断开A11/MWR23A12A10~A02322124253~10VCC/MWR/MRDGND/MRDGND22124253~101922231~822124253~1022124253~10A12A10~A0A12A10~A0D7~D0D7~D0D7~D019~1119~11A11A11232317~9/MWRVCC/MWRWE/MWRVCC/MWRWE/MWRVCC/MWROECSOECSOECS/MRDGND/MRDGNDWEA11A11A11/MWR/MRD2323232323231Y01A2B2AG1G21Y11Y21Y32Y02Y11B/MWR/MRD/WR/RD/MMREQ/IOREQ/WEREQMIOGNDCBAG12AG2BGY0Y1Y2Y3Y4Y5Y6Y7CBAG12AG2BGY0Y1Y2Y3Y4Y5Y6Y780~8F90~9FA0~AFB0~BFC0~CFD0~DFE0~EFF0~FF0000~1FFF2000~3FFF4000~5FFFE000~FFFF6000~7FFF8000~9FFFA000~BFFFC000~DFFFA6A5A4A7A15A14A13GNDGNDVCCCBAG12AG2BGY0Y1Y2Y3Y4Y5Y6Y7CBAG12AG2BGY0Y1Y2Y3Y4Y5Y6Y7DC12DC11DC10DC22DC21DC20LinkGNDLinkGND/SWTOIB/RTOIB/ETOIB/FTOIB/STOIB/INTVH/INTVLNCNC/GIR/GARH/GARL/INTR/DI/INTN/EI3211314154567121112345615141312111097124561514131211109715141312111097151413