微机原理与接口技术课程学习指导资料_第1页
微机原理与接口技术课程学习指导资料_第2页
微机原理与接口技术课程学习指导资料_第3页
微机原理与接口技术课程学习指导资料_第4页
微机原理与接口技术课程学习指导资料_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本课程学习指导资料根据该课程教学大纲的要求,参照现行采用教材《徽型计算机系统原

理及应用》(周明德主编,清华大学出版社,第三版上册)以及课程学习光盘,并结合远程

网络业余教育的教学特点和教学规律进行编写,适用于电子信息工程专业本科学生。

第一部分课程的学习目的及总体要求

一、课程的学习目的:本课程要求学生学习、了解并掌握微机原理的基本知识和

方法,为今后使用微机或从事与微机有关开发工作以及为后续与微机相关的

课程打下基础。

二、课程总体要求,

了解、掌握微机的体系结构及工作原理,尤其是8088/8086CPU的内部结构,

总线时序,数和字符在微机中的表示方法:8088/8086的指令系统,汇编语言

程序设计的方法,半导体存储器的工作原理及与系统连接的方法。

第二部分课程学习的基本要求及重点难点内容分析

第I章:概述

I.本章学习要求

(1).应熟悉的内容:微机中的数制及码制(数制:二进制、十进制、十六进

制;特别是二进制中的原码、反码、补码的表示及变换方法。码制:BCD

码、ASCII以及汉字编码);微型计算机的基本结构、系统软件、应用软

件。IBMPC的基本配置。

(2).应掌握的内容:2、10、16进制数的表示方法、运算方法及相互主间

的转换.10、16进制数与ASCII之间相互转换的方法。

(3).应熟悉掌握的内容:8088/8086的特点及内部结构,特别是各寄存器的

名称、作用,存储器的组织、逻辑地址、物理地址及相互之间关系。

2.本章重点难点分析:微机工作过程,8088/8086CPU内部寄存器的作用较

难,只要认真看书记住。

第2章:8088的指令系统

1.本章学习要求

(1).应掌握的内容:8088的各种寻址方式。

(2).应熟悉掌握的内容:8088的标志寄存器各标志位的作用,8088各种指

令的作用、使用方法以及涉及、影响标志位的情况。

2.本章重点难点分析:要记住并熟练掌握各条指令对初学者较难。办法是通

过多看例题,学习和掌握书写格式、使用方法、应用场合。

3.本章典型例题分析:

现将指令系统归纳如下以便学习掌握:

L数据传送通路示意图

1.立即数不能作目标操作数

立即数2.立即数不能直接送段寄存器

一、数据传送类指令(特点:除SAHFPOPF外均不影响FR)

1.通用

MOVdst,src

堆栈:PUSHPOP

交换:XCHG

查表:XLAT

2.志

LAHFSAHFPUSHFPOPF

3.地址:LEALDSLES

4.输入输出:INOUT

算术运算类指令(特点:除CBWCWD外均影响FR)

1.加法:ADDADC

2.减法:SUBSBBCMP

3.加1减1:IN(:DEC

4.求补:NEC

5.乘法:MUL(无符号数)IMUL(带符号数)

6.除法:DIV(无符号数)IDIV(带符号数)

7.扩展:CBW(B->W)CWD(W->DW)

8.十进制调整:1)加法:DAA(组合)AAA(未组合)

2)减法:DAS(组合)AAS(未组合)

3)乘法:AAM(未组合)

4)除法:AAD

乘、除法指令注意事项:

1.无符号与带符号数所用指令不同;

2.八位乘法时,必有一个乘数在AL中,积在AX中;

十六位乘法时,必有一个乘数在AX中,积在DX(高16位)与AX(低

16位)中;

3.八位除法时,被除数在AX中(16位),商在AL,余数在AH;

十六位除法时,被除数在DX(高16位)与AX(低16位)中,商在AX,

余数在DX;

4.十进制调整时,乘、除法均只能使用未组合BCD码,并且除法是先

调整后运算。

三、逻辑运算类指令(特点:均影响FR)

1.与:AND2.或:OR3.异或:XOR4.非:NOT

5.测试:TEST

移位指令

1.逻辑移位:左移SHL右移SHR

2.算术移位:左移SAL右移SAR

3.循环移位:

1).不带CF:左移ROL右移ROR

2).带CF:左移RCL右移RCR

四、控制转移类指令:

一)、无条件转移JMP

1.近转移(段内)(NEARPTR)

1).直接(相对寻址”

短转移(SHORT)IP-IP+disp(8位)

如:JMPn

长转移IP-IP+disp(16位)

如:JMPnn

2).间接:IP—reg(16位)IP-mem(16位)

如:JMP[BX]

2.远转移假间)(FARPTR)

1).直接:CS=指令中给出的段地址

IP=指令中给出的EA如:JMP段:偏

2).间接:CS=mem+2(16位)

IP=mem(16位)如:JMPDWORDPTR[BX]

二)、条件转移Jcc

1.单测试条件指令

10

CJC/JNAE/JBJNC/JAE/JNB

ZJZ/JEJNZ/JNE

SJSJNS

PJP/JPEJNP/JPO

()JOJNO

2.复合测试条件指令即A—B

无符号数带符号数

—JZJZ

丰JNZJNZ

<JC/JB/JNAEJL/JNGE

>JA/JNBEJG/JNLE

JBE/JNAJLE/JNG

JNC/JAE/JNBJGE/JNL

三).循环控制指令

1.循环转移指令LOOP(相当于:DECCX

JNZn)

2.相等(为零)循环转移指令LOOPE/LOOPZ

3.不相等(不为零)循环转移指令LOOPNE/LOOPNZ

四).过程调用与返回指令

1.调用指令CALL(与JMP一样分:段内直接、段内间接、段间

直接、段间间接调用四种,但需保护断

点)

2.返回指令1).RET(依段内、段间不同分别恢复相应断点)

2).RETn(除象RET恢复断点外还应根据n值修设SP)

五).中断指令

1.INTn(响应中断时,除象CALL保护断点外,还应保护FR)

2.INTO

3.IRET(返回时,除象RET恢复断点外,还应恢复FR)

五、串操作指令

一).串操作指令

1.串传送MOVS(字节串MOVSB字串MOVSW)

2.串比较CMPS(字节串CMPSB字串CMPSW)

3.串搜索SCAS(字节串SCASB字串SCASW)

4.取串LODS(字节串LODSB字串LODSW)

5.存串STOS(字节串STOSB字串STOSW)

二).重复前缀指令

1.无条件重复REP

2.相等/为零重复REPE/REPZ

3.不相等/不为零重复REPNE/REPNZ

串操作指令特点:

1.可用前缀使其重复操作;

2.每操作一次自动修改SI和DI内容,当DF=0时为增量,DF=1为

减量;

3.所有源操作数地址放在SI中,在DS段,串长W64K;

所有目标操作数地址放在DI中,在ES段,串长W64K;

4.用重复前缀时,如果条件满足且CXW0时重复,每重复一次

CX-CX-L否则结束重复;

5.重复操作时IP不变,中断返回后继续操作。

重复前缀重复与结束重复的条件:

重复前缀重复条件结束条件

REPCX#0cx=o

(无条件重复)

REPE/REPZCXH0且ZF=1CX=0或ZF=0

(相等/为零重复)

REPNE/REPNZCXW0且ZF=0CX=0或ZF=1

(不相等/不为零重复)

使用串操作指令时注意:

1.SI一源串首(末)址

DI+目标串首(末)址;

2.CX一串长度;

3.设DF值;

4.选重复前缀;

5.使用条件重复前缀时,判断结束条件(即是CX=O还是ZF=O/1结束)

六、处理器控制指令

1.标志位操作

1).清CFCLC(CF=O)

2).置CFSTC(CF=1)

3).CF取反CMC

4).清DFCLD(DF=O)

5).置DFSTD(DF=1)

6).清IFCLI(CF=O关中断)

7).置IFSTI(CF=1开中断)

2.同步控制指令

1).ESC2).WAIT3).LOCK

3.空操作指令NOP

4.暂停指令HLT

指令执行时间:

计算机中的计时单位:

(I).指令周期:执行一条指令所花的时间;

(2).总线周期:CPU每访问一次内存或I/O端口所花的时间;

(3).时钟周期(T周期):计算机主频的倒数,用T表示,即T=l/F

4.本章作业:(带答案)

1、试分别说明下列指令中源操作数和目的操作数采用的寻址方式:

答案:

目的操作数源操作数

(1)MOVAX,0FFFFH寄存器立即

(2)MOVES,AX寄存器寄存器

(3)XORCL,[100H]寄存器直接

(4)ADD[SI],DX寄存器间寄存器

(5)MOVES:[2000H],CL直接寄存器

(6)SUB[BX+SILl基+变立即

(7)ADCAX,[BX+SI+10H]寄存器相对基+变

(8)PUSHDS隐含寄存器

(9)CLD隐含

(10)CMP[BP+DI],CL基+变寄存器

、若(BX)=1123H,(SI)=1968H,位移量=0313H,(DS)=1971H,试确

定由这些寄存器和下列寻址方式产生的有效地址和物理地址:

答案:

EA电力址

(1)直接寻址;0313H19A23H

(2)用BX的寄存器间接寻址;1123H1A833H

(3)用BX的寄存器相对寻址;1436H1AB46H

(4)用BX和SI的基址变址寻址;2A8BH1C19BH

(5)用BX和SI的相对基址加变址寻址。2D9EH1C4AEH

3、连续执行以下指令,并在空格中填写方人行於才令的结果。

答案:

MOVAX,2060IIAL=60IIAII=20IIcr=

MOVDS,AXDS=2060HAH=20I1CF=

ADDAL,AHAL=80HAH=20HCF=0

INCAXAL=81HAH=20HCF=0

MOVDX,512DL=00HDH=02HCF=0

SUBAX,DXAL=81HAH=1EHCl7二0

4、编写程序实现下述功能:

答案:

⑴将BX寄存器的低8位清零,其余位不变。ANDBX,0FF00H

⑵将DL寄存器的最高位置1,其余位不变。ORDL,80H

(3)将CL寄存器的高4位保持不变,低4位取反。XORCL,0FH

(4)测试CX中的最低位,当最低位为。时将AL置:1,否则AL置0o

答案:

TESTCX,01H

JZLI

MOVAL,0

HLT

LI:MOVAL,1

HLT

⑸测试SL如果SI为奇数将AL置1,否则AL置0。

答案:

TESTSI,01H

JNZLI

MOVAL,0

HLT

LI:MOVAL,1

HLT

第3章:汇编语言程序设计

I.本章学习要求

(1).应熟悉的内容:汇编语言的格式、语句行的构成。

(2).应掌握的内容:指示性语句、指令性语句及相互区别、作用。

(3),应熟悉掌握的内容:各种结构的汇编语言程序设计的方法,特别是分支结构和循

环结构程序的特点和设计。

2.木章重点难点分析:伪指令、程序设计、子程序中参数通过堆栈传递较难。通过看

例题、做作业和上机实习解决。

如:汇编程序是将由助记符号所编写的汇编语言源程序转换为计算机能直接执行的目标程序

的软件,即:

汇编语言源程序一A序

.ASM

MASM.OBJLINK.EXE

上图可看出汇编语言源程序(扩展名为.ASM)经过“汇编程序”汇编后生成二

进制编码的目标程序(OBJ),再经过“连接程序”生成可执行文件(.EXE)便可以

上机执行或使用DEBUG程序进行调试。

而指示性语句(伪指令)是告诉汇编程序如何将汇编语言源程序转换为目标程序的语句,在

可执行的目标程序生成后的软件中,伪指令是看不见的。如:SEGMENT是表示一个段的开

始,ENDS表示段结束:

而ASSUME告诉汇编程序,将某一个段寄存器设置为存放某一个逻辑段的段址,即明确

指出源程序中的逻辑段与物理段之间的关系。当汇编程序汇编一个逻辑段时,即可利用相应

的段寄存器寻址该逻辑段中的指令或数据。也就是说ASSUME是建立一个段寄存器与段名

的对照表,汇编时使汇编程序能找到本段属于哪个段寄存器,在此对照表中所出现的存储器

操作数,寻址时只需给出偏移地址,否则还应给出段地址。关键字NOTHING表示取消前

面用ASSUME伪操作对这个段寄存器的设置。

使用ASSUME语句,仅仅告诉汇编程序关于段寄存器与定义段之间的对应关系。但它

并不意味着汇编后这些段地址已装入了相应的段寄存器中,这些段地址的真正装入,仍需要

用程序来完成,且这4个段寄存器的装入略有不同。

3.本章典型例题分析:

【例1】若从0200H单元开始有10()个数,编一个程序检杳这些数,正数保持不变,负

数都取补后送回。

DATASEGMENT

ORG0200H

STRINGDB4DUP(-55,5DUP(6,-10,-8⑼,2DUP(-4,0))

DATAENDS

STACKSEGMENTPARASTACK'STACK'

DB100DUP(?)

STACKENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACK

STARTPROCFAR

BEGIN:PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

MOVES,AX

MOVCX,100

LEASI,STRING

AGAIN:MOVAL,[SI]

ANDAL,AL

JNSOVER;AL>0,跳至OYER

NEGAL;AL<0,对AL求补

OVER:MOV[SI],AL

INCSI

LOOPAGAIN

INT3

RET

STARTENDP

CODEENDS

ENDBEG

【例2】数据块间的搬移程序。

程序要求把内存中一数据块(称为源数据块)传送到另一存储区(称为目的数据块)。图4-11给

出源数据块和目的数据块在存储器中可能的3种情况:两块分离和有部分重叠。对于两个数

据块分离的情况,如图4-ll(a),数据的传送从数据块的首址开始,或者从数据块的末址开始

均可。但对于有部分重叠的情况,则要加以分析,否则重叠部分部分会因“搬移”而遭破坏,

从图4-11(b)和(c)可以得出以下结论:

当源数据块首址V目的块首址时,从数据块末地址开始传送数据。

当源数据块首址》目的块首址时,从数据块首地址开始传送数据。

流程图如图4-12所示,

00000H

源数.

据块

目的

数据块

FFFFFHFFFFFHFFFFFH

(a)(b)

图4-11数据块之间的三种情况

图4-12

程序如下:

STACKSEGMENTSTACK

DW64DUP(?)

STACKENDS

CODESEGMENT

ASSUMECS:CODE,SS:STACK

START:MOVCX,00I0H:取搬家字节数(16个字节)

MOVSL3I00H:取源块首址

MOVDI,3200H:取目的块首址

CMPSLDI:从首址开始?

JAA2:是.转移

ADDSI,CX:否,以末地址开始搬家

ADDDI,CX

DECSI

DECDI

Al:MOVAL,[SI]:从末址开始搬家

MOV|DI],AL

DECSI

DECDI

DECCX

JNEAl

JMPA3

A2:MOVAL,[SI]:从首址开始搬家

MOV[DI],AL

INCSI

INCDI

DECCX

JNEA2

A3:MOVAH.4CII

INT21H

CODEENDS

ENDSTART

4.本章作业(带答案):

1、计算下列程序分别执行后AX寄存器的内容。

(1)MOVAX,0

MOVBX,3456H

TESTBX,1000II

JZNEXT答案:

INCAX

NEXT:HLT(AX)=1

(2)MOVAX,0

XORBX,BX

AGAIN:INCBX

ADDAX,BX

CMPBX,5

JBAGAIN

HLT(AX)=(((((()+1)+2)+3)+4)+5)=15

(3)MOVAL,OFFH

CBW

INCAX

INCAX

XCHGAH,AL

SHRAH,1

RCRAL,1

HLT(AX)=0080H

(4)MOVAX,0

MOVBX,1234H

MOVCX,16

AGAIN*

SHLBX,1

,INCNEXT

INCAX

NEXT:LOOPAGAIN

HLT检测1的个数(AX)=5

2、若在自2000H单元开始有一个1000个字节的数据块,要把它传送到自2200H

开始的存储区中去,用以下三中方法,分别编制程序:

(1)不用串操作指令。

(2)用单个传送的串操作数据传送指令。

(3)用带重复前缀的串操作数据传送指令。

程序如下:

DATASEGMENT

ORG2000H

N1DBnl,n2,-nlOOO

N2EQU2000H+1000-1

CONEQU1000

DATAENDS

STACKSEGMENTSTACK'STACK'

DW100DUP(?)

STACKENDS

CODESEGMENT

ORG1000II

ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACK

MAINPROC

START:MOVAX,DATA

MOVDS,AX

MOVES,AX

LEASI,N1+1OOO-1;(2);(3)

MOVDI,N2

MOVCX,CON;STD

LI:MOVAL,[SI];MOVSB;REPMOVSB

MOV[DI],AL

DECSI

DECDI

LOOPLI;LOOPLI

MOVAH,4CH

INT21H

MAINENDP

CODEENDS

ENDSTART

3、若在存储器中有数a、b、c、d(它们连续存放),编写一个程序实现:

((a*10+b)*10+c)*10+d(假设和小于65535)

程序如下:

DATASEGMENT

BCMDWa,b,c,d

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

BCD1PROCFAR

START:MOVAX,DATA

MOVDS,AX

LEASI,BCM

MOVCX,3

MOVAX,[SI]

LI:INCSI

SHLAX,1;(AX)—(AX)X2

MOVBX,AX;(BX)—(AX)X2

SHLAX,1;(AX)—(AX)X4

SHLAX,1;(AX)—(AX)X8

ADDAX,BX;(AX)—(AX)X10

ADDAX,[SI]

LOOPLI

INCSI

MOV[SI],AX

MOVAH,4CH

INT21H

BCD1ENDP

CODEENDS

ENDSTART

4、已知数组A包含10个互不相等的整数,数组B包含15个互不相等的整数。

」并隹口、以而女Ai+t山XH1T7左nrh山ZHI伯/®好右B左蛤4口Ci+i

队和74土jjr付反任dT山次人〜DTLU次口」IPS姒TFM一九出LT。

程序如下:

DATASEGMENT

ORG0500H

DATAADWA1,A2,...A10

DATABDWB1.B2,...B15

COUNTAEQU10

COUNTBEQU15

DATACDW10DUP(?)

DATAENDS

STACKSEGMENTSTACK•STACK,

DB100DUP(?)

STACKENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACK

STARTPROCFAR

BEGIN:PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVES.AX

MOVDS,AX

LEABX,DATAC;(BX)二数组C首址

CLD

LEASI.DATAA;(Sl)=数组A首址

MOVDX,COUNTA;(DX)二数组A元素个数

LP1:LODSW;取数组A元素到AX

LEADl.DATAB;(Dl)=数组B首址

MOVCX,COUNTB;(CX)二数组B元素个数

REPNESCASW;(AX)=数组B元素?不同重复

JNZNEXT;B中无此A元素转NEXT

TESTAX,01H

JNZNEXT

MOV[BX],AX;有A元素且是偶数存入C中

INCBX

INCBX

NEXT:DECDX

JNZLP1

INT3

STARTENDP

CODEENDS

ENDBEGIN

5、若自STRING开始有一个字符串(以'$'号作为字符串的结束标志),请编

程查找此字符串中有无字符有多少个并将个数存放在NUMBER字

单元中,且把每一个字符所存放的偏移地址放到自POINTER开始的连续

存储字单元中。

程序如下:

DATASEGMENT

ORG0100H

STRINGDB,593#6707#84BK47#68H#8K8#497$'

9

NUMBERDB*

POINTERDW50DUP(?)

DATAENDS

STACKSEGMENTPARASTACKSTACK'

DB100DUP(?)

STACKENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACK

STARTPROCFAR

BEGIN:PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVES,AX

MOVDS,AX

LEASI,STRING

LEADI,POINTER

XORBL,BL;BL清。

AGAIN:MOVAL,[SI]

CMPAL,$;与'$'比较

JZSTOP

CMPAL,

JNZNEXT

MOVDX,[SI]

MOV[DI],DX

INCDI

INCDI

INCBL

NEXT:INCSI

JMPAGAIN

STOP:LEADI,NUMBER

MOV[DI],BL

INT3

STARTENDP

CODEENDS

ENDBEGIN

第4章:8088的总线操作和时序(除第六节8253)

1.本章学习要求

(1).应熟悉的内容:指令周期、总线周期、时钟(T)周期,8088的时序特别是存储器

读、写周期,I/O周期以及中断响应周期,8088在最小和最大组态时的硬件连接图。

(2),应掌握的内容:8282、8284、8286、8288在系统中的作用

(3),应熟悉掌握的内容:8088的地址总线、数据总线、控制总线(特别是:RD.WR

丽、IOW,MEMR,MEMW、INTA、INTR、NMI、HOLD、HLDA引线的含

义及作用)

2.本章重点难点分析:8088的时序特别是存储器读、写周期,I/O周期以及中断响应

周期,8088在最小和最大组态时的硬件连接图。RD.WR丽、IOW.MEMR.

MEMW、INTA、INTR、NMI、HOLD、HLDA引线的含义及作用。通过看例题、

做作业和上机实习解决。

3.本章典型例题分析:

8088CPU控制总线:(最小模式)

与I/O连接与存储器连接与其他芯片连接

NMIJALEV(8282)

INTRVREADY(8284)

INTAJRESET(8284)

HOLDVCLK(8284)

HLDAJDEN(8286)

RDV一DT/-R(8286)

WRJS2〜SO(8288)

IO/MV

TEST

注意:J是要求记住

一、8282(地址锁存器)的作用:

在T1时锁存地址信息。

二、8284(时钟发生器)的作用:

1.提供系统时钟CLK

2.同步RESET

3.同步READY

4.提供其他系统时钟

三、8286(总线缓冲器)的作用:

1.数据缓冲

2.增强总线负载能力

3.控制数据传送方向

四、8288(总线控制器)的作用:

在8088/8086工作在最大模式时,根据S2〜S0的信号,输出系

统各种控制信号

第5章:

1.本章学习要求

(1).应熟悉的内容:半导体存储器的种类及各自的特点:。

(2).应掌握的内容:IBMPC/XT存储空间分配。

(3),应熟悉掌握的内容:如何用741^138将2114、2716等存储器芯片连成系统(采用

全译码方式安排到指定空间)。

2.本章重点难点分析:本章的重点也是难点,即微机中的存储器连接。

3.本章典型例题分析:

存储器地址译码

Z玉1存储器系统设计是将所选芯片与所确定的地址

使能J

控制Y-0

\-空间联系起来,即将存储单元与实际地址一一对应,

Y1

Y2K[译码这样才能通过寻址对存储单元进行读写。每一个存

三YM3〉输出

7S储器芯片都有一定数量的地址输入端,用来接收CPU

地址JY5

输入

\Y61的地址输出信号,CPU的地址输出信号,原则上每次

Y7

只能寻址到一个存储单元,到底一个地址信号能够

寻址到哪个芯片(或几个芯片共同组成一个8位的

图7-2174LS138逻辑符号单元)上的哪一个单元,这就要由地址译码电路来

确定。

地址译码电路将CPU的地址信号按一定的规则译码成某些芯片的片选信号和地址输入

信号,被选中的芯片即CPU寻址的芯片。译码电路在CPU寻址时所起的作用十分重要,根

据实际情况,可采用简单的逻辑电路或专用的译码器电路来实现。而74LS138便是经常采

用的一种译码器芯片。它是一个3-8译码器,即3个地址信号输入,可被译码产生可。〜可7

共8个译码信号输出。图7-21给出了74LS138的逻辑符号,表7-3是它的译码真值表。从

表中可见,当输入端A,B,C为某一种输入状态时,输出端〒。〜中只有一个是有效电

平(低电平L)输出,其它输出端均为无效电平(高电平H)。

表7-374LS138译码器真值表”卡电平H-高电平)

地址输入允许输入输出

CBA飞2丫丫丫丫丫

G3YoYi23Y4567

LLLLLHLHHHHHHH

LLIILLIIHL1111H11HH

LHLLLHHHLHHHU11

LHHLLHHHHLH11HH

HLLLLHHHHHLHH11

HLHLLII11HHHHLHH

II11LLLII11IIIIIIHIILII

HHIILLHHHHHHHHL

存储器与微处理器的连接

存储器芯片的外部引掷按功能可分为三组:数据线①B)、地址线(AB)和控制线(CB)。

在微型计算机中,CPU对存储器进行读写操作,首先要由地址总线给出地址信号,然后发出

读写控制信号,最后才能在数据总线上进行数据的读写.所以,CPU与存储器连接时,其地

址线、数据线和控制线都必须和CPU建立正确的连接,才能进行正确的读写操作。在连接

时应注意以下问题:

I.CPU总线的带负载能力

CPU在设计时,一般输出线的带负载能力为1个TTL现在存储器为MOS管,直流负载

很小,主要是电容负载,故在小型系统中,CPU总线的负载能力是可以驱动存储器系统的,

CPU可直接与存储器相连c而在较大系统中,当CPU和大容量的标准ROM、RAM一起使

用或扩展成一个多插件系统时,就必须用接入缓冲器或总线驷动器等方法增加CPU总线的

驱动能力。地址总线只需接入单向的驱动器,例如74LS244、74LS373等,而数据总线则

需要接入双向驱动器,例如74LS245等。

2.CPU时序与存储器存取速度之间的配合

CPU的取指周期和对存储器读写都有固定的时序,由此决定了对存储器存取时序和速度

的要求。所以,在选择存储器芯片时,就应考虑与CPU速度的匹配问题。具体地说,CPU对

存储器进行读操作时,CPU发出地址和读命令后,存储器必须在限定时间内给出有效数据。

而当CPU对存储器进行写操作时,存储器必须在写脉冲规定的时间内将数据写入指定存储单

元,否则就无法保证迅速准确地传送数据,当所选存储器速度跟不上CPU时序时,设计系统

时应注意插入Tw。不过,随着大规模集成电路的迅速发展,目前存储器芯片与CPU的速度

匹配已不成大问题。

3.数据线的连接

在微机中,无论字长是多少,一般每个存储体(8位矶为单存储体,16位机为双体,32位

机为4体)都是以一个字节为基本单位来划分存储单元的,即每8位为一个存储单元,并对

应一个存储地址。但由于存储芯片的内部结构不同,有的芯片一个地址对应8个存储位,有

8条数据引线,如2716、27128;而有的芯片一个地址对应4个存储位,数据引线只有4条,

如2114;还有的芯片只有一个存储位,只有一根数据输入、输出线,如2118。当用这些存储

字长不是8位的芯片构成内存时,必须用多片合在一起,并行构成具有8位字长的存储单元。

比如2114,需同时用两片;而2118,则需同时用8片。在用多片构成存储单元时,应将它

们的地址线、控制线完全是并联在一起的,数据线则分别接在数据总线的不同线上。

4.存储器片选控制方法

一般说来,一个微机系统的内存储器不可能仅由一个存储器芯片组成,而是由几片甚至

几十片组成。因此,内存储器的构成原理实质上就是用多个存储器芯片构成存储器系统,并

使之与CPU总线正确接II的原理。为了简化存储器地址译码电路设计,应尽量选择存储容量

相同的芯片。在工作时,CPU发出的地址信号必须要实现两种选择:首先对存储器芯片的

选择,使相关芯片的片选端西为有效,这称为片选。还要在选中的芯片内部再选择某一存

储单元,这称为单元选择或字选择。由于单元选择信号由存储器芯片的内部译码电路产生,

这部分译码电路用户不需设计,一般将芯片地址线与低位地址总线一一相连即可。而片选信

号则由与存储器芯片相关的外部译码电路对高位地址总线通过译码产生,这是需要自行设计

的部分。

地址总线的高、低位划分因芯片的容量不同而异,如4KXn位芯片的低位地址总线为

Ao〜A”共12位,IMXn位芯片的低位地址总线则为A。〜

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论