Структурная схема программируемого генератора 82380 с выходным сигналом READY (готовность) для шины микропроцессора 80386, называемого генератором с состоянием ожидания, представлена на Рис. 9.6. Генератор с состоянием ожидания может быть активизирован любым периферийным устройством, в цикл работы которого требуется ввести такты ожидания. По таким запросам генератор поддерживает входной сигнал READY микропроцессора в неактивном состоянии в течение предварительно определенного числа тактов шины. В генераторе имеется шесть программно доступных регистров состояния ожидания – по три для доступа к памяти и обращения к устройствам ввода-вывода. Любой из этих шести регистров может быть выбран с помощью двухразрядного сигнала выбора состояния ожидания и сигнала M/IO# от ведущего устройства на шине. В четырехразрядные регистры состояния ожидания могут быть записаны коды номеров состояний ожидания 0 – 15. Независимо от того, активный или нет генератор с состояниями ожидания, он постоянно отслеживает состояние микропроцессора или другого ведущего в данный момент устройства на шине.
Если ведущее устройство на шине находится в режиме конвейерной работы, то генератор вводит такты ожидания, число которых равно значению, записанному в один из шести выбранных регистров состояний ожидания. Если же ведущее устройство работает в неконвейерном режиме, то в цикл шины вводится один такт ожидания. После сброса во все шесть регистров оказывается загружено значение FFH (разряды D7 — D4 и D3 — D0), что задает максимально возможное число тактов ожидания.
Любое периферийное устройство, которое может формировать свой собственный сигнал READY, может также запретить работу генератора с состояниями ожидания 82380, установив оба сигнала выбора регистров в состояние высокого уровня. Однако это не лишит генератор 82380 способности определить по состоянию конвейера число тактов ожидания в последующих циклах шины.