Смекни!
smekni.com

Автоматизированное проектирование электронных устройств (стр. 2 из 3)

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

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

Метод декомпозиции порождает серьезные проблемы при создании САПР:

определение уровней иерархии и базисов для них;

разработка математического обеспечения;

отображение из одного базиса в другой и др.

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

Структурный способ предусматривает описание элемента системы как совокупности взаимосвязанных элементов более низкого уровня, тем самым определяя базис этого уровня. Структурная форма иерархии проекта подразумевает процесс декомпозиции или разбиения проекта так, что на любом уровне, который выбирается для моделирования, модель системы строится как совокупность взаимосвязанных элементов, определенных для данного уровня. Здесь сразу же возникает вопрос: каким образом определяются эти элементы? Чаще всего они формируются с использованием элементов следующего, более низкого уровня. Таким образом, как показано на рис. 5, проект может быть представлен в виде дерева, причем различным уровням иерархии абстракций соответствуют свои уровни этого дерева. На уровне листьев дерева определяется поведение элементов проекта самого низкого уровня. Поведенческий способ предусматривает описание элемента системы по зависимостям вход/выход при помощи некоторой процедуры. Причем это описание определяется некоторой собственной процедурой, а не описывается с использованием других элементов. Поэтому поведенческая модель используется для описания элементов уровня листьев дерева проекта. Поскольку поведенческая модель некоторого проекта может существовать на любом уровне, различные части проекта могут иметь поведенческие описания на разных уровнях.


Рис. 5. Проект, представленный в виде полного (а) и неполного (б) дерева.

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

C точки зрения разработчика аппаратных средств можно выделить шесть основных уровней иерархии, представленных на рис. 6.


Рис. 6. Уровни иерархии представления электронных систем.

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

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

Таблица 1.Иерархия моделей

Уровень Структурные примитивы Формальный аппарат для поведенческого представления
Системный Центральные процессоры, коммутаторы, каналы, шины, запоминающие устройства и др. Системный анализ, теория игр, теория массового обслуживания и др.
Микросхемный Микропроцессоры, ЗУПВ, ПЗУ, УАПП, и др. Входные-выходные зависимости, ГСА
Регистровый Регистры, АЛУ, счетчики, мультиплексоры, дешифраторы Теория цифровых автоматов, таблицы истинности, ГСА
Вентильный Логические вентили, триггеры Алгебра логики, системы логических уравнений
Схемный Транзисторы, диоды, резисторы, конденсаторы Теория электрических цепей, системы линейных, нелинейных, дифференциальных уравнений
Кремниевый Геометрические объекты нет

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

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

Третий уровень-уровень логических вентилей, традиционно играет основную роль при проектировании цифровых схем и систем. Здесь используются такие базовые элементы, как логические вентили И, ИЛИ и НЕ и различные типы триггеров. Соединение этих примитивов позволяет обрабатывать комбинационные и последовательностные логические схемы. Формальный аппарат для поведенческого описания на этом уровне- булева алгебра.

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

Над регистровым уровнем находится уровень микросхем (или ИС). На микросхемном уровне в качестве элементов выступают такие компоненты, как микропроцессоры, устройства основной памяти, последовательные и параллельные порты и контроллеры прерываний. Хотя границы микросхем являются и границами моделей элементов, возможны и другие ситуации. Так, набор микросхем, которые совместно образуют одно функциональное устройство, можно представить как один элемент. Показательным примером здесь может служить моделирование разрядно - модульного процессора. Возможен и альтернативный вариант - когда элементы представляют отдельные секции одной микросхемы, например, на этапе анализа технического задания и декомпозиции. Главной особенностью здесь является то, что элементом представляется большой блок логики, где для длинных и зачастую сходящихся трактов обработки данных необходимо представлять зависимости выходов от входов. Как и в случае элементов нижележащих уровней, элементы микросхемного уровня не строятся иерархически из более простых примитивов, а представляют собой единые объекты-модели. Так, если нужно моделировать последовательный порт ввода-вывода (универсальный асинхронный приемопередатчик, УАПП), соответствующую модель не строят путем соединения более простых функциональных моделей таких блоков, как регистры и счетчики, здесь сам УАПП становится базовой моделью. Модели такого типа важны для изготовителей комплексного оборудования, которые приобретают микросхемы у других фирм-изготовителей, но не знают их внутренней структуры уровня логических вентилей, поскольку это является обычно секретом фирмы. Поведенческое описание модели микросхемного уровня строится на основе входной-выходной зависимости каждой конкретной ИС-алгоритма,реализуемого данной ИС. Верхний уровень - это системный уровень. В качестве элементов этого уровня используются процессор, память и коммутатор (шина) и др. Поведенческое описание на этом уровне включает такие основные данные и характеристики, как, например, показатель быстродействия процессора в миллионах команд в секунду (мегофлопсы) или пропускная способность тракта обработки данных (бит/с). Из табл. 1 и вышеизложенного видно, что структурные или поведенческие характеристики соседних уровней в определенной степени перекрываются. Например, и на регистровом и на микросхемном уровне может использоваться представление при помощи ГСА. Однако структурное представление для обоих уровней совершенно различно, поэтому они и разделяются. Микросхемный и системный уровень имеют по сути одни и те же элементы, однако они абсолютно различны по своим поведенческим характеристикам. Так, поведенческие модели уровня ИС позволяют вычислять детальные отдельные реакции в виде значений целых чисел и битов. А поведенческому представлению системного уровня свойственно серьезное ограничение - оно служит преимущественно для моделирования пропускной способности системы или определения стохастических параметров системы. На практике представление проекта на системном уровне используется главным образом для сравнительной оценки различных архитектур. В общем, следует использовать модели разного уровня, если требования либо поведенческого, либо структурного характера различны.