Cтраница 2
Хотя описанный метод позволяет обнаружить ошибку почти сразу после выполнения команды цифрового выхода ( обычно за один или два командных цикла), ошибка в выходном регистре будет находиться до тех пор, пока не начнется корректирующее действие. Буферный регистр загружается по команде записи, а затем переданные данные считываются обратно в ЦП по команде считывания. Если считанные данные соответствуют переданным, выполняется команда, которая передает содержимое буферного регистра в выходной. Если в переданных данных обнаружена ошибка, перезапись из регистра в регистр запрещается и программа выполняет корректирующее действие. Хотя такой способ и не позволяет полностью исключить вероятность ошибки, поскольку последняя может возникнуть при перезаписи из буферного регистра в выходной, все-таки эта вероятность существенно снижается. [16]
В таких случаях выдается сигнал прерывания и первое расследование причин аварийной ситуации ведет супервизор. Если ошибка может быть устранена путем повторения операции обмена или путем игнорирования ошибочно переданных данных, то супервизор сам предпринимает действия по повторному запуску канала для доведения процедуры обмена до конца. [17]
При выполнении команды НЮ байты состояния CSW ( биты 32 - 47) записываются в том случае, если будет иметь место одно из приводимых ниже условий. Содержимое других полей CSW не изменяется. Занесенное при выполнении команды НЮ CSW относится только к выполнению команды НЮ и не описывает, при каких условиях завершалась операция ввода-вывода в адресуемом подканале. Количество переданных данных и условия прекращения операции в подканале описываются в CSW, связанном с условием прерывания, вызываемым прекращением операции. [18]
Хотя описанный метод позволяет обнаружить ошибку почти сразу после выполнения команды цифрового выхода ( обычно за один или два командных цикла), ошибка в выходном регистре будет находиться до тех пор, пока не начнется корректирующее действие. Буферный регистр загружается по команде записи, а затем переданные данные считываются обратно в ЦП по команде считывания. Если считанные данные соответствуют переданным, выполняется команда, которая передает содержимое буферного регистра в выходной. Если в переданных данных обнаружена ошибка, перезапись из регистра в регистр запрещается и программа выполняет корректирующее действие. Хотя такой способ и не позволяет полностью исключить вероятность ошибки, поскольку последняя может возникнуть при перезаписи из буферного регистра в выходной, все-таки эта вероятность существенно снижается. [19]
Эти регистры являются сдвигающими. Кадр проходит через кольцо и возвращается на вставленный регистр. По пути его адресная часть проверяется остальными станциями, поскольку в них предусмотрена расшифровка адресной и управляющей информации. Если пакет предназначен данной станции, то принимается информационная часть пакета, проверяется правильность приема и при положительном результате проверки в кольцо направляется соответствующее подтверждение. Передающая ( активная) станция одновременно с передачей сформированного в ней пакета принимает пакет, прошедший по кольцу, на вставленный регистр. В каждом такте сдвига в кольцо направляется очередной бит данных, а из кольца с некоторой задержкой возвращаются переданные биты. Если подтверждена правильность передачи, то переданные данные стираются в передающей станции, которая направляет в кольцо свободный маркер, если не подтверждена, то осуществляется повторная передача пакета. [20]