实验二存储器实验
计算机组成原理存储器em实验

实验二存储器EM实验一、实验目的:了解模型机中程序存储器EM的工作原理及控制方法。
二、实验要求:利用COP2000实验仪上的K16..K23开关做为DBUS的数据,其它开关做为控制号,实现程序存储器EM的读写操作。
三、实验原理:存储器EM由一片6116RAM构成,通过一片74HC245与数据总线相连。
存储器EM的地址可选择由PC或MAR提供。
存储器EM的数据输出直接接到指令总线IBUS,指令总线IBUS的数据还可以来自一片74HC245。
当ICOE为0时,这片74HC245输出中断指令B8。
EM原理图连接线表连接信号孔接入孔作用有效电平1 J2座J3座将K23-K16接入DBUS[7:0]2 IREN K6 IR, uPC写允许低电平有效3 PCOE K5 PC输出地址低电平有效4 MAROE K4 MAR输出地址低电平有效5 MAREN K3 MAR写允许低电平有效6 EMEN K2 存储器与数据总线相连低电平有效7 EMRD K1 存储器读允许低电平有效8 EMWR K0 存储器写允许低电平有效9 PCCK CLOCK PC工作脉冲上升沿打入10 MARCK CLOCK MAR工作脉冲上升沿打入11 EMCK CLOCK 写脉冲上升沿打入12 IRCK CLOCK IR, uPC工作脉冲上升沿打入四、实验内容:内容1:PC/MAR输出地址选择置控制信号为:K5 (PCOE ) K4(MAROE)地址总线红色地址输出指示灯0 1 PC输出地址PC地址输出指示灯亮1 0 MAR输出地址MAR地址输出指示灯亮1 1 地址总线浮空0 0 错误, PC及MAR同时输出PC及MAR地址输出指示灯亮以下存贮器EM实验均由MAR提供地址内容2:存储器EM写实验1将地址0写入MAR2将11H写入EM[0]3将地址1写入MAR4将22H写入EM[1]内容3:存储器EM读实验1将地址0写入MAR2读EM[0]的内容3将地址1写入MAR4读EM[1]的内容内容4:存储器打入IR指令寄存器/uPC实验1将地址0写入MAR2读EM[0],打入IR3将地址1写入MAR4读EM[1],打入IR操作步骤:1.PC/MAR输出地址选择按照连接表连接好线路,要选择PC,则将K5(PCOE)置为0,K4(MAROE)置为1,则可选择PC,此时PC地址输出指示灯亮(红色灯亮),同理要选择MAR,则将K5(PCOE)置为1,K4(MAROE)置为0,则可选择MAR,此时MAR地址输出指示灯亮(红色灯亮)。
储存器实验

HUNAN UNIVERSITY实验报告题目:储存器实验学生姓名姚小涛学生学号20090820632专业班级通信六班指导老师刘峰完成日期2011年10月26日实验二储存器实验基本知识点1、随机储存器RAM的工作特性及使用方法。
2、RAM数据存储和读取的工作原理。
3、LPM存储类元件定制。
实验设备1、PC机一台2、自制数字系统试验箱3、Quartusll配套软件实验概述计算机的存储器是各种二进制信息的记忆装置。
计算机中的内存是计算机不可缺少的主要功能部件,用来存放计算机正在执行或将要执行的程序和数据信息。
预习报告1.Lpm-ram-io参数设置中的Lmp-numwords、Lpm-width、Lpm-widthad分别代表什么含义?如何设置?答:Lmp-numwords为存储单元的数目。
Lpm-width为数据宽度、Lpm-widthad地址总线宽度。
以上数据可在symbol properties中设置。
2.Lpm-ram-io参数设置中的lpm-file含义是什么?如何编写此类文件?答:Lpm-ram-io参数设置中的lpm-file含义是ram里面的数据。
File---new---memory initialization file(.mif)文件。
3.1024*8bit的RAM应有几根地址线?存储单元为4bit的RAM其存储容量为?答:这个RAM有10根地址线,存储单元为4bit的RAM其存储容量为4Kb(容量计算方法为地址的字*数据的位)4.如何将2片512*4bit的RAM构成容量为512*8bit的存储体?画出简单电路图?答:5.如何将2片512*4bit的RAM构成容量为1024*4bit的存储体?画出简单电路图??答:6.地址寄存器的数据源一般是哪些器件?答:地址寄存器的数据源一般是存储器和I/O。
7.如何修改电路使其能连续独处存入连续地址单元中存放的数据?答:将程序文件exp_pc_ar.hdl第十八行中pc直接赋值给ar。
实验二RAM扩展实验[资料]
![实验二RAM扩展实验[资料]](https://img.taocdn.com/s3/m/712ec6c1185f312b3169a45177232f60ddcce718.png)
实验二RAM扩展实验(请在实验课前写好预习报告,预习报告日期必在做实验课之前,预习报告中应该出现跟实验1内容相关的原理,电路图(可简画),流程图(或是程序,有程序就必带注释))实验仪器:pc机,8086k微机原理实验箱实验目的:1.掌握存储器芯片的特性及与CPU的连接方法。
2.掌握访问连续存储空间的方法。
注意实验报告中3个内容每人都要做,1通过实验课前仿真实验完成,2,3是实验课时完成。
每个具体实验内容包括:写出电路图,连线,流程图,程序(必须在关键地方加上注释),实验结果,问题分析和每个实验内容中的思考题。
0实验内容:(1必须在实验课前通过仿真实验完成,电路为EX2_1.DSN,程序为EX2_1.ASM)1.利用62256(32K×8bit)的静态SRAM芯片进行扩展,要求扩展的存储器容量为64KB,且要求和8086CPU相连接。
扩展后,利用此扩展的存储体进行读写访问,将内存0000H:4000H 地址开始的位置至0000H:4063H位置处依次写上0-99。
实验连线:提示:应该有哪三类线?实验流程图参考实验程序:assume cs:codecode segmentstart:mov ax,0000h ;设置DS的段地址值为0mov ds,axmov bx,4000H ;利用BX存放存储单元的偏移地址,从200H开始mov al,0 ;AL中为要写到存储单元中的数据。
初始值为1mov ds:[bx],al ;将1写入内存0000H:4000H地址处mov cx,100 ;设置循环次数为100次l1:mov ds:[bx],al ;循环体目的将AL中的值填入存储器inc bx ;偏移地址指针下移一个字节inc al ;待填充到存储单元的数据也自增1loop l1 ;根据CX的次数执行上面的循环体int 3 ;断点中断,目的是为了观察内存结果,用实验箱做实验时,不用这步code endsend start提示:如果仿真过程中把内存窗口关掉,可以按图中所示选择调试菜单中:即可出现思考问题:1)通过EX2_1.DSN仿真运行结果观察两块62256芯片写入的内容各有什么特点?为什么会产生这样的结果?2)停止运行,观察EX2_1.DSN仿真图,U7:62256芯片的片选段CE由那两个信号进行或运算获得?这两个信号都为哪种电平时才能选中这块U7:62256芯片。
实验二存储器分配与回收

}
}
}
}
voidhuishou(intname){ //回收进程函数
num=0;
b=0;
jishu();
jishu1();
intc=-1;
for(intk=0;k <=b;k++){
if(free[k][0]==name){
c=k;
break;
}
}
if(c==-1)cout<<"要回收的作业不存在!" <<endl;
intidle[10][2]; //空闲区大小地址
intfree[10][3]; //已分配区域的名字地址大小
intnum=0,b=1,d,ch1,ch2;
void init(){
idle[0][0]=1;idle[0][1]=100;
free[0][0]=0;free[1][1]=0;free[1][2]=0;
idle[j+1][1]=temp;
}
}
}
}
voidzuijia(){ //最佳适应法
num=0;
jishu();
for(inti=0;i <num;i++){
for(intj=i;j<num-i-1;j++){
if(idle[j][1]>idle[j+1][1]){
inttemp=idle[j][0];
for(inti=0;i <9;i++)
if(idle[i][1]!=0)
num++;
}
void jishu1(){ //求作业数
实验二存储器的分配与回收算法实现

实验二存储器的分配与回收算法实现一、实验目的1.学习存储器的分配与回收算法;2.实现动态存储管理的相关算法。
二、实验原理在计算机系统中,存储器是一项重要的资源。
为了有效地利用存储器资源,需要设计合理的存储器管理算法来进行存储器的分配与回收。
常用的存储器管理算法有以下几种:1. 首次适应算法(First Fit):分配内存时从链表的头部开始查找第一个满足要求的空闲内存单元。
2. 最佳适应算法(Best Fit):分配内存时从整个链表中找到最小的满足要求的空闲内存单元。
3. 最坏适应算法(Worst Fit):分配内存时从整个链表中找到最大的满足要求的空闲内存单元。
4. 循环首次适应算法(Next Fit):分配内存时从上一次分配结束的位置开始查找第一个满足要求的空闲内存单元。
5. 最近最少使用策略(Least Recently Used, LRU):当内存不足时,将最近最久未使用的页面置换出去。
6.先进先出策略(FIFO):将最先进入缓冲区的页面置换出去。
三、实验步骤1.首先,我们需要定义一个数据结构来表示存储器块,该数据结构包含以下字段:-起始地址:表示该存储器块的起始地址;-大小:表示该存储器块的大小;-状态:表示该存储器块的使用状态(空闲/已分配);-下一存储器块地址:指向链表中下一个存储器块的地址。
2.然后,创建一个链表来表示存储器块的集合,链表的每个节点表示一个存储器块。
3. 实现首次适应算法(First Fit):-遍历链表,找到第一个大小大于等于所需内存的空闲存储器块;-将该存储器块标记为已分配,并更新链表中该存储器块的状态;-如果找不到满足要求的存储器块,则表示存储器不足,分配失败。
4. 实现最佳适应算法(Best Fit):-遍历链表,找到大小最小的满足要求的空闲存储器块;-将该存储器块标记为已分配,并更新链表中该存储器块的状态;-如果找不到满足要求的存储器块,则表示存储器不足,分配失败。
存储器读写实验

实验三 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。
实验二 I2C存储器实验

I2C存储器实验实验目的1、了解I2C总线的工作原理2、掌握I2C总线驱动程序的设计和调试方法3、掌握I2C总线存储器的读写方法实验仪器单片机开发板、稳压电源、计算机实验原理1、 I2C总线常识I2C总线采用一个双线式漏极开路接口,可在一根总线上支持多个器件和主控器。
所连接的器件只会把总线拉至低电平,而决不会将其驱动至高电平。
总线在外部通过一个电流源或上拉电阻器连接至一个正电源电压。
当总线空闲时,两条线路均为高电平。
在标准模式中,I2C 总线上的数据传输速率高达100kbit/s,而在快速模式中则高达400kbit/s。
I2C总线上的每个器件均由一个存储于该器件中的唯一地址来识别,并可被用作一个发送器或接收器(视其功能而定)。
除了发送器和接收器之外,在执行数据传输时,还可把器件视作主控器或受控器。
主控器是负责启动总线上的数据传输并生成时钟信号以允许执行该传输的器件。
同时,任何被寻址的器件均被视作受控器。
CAT24WC01/02/04/08/16是一个1K/2K/4K/8K/16K位串行CMOS EEPROM,内部含有128/256/512/1024/2048个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗,CAT24WC01有一个8字节页写缓冲器,CAT24WC02/04/08/16有一个16字节页写缓冲器,该器件通过I2C总线接口进行操作,有一个专门的写保护功能,并且器件能与400KHzI2C 总线兼容。
引脚名称和功能如图1所示。
图1 24系例I2C存储器引脚说明通过器件地址输入端A0、A1和A2可以实现将最多8个24WC01和24WC02器件4个24WC04器件,2个24WC08器件和1个24WC16器件连接到总线上。
2、I2C总线协议(1)只有在总线空闲时才允许启动数据传送。
(2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变。
时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。
计算机组成原理 - 实验二存储器实验_

操作步骤
接线图中OO1、OO2、OOE1、OOE2是四个观察记数的 指示灯,其中OO1、OO2是写信号记数,OOE1、OOE2 是读信号记数。FULL及EMPTYy是满和空标志灯。
实验时,先拨动CLR开关使FIFO清空。然后给INPUT DEVICE单元中置一个数,按动START,此时将此数写入 到FIFO中,依次写四次后,FULL满标志置位。此时再也 写不进去,然后连续按动KK2-读信号,将顺序读出所存 的四个数,从总线显示灯检查结果是否与理论值一致。
C3=FIFOWR&O2&!O1; C4=FIFOWR&O2&O1; EMPTY=(OE==O)&!FLAGG; FULL=(OE==O)&FLAGG; END
25
26
3.LS273模块(ls273.abl)
MODULE LS273
"INPUT
CLK
PIN ;
I7,I6,I4,I3,I2,I1,I0 PIN ;
OE.CLK=FIFORD;
O.CLK=!FIFOWR;
24
OE.AR=!RST; O.AR=!RST; FLAGG.CLK=FIFOWR; FLAGG.AR=(!FIFORD)#(!RST); FLAGG:=1; WHEN OE==3 THEN OE:=0 ELSE OE:=OE+1; WHEN O==3 THEN O:=0 ELSE O:=O+1; C1=FIFOWR&!O2&!O1; C2=FIFOWR&!O2&O1;
7
三.实验内容
实验时将T3脉冲接至实验板上时序电路模块的TS3 相应插孔中,其脉冲宽度可调,其它电平控制信号 由“SWITCH UNIT”单元的二进制开关模拟,其中 SW-B为低电平有效,LDAR为高电平有效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机组成原理实验报告
实验名称:静态随机存储器实验
实验类型:验证型
实验环境:TD-CMA系统、实验箱
指导教师:顾娅军
专业班级:信安1505班
姓名:
学号:实验地点:东6E501
实验日期:2017年4月25日
成绩:__________________________
一、实验目的
掌握静态随机存储器RAM工作特性及数据的读写方法
二、实验过程
(1)关闭实验系统电源,按图2-1-4所示连接实验电路,并检查无误
(2)将时序与操作台单元的开关KK1、KK3置为运行档、开关KK2置为‘单步’档
(3)将CON单元的IOR开关置为1(使I N单元无输出),打开电源开关,如果听到有“嘀”报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。
(4)给存储器的 00H、01H、02H、03H、04H地址单元中分别写入数据 11H、12H、13H、14H、15H。
由前面的存储器实验原理图(图 2-1-3)可以看出,由于数据和地址由同一个数据开关给出,因此数据和地址要分时写入,先写地址,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0),数据开关输出地址(IOR=0),然后打开地址寄存器门控信号(LDAR=1),按动 ST产生 T3脉冲,即将地址打入到AR中。
再写数据,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0)和地址寄存器门控信号(LDAR=0),数据开关输出要写入的数据,打开输入三态门(IOR=0),然后使存储器处于写状态(WR=1,RD=0,IOM=0),按动 ST产生T3脉冲,即将数据打入到存储器中。
写存储器的流程如图 2-1-5所示(以向 00地址单元写入11H为例)
(5)依次读出第 00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。
同写操作类似,也要先给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭 IN单元的输出(IOR=1),然后使存储器处于读状态(WR=0,RD=1,IOM=0),此时数据总线上的数即为从存储器当前地址中读出的数据内容。
读存储器的流程如图 2-1-6所示(以从 00地址单元读出 11H为例):
图2-1-7 数据通路图
三、实验结果
以给地址为15H(00010101)的单元写入42H(01000010)为例,从二进制地址单元输入00010101后,产生脉冲将地址打入AR中,对应的代表地址的指示灯亮,地址输入成功;从二进制地址单元输入要写入的数据01000010,数据开关输出要写入的数据,打开输入三态门,存储器处于写状态,按动 ST产生T3脉冲,即将数据打入到存储器中,对应的指示灯亮,数据写入成功。
四、讨论与分析
(1)思考题
由两片 6116(2K*8)怎样扩展成(2K*16)或(4K*8)的存储器?怎样连线?(2)小结
①实验过程中经常会将两头的线插错位或插反,导致实验结果有误。
实验过程中应该仔细认真的接线并进行检查,才能保证出错率最低。
②在读出数据完成时,应先关闭RD按钮再关闭IOR按钮,否则会出现“嘀”报警声。
③将CON单元的IOR开关置为1后,再打开电源开关,如出现“嘀”报警声,
应立即关闭电源,重新检查连线,直到错误排除。
④通过将数据再从存储器中读出,发现数据与先前输入存储器中的数据一致,对应存储区地址00H、01H、02H、03H、04H 单元分别为数据11H12H、13H、14H、15H,故表明正确输入和读出操作无误。
五、实验者自评
在本次实验中,因为对实验箱以及静态存储机制熟悉度不够,因而操作效率较低,出现的错误也比较多,极其考验按操作者的细心和耐心程度,但最终实验成功,例如:因为连线错误而产生报警声时需要分析并仔细检查出错误的连线处。
通过本次实验,我对RAM静态存储机制有了更深更形象的了解,也有利于加深对理论知识的理解。
六、附录:关键代码
无。