Третий этап. Структурное исполнение.




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

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

Эвристическая ценовая функция ищется как

цена (cost) =

W1 * (цена физических объектов (entities)

+ W2 * (ожидаемая цена неиспользованных функций)

- W3 * (ожидаемая цена невыполненных функций, которые предполагается будут выполнены частями физических объектов)

- W4 * (число частей физических объектов)

+ W5 * (число невыполненных функций).

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

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

Четвертый терм (W4) приводит к использованию такого количества функциональных модулей, какое возможно. Например, если функция И выполнена схемой И в корпусе 7408, три части корпуса не используется. Но если функция И выполнена тремя НЕТ-И в корпусе 7400, только одна часть корпуса не используется. Оба корпуса имеют одинаковые параметры по цене, размеру и т.д. Таким образом, если не требуется реализации функции, оба варианта имеют одну и ту же цену. хотя первый вариант более предпочтителен.

Пятый терм (W5) позволяет выполнить больше функций.

Система выполнена в фазе структурного исполнения на языке СИ на уровне проектирования плат как цели проекта. Модульное исполнение легко приспосабливается к различным методам и критериям проектирования микросхем.

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

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

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

Пример

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

· 74194 - корпус сдвигового регистра, исполняющего функцию последовательно-параллельного преобразования;

· 7404 - корпус инверторов с 5-ю неиспользованными инверторами;

· 7420 - 4-вх. схема И с одной неиспользованной схемой И.

Фиг. 6 показывает схему, сгенерированную на этой фазе.

 

Пример проектирования

Проектирование начнем с обычного периферийного устройства - асинхронного однонаправленного приемопередатчика (ART) для демонстрации целей проектирования. Функции: последовательно-параллельное и обратное преобразование восьмибитных данных. В операторы включены следующие сигналы:

· один восьмибитный двунаправленный сигнал: DB 0-7 (разряды данных 0-7);

· четыре однобитных сигнала RD, WR, SI, CLK;

· три однобитных выходных сигнала SO (последовательный выход данных), TXRDY (передатчик готов), RXRDY (приемник готов).

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

Выбраны:

· 8-битовый трестабильный регистр (74244),

· четыре RS-триггера (2 схемы 7474),

· 8-битопвый сдвиговый регистр с параллельным входом (74166),

· 8-битовый сдвиговый регистр с параллельным выходом (74164),

· два 4-битовых счетчика (74161),

· две 4-входовые схемы И-НЕТ (7404),

· три инвертора (7404),

· двухвходовая схема И (7408).

...................................................

Поиск производился на суперкомпьюторе VAX 8200. Время компиляции - 1 сек. Время преобразования в функции - 24.3 сек. с весами для непокрытых операторов, равными двум. Время структурного исполнения - 4.9 сек.

Компиляция.

a)

1. input(WR,rising,t0),

2. value(DBi,VOi,t0), for i = 0 to 7,

3. store(O,,TXRDY,t0),

4. transmit(O,,SO,t0+1),

5. transmit(VOi,,SO,t0+2+i),

6. transmit(1,,SO,t0+10),

7. store(1,,SO,t0+11) and

8. store(1,,TXRDY,t0+11),

b)

09. value(SI, falling,t1),

10. value(SI,VIi,t1+1+i) for i= 0 to 7,

11. store(1,,RXRDY,t1+9).

c)

12. input(RD,O,t2), for t2 > t1 + 8,

13. transmit(VIi,,DBi,t2) (for i = 0 to 8, нет в тексте)

14. store(O,,RXRDY,t2).

 

Выводы

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

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

В будущем предполагается включить информацию об оптимальном соответствии между операторами и функциями (how long it will take to get) так, чтобы система могла также проектировать реальное время цифровых систем. Сделать это можно включением информации о задержках в библиотеки функций и физических модулей. Ясно то, что оптимизация будет более сложной.

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

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-08-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: