【Computer Organization笔记26】接口电路和外部设备

本次笔记内容:
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 线缆

  • 由4根线组成,电源、地和双数据线。
  • 同步传输方式

USB 结构

USB接口工作原理

  • USB结构
    • 根HUB、层次结构
  • 设备检测
    • 根HUB定时查询接口状态,若检测到有设备接入到接口上,则为该设备赋地址(7位)。设备初始地址为0,每个设备上应有ROM,保存设备参数。
  • 识别设备类型后,由设备驱动程序管理和使用设备。
    • 操作系统支持
  • 只有1个主设备,不需要仲裁,采用轮循方式,适合低速设备使用。
  • 设备带宽为1.5MB/s。可适合一般的语音设备。
    • V2.0 60MB/s
    • V3.0 500MB/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 位数据

键盘接口

  • 采用串行口或者并行口
  • 中断方式
  • 总线
    • USB
    • 慢速总线

鼠标

  • 鼠标的产生
    • 图形界面的出现,需要鼠标来进行拖动等操作
  • 鼠标的功能
    • 根据鼠标的移动,在屏幕上移动位置
    • 选中某个对象,进而执行某些操作
  • 鼠标的种类
    • 机械式鼠标
    • 光电式鼠标
  • 鼠标的接口
    • 串口、PS2接口、USB接口

鼠标的发明

  • 道格拉斯·恩格尔巴特(Dr. Douglas C. Engelbart,1925年1月30日-2013年7月2日)

  • 早在20世纪60年代初,他就发表了一篇名为“放大人类智力”(Augmenting the Human Intellect)的论文,提出了计算机是人类智力的“放大器”的观点。为此,他认为必须改善人机交互方式,发展交互式计算技术。1997年Turing奖获得者。

机械式鼠标


鼠标内部有一个橡胶球,橡胶球紧贴着两个互相垂直的轴(X、Y轴),每个轴上有一个光栅轮,光栅轮两边对应着有发光二极管和光敏三极管。

鼠标在移动的时候,橡胶球便带动两个轴旋转,同时光栅轮也就开始旋转,光敏三极管在接收发光二极管发出的光时被光栅轮间断地阻挡,从而产生脉冲信号,通过鼠标内部的芯片处理之后被CPU接受。

脉冲信号的频率和数量,经过CPU计算后则表示为屏幕上的距离和速度。

智能输入设备

  • 语音识别
  • 手写体识别
  • 印刷体识别

输出设备概述

  • 点阵式输出设备(视觉)
    • 以点阵的组合来表示不同的形状
    • 提供每个点的存储输出属性
    • 点阵输出设备将点按属性规定的颜色和灰度输出
  • 听觉
    • 音乐、语音合成
  • 触觉
    • 可穿戴计算机

点阵输出设备

  • 显示器
    • CRT
    • LCD
    • PDP
  • 打印机
    • 针式打印机
    • 激光打印机
    • 喷墨打印机

阴极射线管(CRT)显示器

  • 成像原理
    • 通过电子束撞击荧光板上的荧光粉,发光产生亮点
  • 组成
    • 电子枪、显示屏和偏转控制装置

CRT的几个概念

  • 光栅扫描和随机扫描
    • 电子束从左到右,从上到下扫描整个屏幕
    • 只扫描需要显示的点
  • 刷新和帧存储器
    • 为了得到稳定的图象,需要重复扫描整个屏幕
  • 为了重复扫描,需要存储图象信息。
  • 分辨率和灰度级
    • 像素个数
    • 亮暗差别
  • 图形和图像
    • 线条的有无表示
    • 自然景物、照片等

CRT图形显示器

  • 容量大的VRAM
  • 存储点阵属性
  • 分辨率:1024*768,真彩色 1024 * 768 * 3 Byte = 2.3 MB
  • 高速总线
  • 50场/秒,带宽为2.3*50MB/s=112.5MB/s
  • 需要连接PCI总线
  • 专用接口
  • 分辨率更高的图形设备将采用专用接口

液晶显示器

  • 显示原理
    • 利用液晶的光学特性
    • 平板后面设置光源
    • 通过液晶改变透射光的偏振性(从水平到垂直)
    • 电场控制
  • 特点
    • 平板显示,不需要高压电,移动方便
    • 无辐射
    • 价格较高

等离子显示器

  • 成像原理
    • 利用惰性气体在一定电压作用下产生气体放电的特性
    • 产生紫外线,紫外线激发荧光粉发光
    • 在玻璃板之间隔开成象素,每个象素点内有惰性气体和三色荧光粉,用电极控制
  • 特点
    • 易于实现大画面显示
    • 全色显示,色纯度与CRT相当
    • 视角达160度
    • 寿命长
    • 功耗大、成本高、对比度差

激光打印机

  • 输出原理
    • 利用激光束照射硒鼓,使之放电,不再吸附墨粉来产生打印的形状
  • 输出过程
    • 硒鼓带电后吸附墨粉
    • 激光束使硒鼓表面被照射的部分放电,释放墨粉
    • 将墨粉压到纸上,并用高温烘烤,使之固化在打印纸上
    • 将硒鼓放电,清扫剩余墨粉

激光打印机组成

打印机

  • 接口
    • 并行接口
  • 总线
    • 慢速总线
  • 协议

输入/输出设备

  • 种类多样,功能繁杂,速度不一
  • 满足计算机和外界进行信息交换的需要
  • 人机交互的界面