====================================================================
3.1 存储系统的基本要求和并行主存系统
存储器三个指标:容量,速度,价格
要求 大 快 低
矛盾:1. 速度越快,每位价格就越高
2.容量越大,每位价格就越低
2.容量越大,速度就越慢
提高存储器性能三种方法:时间重叠,资源重复,资源共享
一般用前两种:时间重叠,资源重复
单体单字:
一个存储体一次读出一个字到寄存器
过程:地址寄存器——(定位)——>存储体——(读出一个W位)——寄存器
单体多字
一个存储体一次读出多个字到寄存器
过程:地址寄存器——(定位)——>存储体——(读出多个W位挑出需要的)——单字长寄存器
多体单字交叉存储体(并行存储结构):
例如:
存储体1 存储体2 存储体3
1 2 3
4 5 6
7 8 9
10
CPU先发信号存储体1(地址寄存器)再发信号存储体2再发给存储体3
【注】:(时间间隔和不能超过存储体1一次接受结果时间)
寄存器接收到的结果:1,2,3 (
此时存储体1再发信号以此类推)4,5,6
(此时存储体1再发信号以此类推)7,8,9
(此时存储体1再发信号以此类推)10
3.2 中断系统
中断服务程序:ISR
大概运行流程:
中断服务/处理程序 ISR
void ISRname(void) interrupt [using name]
函数类型 ——无参数,无返回值 //由于不知道中断什么时候发生,所以中断无参也无返回值,可以通过全局变量赋值,或改变值
ISRname ——中断服务函数名称,由用户自定义
interrupt ——n是中断编号,指示中断向量
例如: 定时器0地中断服务函数
void time0ISR(void) interrupt 1
{
tnOsTimeTick();
}
中断向量:
CPU响应中断时跳转到一个特定地地址开始执行中断服务程序
这个地址就是中断向量 (保存在中断向量表中)
几个中断的基本概念:
中断源:引起中断的事件
五类:1)机器故障中断
2)“异常”(软件中断)一是程序性错误,二是产生特殊运算结果
3)输入-输出设备中断
4)外中断来自控制台的中断开关,定时器,计时器,时钟等其他设备,这类中断处理比较简单,实时性强
5)调用管理程序,用户利用专用指令实现中断
中断请求:中断源向中断系统发出中断服务的申请
中断响应:中断主程序,转去执行中断程序,这个过程被成为中断响应
中断使能:默认中断程序是关闭的,使能就是将他有效(开启)
中断屏蔽:关闭不用的中断程序
中断优先级:请求的紧迫程度不同,优先执行优先级高的
中断嵌套:低优先级中断正在处理时,高优先级中断请求有效
轮询通信流程图(可以代替中断)
请求服务:在处理任务4的外围部件请求服务
缺点:只能在轮询到有请求的时候再提供服务,时间不确定,有时候反应快,有时候慢,导致响应时间不稳定实时性不强
中断系统软硬件分配:
中断请求由硬件做
中断程序软件做
总线系统:
总线系统(Bus):一组信号线的集合,定义了各个引线的信号,电气,机械特性,是计算机系统的内各部件之间以及部外各系统之间建立联系,进行数据传递和通信
【注:】
同一时间只能有一个信号源(模块和设备)发送信息;
多模块传输信息采用分时操作
总线分类1:根据传递的内容划分(4类)
数据总线:双向,有8根(字节),16根(字),32根(双字)
地址总线:单向,由CPU发出,指定信息源或目的地的地址
有20根(8086),24根(80286),32根
控制总线:单双向都有,控制读写,数据传输,联络,总线判决和中断控制等功能(有时还能读回状态信息)
电源总线:供电
总线分类2:(3类)根据在系统结构中的层次位置划分
片内总线:集成电路内部,用于连接各功能单元的信息通路
内部总线:用于计算机内部
外部总线:用于计算机之间或计算机与其他设备之间
总线控制方式:
集中式控制
分布式总线控制
同步总线
异步总线:必须采用握手协议
I/O系统软件层次结构
总线性能指标:
总线频率:MHz (次/秒)
总线位宽 bit
总线带宽:总线传输率 MB/S
总线带宽 = 总线位宽总线频率 Mb/S
总线带宽=1/8 总线位宽总线频率 MB/S
I/O系统
I/O设备(除计算机管理系统中的所有外部设备):
1.
存储设备:软盘,硬盘,光盘,磁带等
2.
2.I/O设备:投影,键盘,鼠标,显示器,打印机等
CPU对I/O设备的编址有两种方式:
1.
存储器映射I/O(也称统一编址):在主存中分配地址
2.
给I/O设备独立编址:通过专门的指令访问外设
CPU与外部设备进行输入/输出的方式
1.
程序轮询
2.
中断 应用:适用中低速的一些设备
3.
DMA(Direct memory access):直接读入,存取(除了数据传输都需要cpu干预)
4.
通道: 通道是一种特殊的处理机,它有自己的指令和程序,直接传输数据(处理数据不需要CPU干预)
通道的功能:1)接受CPU发来的I/O指令,并根据指令要求选择指定的外设与通道相连接
2)执行通道程序:从主存中逐条取出通道指令,对通道指令进行译码,并根据需要向被选中的设备控制器发出各种各样的操作命令。
3)对外设中要进行读写操作的数据所在的地址:比如磁盘存储器的柱面号,磁头号,扇区号等
4)给出主存缓存区首地址
5)控制外设与主存缓冲区之间的数据传送的长度:对传送的数据个数进行计数,并判断数据传送是否结束
6)指定传送工作结束时要进行的操作:列如:发出中断请求及通道的中断请求送往CPU等
7)检查外设工作状态是否正常,并将该状态信息送往主存指定单元保存
8)在数据传输过程中完成必要的格式变换:例如:把把字拆分为字节,或者把字节装配成字等;
根据信息传送的方式不同,将通道分为三种类型
1.
字节多路通道:为多台低速或中速的外设服务(交叉的方式分时轮流的为多个设备进行服务)
2.
选择通道:为多台高速外围设备服务(挂着多个通道,但每次只给一个设备进行服务)
3.
数组多路通道:适用于高速设备(给一个每个设备每次只传送一个数组,以此类推)
通道吞吐率或者说通道数据传输速率等:单位时间内能够传输的数据量 单位:Bps(字节/秒)
通道最大流量:一个通道在满负荷状态下每秒能够传输的最大流量
通道流量分析:参数定义
Ts:设备选择时间(准备时间)
Td:传送一个字节所用的时间
p: 在一个通道上连接的设备台数,且这些设备同时都在工作。
n: 每台设备需要传输的字节数,这里假设每台设备传输字节数都一样
K;数组多路通道传输一个数据块中所包含的字节数
T: 通道完成全部数据传送工作所需要的时间
通道流量分析:字节多路通道
数据传送过程:(准备一下传,再准备一下传另一个设备…)(每次只传送一个字节) Ts准备时间,Td传送一个字节的时间
总共所需时间:
最大流量:
实际流量是连接在这个通道上所有设备数据传输率: //fi第i台设备的实际数据传输率
通道流量分析:选择通道
数据传输过程:
总共所需时间:
最大流量:
实际流量是连接在这个通道上最大设备数据传输率: //fi第i台设备的实际数据传输率,j为通道号;
通道流量分析:数组的多路通道
数据传输过程:
总共所需时间:
最大流量:
通道流量综合分析:(极限流量与实际流量)