图4-26 表示了8251A的结构框图。作为常用的通信接口,和82C55A类似,8251A的结构也可以归纳为以下三个部分: 第一部分是和CPU或总线的接口部分,其中包括数据总线缓冲器、读/写控制逻辑。数据总线缓冲器用来把8251A和系统数据总线相连,在CPU执行输入/输出指令期间,由数据总线缓冲器发送和接收数据,此外,控制字,命令字和状态信息也通过数据总线缓冲器传输,读/写控制逻辑电路用来配合数据总线缓冲器工作。CPU通过数据总线缓冲器和读写控制逻辑向8251A写入工作方式和控制命令字,对芯片初始化;向8251写入要发送字符的数据代码,送到发送缓冲器进行并行到串行的转换,并且将接收的、已转换成并行代码的接收缓冲器中的字符数据读入CPU。 第二部分是数据格式转换部分,包括发送缓冲器、并行数据到串行数据转换的发送移位器,接收缓冲器和串行数据到并行数据转换的接收移位器,以及发送控制电路和接收控制电路。发送缓冲器把来自CPU的并行数据加上相应的控制信息,然后利用发送移位器把它们转换成串行数据发送出去。接收缓冲器接收串行数据,并利用接收移位器按照相应的格式将串行数据转换成并行数据。发送和接收控制电路控制并行数据与串行数据之间的转换以及串行数据的发送和接收。发送器准备好TXRDY信号和接收器准备好RXRDY信号反映了发送器和接收器状态,它们可以用作控制8251和CPU之间传送数据的中断请求信号或程序查询信号。 第三部分是和外设的连接部分,包括连接发送移位器的串行发送信号线TXD、连接接收移位器的串行接收信号线RXD;调制/解调控制电路和它的两对联络信号:数据终端请求发送RTS#和数据设备清除请求发送(允许发送)CTS#,数据终端准备好DTR#和数据设备准备好DSR#。这两对信号在8251向/从调制解调器或其它串行外设发送/接收数据的过程中进行“握手”联络。这四个信号和并行接口的IBF,OBF#,STB#,ACK#都是有很多相似之处的。 ![]() 图4-26 8251的结构 |