контроллер канала межблочного обмена
Классы МПК: | G06F13/24 с использованием прерывания |
Автор(ы): | Горшков Сергей Николаевич (RU) |
Патентообладатель(и): | Открытое акционерное общество Московский научно-исследовательский институт "АГАТ" (RU) |
Приоритеты: |
подача заявки:
2007-05-11 публикация патента:
27.01.2009 |
Изобретение относится к вычислительной технике и может быть использовано для обмена данными между управляющей ЭВМ и внешними устройствами в режиме реального времени. Достигаемый технический результат заключается в расширении функциональных возможностей устройства за счет введения функции, обеспечивающей регистрацию и анализ единичных сбоев при отработках каналов передачи информации. Для этого контроллер канала межблочного обмена содержит интерфейс шины ЭВМ, генератор тактовых импульсов, делитель частоты импульсов, счетчик времени, таймер, формирователь прерываний, регистр управления, регистр состояния, буферное запоминающее устройство, интерфейс канала межблочного обмена, элемент ИЛИ, триггер и ключ. В исходном состоянии триггер находится в состоянии единица. Единичный сигнал с выхода триггера поступает на управляющий вход ключа и разрешает прохождение сигнала через ключ со второй выходной линии канала межблочного обмена на контрольный выход. Если при передаче кадра информации интерфейс канала межблочного обмена зафиксирует ошибку (сбой), на его втором выходе появится единичный сигнал, который через элемент ИЛИ поступит на вход сброса триггера и установит его в нулевое состояние. В результате выходной сигнал триггера, поступающий на управляющий вход ключа, запретит прохождение сигнала через ключ с первой линии канала межблочного обмена на контрольный выход. 2 ил.
![контроллер канала межблочного обмена, патент № 2345407](/images/patents/120/2345407/2345407.jpg)
![контроллер канала межблочного обмена, патент № 2345407](/images/patents/120/2345407/2345407-2.jpg)
Формула изобретения
Контроллер канала межблочного обмена, содержащий интерфейс шины ЭВМ, первая группа входов-выходов которого подключена к шине ЭВМ, генератор тактовых импульсов, делитель частоты импульсов, вход которого подключен к выходу генератора тактовых импульсов, интерфейс канала межблочного обмена, первый вход которого соединен с выходом генератора тактовых импульсов, а две линии входов-выходов и две выходные линии интерфейса канала межблочного обмена подключены к каналу межблочного обмена, счетчик времени, счетный вход которого подключен к выходу делителя частоты импульсов, а информационные выходы счетчика времени соединены с первой группой входов интерфейса шины ЭВМ, таймер, вход синхронизации которого подключен к выходу делителя частоты импульсов, а информационные входы таймера соединены с первой группой выходов интерфейса шины ЭВМ, формирователь прерываний, первый вход которого соединен с выходом таймера, второй вход - с первым выходом интерфейса канала межблочного обмена, а выход - со входом интерфейса шины ЭВМ, регистр управления, группа входов которого соединена со второй группой выходов интерфейса шины ЭВМ, первый выход - со входом пуска таймера, второй выход - с входом сброса счетчика времени, третий выход - со вторым входом интерфейса канала межблочного обмена, регистр состояния, первый вход которого соединен с выходом таймера, второй и третий входы - соответственно с первым и вторым выходами интерфейса канала межблочного обмена, а группа выходов соединена со второй группой входов интерфейса шины ЭВМ, буферное запоминающее устройство, первая группа входов-выходов которого соединена со второй группой входов-выходов интерфейса шины ЭВМ, а вторая группа входов-выходов - с группой входов-выходов интерфейса канала межблочного обмена, отличающийся тем, что в него дополнительно введены элемент ИЛИ, первый вход которого подключен ко второму выходу интерфейса канала межблочного обмена, а второй вход - к четвертому выходу регистра управления, триггер, вход сброса которого подключен к выходу элемента ИЛИ, а вход установки - к пятому выходу регистра управления, ключ, управляющий вход которого подключен к выходу триггера, а информационный вход - ко второй выходной линии интерфейса канала межблочного обмена, и четыре контрольных выхода, первый, второй и третий из которых подключены соответственно к первой и второй линиям входов-выходов и к первой выходной линии интерфейса канала межблочного обмена, а четвертый контрольный выход подключен к выходу ключа.
Описание изобретения к патенту
Изобретение относится к вычислительной технике и может быть использовано для обмена данными между управляющей ЭВМ и внешними устройствами в режиме реального времени.
Известен адаптер мультиплексного канала обмена, содержащий генератор импульсов (ГИ), делитель частоты (ДЧ), адаптер системной магистрали (АСМ), два адаптера канала обмена (AT), два приемопередающих устройства (ППУ), буферное запоминающее устройство (БОЗУ), двунаправленные буферные усилители (ДНУ) и системную магистраль. AT имеет четыре программно-доступных регистра: регистр управления, регистр состояния, сдвиговый регистр и буферный регистр. [Адаптер МКО-РС Руководство по эксплуатации ЮШКР.467753.009 РЭ 2003 г.].
Это устройство обеспечивает обмен данными между управляющей ЭВМ и внешними устройствами в режиме реального времени по мультиплексной линии передачи информации. Недостатками устройства является низкая точность синхронизации обмена данными, осуществляемая внутренними программными таймерами управляющей ЭВМ, и невозможность регистрации сбоев в мультиплексной линии передачи информации.
Известен также контроллер канала межблочного обмена, выбранный в качестве прототипа, блок-схема которого приведена на фиг.1. Контроллер содержит интерфейс шины ЭВМ, включающий в себя интерфейс PCI, конфигурационную память и регистры (RGT, RGCL1, RGCL2), первая группа входов-выходов интерфейса шины ЭВМ подключена к шине ЭВМ (PCI), устройство синхронизации, содержащее генератор тактовых импульсов с делителем частоты импульсов, интерфейс канала межблочного обмена (устройство формирования сигналов КМБО), первый вход которого соединен с выходом генератора тактовых импульсов устройства синхронизации (ТИ), а две линии входов-выходов и две выходные линии интерфейса канала межблочного обмена подключены к каналу межблочного обмена (КМБО), счетчик времени, счетный вход которого подключен к выходу делителя частоты импульсов устройства синхронизации (100 кГц), а информационные выходы счетчика времени соединены с первой группой входов интерфейса шины ЭВМ, таймер, вход синхронизации которого подключен к выходу делителя частоты импульсов устройства синхронизации (100 кГц), а информационные входы таймера соединены с первой группой выходов интерфейса шины ЭВМ, формирователь прерываний, первый вход которого соединен с выходом таймера, второй вход - с первым выходом интерфейса канала межблочного обмена, а выход формирователя прерываний соединен со входом интерфейса шины ЭВМ (INT А), регистр управления (RGC), группа входов которого соединена со второй группой выходов интерфейса шины ЭВМ, первый выход регистра управления соединен со входом пуска таймера, второй выход - со входом сброса счетчика времени (REC), третий выход - со вторым входом интерфейса канала межблочного обмена, регистр состояния (RGS), группа выходов которого соединена со второй группой входов интерфейса шины ЭВМ, а три входа регистра состояния соединены соответственно с первым и вторым выходами интерфейса канала межблочного обмена и выходом таймера, буферное запоминающее устройство, первая группа входов-выходов которого соединена со второй группой входов-выходов интерфейса шины ЭВМ, а вторая группа входов-выходов буферного запоминающего устройства соединена с группой входов-выходов интерфейса канала межблочного обмена. [Контроллер PCI-КМБО Инструкция по обслуживанию АГСК.468353.211 И11 2006 г.].
Это устройство обеспечивает обмен данными между управляющей ЭВМ и внешними устройствами в режиме реального времени по мультиплексной линии передачи информации с высокой точностью синхронизации обмена данными за счет использования встроенных таймера и счетчика времени. Недостатком устройства является отсутствие возможности регистрации единичных сбоев при отработках каналов передачи информации, особенно в случаях, когда сбои возникают не регулярно и редко (раз в несколько минут) и регистрация их обычными методами при помощи электронного осциллографа невозможна.
Цель изобретения - расширение функциональных возможностей устройства за счет введения функции, обеспечивающей регистрацию и анализ единичных сбоев при отработках каналов передачи информации.
Указанная цель достигается за счет того, что в контроллер канала межблочного обмена, содержащий интерфейс шины ЭВМ, первая группа входов-выходов которого подключена к шине ЭВМ, генератор тактовых импульсов, делитель частоты импульсов, вход которого подключен к выходу генератора тактовых импульсов, интерфейс канала межблочного обмена, первый вход которого соединен с выходом генератора тактовых импульсов, а две линии входов-выходов и две выходные линии интерфейса канала межблочного обмена подключены к каналу межблочного обмена, счетчик времени, счетный вход которого подключен к выходу делителя частоты импульсов, а информационные выходы счетчика времени соединены с первой группой входов интерфейса шины ЭВМ, таймер, вход синхронизации которого подключен к выходу делителя частоты импульсов, а информационные входы таймера соединены с первой группой выходов интерфейса шины ЭВМ, формирователь прерываний, первый вход которого соединен с выходом таймера, второй вход - с первым выходом интерфейса канала межблочного обмена, а выход - со входом интерфейса шины ЭВМ, регистр управления, группа входов которого соединена со второй группой выходов интерфейса шины ЭВМ, первый выход - со входом пуска таймера, второй выход - со входом сброса счетчика времени, третий выход - со вторым входом интерфейса канала межблочного обмена, регистр состояния, первый вход которого соединен с выходом таймера, второй и третий - соответственно с первым и вторым выходами интерфейса канала межблочного обмена, а группа выходов соединена со второй группой входов интерфейса шины ЭВМ, буферное запоминающее устройство, первая группа входов-выходов которого соединена со второй группой входов-выходов интерфейса шины ЭВМ, а вторая группа входов-выходов - с группой входов-выходов интерфейса канала межблочного обмена, введены элемент ИЛИ, первый вход которого подключен ко второму выходу интерфейса канала межблочного обмена, а второй вход - к четвертому выходу регистра управления, триггер, вход сброса которого подключен к выходу элемента ИЛИ, а вход установки - к пятому выходу регистра управления, ключ, управляющий вход которого подключен к выходу триггера, а информационный вход - ко второй выходной линии интерфейса канала межблочного обмена, и четыре контрольных выхода, первый, второй и третий из которых подключены соответственно к первой и второй линиям входов-выходов и к первой выходной линии интерфейса канала межблочного обмена, а четвертый контрольный выход подключен к выходу ключа.
На фиг.2 приведена блок-схема контроллера канала межблочного обмена, в которое входят
1 - шина ЭВМ;
2 - интерфейс шины ЭВМ;
3 - генератор тактовых импульсов;
4 - делитель частоты импульсов;
5 - счетчик времени;
6 - таймер;
7 - формирователь прерываний;
8 - регистр управления;
9 - регистр состояния;
10 - буферное запоминающее устройство;
11 - интерфейс канала межблочного обмена;
12 - элемент ИЛИ;
13 - ключ;
14 - триггер;
15 - канал межблочного обмена;
16...19 - контрольные выходы.
Интерфейс шины ЭВМ 2 через первую группу входов-выходов подключен к шине ЭВМ 1. Выход генератора тактовых импульсов 3 соединен с входом делителя частоты импульсов 4 и первым входом интерфейса канала межблочного обмена 11. Выход делителя частоты импульсов 4 соединен со счетным входом счетчика времени 5 и с входом синхронизации таймера 6. Информационные выходы счетчика времени 5 соединены с первой группой входов интерфейса шины ЭВМ 2, первая группа выходов которого соединена с информационными входами программируемого таймера 6. Выход программируемого таймера 6 соединен с первыми входами формирователя прерываний 7 и регистра состояния 9, второй вход которого соединен с первым выходом интерфейса канала межблочного обмена 11 и со вторым входом формирователя прерываний 7. Выход формирователя прерываний 7 подключен ко входу интерфейса шины ЭВМ 2. Группа входов регистра управления 8 соединена со второй группой выходов интерфейса шины ЭВМ 2, вторая группа входов которого соединена с группой выходов регистра состояния 9. Первый выход регистра управления 8 подключен ко входу пуска таймера 6, второй выход - ко входу сброса счетчика времени 5, третий выход - ко второму входу интерфейса канала межблочного обмена 11, четвертый выход - ко второму входу элемента ИЛИ 12, пятый выход - ко входу установки триггера 14. Второй выход интерфейса канала межблочного обмена 11 соединен с третьим входом регистра состояния 9 и с первым входом элемента ИЛИ 12. Первая группа входов-выходов буферного запоминающего устройства 10 соединена со второй группой входов-выходов интерфейса шины ЭВМ 2, а вторая группа входов-выходов буферного запоминающего устройства 10 соединена с группой входов-выходов интерфейса канала межблочного обмена 11. Выход элемента ИЛИ 12 соединен со входом сброса триггера 14, выход которого подключен к управляющему входу ключа 13. Две линии входов-выходов и две выходные линии интерфейса канала межблочного обмена 11 подключены к каналу межблочного обмена 15. Контрольные выходы 16, 17, 18 подключены соответственно к двум линиям входов-выходов и к первой выходной линии интерфейса канала межблочного обмена 11, а контрольный выход 19 - к выходу ключа 13, информационный вход которого подключен ко второй выходной линии интерфейса канала межблочного обмена 11.
Интерфейс шины ЭВМ 2 обеспечивает сопряжение контроллера с шиной ЭВМ и функционирует в соответствии с протоколом шины ЭВМ.
Генератор тактовых импульсов 3 вырабатывает импульсный сигнал, частота которого определяет частоту кодовых посылок канала межблочного обмена.
Делитель частоты импульсов 4 делит частоту импульсов генератора тактовых импульсов 3. Частота выходных импульсов делителя частоты импульсов 4 определяет дискретность счетчика времени 5 и программируемого таймера 6, что в итоге определяет точность синхронизации обмена данными.
Счетчик времени 5 формирует код времени с ценой младшего разряда, равной периоду выходных импульсов делителя частоты импульсов 4. Этот код поступает на интерфейс шины ЭВМ 2 и может программно считываться ЭВМ. Также программно счетчик времени 5 может устанавливаться в ноль сигналом, поступающим на вход сброса со второго выхода регистра управления 8.
Таймер 6 формирует импульсы с периодом следования, определяемым значением кода, поступающего на информационные входы таймера 6 с интерфейса шины ЭВМ 2, и устанавливаемым программно в ЭВМ. Дискретность установки периода следования импульсов таймера 6 равна периоду выходных импульсов делителя частоты импульсов 4, которые поступают на вход синхронизации таймера 6. Работа таймера управляется программно сигналом, поступающим на вход пуска таймера 6 с первого выхода регистра управления 8. Выходные импульсы таймера 6 поступают на первый вход формирователя прерываний 7, который формирует сигнал прерывания, поступающий через интерфейс шины ЭВМ 2 на линию прерывания шины ЭВМ, вызывая прерывание программы ЭВМ. Выходные импульсы таймера 6 также поступают на первый вход регистра состояния 9 для считывания признака прерывания ЭВМ.
На второй вход формирователя прерываний 7 поступают импульсы конца передачи информации с первого выхода интерфейса канала межблочного обмена 11, которые вызывают прерывание программы ЭВМ по окончании кадра передачи информации. Эти импульсы также поступают на второй вход регистра состояния 9 для считывания признака прерывания ЭВМ.
Регистр управления 8 обеспечивает управление работой таймера 6, сброс счетчика времени 5, управление интерфейсом канала межблочного обмена 11 и управление триггером 14. Управляется регистр управления 8 программно от ЭВМ.
Регистр состояния 9 обеспечивает чтение ЭВМ признаков прерываний (прерывание от таймера или прерывание конца обмена) и сигнала контроля передачи информации (контроль на четность и на встречную работу).
Буферное запоминающее устройство 10 предназначено для временного хранения передаваемой или принимаемой информации. Оно имеет два порта ввода-вывода. Первый порт обеспечивает обмен с ЭВМ через интерфейс шины ЭВМ 2, второй порт - с внешними устройствами через интерфейс канала межблочного обмена 11.
Интерфейс канала межблочного обмена 11 обеспечивает управление каналом межблочного обмена 15 и функционирует в соответствии с протоколом канала. Он также обеспечивает аппаратную проверку передаваемой и принимаемой информации на четность и встречную работу (соответствие передаваемых и принимаемых битов информации). При обнаружении ошибки на втором выходе интерфейса канала межблочного обмена 11 формируется единичный сигнал, поступающий в регистр состояния 9 для передачи его в ЭВМ и на вход элемента ИЛИ 12. Интерфейс канала межблочного обмена 11 связан с каналом межблочного обмена 15 четырьмя линиями: две линии входов-выходов предназначены для передачи данных (DATA-A и DATA-B), и две выходные линии предназначены для передачи синхросигналов (SYN-A, SYN-B). Такая структура сигналов канала межблочного обмена соответствует стандарту RS-485. Возможно использование канала межблочного обмена и других стандартов, при этом число линий связи между интерфейсом канала межблочного обмена 11 и каналом межблочного обмена 15 и, соответственно, число контрольных выходов может быть иным.
Элемент ИЛИ 12, ключ 13, триггер 14 и контрольные выходы 16...19 выполняют функцию, обеспечивающую регистрацию и анализ единичных сбоев при отработках каналов передачи информации.
Контроллер работает следующим образом.
Обмен информацией между ЭВМ и внешними устройствами осуществляется кадрами, состоящими из заголовка и данных. В заголовке передаются адрес внешнего устройства, число передаваемых слов и направление передачи. Перед передачей кадра в буферное запоминающее устройство 10 программно ЭВМ записывает заголовок кадра с данными при передаче информации от ЭВМ внешнему устройству или только заголовок при приеме информации. Передача кадра в канал межблочного обмена начинается с программной установки разряда ПУСК в регистре управления 8 (третий выход регистра управления 8). Если в заголовке кадра установлен признак приема информации от внешнего устройства, то принимаемые данные записываются в буферное запоминающее устройство 10.
Передача кадров может синхронизироваться импульсами таймера 6, запускающими формирователь прерываний 7, выходные импульсы которого через интерфейс шины ЭВМ 2 поступают в линию прерываний ЭВМ, или счетчиком времени 5, код которого может программно считываться ЭВМ.
После окончания передачи кадра на первом выходе интерфейса канала межблочного обмена 11 формируется импульс, запускающий формирователь прерываний 7, который вырабатывает импульс, поступающий через интерфейс шины ЭВМ 2 на линию прерывания шины ЭВМ, вызывая прерывание программы, и сигнализирующий ЭВМ о том, что можно считывать с буферного запоминающего устройства принятые данные или записывать новые данные для передачи. Для идентификации сигнала, вызвавшего прерывание (сигнал таймера или сигнал конца кадра), эти сигналы поступают в соответствующие разряды признаков регистра состояния 9 (первый и второй входы регистра состояния 9), который программно может считываться ЭВМ.
Регистрация и анализ единичных сбоев при отработках каналов передачи информации осуществляется при помощи электронного запоминающего осциллографа. Вход синхронизации осциллографа подключается к контрольному выходу 19, сигнальные входы - к контрольным выходам 16...18. Если осциллограф одноканальный, то сигнальный вход осциллографа подключается к контрольным выходам 16...18 поочередно. Осциллограф должен быть включен в режиме синхронизации NORMAL, характеризующемся тем, что при наличии входного синхронизирующего сигнала отображение осциллограмм синхронизируется входным сигналом, а при отсутствии запуск осциллографа отключается, а в памяти и на экране осциллографа отображаются осциллограммы последних поступивших сигналов.
Схема, обеспечивающая регистрацию и анализ единичных сбоев при отработках каналов передачи информации (элементы 12...14), работает следующим образом. В исходном состоянии триггер 14 находится в состоянии единица. В это состояние его можно установить, записав программно единицу в разряд пуска регистрации сбоев регистра управления 8 (пятый выход регистра управления 8). Единичный сигнал с выхода триггера 14 поступает на управляющий вход ключа 13 и разрешает прохождение сигнала через ключ 13 со второй выходной линии канала межблочного обмена 15 на контрольный выход 19, к которому подключен синхронизирующий вход осциллографа. Таким образом, осциллограф будет засинхронизирован импульсами синхронизации (SYN-B), и на экране осциллографа будут наблюдаться осциллограммы сигналов кадров передачи информации в линиях канала межблочного обмена 15. Если при передаче кадра информации интерфейс канала межблочного обмена 11 зафиксирует ошибку (сбой), на его втором выходе появится единичный сигнал, который через элемент ИЛИ 12 поступит на вход сброса триггера 14 и установит его в нулевое состояние. В результате выходной сигнал триггера 14, поступающий на управляющий вход ключа 13, запретит прохождение сигнала через ключ 13 с первой линии канала межблочного обмена 15 на контрольный выход 19 и осциллограф зафиксирует осциллограммы сигналов сбойного кадра в линиях канала межблочного обмена 15. Сигнальные входы осциллографа можно подключать и к другим цепям аппаратуры для фиксации в них осциллограмм сигналов в момент сбоя информации с целью анализа причин сбоя. Имеется также возможность программного управления триггером 14, сбрасывая его сигналом, поступающим с четвертого выхода регистра управления 8 через элемент ИЛИ 12 на вход сброса триггера 14. Это позволяет зафиксировать осциллограммы сигналов в линиях канала межблочного обмена 15 или в каких-либо других цепях при обнаружении сбоев программой ЭВМ, например приняты недостоверные данные.
Таким образом, введение в известное устройство элемента ИЛИ, триггера, ключа и контрольных выходов с указанными связями позволяет расширить функциональные возможности устройства за счет введения функции, обеспечивающей регистрацию и анализ единичных сбоев при отработках каналов передачи информации.
Класс G06F13/24 с использованием прерывания