Подкадр заголовка содержит два 10-разрядных адресных поля под названиями S и R. Любое одно или оба этих поля выбирают модули, которые называются приемниками заголовка и могут работать в паре с модулем-отправителем данных, модулем-приемником данных либо с ними обоими. Как вариант, приемник заголовка может просто управлять триггером состояния. Подкадр заголовка не содержит кода операции, обозначающего функцию кадра; эта функция определяется кодами S и R и конкретным приемником (или приемниками) заголовка, которые они выбирают.
УПРАВЛЕНИЕ ШИНОЙ.
Арбитраж происходит в процессе передачи кадра. Здесь не предусматриваются отдельные сигнальные линии или периоды времени, в течение которых модули последовательной шины получают право управления VMS-шиной. Если кадр уже передается, когда находящаяся на плате логическая схема выдает отправителю заголовка сигнал об инициированиии кадра, отправитель просто ждет, пока не закончится текущий кадр. Если в данный момент кадр не передается, несколько отправителей заголовков могут одновременно выдать старт-бит на шину. Когда затем они начинают выдавать последующий подкадр заголовка, каждый из отправителей формирует на линии SERDAT низкий уровень как сигнал 1 (или высокий уровень как сигнал логического 0) по фронту C1 синхросигнала SERCLK (рис.1), а потом опрашивает линию SERDAT по очередному фронту S1. Здесь могут быть три случая:
1. Если на линии SERDAT был установлен высокий уровень по фронту C1 и воспринят высокий уровень по фронту S1, то модуль-отправитель заголовка переходит к следующему биту.
2. Если на линии SERDAT был сформирован низкий уровень по фронту C1 и воспринят низкий уровень в момент S1, то модуль переходит к следующему биту.
3. Если на линии SERDAT был установлен высокий уровень в момент C1 и воспринят низкий уровень в момент S1, это значит, что отправитель заголовка потерял право управления последовательной шиной. Он прекращает передачу, ждет завершения кадра и только затем делает новую попытку.
Такой способ арбитража гарантирует, что одно из нескольких конкурирующих сообщений всегда будет передаваться; здесь не возникает ситуации, при которой сразу все конкуренты перестают работать с шиной. Если подкадры заголовков конкурирующих отправителей рассматривать с точки зрения их двоичных значений, то право доступа к шине выигрывает тот отправитель, который имеет максимальное двоичное значение. В случае если два отправителя заголовков будут выдавать абсолютно одинаковый подкадр заголовка, оба они получат право доступа к шине, поскольку оба пытаются запустить идентичные операции. Операции, которые должен инициировать только один отправитель заголовка, будут выполняться после того, как проверка покажет, что подкадры заголовка уникальны.
После заголовка следует 3-разрядный код типа кадра.
Поскольку функцию кадра сообщения определяют адреса S и R, передаваемые в заголовке, тип кадра указывает общую функцию, которая будет выполнена. Коды типа кадра делятся на три категории:
1. 000: не выбирается ни один отправитель данных. Кадры с таким кодом используются только для установки или сброса триггера, который работает в паре с получателями заголовков, выбираемыми при помощи поля S или R либо обоих полей. Этот тип операции может просто менять состояние выходов или семафоров.
2. 001-110: отправитель данных выбирается при помощи поля S. Функция кадра с таким кодом состоит в том, чтобы послать данные получателю данных, выбранному при помощи поля R. Значение кода, посылаемое отправителем данных, показывает, сколько байтов будет передаваться: 1, 2, 4, 8, 16 или 32.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.