本次笔记内容:
P53 计算机组成原理(53)
P54 计算机组成原理(54)
我的计组笔记汇总:计算机组原理成笔记
视频地址:计算机组成原理 清华大学刘卫东 全58讲 国家精品课程 1080P 更完
幻灯片见我的 GitHub 仓库:计算机组成原理 src/slides
本节课幻灯片:组成原理43 device.pptx
新课内容的最后一节课了。
主要教学内容
- 接口电路的作用
- 接口电路的一般组成
- 串行接口
- USB接口
- 输入/输出设备
输入/输出系统
- 控制方式:处理器管理输入/输出的机制
- 总线:数据传输
- 接口:总线和外部设备的连接(为什么还要设置接口呢?)
- 设备:完成输入/输出任务
- 完成数字信号到其它系统可识别信号的转换
- 是多个学科的交叉和综合
接口的基本功能
- 提供主机识别(指定、找到)使用的I/O设备的支持
- 建立主机和设备之间的控制与通信机制
- 接收处理器(主设备)的命令,并提交给外部设备,同时,为主设备提供外部设备的状态
- 提供主机和设备之间信息交换过程中的数据缓冲机构(比如
南桥
与北桥
间)
- 提供主机和设备之间信息交换过程中的其他特别需求支持(比如电压转换)
通用可编程接口电路
- 通用
- 可编程
- 接口内部组成
- 设备识别电路
- 数据缓冲寄存器(输入/输出)
- 控制寄存器
- 状态寄存器
- 中断电路
- 其他电路
串行接口芯片8251
- 串行接口,可用于同步或异步传送
- 同步传送
- 5~8位/字
- 支持内同步或外同步
- 自动插入同步字符
- 异步传送
- 5~8位/字
- 时钟:1、16或64倍波特率
- 停止位:1、1.5或2位
- (因为有停止位)可检测假启动
- 全双工
- 双缓冲发送器和接受器
- 可检测奇偶错、数据丢失错和帧错
串行通信
- 同步传送
- 异步传送
- 起始位、停止位
- 波特率(如何告知CPU起始呢?使用波特率规定)
- 全双工
8251结构框图
需要把长距离传输,需要调制解调器把数字信号
变成模拟信号
,然后接电话线。但是现在已经有网络了,很少用这个了。
串行传送中的有关概念
方式命令字的格式
如何编程呢?在指令中,其格式如上。
工作命令字的格式
接口状态寄存器的内容格式
Intel 8251串行接口芯片
TEC-2000 机串行口初始化的程序
此外,老师在课上举了一个 TEC-2000 机串行口初始化的程序的例子,在 2019 年的 ppt 里已经没有了。
问题是,不少接口地址可能重复,对用户来讲很麻烦(还要开机箱,用错了,把机器都烧掉)。因此,在上世纪90年代,七大巨头公司设计了一个规范,这就是 USB 接口。
USB 接口
- 用户不必再设置卡上、设备上的开关或跳线
- 不必打开机箱来安装新的输入输出设备
- 应该只需要一根电缆线就可以将所有设备连接起来
- 输入/输出设备应可以从电缆上得到电源
- 单台计算机最多可以连接127个设备 系统应能支持实时设备(声卡、电话)
- 可在计算机运行时安装设备
- 不必重新启动计算机 成本低
USB 线缆
USB 结构
USB接口工作原理
- USB结构
- 设备检测
- 根HUB定时查询接口状态,若检测到有设备接入到接口上,则为该设备赋地址(7位)。设备初始地址为0,每个设备上应有ROM,保存设备参数。
- 识别设备类型后,由设备驱动程序管理和使用设备。
- 只有1个主设备,不需要仲裁,采用轮循方式,适合低速设备使用。
- 设备带宽为1.5MB/s。可适合一般的语音设备。
用帧来传输。
USB 帧
USB 协议
如上,以帧为单位,发送数据。
这是半双工,因为不能同时刻进行双向传输。
- 每1ms,定时发出一个SOF包,进行时间同步(所有设备)。
- 协议包
- 令牌包(SOF、IN、OUT、SETUP)
- 数据包(Data)
- 握手包(ACK、NAK、STALL)
- 特别包
- 第1帧:根发出读命令(IN),包含有地址;设备返回数据包DATA(最多64位),其中,SYN同步字段(8位)、PID为包类型(8位)、载荷(Playload),和16位校验码;ACK为根接收到数据后返回给设备的确认包。
- 第3帧:往设备写数据。
接口总结
外部设备
- 输入/输出设备
- 外存储器
- 脱机输入/输出设备
- 主要完成人机交互
- 是电子、机械、光学、化学等多学科的交叉
- Anyway, Anywhere, Anytime, Anyone
- 智能化
这部分国内计算机原理教材一般没有,国内会提及。
外部设备功能
- 完成数据的输入和/或输出
- 与接口进行连接
- 与主机进行通信
键盘
键盘运行原理
计算机的键盘,用于向主机内敲入字符、功能键、汉字等符号,通过逐次敲击键盘上不同的键来完成。被敲击的键将以一个特定的编码被表示并被存入计算机主机。故键盘的运行原理,是把敲击的键在键盘上的位置对应为一个编码。
把每个键在键盘上的位置对应为一个编码。
具体实现:是用行列扫描的方法,即把每个键分配在一个m 列* n 行矩阵的一个交叉点上,通过并行接口向n 行依次送出仅有一行为零、其余各行均为一的值,再用并行接口读入m 列上的取值。
当该值不为FFH (全1 码)时,表明有键按下,若该值仅含一位零,表明取值为0 的行、列的交叉点的键被按下,用一个对照表即可得到相应键的编码。
尚需解决如下的一些问题:键的抖动、多键同时按下、由哪个部件完成这些操作过程。
并行接口送来 1 0 … 1
的 n 位数值到二极管的负极,并行接口接收 键盘线路 m 列送出的 m 位数据。当A键
按下去后,5V电源送出经电阻、A键
、二极管到 0 信号处的电流,从而在 第 2列产生 0
电平(红线所示),其他各列都给出高电平(黑线所示),故并行接口接收到的是 1 1 0 … 1 这样的 m 位数据
。
键盘接口
鼠标
- 鼠标的产生
- 鼠标的功能
- 根据鼠标的移动,在屏幕上移动位置
- 选中某个对象,进而执行某些操作
- 鼠标的种类
- 鼠标的接口
鼠标的发明
机械式鼠标
鼠标内部有一个橡胶球,橡胶球紧贴着两个互相垂直的轴(X、Y轴),每个轴上有一个光栅轮,光栅轮两边对应着有发光二极管和光敏三极管。
鼠标在移动的时候,橡胶球便带动两个轴旋转,同时光栅轮也就开始旋转,光敏三极管在接收发光二极管发出的光时被光栅轮间断地阻挡,从而产生脉冲信号,通过鼠标内部的芯片处理之后被CPU接受。
脉冲信号的频率和数量,经过CPU计算后则表示为屏幕上的距离和速度。
智能输入设备
输出设备概述
- 点阵式输出设备(视觉)
- 以点阵的组合来表示不同的形状
- 提供每个点的存储输出属性
- 点阵输出设备将点按属性规定的颜色和灰度输出
- 听觉
- 触觉
点阵输出设备
阴极射线管(CRT)显示器
CRT的几个概念
- 光栅扫描和随机扫描
- 电子束从左到右,从上到下扫描整个屏幕
- 只扫描需要显示的点
- 刷新和帧存储器
- 为了重复扫描,需要存储图象信息。
- 分辨率和灰度级
- 图形和图像
CRT图形显示器
- 容量大的VRAM
- 存储点阵属性
- 分辨率:1024*768,真彩色 1024 * 768 * 3 Byte = 2.3 MB
- 高速总线
- 50场/秒,带宽为2.3*50MB/s=112.5MB/s
- 需要连接PCI总线
- 专用接口
- 分辨率更高的图形设备将采用专用接口
液晶显示器
- 显示原理
- 利用液晶的光学特性
- 平板后面设置光源
- 通过液晶改变透射光的偏振性(从水平到垂直)
- 电场控制
- 特点
- 平板显示,不需要高压电,移动方便
- 无辐射
- 价格较高
等离子显示器
- 成像原理
- 利用惰性气体在一定电压作用下产生气体放电的特性
- 产生紫外线,紫外线激发荧光粉发光
- 在玻璃板之间隔开成象素,每个象素点内有惰性气体和三色荧光粉,用电极控制
- 特点
- 易于实现大画面显示
- 全色显示,色纯度与CRT相当
- 视角达160度
- 寿命长
- 功耗大、成本高、对比度差
激光打印机
- 输出原理
- 利用激光束照射硒鼓,使之放电,不再吸附墨粉来产生打印的形状
- 输出过程
- 硒鼓带电后吸附墨粉
- 激光束使硒鼓表面被照射的部分放电,释放墨粉
- 将墨粉压到纸上,并用高温烘烤,使之固化在打印纸上
- 将硒鼓放电,清扫剩余墨粉
激光打印机组成
打印机
输入/输出设备
- 种类多样,功能繁杂,速度不一
- 满足计算机和外界进行信息交换的需要
- 人机交互的界面