Proteus仿真8086实验一RAM存储器62256

Posted 只是有点小怂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Proteus仿真8086实验一RAM存储器62256相关的知识,希望对你有一定的参考价值。

  • 建议把存储器设计和简单IO接口放在第一次实验,重点了解锁存器273和缓冲器373是怎样将数据和地址线进行分离的,具体Proteus的实验操作比如设置内存大小和快速命名接口(属性赋值工具)可以参考这个老师讲得内容,微处理器实验4-Proteus+8086+8255仿真,照着做一遍就明白该怎么使用Proteus了。但视频中老师的操作是直接拷入EXE文件,但是Proteus8中是可以下载MASM32编译器的,在source code下选择选择系统然后选择编译器配置下载MASM32即可,这样有源文件后方便单步跟踪程序。

微处理器实验4-Proteus+8086+8255仿真

  • 而在顾晖老师的书中需要自己配置编译器,这是因为书中用得是Proteus ISIS,注意装这个Proteus7得使用7.5及以上的版本,不然没有8086,但优点是体积比较小而且不需要使用工程文件打开就可以用,而且高版本的Proteus可以打开低版本的,低版本就不能打开高版本的。尽量先装7再装8,不然8的许可证日期直接变为2009了

  • 根据周佳社老师说得,读写存储器和读写IO基本上操作一样得,也是要先确认地址然后选中CS才可以进行操作,有时同样需要注意高地址和低地址的区别


  • 本次实验内容来自于顾晖老师《微机原理与接口技术 基于8086和Proteus仿真 第3版》的【例6.5】

  • 顾晖老师在51CTO上有课程 https://edu.51cto.com/course/24864.html,华章网站上搜这本书对应的课程应该也有免费的,但实在是太卡了

  • 利用两块62256芯片设计RAM存储器,全地址译码(所有地址线进行译码)

  • SRAM存储器一般使用62系列,同时译码器一般使用138,高地址作为138的输入产生片选信号,低地址作为片内地址。位扩展是并联,字扩展是串联。一般掌握静态RAM就可以了,DRAM需要设计刷新电路比较复杂,ROM又只能读取,Proteus中到也有EPROM等器件

  • 8086数据总线16位分为奇地址和偶地址,需要使用BHE和A0加以区分,BHE为Bus High Enable即高地址有效

    • 同样操作时需要区分字操作和字节操作,如果从奇地址取一个字需要取两个字节,从偶地址取一个字直接BHE=0同时A0=0取出来
    • 两块RAM一块数据线接D0 ~ D7 一块数据线接 D8 ~ D15
  • 8088数据总线8位直接连RAM就可以,设计简单很多,但Proteus中没找到8088芯片,以后找到再说

  • 使用锁存器273,为上升沿有效的D触发器,当ALE地址锁存信号低电平有效时,将地址锁存起来

  • 使用138进行译码,A18A17A16用于产生片选信号选中哪块62256,同样也是作为RAM的地址(6264有两个片选端),RAM可以直接和数据总线相连因为未被选中时同样处于高阻态,不会竞争总线

  • 在调试中可以打开Memory Contents,进行单步调试观察内存中单元数据的变化

  • 从1000H:0000H开始奇体放奇数,偶体放偶数

assume cs:code
code segment
start:
	mov ax, 1000h
	mov ds, ax
	mov si, 0
	mov cx, 10
	mov dl, 0
sim:
	mov [si], dl
	mov al,[si]
	inc dl
	inc si
	loop sim
	mov ax, 4c00h
	int 21h
code ends
end start

以上是关于Proteus仿真8086实验一RAM存储器62256的主要内容,如果未能解决你的问题,请参考以下文章

Proteus仿真8086往8086 内存中写入数据

Proteus仿真8086往8086 内存中写入数据

Proteus仿真8086并行接口芯片8255

Proteus仿真8086并行接口芯片8255

Proteus仿真8086实验二简单IO接口实验——LED灯依次亮起和跑马灯

Proteus仿真8086实验二简单IO接口实验——LED灯依次亮起和跑马灯