Научная статья на тему 'Система функционально-логического моделирования цифровой аппаратуры лад 4. 1'

Система функционально-логического моделирования цифровой аппаратуры лад 4. 1 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
155
50
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Афанасьев Д. В., Ковригин Б. Н.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Система функционально-логического моделирования цифровой аппаратуры лад 4. 1»

СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО МОДЕЛИРОВАНИЯ ЦИФРОВОЙ АППАРАТУРЫ

ЛАД 4.1

Д.В. Афанасьев, Б.Н. Ковригин

Возможности САПР во многом определяют производительность проектировщика и сроки разработки аппаратуры. Неотъемлемым этапом процесса проектирования цифровой аппаратуры является функционально-логическое моделирование разрабатываемых устройств. Система функционально-логического моделирования цифровой аппаратуры ЛАД 4.1 [1], разработанная на кафедре компьютерных систем и технологий Московского инженерно-физического института, предназначена для отработки проектируемых схем, построенных на произвольной элементной базе.

В состав системы ЛАД 4.1 входят следующие компоненты: редактор логических схем, редактор входных воздействий (тестов), подсистема логического моделирования, подсистема моделирования неисправностей, редактор базовых моделей элементов, генератор базовых моделей элементов (на основе параметризируемых модулей).

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

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

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

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

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

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

автоматизирующие в той или иной степени процесс построения и отладки новой базовой модели элемента и ориентированные на разработчиков цифровой аппаратуры. В системе ЛАД 4.1 данный

ный инструментарий представлен графическим редактором базовых моделей элементов [3], состав и отличительные особенности которого рассмотрим подробнее.

Редактор базовых моделей элементов включает в себя: редактор условного графического обозначения (УГО) элемента, редактор алгоритма функционирования элемента, подсистему задания динамических ограничений, редактор функциональной схемы элемента.

С целью сокращения времени выполнения ввода и редактирования условного графического обозначения элемента в соответствующем редакторе используется механизм автоматической генерации стандартного изображения УГО элемента. После генерации разработчик именует каждый из контактов на сгенерированном изображении.

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

Векторное представление модельных переменных (входных, выходных и внутренних), применяемое в системе ЛАД 4.1, предполагает обработку информации на шине как единого целого. Это позволяет ускорить вычисление нового состояния модели, поскольку операции преобразования данных в цифровых устройствах, как правило, легко проецируются на множество арифметико-логических команд аппаратуры, на которой производится моделирование. Разрядность шинных контактов модели разработчик указывает непосредственно в редакторе УГО элемента.

Редактор алгоритма функционирования элемента предназначен для ввода и редактирования описания работы модели элемента, представленного в алгоритмической форме. Значительные преимущества алгоритмическая форма задания модели дает при разработке моделей большинства последовательност-ных элементов (регистров, счетчиков и т.п.).

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

Отметим, что с ростом сложности алгоритма функционирования, его блок-схема приобретает все более значительные размеры, что затрудняет взаимодействие разработчика с ней на экране. В связи с этим в редактор включены средства, предоставляющие возможность использования подпрограмм с целью компактного представления блок-схем. Указанные средства удовлетворяют следующим сформулированным требованиям по обеспечению:

- представления в форме подпрограмм алгоритмов произвольной сложности;

- автономной отладки подпрограмм;

- многократного включения подпрограмм в схему алгоритма;

- произвольного уровня вложенности подпрограмм.

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

Присутствие этапов контроля и трансляции алгоритма в процессе формирования модели элемента приводит к тому, что разработчик должен помнить о необходимости выполнения этих этапов после каждой модификации алгоритма перед моделированием и затрачивать время на их выполнение.

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

Затраты времени разработчика на этапе контроля корректности ввода алгоритма, требующего сокращения времени выполнения, складываются из времени работы процедуры контроля и времени поиска и исправления ошибок задания алгоритма по выданной этой процедурой информации. Для сокращения указанных затрат в редакторе алгоритмов реализован принцип оперативного мониторинга ошибок. Настоящий принцип предполагает осуществление по-командной проверки действий разработчика по заданию алгоритма на предмет совершения им ошибок.

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

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

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

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

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

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

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

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

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

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

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

В генераторе моделей осуществляется параметризация (то есть допускается настройка пользователем для генерируемой модели) следующих модельных характеристик:

- операции, выполняемой моделью;

- множества контактов модели;

- разрядности данных, обрабатываемых моделью;

- задержек переключения сигналов в модели;

- динамических ограничений модели.

Система функционально-логического моделирования цифровой аппаратуры ЛАД 4.1 внедрена в учебный процесс ряда вузов страны. Как показала практика использования данной системы в МИФИ, ее применение позволяет качественно изменить учебный процесс, не только существенно сокращая сроки создания и аттестации моделей цифровых устройств, но и создавая принципиально новую форму накопления и обобщения инженерного опыта.

Список литературы

1. Ковригин Б.Н. и др. Интеллектуальная система функционально-логического моделирования цифровой аппаратуры ЛАД. // Под ред. Б.Н. Ковригина: Учебное пособие. - М.: МИФИ, 1997. - 84 с.

2. Ковригин Б.Н., Чепасов А.В. Лабораторная работа "Автоматизированная разработка контролирующих тестов для цифровых схем". // Под ред. Б.Н. Ковригина: Учебное пособие.

- М.: МИФИ, 1997. - 28 с.

3. Ковригин Б.Н., Афанасьев Д.В. Графическая среда создания и отладки базовых моделей цифровых схем. // Под ред. Б.Н. Ковригина: Учебное пособие. - М.: МИФИ, 1999.

- 60 с.

ПРОГРАММНОЕ САМОТЕСТИРОВАНИЕ РАСПРЕДЕЛЕННОЙ СТРУКТУРЫ ОБЪЕКТНЫХ КОНТРОЛЛЕРОВ ДЛЯ СИСТЕМ ЖЕЛЕЗНОДОРОЖНОЙ АВТОМАТИКИ

С.М. Ковалев, С.И. Родзин, А.Н. Шабельников

Управление железнодорожным транспортом предъявляет жесткие требования к обеспечению отказоустойчивости и безопасности систем автоматики [1]. Основной задачей при решении проблемы совершенствования электрической централизации (ЭЦ) является создание принципиально новых систем на современной микроэлектронной базе с высокой степенью отказоустойчивости и обеспечением абсолютной безопасности движения поездов. Это вызвано тем, что на смену морально устаревшей релейно-контактной аппаратуре пришли микроконтроллеры, уровень надежности которых не столь высок, как у реле первого класса надежности [2]. Особенно остро проблема отказоустойчивости возникает в распределенных системах, основные элементы которых размещаются вблизи напольного оборудования и в большей степени подвержены климатическим воздействиям и электромагнитным помехам [3].

В специальном решении (№6 от 22.03.2000 г.) расширенного заседания Коллегии МПС РФ были сформулированы требования к соответствующим техническим средствам, обеспечивающим надежность и безопасность систем железнодорожной автоматики. В соответствии с этим решением Ростовским филиалом ВНИИ автоматизированных систем, проводились научно-практические исследования по изучению возможности замены традиционной релейно-контактной аппаратуры на промышленные микроконтроллеры с принципиально новыми алгоритмами функционирования.

Структура распределенной системы электрической централизации имеет два иерархических уровня, связь между которыми осуществляется по высо-

конадежной полевой сети. Нижний уровень системы состоит из однотипных объектных контроллеров (ОК), размещаемых в непосредственной близости от объектов управления и контроля (рельсовая цепь, стрелка, сигнал и т.п.). ОК выполняет функции управления и контроля с обеспечением всех условий безопасности движения поездов, а также диагностики напольного оборудования. Верхний уровень системы состоит из резервированного компьютерного управляющего комплекса, расположенного в помещении дежурного по станции и выполняющего функции формирования управляющих команд, протоколирования, связи с высшими системами управления (диспетчерский центр, соседняя станция и т.п.) и функции человеко-машинного интерфейса [4].

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

В качестве управляющего комплекса может использоваться дублированный или резервируемый персональный компьютер. Основными функциями управляющего комплекса являются: проверка условий безопасности движения; ввод, выработка и передача управляющих воздействий объектному контроллеру; контроль за состоянием напольного оборудования; контроль следования подвижных единиц по станции; диагностика состояния линий связи и объектных контроллеров; отображение состояния напольного оборудования.

Канал связи диспетчерской централизации реализуется при наличии одного из следующих вариан-

i Надоели баннеры? Вы всегда можете отключить рекламу.