计算机组成与体系结构第二次试验:存储器实验

  • 前言
  • 一、实验目的
  • 二、实验环境
  • 三、实验内容
  • 四、实验步骤
  • 五、实验结果
  • 六、实验总结

前言

为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正!

一、实验目的

本实验的主要内容是了解 RAM(Random Access Memory,静态随机存储器)和ROM(Read Only Memory,只读存储器)的工作特性;掌握存储器与总线的连接及存储器地址空间映射的原理。通过设计一个8位字长的存储器电路,包括ROM和RAM两个地址相互独立的存储器,实现对ROM和RAM存储器的数据读写操作及数据成批导入 ROM 的操作。

二、实验环境

操作系统:Win10
实验用软件:Proteus 8

三、实验内容

本实验的存储器电路如图2-1所示,由地址输入单元、存储器及地址选择电路组成。存储器电路中共有两条总线:12位地址总线ABUS_[0.11]和8位数据总线DBUS[0.7]。图左边是拨码开关构成的12位地址输入端,其连接在地址总线ABUS[0…11]上,通过三个绿色数码管输出显示12位地址信息。图2-1右边则是存储器ROM、RAM及其地址选择电路。
ROM和RAM存储器内部有三态门结构,其数据输出端直接连在数据总线DBUS_[0…7]上,通过两个红色数码管显示8位数据信息。
存储器是用来存储信息的部件,是计算机的重要组成部分,常见的半导体存储器类型主要有ROM和BAM。ROM一般容量较大,在断电的时候仍然可以保存数据:ROM只能读出数据,不能写人数据。而RAM存储器一般容量较小,在断电之后就丢失数据;RAM既可读出数据,又可写入数据。本实验中使用的ROM存储器是2764(8Kbit),RAM存储器是6116(2Kbit)。
如图2-2所示,ROM芯片2764的数据线D-D,接到数据总线,地址线AoAs由地址锁存器74LS273给出,用来对ROM片内存储单元寻址,其余地址线AsA12接地。2764有两个控制端:CE(片选)和OE(读)。RAM芯片6116的数据线DoD,接到数据总线,地址线A0A7由地址锁存器74LS273给出,用来对RAM片内存储单元寻址,其余地址线As-A1o接地。6116有三个控制端:CE(片选)、OE(读)和WE(写)。
存储器电路控制信号的逻辑功能见表2-1所示。值得注意的是,在对ROM或RAM读写的时候,首先必须在存储器的片选有效(CE=0)的前提下,才能对相应的存储器读(OE=0)
或写(WE=0)。例如,对ROM芯片2764进行读操作,必须令使能ROM CE-0且ROM OE=0。
存储器片选信号ROM_CE和RAM_CE是由地址信号的高4位ABUS_8~ABUS_11经过片选逻辑电路自动形成的,不需要拨码开关控制。
其次,必须在地址锁存器(74LS273)ROM_AR、RAM_AR锁存地址信号,才能选中存储器片内相应的单元。地址锁存器ROM_AR和RAM_AR的输入都连接至地址总线ABUS_0
~ABUS_7,在其CLK端开关出现上升沿跳变的时候,地址总线ABUS_0-ABUS_7的数据打入ROM_AR或RAM_AR锁存。锁存后无论地址总线ABUS如何变化,选中的存储单元也不会发生改变,可以进行稳定的读写操作(存储器数据端输入或输出)。
存储器电路设计的最重要环节是存储器与地址总线的连接,因为连接方式决定了存储器地址空间的映射关系,即决定了每个存储器芯片在整个存储空间中的地址范围。12位地址总线的理论地址空间为4KB(000HFFFH),本实验将其中最低的512B的地址分配为ROM区(000H1FFH),最高的128B地址为RAM区(F80H~FFFH),其余留空,如图2-3所示。
存储器电路的设计一般将地址总线区分为低位地址线和高位地址线两部分:低位地址线直接和存储器芯片的地址信号连接作为片内地址译码,而高位地址线的连接主要用来产生片选信号(称为片间地址译码),以决定每个芯片在整个存储系统中的地址范围。
在本实验中,12位地址总线分为低8位地址线和高4位地址线。低8位地址线ABUS0
ABUS7分别与ROM和RAM芯片的地址线AoA7共用;高4位地址线ABUS_8~ABUS_11则通过两个3-8译码器进行译码,如图2-2所示。低位3-8译码器U13最低2位之一输出有效,则片选ROM芯片(“负逻辑”判断,使用与门);同样,高位3-8译码器U15最高1位输出与地址线A同时有效,则片选RAM芯片(“负逻辑”判断,A7先反相,再使用或门)。
值得注意的是,相同的存储器地址空间映射,可以有不同的片选电路实现方法(例如使用“正逻辑”判断)。

四、实验步骤

1)按照“2.3ROM批量导人数据的技巧”小节所述,将project.asm文件编译的hex二进制文件加载到ROM芯片2764,并且查看ROM烧写的数据段是否正确。
2)启动仿真前,令ROMOE=RAMOE=RAM_WE=1;启动仿真后,令SW_BUS=0,手动拨码开关输人024H到地址总线ABUS_[0…11](绿色数码管显示)。
3)令地址锁存信号ROM_CLK上升沿跳变0→1,将地址总线上的024H打入地址锁存器ROMAR;令ROMOE=0,使能ROM存储器2764输出,在数据总线DBUS[0…7](红色数码管显示)上查看存储单元[024H]读出的内容。
4)手动拨码开关,向地址锁存器RAMAR打入地址F80H;令RAMWE=0,使能RAM存储器6116输入,把存储单元[024H]的内容写入存储单元[F80H]。再令RAM_WE=1,结束对RAM存储器的写人操作。
5)令ROM_OE=1(禁止ROM存储器2764输出)且RAM_OE=0(允许RAM存储器6116输出),在数据总线DBUS_[0.7]上观察存储单元[F80H]的写入内容是否正确。
6)按照上述操作,把ROM存储器单元[024H]、[028H]、[02CH]、[030H]的内容依次写入RAM存储器单元[F80H]、[F81H]、[F82H]、[F83H],查看写入RAM的数据是否正确。






五、实验结果


六、实验总结

  1. 假设把project.asm文件中的某个ORG语句改为“ORG0224H”,请问该ORG定义的数据段还能被访问到么?如果不能,是数据批量导入ROM出错么?请修改ROM的地址片选电路,保证“ORG0224H”所定义的数据段能被访问到。
    答:不能。应该是数据批量导入ROM出错。
  2. 为何ROM和RAM需要使用两个独立的3-8译码器?假设RAM的片选电路与ROM的片选电路共用一个3-8译码器,即ROM所在3-8译码器的最低2个端口给ROM使用,最高1个端口给RAM使用。请给出ROM和RAM的地址空间范围。
    答:因为ROM和RAM两个操作方式和功能均不一,前者只读,后者可读可写;两者的空间地址范围不一。RAM:0XXH ~ 8XXH;ROM:X00H~XFFH;
  3. 假设RAM的地址空间范围改为800H-8FFH,请问存储器地址片选电路如何修改?假设再把ROM的地址空间范围改为600H~7FFH,请问存储器地址片选电路又如何修改?
    答:前者RAM范围只需调整最低两个端口;后者ROM需要调整三个端口。

心得体会:
进行本次实验操作时,实验器件多,连线复杂,哪怕连线完成、实验图做好后,依然不了解这个图的用途及原理。之后,本人通过查阅资料、同学讨论等等方式对本次实验有了大概的理解,同时,本次实验步骤复杂,稍不留意就容易前功尽弃,需要我们在做实验时谨慎再谨慎。

计算机组成与体系结构第二次试验:存储器实验相关推荐

  1. 【系统架构设计师】计算机组成与体系结构 ① ( 计算机组成 | CPU | 存储器 | 总线 | IO 外设 | CPU 组成 | 运算器 | 控制器 )

    文章目录 一.计算机组成与体系结构 二.计算机组成结构 三.CPU 组成 1.运算器 2.控制器 一.计算机组成与体系结构 计算机组成与体系结构 对应 大学的 计算机组成原理 课程 , 主要分为 : ...

  2. 点亮两个发光管用c语言编辑,第二个试验:用单片机点亮一个闪烁的发光管-----51单片机汇编语言试验教程 - CSDN博客...

    第二个试验:用单片机点亮一个闪烁的发光管 一次我们的程序实在是没什么用,要灯亮还要重写一下片子,下面我们要让灯不断地闪烁,这就有一定的实用价值了,比如可以把它当成汽车上的一个信号灯用了.怎样才能让灯不 ...

  3. 2021.12.26 第一章. 计算机组成与体系结构

    本文由 简悦 SimpRead 转码, 原文地址 blog.csdn.net 该系列一共包括十三章 目录 第一章. 计算机组成与体系结构 第一节. 数据的表示 第三节. 计算机体系结构分类 (Flyn ...

  4. 西电计算机组织与体系结构实验,《计算机组织与体系结构》实验.doc

    <计算机组织与体系结构>实验 <计算机组织与体系结构>课程实验指导书 实验二 存储器部件实验 一.实验目的和要求 1.掌握存储器的组成和工作原理. 2.熟悉存储器芯片的引脚信号 ...

  5. 软考-软件设计师 笔记一(计算机组成与体系结构)

    本栏博客目录 软考-软件设计师 笔记一(计算机组成与体系结构) 软考-软件设计师 笔记二(操作系统基本原理) 软考-软件设计师 笔记三(数据库系统) 软考-软件设计师 笔记四(计算机网络) 软考-软件 ...

  6. 系分 - 计算机组成与体系结构

    个人总结,仅供参考,欢迎加好友一起讨论 文章目录 系分 - 计算机组成与体系结构 考点摘要 浮点数 Flynn分类法 CISC与RISC 流水线技术 流水线技术 - 超标量流水线 计算机组成 存储系统 ...

  7. 计算机组成与体系结构 LRU 算法与 MRU 算法对比

    计算机组成与体系结构,第7章存储器层次结构,关于Cache组相连映射的替换算法对比. LRU 算法与 MRU 算法对比 LRU 算法 定义 LRU(least-recently used)算法,即最近 ...

  8. 【计算机组织与体系结构】实验四:指令 CACHE 的设计与实现

    系列文章目录 [计算机组织与体系结构]实验一:算术逻辑单元的实现 [计算机组织与体系结构]实验二:给定指令系统的处理器设计 [计算机组织与体系结构]实验三:流水线处理器 [计算机组织与体系结构]实验四 ...

  9. 计算机组成与体系结构——指令流水线

    计算机组成与体系结构,第6章指令流水线学习 时钟周期.机器周期.指令周期 时钟周期也称为振荡周期,定义为时钟脉冲的倒数,是计算机中最基本的.最小的时间单位. 机器周期,为了便于管理,常把一条指令的执行 ...

最新文章

  1. NeurIPS 2019 获奖论文出炉,微软华人学者Lin Xiao 获经典论文奖
  2. ubuntu 下解锁华为8812并刷入recovery.img
  3. JAVA设置新视口,java – 在更大的图像上移动视口; JLablel JScrollPane
  4. Ubuntu 安装 Redis (非源码Build方式)
  5. 【Flink】Flink 系统监控指标
  6. 微软3月补丁星期二修复71个漏洞,其中3个是0day
  7. ios FMDB 更新二进制图片数据
  8. bug宝典linux篇 LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory(转)
  9. UIKit框架-基础控件Swift版本: 7.UISwitch方法/属性详解
  10. python基于给定时间戳生成 未来/过去 前进/倒退 n个小时的时间戳
  11. 双系统装完只能u盘启动_U盘启动盘如何安装Win7+Win8双系统史上最详细教程
  12. 红外测距模块–红外对管(TCRT5000)原理
  13. 在 Linux 中安装 Firefox
  14. 安卓APP在运行时对全局进行网络状态监听的实现
  15. 爬取腾讯视频评论——以《三生三世,十里桃花》为例
  16. Android计步器
  17. tomcat更改默认端口号
  18. Electron 麒麟 Linux 系统 root 账户报错
  19. C#实现笔记本自带蓝牙与汇承HC-08(BLE)蓝牙模块通讯
  20. gcc编译程序的过程

热门文章

  1. [附源码]java+ssm计算机毕业设计基于JAVA同城交友管理系统o35p1(源码+程序+数据库+部署)
  2. 使用 k3s 在 Centos7 上运行 K8S
  3. 嵌入式音频软件的架构
  4. 从红包到支付-----支付宝还是微信
  5. 翻页 java_jsp实现上一页下一页翻页功能
  6. 视频广告屏蔽网站优化笔记
  7. ffmpeg加文字水印并控制水印显示时间或显示周期
  8. 查询命令-which/whereis
  9. 霍尔开关单极性3144,双极性41F,线性霍尔3503等霍尔开关使用
  10. Arduino CLI命令行ESP32开发环境搭建(Linux Ubuntu操作系统)