在计算机体系结构中,什么是异步通信接口?
异步通信接口的框图如图所示。它既可以作为发送器,也可以作为接收器。接口通过加载到其控制寄存器中的控制字节启动特定传输模式。发送器寄存器通过数据总线从CPU接收数据字节。此字节被发送到移位寄存器以进行串行传输。
接收器部分将串行信息接收到着另一个移位寄存器中,当获取最终数据字节时,将其移动到接收器寄存器。CPU可以通过数据总线选择接收器寄存器来读取字节。状态寄存器中的位用于输入和输出标志,并用于记录传输过程中可能出现的特定错误。
CPU 可以读取状态寄存器以确定标志位的状态,并确定是否出现任何错误。芯片选择和读写控制线连接到 CPU。芯片选择 (CS) 输入可以通过地址总线选择接口。
寄存器选择 (RS) 与读 (RD) 和写 (WR) 控制相关。两个寄存器是只写寄存器,两个是只读寄存器。所选寄存器是 RS 值和 RD 和 WR 状态的服务,如下面的图表所示。
CS | RS | 操作 | 所选寄存器 |
---|---|---|---|
0 | X | X | 无:数据总线处于高阻抗状态 |
1 | 0 | WR | 发送器寄存器 |
1 | 1 | WR | 控制寄存器 |
1 | 0 | RD | 接收器寄存器 |
1 | 1 | RD | 状态寄存器 |
异步通信接口的操作由 CPU 通过向控制寄存器共享一个字节来启动。初始化过程将接口置于特定的操作模式,因为它表示特定的参数,包括要使用的波特率、每个字符中的位数、是否创建和检查奇偶校验以及连接到每个字符的停止位数。
状态寄存器中的两位用作标志。一位可以表示发送器寄存器是否为空,另一位可以表示接收器寄存器是否已满。
接口发送器部分的操作如下。CPU 读取状态寄存器并确定标志以查看发送器寄存器是否为空。如果为空,CPU 将字符发送到发送器寄存器,接口清除标志以表示寄存器已满。
发送器移位寄存器中的第一位设置为 0 以创建起始位。字符从发送器寄存器并行共享到移位寄存器,并将适当数量的停止位连接到移位寄存器。然后将发送器寄存器标记为空。现在可以通过以确定的波特率传输移位寄存器中的信息来一次发送一位字符。
广告