存储器扩展及读写实验

合集下载

存储器实验

存储器实验

一、实验目的[1]理解计算机存储子系统的工作原理。

[2]掌握静态随机存储器RAM的工作特性和读写方法。

二、实验内容本实验旨在通过搭建静态随机存储器电路,使用M6116芯片,并结合74LS245和74LS373等器件,实现对存储器的读写操作。

具体实验内容包括存储器的基本读写操作和扩展实验要求的IO内存统一和独立编址增加4K的IO地址。

三、实验原理芯片介绍:•74LS245:8位双向缓冲传输门,用于连接数据总线和存储器地址输入。

•74LS373:8位透明锁存器,用于存储地址信息。

•M6116:2K*8位静态随机存储器,具有片选、读使能和写使能等控制线。

操作原理:•写操作:通过设定地址和数据,控制M6116的写使能和数据输入,将数据写入指定存储单元。

•读操作:设置地址并启用读使能,从M6116读取存储单元的数据,并通过数据总线输出。

四、实验步骤及结果(附数据和图表等)1. 基本实验步骤1.电路搭建:o根据图3.4搭建实验电路,连接M6116、74LS245、74LS373等器件。

o设置好数据开关(SW7-SW0)、数码管显示和总线连接。

2.预设置:o将74LS373的OE(——)置0,保证数据锁存器处于工作状态。

o设置M6116的CE(——)=0,使其处于选中状态。

o关闭74LS245(U1),确保数据总线不受影响。

3.电源开启:o打开实验电源,确保电路供电正常。

4.存储器写操作:o依次向01H、02H、03H、04H、05H存储单元写入数据。

o以01H为例:▪设置SW7~SW0为00000001,打开74LS245(U1),将地址送入总线。

▪将74LS373的LE置1,将地址存入AR,并观察地址数码管。

▪将LE置0,锁存地址到M6116的地址输入端。

▪设置数据开关为要写入的数据,打开74LS245(U4),将数据送入总线。

▪将M6116的WE(——)由1转为0,完成数据写入操作。

▪关闭74LS245(U4)。

存储器扩展仿真实验报告

存储器扩展仿真实验报告

一、实验目的1. 理解存储器扩展的基本原理和方法。

2. 掌握位扩展和字扩展的技巧。

3. 利用仿真软件实现存储器扩展,并验证其功能。

二、实验环境1. 仿真软件:Logisim2. 硬件设备:电脑三、实验原理1. 存储器扩展的基本原理存储器扩展是指将多个存储器芯片组合在一起,以实现更大的存储容量或更高的数据位宽。

存储器扩展主要有两种方式:位扩展和字扩展。

(1)位扩展:当存储芯片的数据位小于CPU对数据位的要求时,可以通过位扩展方式解决。

位扩展时,将所有存储芯片的地址线、读写控制线并联后与CPU的地址线和读写控制线连接,各存储芯片的数据总线汇聚成更高位宽的数据总线与CPU的数据总线相连。

(2)字扩展:当存储芯片的存储容量不能满足CPU对存储容量的要求时,可以通过字扩展方式来扩展存储器。

字扩展时,将所有存储芯片的数据总线、读写控制线各自并联后与CPU数据总线、读写控制线相连,各存储芯片的片选信号由CPU高位多余的地址线译码产生。

2. 存储器扩展的方法(1)位扩展:选择合适的存储芯片,将多个存储芯片的数据总线并联,连接到CPU的数据总线上。

(2)字扩展:选择合适的存储芯片,将多个存储芯片的数据总线、读写控制线分别并联,连接到CPU的数据总线和读写控制线上。

同时,使用译码器产生片选信号,连接到各个存储芯片的片选端。

四、实验步骤1. 创建一个新的Logisim项目。

2. 在项目中添加以下模块:(1)存储芯片模块:选择合适的存储芯片,如RAM或ROM。

(2)译码器模块:根据存储芯片的数量和地址线的位数,选择合适的译码器。

(3)数据总线模块:根据位扩展或字扩展的要求,设置数据总线的位数。

(4)地址线模块:根据存储芯片的数量和地址线的位数,设置地址线的位数。

3. 连接各个模块:(1)将存储芯片的数据总线连接到数据总线模块。

(2)将存储芯片的地址线连接到地址线模块。

(3)将译码器的输出连接到各个存储芯片的片选端。

(4)将存储芯片的读写控制线连接到CPU的读写控制线上。

实验十存储器读写实验报告

实验十存储器读写实验报告

微机原理实验——存储器读写实验报告计科11-1赵锦波08113367实验十存储器读写实验一、实验目的1、熟悉6264静态RAM的使用方法,掌握PC机外存扩充的手段。

2、通过对硬件电路的分析,学习了解总线的工作时序.二、实验内容1.电路图(RAM为2K的6264)2.编制程序,将字符A-Z循环写入扩展的6116RAM中,然后再将6116的内容读出来显示在主机屏幕上。

三、源程序;***************************;固定段地址0d000, 微动开关选中6000H,即6264片选6000选中;********data segment;数据段开始message db 'please enter a key to show thecontents!',0dh,0ah,'$';定义字节,显示输出信息data ends;结束code segment;代码段assume cs:code,ds:data,es:data;段分配指令start:mov ax,data;送数据段地址mov ds,ax;数据段地址不能直接送ds,所以借助axmov ax,0d000h;固定段地址0d000Hmov es,ax;es=0d000Hmov bx,06000h;微动开关选中6000Hmov cx,100h;设置循环次数,写入100个A-Zmov dx,40h;A的ascii码为41hrep1:inc dl;rep1为标签名称用于loop rep1,dl=0+1=1mov es:[bx],dl;bx存放6001Hinc bx;bx+1,即06001Hcmp dl,5ah;Z的ascii码为5ah,即与Z比较jnz ss1;zf=0时转移mov dl,40h;A的前一个字符的ASCII码为40Hss1:loop rep1;loop在cx不为0时循环mov dx,offset message;偏移量送dxmov ah,09;输出字符串int 21hmov ah,01h;从键盘输入一个字符int 21hmov ax,0d000hmov es,ax;es=0d000Hmov bx,06000h;从0d6000H开始循环写入mov cx,0100h;设置循环次数,写入100个A-Zrep2:mov dl,es:[bx]mov ah,02h;显示一个字符int 21hinc bxloop rep2mov ax,4c00h;返回dosint 21h;返回doscode ends;代码段结束end start;全部结束四、实验流程图六、运行结果1、试验箱连接试验结果:七、实验心得实验开始摸不着头脑,边问边摸索才知道,实验要求我们:使用汇编语言的基本知识将字符A-Z循环写入扩展6264RAM中,再将6264内容读出显示在屏幕上。

存储器扩展实验

存储器扩展实验

实验一存储器扩展实验
1 实验目的
1)、熟悉存储器扩展方法。

2)、掌握存储器的读/写
2 实验预习要求
1)、复习教材中存储器扩展的有关内容,熟悉存储器扩展时地址总线、控制总线及数据总线的连接方法,
了解静态RAM的工作原理。

2)、预先编写好实验程序。

3 实验内容
1)、连接电路
2)、编写程序,将字母‘A’~‘Z’循环存储在扩展的SRAM 62256存储器芯片D8000H开始的单元中,然
后再将其从62256中读出并在屏幕上显示。

4 实验提示
1)、62256芯片的容量为32K⨯8位,芯片上的地址引脚A0~A14(共15根)连接至系统的地址总线A1~A15,用来对片内32K个存储单元进行寻址。

片选信号CS接至实验台的MY0。

芯片上的8个数据引脚D0~D7直接与系统的数据引脚相连。

控制信号RD、WR分别连接到实验台的MRD#和MWR#。

写操作时,芯片上的控制信号CS=0,WR=0,RD=1;读操作时,CS=0,RD=0,WR=1。

2)、实验程序流程图如图所示。

5 实验报告要求
1)、根据流程图编写实验程序,并说明在实验过程中遇到了哪些问题,是如何处理的。

2)、总结存储器系统的基本扩展方法。

3)、写出实验小结,内容包括实验心得(收获)、不足之处或今后应注意的问题等。

单片机扩展器存储实验

单片机扩展器存储实验

扩展存储器读写实验一、实验目的1、进一步掌握单片机系统PROTEUS设计与仿真方法。

2、进一步掌握软件调试仿真器Kell uVision2的使用方法。

3、掌握扩展一个片外数据存储器芯片的接口技术。

4、理解读/写片外RAM的过程,理解RD、WR信号在读写过程中的作用。

二、实验仪器PC机一台三、实验内容编写程序,对扩展的数据存储器62256(32KB的RAM,有8条数据线D0~D7,15条地址线A0~A14)进行读写测试。

1.具体要求:设计一个程序,向62256的0000H~0013H存储单元依次连续写入数据1到20。

接着依次再从这些单元中读出这20个数并求这20个数的累加和(结果为D2H),将其通过P1口送出(仿真电路中的发光二极管D1~D8)。

2.电路设计:在PROTEUS ISIS中设计62256扩展片外RAM电路。

电路中74LS245用作数据总线的双向驱动;74LS373用于低8位的地址锁存,通过读/写线RD、WR控制单片机与62256之间的数据传输方向;A15用作63356的片选线,当A15=0时,选中62256,可对它进行读/写操作;62256的地址范围是0000H~7FFFH。

所用元器件在清单中列出。

元件清单表元件名称所属类所属子类A T89C51 Microprocessor ICs 8051 Family74LS245 TTL74LS series Transceivers74LS373 TTL74LS series Flip-Flops&Latches62256 Memory ICs Static74LS244 TTL74LS series Buffers&DriversRES Residtors Generic LED-YELLOW Optoelectronics LEDs四、实验源程序RESULT EQU 0000HSTART: MOV DPTR,#RESULTMOV R2,#00HMOV R0,#20HCLR AMOV A,#01HLP1: MOVX @DPTR,AINC AINC DPTRDJNZ R0,LP1MOV DPTR,#RESULTCLR ALP2: MOVX A,@DPTRADD A,R2MOV R2,ACLR AINC DPTRDJNZ R0,LP2MOV P1,R2END硬件电路图五、实验结果发光二极管显示:11010010B(D2H)。

单片机实验-扩展存储器读写实验

单片机实验-扩展存储器读写实验

实验一:扩展存储器读写实验一.实验要求编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。

二.实验目的1.学习片外存储器扩展方法。

2.学习数据存储器不同的读写方法。

三.实验电路及连线将P1.0接至L1。

CS256连GND孔。

四.实验说明1.单片机系统中,对片外存贮器的读写操作是最基本的操作。

用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。

用户编程可以参考示例程序和流程框图。

本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。

不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。

读写数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。

一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。

用户调试该程序时,可以灵活使用单步、断点和变量观察等方法,来观察程序执行的流程和各中间变量的值。

2.在I状态下执行MEM1程序,对实验机数据进行读写,若L1灯亮说明RAM读写正常。

3.也可进入LCA51的调试工具菜单中的对话窗口,用监控命令方式读写RAM,在I状态执行SX0000↓ 55,SPACE,屏幕上应显示55,再键入AA,SPACE,屏幕上也应显示AA,以上过程执行效果与编程执行效果完全相同。

注:SX是实验机对外部数据空间读写命令。

4.本例中,62256片选接地时,存储器空间为0000~7FFFH。

五.实验程序框图实验示例程序流程框图如下:六.实验源程序:ORG 0000HLJMP STARTORG 0040HSTART:MOV SP,#60HMOV DPTR,#0000H ;置外部RAM读写地址MOV A,#55H ;测试的数据一MOV B,AMOVX @DPTR,A ;写外部RAMMOVX A,@DPTR ;读外部RAMXRL A,B ;比较读回的数据JNZ ERRORMOV A,#0AAH ;测试的数据二MOV B,AMOVX @DPTR,AMOVX A,@DPTRXRL A,BJZ PASS ;测试通过ERROR: SETB P1.0 ;测试失败,点亮LEDSJMP $PASS: CPL P1.0 ;LED状态(亮/灭)转换MOV R1,#00H ;延时DELAY: MOV R2,#00HDJNZ R2,$DJNZ R1,DELAYLJMP START ;循环测试END实验二P1口输入、输出实验一.实验要求1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

存储器读写实验

存储器读写实验
本实验发送字符的总长度为11位(1个起始位(0),8个数据位(D0在前 ),1个奇偶校验位,1个停止位(1),采用偶校验,发送数据为55H ,反复发送,以便用示波器观察发送端TXD的波形。用查询 8251A状态字的第0位(TXRDY)来判断1 个数据是否发送完毕, 当 TXRDY=1时,发送数据缓冲器空。
实验三 8255A 并 行 口 实 验
一、实验目的 1、掌握8255A和微机接口方法。 2、掌握8255A的工作方式和编程原理。 二、实验原理 1、 如实验原理图,PC口8位接8个开关K1~ K8,PB口8位接8个发 光二极管,从PC口读入8位开关量送PB口显示。拨动K1~ K8,PB口 上接的8个发光二极管L1~ L8对应显示K1~ K8的状态。
实验七 A/D转换实验
一、实验目的 1、 加深理解逐次逼近法模数转换器的特征和工作原理。 2、掌握ADC0809的接口方法以及A/D输入程序的设计和调试方法。 二、实验原理 1、本实验采用 ADC0809 做 A/D 转换实验。ADC0809 是一种8路模拟输入 、8位数字输出的逐次逼近法A/D器件,转换时间约100us,转换精度为 ±1/512,适用于多路数据采集系统。ADC0809片内有三态输出的数据锁 存器,故可以与8088微机总线直接接口。 图中ADC0809的CLK信号接CLK=2.385MHZ,基准电压Vref(+)接Vcc。一 般在实际应用系统中应该接精确+5V,以提高转换精度,ADC0809片选 信号0809CS和/IOW、/IOR经逻辑组合后,去控制ADC0809的ALE、 START、ENABLE信号。ADC0809的转换结束信号EOC未接, 如果以中 断方式实现数据采集,需将EOC信号线接至中断控制器8259A的中断源 输入通道。本实验以延时方式等待A/D转换结束,ADC0809的通道号选 择线ADD-A、ADD-B、ADD-C 接系统数据线的低3位,因此 ADC0809的8个通道值地址分别为00H、01H、02H、03H、04H、05H 、 06H、07H。

存储器扩展实验报告

存储器扩展实验报告

存储器扩展实验报告存储器扩展实验报告引言:存储器是计算机系统中至关重要的组成部分,对于数据的存储和读取起着至关重要的作用。

在计算机科学领域中,存储器扩展是一项重要的技术,可以提高计算机系统的性能和容量。

本实验旨在通过对存储器扩展的探索和实践,深入了解存储器的工作原理和扩展方法。

一、存储器的基本原理存储器是计算机中用于存储和检索数据的硬件设备。

它可以分为主存储器和辅助存储器两种类型。

主存储器是计算机系统中最重要的存储器,它用于存储正在运行的程序和数据。

辅助存储器则用于存储大量的数据和程序,常见的辅助存储器包括硬盘、光盘和闪存等。

二、存储器的扩展方法存储器的扩展方法有很多种,本实验主要探索两种常见的扩展方法:内存条扩展和虚拟内存扩展。

1. 内存条扩展内存条扩展是通过增加计算机内部的内存条数量来扩展存储器容量的方法。

在实验中,我们使用了两根相同规格的内存条,将其插入计算机主板上的内存插槽中,从而增加了系统的内存容量。

通过这种扩展方法,我们可以提高计算机的运行速度和处理能力。

2. 虚拟内存扩展虚拟内存是一种将计算机内存和硬盘空间结合起来使用的技术。

在实验中,我们通过调整计算机系统的虚拟内存设置,将部分数据和程序存储在硬盘上,从而扩展了存储器的容量。

虚拟内存的扩展方法可以有效地提高计算机的性能和运行效率。

三、实验过程与结果在实验中,我们首先进行了内存条扩展的实践。

通过将两根内存条插入计算机主板上的内存插槽中,我们成功地扩展了计算机的内存容量。

在进行实际操作时,我们注意到计算机的运行速度明显提高,程序的加载和执行时间也大大缩短。

接着,我们进行了虚拟内存扩展的实验。

通过调整计算机系统的虚拟内存设置,我们将部分数据和程序存储在硬盘上。

在实际操作中,我们发现虚拟内存的扩展使得计算机可以同时运行更多的程序,且不会出现内存不足的情况。

这大大提高了计算机的运行效率和多任务处理能力。

四、实验总结与心得通过本次实验,我们深入了解了存储器的工作原理和扩展方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华北电力大学
实验报告|

实验名称存储器扩展及读写实验
课程名称微机原理

|
图1
四、实验结果
五、
图二
六、第一次搭载得硬件电路图如图二所示,图二与图一得区别之处如红框
所示,在图一中,入口地址为8000h,则AL中内容可以成功写入扩展存储器内,在图二中,将入口地址改为0000h,则AL中内容不能成功写入扩展存储器,至今我也没能想明白这就是为什么,希望老师解答一下。

图三
在图三中,AL中没有成功写入存储器中得原因有:
1、我忘了将总线得引脚AD[0、、15]与A[16、、19]引出。

2、在设置引脚M/IO得label时,将两个需要连接得引脚分别设置成了‘M/IO’与‘M/I0’。

一时得疏忽害我查了好久得错.
图四
正确结果如图四所示.采用两片6216芯片,采用全译码法,扩展存储器地址空间范围为0000:8000H~0000:8FFFH,共4KB得内存空间。

五、遗留问题
1、上面两个程序块都有错误,我想把内容写入附加段内,但就是怎么也行
不通,我得程序中得段超越就是不就是用错了。

瞧了一下老师得硬件电路连接,
我发现入口地址改为8000h应该
也可以,可就是运行时发现内容写
不进去,我就是不就是哪里弄错了。

相关文档
最新文档