Проекты Справочные данные
       
  Описание шины КОП \ IEEE 488 \ GPIB
     
     

Шина IEEE-488 и соответствующий протокол широко используются в программно-аппаратных комплексах для соединения персональных компьютеров и рабочих станций с измерительными инструментами (в частности, в системах сбора данных). Разработанный в 60-х годах в Hewlett-Packard, протокол изначально назывался HPIB (Hewlett-Packard Interace Bus, интерфейсная шина Hewlett-Packard). Впоследствии другие компании подхватили инициативу и начали использовать протокол для своих внутренних целей. Протокол был стандартизован американским Институтом инженеров электротехнической и электронной промышленности (IEEE) и переименован в IEEE-488 (по номеру стандарта) или GPIB (General Purpose Interface Bus, интерфейсная шина общего назначения) в середине 70-х годов. Аналогичный российский стандарт называется Канал Общего Пользования (КОП).

По мере проникновения принятого стандарта протокола в промышленность выяснилось, что конкретный порядок передачи команд по шине был недостаточно хорошо определен.

Стандарт был пересмотрен и дополнен в 1987 году (добавлено описание протокола передачи). Новый стандарт содержит две части: IEEE-488.1, описывающую аппаратную часть и низкоуровненое взаимодействие с шиной, и IEEE-488.2, определяющую порядок передачи команд по шине. Стандарт IEEE-488.2 был еще раз пересмотрен в 1992 году.

Шина IEEE-488 - это надежный и эффективный канал передачи данных. Простота использования, непрекращающееся развитие аппартной поддержки GPIB, разработка новых интерфейсных карточек и GPIB-совместимых инструментов ведут к неуклонному росту числа пользователей шины, несмотря на мощную конкуренцию со стороны архитектур VMEbus и FiberChannel. В последние несколько лет индустрия GPIB эволюционирует в направлении минимизации затрат на изготовление при сохранении базисной функциональности шины. Это достигается путем использования недорогих микроконтроллеров для реализации устройств типа "говорящий" и "слушатель".

Поскольку шина IEEE-488 хорошо стандартизована и протестирована, большинство производителей автоматизированных измерительных систем и инструментов встраивают в свои изделия интерфейсы GPIB в качестве основного канала передачи данных.

Стандарт GPIB определяет три различных типа устройств, которые могут быть подключены к шине: "слушатель", "говорящий" и/или контроллер (точнее, устройства могут находиться в состоянии "слушатель" либо "говорящий" либо быть типа "контроллер").Устройство в состоянии "слушатель" считывает сообщения с шины; устройство в состоянии "говорящий" посылает сообщения на шину. В каждый конретный момент времени в состоянии "говорящий" может быть одно и только одно устройство, в то время как в состоянии "слушатель" может быть произвольное количество устройств. Контроллер выполняет функции арбитра и определяет, какие из устройств в данный момент находятся в состоянии "говорящий" и "слушатель".

Шина КОП состоит из 24 проводов, назначение которых в стандартном разъеме приведено в таблице.1

Все сигнальные линии используют отрицательную логику: наибольшее положительное напряжение интерпретируется как логический "0", а наибольшее отрицательное -- как логическая "1". Конкретные значения напряжения определены стандартом IEEE-488.

Сигнальные линии шины относятся к одному из трех классов:

  • линии данных,
  • линии "рукопожатия" (синхронизации) и
  • линии управления интерфейсом.

Для пересылки команд по шине используются восемь линий данных, причем старший бит (DIO8) в большинстве случаев игнорируется.

Три линии синхронизации обеспечивают передачу данных и команд и обеспечивают гарантированный прием данных всеми устройствами типа "слушатель" в надлежащее время.

Линии синхронизации шины КОП

IEEE / GPIB name

ГОСТ наименование

Назначение

DAV
(Data Valid)

СД
(Синхронизация Данных)

используется устройством типа "говорящий" для оповещения устройств типа "слушатель" о том, что информация, подготовленная "говорящим", выставлена на линиях данных и достоверна.

NRFD
(Not Ready For Data)

ГП
(Готовность к приему)

используется устройствами типа "слушатель" для того, чтобы сообщить устройству типа "говорящий" о том, что они не готовы к приему данных. В этом случае устройство типа "говорящий" прекращает обмен информацией до того момента, когда все устройства типа "слушатель" будут готовы к продолжению диалога. Шина реализована по принципу "монтажное ИЛИ", что позволяет каждому взятому в отдельности устройству типа "слушатель" приостановить всю шину.

NDAC
(Not Data Aсcepted)

ДП
(Данные приняты)

используется устройствами типа "слушатель" и сообщает устройству типа "говорящий", что данные приняты всеми адресатами. Когда этот сигнал не активен, "говорящий" может быть уверен, что все клиенты успешно прочли данные с шины и можно приступать к передаче следущего байта данных. Шина также организована по принципу "монтажное ИЛИ".

Процедура обмена данными по шине схематично показан на следующем рисунке:

  • В исходном состоянии "говорящий" ожидает готовности "слушателей" к приему следующего байта сообщения. "Говорящий" при этом поддерживает высокий уровень на шине СД (DAV).
  • "Слушатели" при готовности к приему поднимают уровень сигнала ГП (NRFD) при низком уровне сигнала ДП (NDAC). За счет включения по схеме "монтажное ИЛИ" высокий уровень сигнала ГП (NRFD) определяется самым медленным из "слушателей". (момент t1 на рисунке)
  • "Говорящий" фиксирует высокий уровень шины ГП (NRFD) при низком уровне шины ДП (NDAC) как готовность "слушателей" к обмену и выставляет на шину данных следующий байт данных.
  • "Говорящий" фиксирует корректность информации на шине данных и опускает уровень сигнала на шине СД (DAV). (момент t2 на рисунке).
  • "Слушатель" фиксирует низкий уровень шины СД (DAV) и начинает прием информации с шины данных опуская уросень сигнала на шине ГП (NRFD). (момент t3 на рисунке).
  • "Слушатель" фиксирует информацию на шине данных (и шине управления) для правильной идентификации полученных данных. После этого идентифицирует фиксацию принятых данных поднимая уровень сигнала на шине ДП (NDAC). За счет включения по схеме "монтажное ИЛИ" высокий уровень сигнала ДП (NDAC) определяется самым медленным из "слушателей". (момент t4 на рисунке).
  • "Говорящий" в ответ на высокий уровень шины ДП (NDAC) поднимает уровень сигнала на шине СД (DAV) (момент времени t5). Высокий уровень сигнала на шине СД (DAV) разрешает "говорящему" снять информационный байт с шины данных (перевести шину данных в пассивное сосотояние).
  • "Слушатель" в ответ на высокий уровень шины СД (DAV) опускает уровень сигнала на шине ДП (NDAC) и переходит к дешифровке полученных данных и выполнению полученных команд.
  • После завершения интерпретации полученных данных, по мере готовности "слушателей" к возобновлению обмена по шине КОП, "слушатели" поднимают уровень сигнала на шине ГП (NRFD), сигнализируя о готовности к приему следующего информационного байта

Как нетрудно видеть, устройство типа "говорящий" помещает новые данные на шину только тогда, когда все устройства типа "слушатель" готовы к приему.

Тем самым, процедура синхронизации гарантирует, что скорость передачи данных по шине не превышает скорость их обработки самым медленным из клиентов.
Это следует иметь ввиду при использовании GPIB для соединения устройств, работающих с разной скоростью.

Пять линий управления интерфейсом сообщают устройствам, присоединенным к шине, какие действия предпринимать, в каком режиме находиться и как реагировать на команды GPIB.

Линии управления шины КОП

IEEE / GPIB name

ГОСТ наименование

Назначение

ATN
(ATteNtion)

УП
(УПравление)

Контроллер шины использует линию для сообщения клиентам о том, что по шине идут команды, а не данные.

SRQ
(Service ReQuest)

ЗО
(Запрос обслуживания)

Сигнал доступен любому клиенту шины. Вырабатывается прибором при необходимости передать контроллеру информацию об изменениях в работе (состоянии) прибора и необходимости передать эти данные контроллеру для принятия решения об изменениях в функционировании системы в целом. По этому сигналу контроллер переводит, по возможности, подавшее его устройство в состояние "говорящий" и передает ему функции передачи данных.

IFC
(InterFace Clear)

ОИ
(Очистка Интерфейса)

Сигнал используется для инициализации или реинициализации шины и приведение интерфейса в исходное состояние.

REN
(Remote ENable)

ДУ
(Дистанционное Управление)

переводит устройство, подключенное к шине, в режим исполнения команд с шины (а не с контрольной панели) и обратно. Вырабатывается контроллером для активизации работы подключенных к шине приборов по командам, поступающим от контроллера.

EOI
(End Of Identify)

КП
(Конец Передачи)

используется "говорящим" для идентификации конца сообщения.
Контроллер выставляет этот сигнал для инициации параллельного опроса подключенных к шине устройств.

Поиск источника ЗАПРОСА на обслуживание.

Сигнал ЗО (SRQ) является общим для всех приборов, подключенных к шине КОП, за исключением контроллера.

При этом для контроллера после получения сигнала ЗО (SRQ) возникает вопрос об идентификации прибора, требующего обслуживания (выставившего сигнал ЗО (SRQ) на шину КОП).

При этом существуют два алгоритма определения источника запроса:

Последовательный опрос.

Контроллер последовательно опрашивает все устройства, способные сформировать сигнал ЗО (SRQ) до момента определения устройства, сгенерировавшего сигнал ЗО (SRQ). Этот метод универсален, но не отличается быстродействием.

Последовательный опрос инициализируется "контроллером" как реакция на появление сигнала ЗО (SRQ), сгенерированным одним из подключенных приборов, так и для проверки состояния подключенных приборов.

В общем виде, последовательность команд для реализации последовательного опроса следующая:

  • Контроллер выставляет на шину КОП команду SPE ("отпирание последовательного опроса");
  • Приборы, подключенные к шине КОП подготавливают сообщение о своем соостоянии в определенном формате;
  • Контроллер назначает прибор "говорящим", и снимает сигнал УП(ATN);
  • Назначенный "говорящим" прибор выдает сообщение о своем состоянии;
  • "Контроллер" отменяет назначение прибора "говорящим" и переходит к следующему прибору (или закрывает цикл последовательного опроса);

После опроса всех приборов, "контроллер" выдает в шину КОП команду SPD ("запирание последовательного опроса"), после чего конфигурирует "говорящих" и "слушателей" в соответствии с требованиями информационной системы.

Стандарт КОП накладывает определенные ограничения на формат сообщения о состоянии последовательного опроса для ускорения обнаружения прибора, сгенерировавшего ЗО.

Первый байт состояния последовательного опроса в обязательном порядке должен иметь следующую стуктуру:

Бит

Значение при 0

Значение при 1

7

однобайтное сообщение о состоянии (рекомендуется)

многобайтное сообщение (используется как исключение)

6

ЗО не активен (прибор не требует обслуживания)

ЗО активен (прибор затребовал обслуживание)

5

Нормальное функционирование прибора

Ненормальное функционирование прибора

4

Прибор готов к продолжению обмена данными

Прибор занят внутренними операциями и не готов к проведению обмена данными

3

Определяется изготовителем прибора

Определяется изготовителем прибора

2

Определяется изготовителем прибора

Определяется изготовителем прибора

1

Определяется изготовителем прибора

Определяется изготовителем прибора

0

Определяется изготовителем прибора

Определяется изготовителем прибора

В младшем ниббле байта состояния рекомендуется передавать дополнительную информацию о функционировании прибора так, чтобы отсутствие ошибок кодировалось нулем, а состояния, требующие внимания "контроллера" кодировались 1.

Таким образом, фактически рекомендуется использовать однобайтные сообщения о состоянии прибора, не требующего вмешательства, и формирование байта состояния со значением 00h при нормальном функционировании прибора.

Параллельный опрос.

Контроллер выставляет в канал шины КОП специальную команду, а в ответ все устройства выставляют на шину данных бит состояния. Контроллер, считывая состояние шины данных КОП, определяет устройство, сгенерировавшее сигнал ЗО (SRQ). Каждое из устройств формирует свой уникальный бит состояния.

Параллельный опрос позволяет контроллеру быстро отреагировать на сигнал ЗО (SRQ), однако такой метод позволяет опросить ограниченное число (не более 8) приборов.

Команды шины КОП (GPIB\IEEE488)

Стандарт шины КОП определяет, что данные, принимаемые приборами, подключенными к шине КОП при низком уровень сигнала на шине УП (ATN), вырабатываемый контроллером, идентифицируются не как данные, а как команды, должны приниматься и обрабатываться всеми подключенными приборами.

Стандарт шины КОП различает :

  • "Одношинные" команды, которые передаются от контроллера ко всем приборам по одной отдельной шине. К таким командам относятся появление сигнала низкого уровня на шине ДУ (REN) или ОИ (IFC)
  • Мультишинные" команды, которые передаются от контроллера ко всем приборам в виде специального информационного сообщения при низком уровне сигнала на шине УП (ATN).

Мультишинные команды различаются на :

  • группа универсальные команд, принимаемые и обрабатываемые всеми подключенными приборами безотносительно от установленного адреса.
  • группа адресных команд, воспринимаемые и обрабатываемые отдельными приборами при совпадении адреса, передаваемого контроллером, и адреса, установленного на отдельном приборе.

Группа универсальных команд:

ID

DIO

Наименование (описание)

8

7

6

5

4

3

2

1

DCL

x

0

0

1

0

1

0

0

Сброс универсальный

LLO

x

0

0

1

0

0

0

1

Запрет местного управления

SPE

x

0

0

1

1

0

0

0

Отпирание последовательного опроса

SPD

x

0

0

1

1

0

0

1

Запирание последовательного опроса

PPU

x

0

0

1

0

1

0

1

Деконфигурирование последовательного опроса

Группа адресных команд:

ID

DIO

Наименование (описание)

8

7

6

5

4

3

2

1

LSN

x

0

1

A

A

A

A

A

Назначение прибора с адресом AAAAA "слушателем"

ULN

x

0

1

1

1

1

1

1

исключение из списка "слушателей" ("НЕ ПРИНИМАЙ")

TLK

x

1

0

A

A

A

A

A

Назначение прибора с адресом AAAAA "Говорящим"

UNT

x

1

0

1

1

1

1

1

исключение из "говорящих" ("НЕ ПЕРЕДАВАЙ")

SDC

x

0

0

0

0

1

0

0

Сброс адресный – сброс приборов, назначенных "слушателями"

GTL

x

0

0

0

0

0

0

1

Переход на местное управление

PPC

x

0

0

0

0

1

0

1

Конфигурация параллельного опроса

GET

x

0

0

0

1

0

0

0

Запуск прибора

TCT

x

0

0

0

1

0

0

1

Передача управления

Формат информационных сообщений

Стандарт шины КОП определяет в виде рекомендаций формат информационных сообщений, передаваемых по шине КОП от "говорящего" \ "контроллера" к "слушателям".

В соответствии с этими рекомендачиями многобайтные информационные сообщения должны содержать:

  • поле заголовка (ПЗ);
  • тело сообщения \ тело данных (ТД);
  • ограничитель (О).

Базовая версия определяет "упрощенный" формат информационного сообщения в виде:

ПЗ - ТД - О

где ПЗ - буква, ТД - набор цифровых данных, О - код (0А hex) или (0D hex)

Расширенная версия позволяет комбинировать последовательности Полей Заголовка и Тела Данных без разделения Ограничителями в виде:

ПЗ - ТД - ПЗ - ТД - О

Стандарт допускает нулевую длину Тела Данных (т.е. допустимо отсутствие тела данных после поля заголовка) , в виде:

ПЗ - О

Описание контактов стандартного разъема шины КОП

       
 
Контакты
   
Copyright © by iTT Ltd