计算机组成原理--存储器实验:从原理到实践,掌握SRAM读写与扩展
1. 为什么SRAM实验是计算机组成原理的必修课第一次接触SRAM芯片时我盯着实验箱里那块小小的6116芯片看了半天——就这么个比指甲盖还小的东西居然能存储2048个字节的数据更神奇的是断电后数据就消失了。这种会失忆的存储器和我们手机电脑里用的内存条竟是同类。静态随机存储器(SRAM)作为计算机内存的基石其工作原理直接影响着CPU访问数据的速度。我在大二做这个实验时最深刻的体会是理论上看懂时序图是一回事亲手让LED灯按预期亮灭又是另一回事。当你拨动开关看到地址总线的LED显示A7~A000000001数据总线显示D7~D000010001时那种我确实把11H写入了01H地址的实感是看十遍教科书都换不来的。实验箱上的6116芯片虽然只有2KB容量但它和现代计算机内存的核心原理完全一致。通过这个实验你能真正理解地址线和数据线如何分工合作片选信号(CS)、写使能(WE)、输出使能(OE)的配合舞蹈为什么CPU需要严格的时序控制才能正确读写内存提示实验前建议用Proteus仿真软件搭建虚拟电路能避免实操时烧毁芯片的风险。我曾因接错线导致芯片发烫这个教训值50块钱。2. 实验设备连接避开我踩过的三个坑实验箱接线的过程就像在玩解谜游戏——每个信号都必须找到正确的归宿。根据TD-CMA实验系统的特点这些细节需要特别注意2.1 电源管理黄金法则一定要先接线后通电我的同学曾带电插拔排线导致6116芯片当场阵亡。正确的操作顺序是关闭实验箱电源开关对照图2-4完成所有连线特别留意标圆圈的关键信号用万用表蜂鸣档检查线路通断确认KK1、KK3在运行档KK2在单步档最后才接通电源2.2 总线竞争警报处理如果通电后听到嘀声报警说明存在总线冲突。这时要立即关闭电源开关检查IOR开关是否置于1禁止IN单元输出确认74LS245三态门使能端连接正确排查是否有多个单元同时向数据总线输出2.3 信号线防呆设计6116的三个关键控制信号最易接错CS片选线实验常接地低电平有效OE读使能接CON单元的RD信号WE写使能接CON单元的WR信号建议用不同颜色导线区分红色接电源、黑色接地、黄色接控制信号。我第二次实验时用这个办法接线效率提升了一倍。3. 手把手完成SRAM读写操作3.1 写入数据的艺术以向00H地址写入11H为例正确的操作流程就像跳华尔兹准备阶段设置WR0、RD0IOR0允许输入送地址拨动数据开关到00000000打开LDAR1锁存地址按下ST按钮产生T3脉冲会听到咔嗒声送数据拨动数据开关到00010001关闭LDAR0执行写入设置WR1、RD0、IOM0再次按ST此时用万用表测量6116的对应引脚应该能看到数据线上的电平变化。我第一次操作时太紧张忘了在第二步打开LDAR结果地址没锁存成功。3.2 读取数据的奥秘从00H地址读取数据的操作更考验耐心清除状态WR0、RD0IOR1禁止输入送地址同写入步骤1-3触发读取设置WR0、RD1、IOM0观察结果数据总线LED应显示00010001有趣的是读操作时6116的OE引脚会从高电平跳变到低电平这个变化可以用示波器捕捉到。建议在实验报告中附上示波器截图能加分不少。3.3 批量读写实战尝试连续操作多个地址时推荐以下顺序01H ← 11H → 读出验证 02H ← 22H → 读出验证 ...每完成一组操作就立即验证比全部写完再统一检查更容易定位问题。我记录过一组典型数据地址写入值读出值结果01H11H11H✓02H22H22H✓03H33H13H✗第三次操作出错后发现是数据开关接触不良这个教训让我养成了每次拨动开关后用手指轻轻按压的习惯。4. 进阶玩法用SRAM做加法器最让我兴奋的是实现(01H)(02H)→06H这个功能。这需要协调存储器、运算器和控制器按3.3节方法在01H、02H存入加数设置运算器为加法模式具体操作取决于实验箱型号分两次读取01H、02H到运算器将运算结果写入06H地址关键点在于控制信号的时序配合。建议先画出类似下面的时序图T1: 读01H → 运算器暂存 T2: 读02H → 运算器相加 T3: 写结果到06H在TD-CMA系统上这个过程需要精确控制CON单元的二进制开关序列。我失败三次后才掌握节奏发现T3脉冲的持续时间必须大于50ms。5. 深度探索SRAM容量扩展实战6116原本有11根地址线(A0-A10)但实验箱只引出了A0-A7。要突破256字节的限制可以这样扩展5.1 字扩展方案使用74LS138译码器管理多片6116的片选信号A8 → 译码器A A9 → 译码器B A10→ 译码器C每片6116的CS接译码器输出这样8片芯片就能组成2KB存储系统。我在毕业设计中用这个方案成功扩展了四片6116。5.2 位扩展技巧如果需要16位存储可以将两片6116并联芯片1存储低8位芯片2存储高8位共用同一组地址线这种方案下读写操作要同时激活两个CS信号。建议用示波器观察两片芯片的时序同步情况。实验中最有成就感的时刻是看着自己扩展的存储器成功存储了一首《两只老虎》的乐谱数据。当通过LED灯看到1 2 3 1的音符编码依次亮起时突然理解了计算机底层工作的美感。