异步输入输出是一种输入输出处理形式,允许其他设备在传输或数据传输完成之前进行处理。
异步输入输出同步面临的问题—— 不确定数据总线上的数据是否新鲜,因为它们没有发送或接收数据的时隙。
这个问题可以通过以下机制解决:
- 选通
- 握手
数据通过数据总线从源传输到目的地。
1.选通机构:
- 源启动选通- 当源启动数据传输过程时。频闪只是一个信号。
(i) 首先,源将数据放在数据总线和选通信号上。 (ii)在看到选通的接通信号时,从数据总线读取数据。 (iii)从目的地读取数据后,从目的地获取数据。
信号可以被视为:
它表明,首先数据被放在数据总线上,然后选通信号被激活。
- 目的地启动信号- 当目的地启动数据传输过程时。
(i) 首先,在选通信号上指定目的地,以确保源将新数据放在数据总线上。 (ii)在看到on信号时,Source会将新数据放到数据总线上。 (iii)目的地从数据总线读取数据,并发出选通断开信号。
信号可以被视为:
它表明,第一个选通信号被激活,然后数据被放到数据总线上。
基于选通的异步输入输出面临的问题——
- 在源端启动的选通中,假设目的端已从数据总线读取数据,但它们不能保证。
- 在目的地启动的选通中,假设源已将数据放在数据总线上,但它们不能保证。
这个问题可以通过 握手 .
2.握手机制:
- 源启动握手- 当源启动数据传输过程时。它由以下信号组成: 有效数据: 如果ON,则表明数据总线上的数据有效,否则无效。 接受的数据: 如果开启,则表明数据被接受,否则不被接受。
(i) 源将数据放置在数据总线上,并启用数据有效信号。 (ii)目的地从数据总线接收数据,并启用数据接收信号。 (iii)在此之后,禁用数据有效信号意味着数据总线上的数据现在无效。 (iv)禁用数据接收信号,过程结束。
现在可以确定目的地已经通过数据接收信号从数据总线读取了数据。
信号可以被视为:
它表明,首先数据被放在数据总线上,然后数据有效信号被激活,然后数据接受信号被激活。接收数据后,第一个数据有效信号关闭,然后数据接受信号关闭。
- 目的地发起的握手- 当目的地启动数据传输过程时。 索取资料: 如果请求将数据放到数据总线上。 有效数据: 如果ON,则表明数据在数据总线上有效,否则数据无效。
(i) 当目的地准备好接收数据时,数据信号请求被激活。 (ii)响应源将数据放在数据总线上,并启用数据有效信号。 (iii)目的地随后从数据总线接收数据,并在接收数据后,禁用数据信号请求。 (iv)最后,数据有效信号被禁用意味着数据总线上的数据不再有效。
现在可以确定源已经通过数据有效信号将数据放到数据总线上。
信号可以被视为:
它表明,首先对数据信号的请求被激活,然后数据被放到数据总线上,然后数据有效信号被激活。读取数据后,首先发出数据信号请求,然后发出数据有效信号。