На правах рекламы:
ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Авторитетность издания

ВАК - К1
RSCI, ядро РИНЦ

Добавить в закладки

Следующий номер на сайте

2
Ожидается:
16 Июня 2024

САПР "Интеллект"- инструмент для сквозной автоматизации процесса синтеза цифровых схем

Статья опубликована в выпуске журнала № 4 за 1991 год.
Аннотация:
Abstract:
Автор: Козюминский В.Д. () -
Ключевое слово:
Ключевое слово:
Количество просмотров: 9903
Версия для печати

Размер шрифта:       Шрифт:

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

Процесс , синтеза в САПР "Интеллект" (рис. 1) условно можно разбить на три этапа: архитектурный, функционально- логический и структурно-логический.

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

-    ограничения на сложность схемы проектируемого устройства S ;

-    ограничения на время реализации алгоритмов обработки данных Т i=l,L, где L - число ал- горитмов обработки или управления, реализуе мых схемой устройства;

-    точность обработки данных 8 , i — I,L;

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

-    типы конструктивов D, применяемые для технической реализации схемы ОП;

-    критерий оптимизации схемы ОП К (при К — S синтезируется схема минимальной

am лил                        ' '           _.

сложности, а при К =Т . - максимального быстродействия с учетом выполнения других требований ТЗ).

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

Архитектурный синтез. Выполняется в том случае, если исходные данные на синтез содержат описание алгоритмов обработки информации А , i = l, L.

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

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

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

В САПР "Интеллект" эта проблема решается путем оценки граничных вариантов структурных решений в классе анализируемых архитектур с учетом граничных преобразований ал-

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

Основными граничными решениями для некоторой архитектуры являются два (рис. 2): решение, обеспечивающее минимум сложности схемы в классе данной архитектуры (точка S^J, и решение, обеспечивающее минимальное время реализации алгоритма (точка Т ). Учитывая, что нехудшие решения для используемых критериев оптимизации находятся на левой нижней границе (ЛНГ) области возможных решений (ОВР), то точке S соответствует время Т , а точке Т , - сложность S

тгшк                                  mm                                              max

Рис. 2.

На основе анализа положения граничных точек архитектурных решений в плоскости параметров 5 и Т для последующего синтеза схем отбираются те архитектуры, которые обеспечивают выполнение требований ТЗ. Как правило, граничные точки этих архитектур либо попадают в область допустимых решений (ОДР), либо находятся на прямой, проходящей через эту область (в последнем случае синтез решения, удовлетворяющего требованиям ТЗ, не гарантируется, т.к. ЛНГ для архитектуры может быть как выпуклой, так и вогнутой). Для последующего синтеза могут быть отобраны архитектуры Apxl и Арх2, причем для Лрх2 не гарантируется получение схемного решения, удовлетворяющего ТЗ. При К = Т лредпоч-тительнее Apxl. При К =S для Арх2 тре-

_                       г                     г              опт mln "~             г           г

буется проверка неграничных структурных решений (генерация точки "а"), т.к. в случае выпуклой ЛНГ для Арх2 эта архитектура даст лучшее решение по данному критерию по сравнению с Apxl.

Значения параметров структурных решений S и Т могут рассчитываться на основе критериальных моделей архитектур Ак и критериальных моделей компонентов К . Однако для получения более точных оценок на этапе архитектурного синтеза требуется осуществление

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

В целом САПР "Интеллект" на этапе архитектурного синтеза решает следующие задачи: расчет форматов с учетом требований к точности форматов обрабатываемых данных и выбор разрядной сетки узлов обработки, передачи и хранения данных; верификация алгоритма путем его функционального моделирования; минимизация числа переменных и расчет емкости ОЗУ и ПЗУ; анализ связности алгоритма по данным; анализ достижимости всех операторных вершин алгоритма и корректности переходов; преобразование алгоритма с целью изменения последовательности выполнения операций; определение типа архитектуры для реализации алгоритма с учетом S , Т и К ; выбор

О „ О г опт

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

Функционально- логический синтез. Выполняется по поведенческому описанию ОП с учетом требований ТЗ к проектируемому устройству и по его отдельным компонентам, полученным в результате архитектурного синтеза. В общем случае поведенческое описание включает описание структуры и алгоритма ее функционирования (любая из этих составляющих в частном случае может отсутствовать). Если поведенческое описание является входным для системы проектирования, то оно может быть параметризованным, при этом 1-е компоненты структуры представляются своими соответствующими параметризованными моделями М..

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

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

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

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

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

Компоненты структуры ОП в общем случае могут быть трех типов: алгоритмического (К ), поведенческого (К ) и структурного (Л" ). Для синтеза компонентов алгоритмического типа, как правило, реализуется этап архитектурного синтеза (т.к. эти компоненты описаны в виде параметризованных алгоритмов обработки данных или алгоритмов выполнения отдельных операций). В качестве требований ТЗ при синтезе компонентов любого типа используются результаты, полученные на предыдущем этапе, -тем самым реализуется нисходящий процесс иерархического проектирования. При этом если в процессе синтеза компонента будет установлено, что нельзя синтезировать компонент с требуемыми параметрами, то осуществляется возврат к предыдущему уровню проектирования для решения задачи перераспределения баланса требований с учетом полученных на нижнем этапе уточненных характеристик компонентов.

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

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

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

Рис 3

до представления схемы компонентами некоторого нижнего ранга г . В ходе процесса детализации для ряда схем решаются и задачи логического синтеза, например задача оптимального синтеза дешифратора на п входов на основе дешифраторов на т<п входов, или задача синтеза и-входового элемента И-НЕ из элементов с меньшим числом входов. Обычно подобные задачи решаются специальными программами логического синтеза. В САПР "Интеллект" эти

задачи решаются средствами транслятора с языка описания ОП.

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

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

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

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

К основным особенностям системы относятся следующие.

• Для описания ОП на всех этапах синтеза (кроме нижних этапов конструкторского проектирования) используется специально разработанный язык ДИСТАЛ (ДИскретные СТрукту-ры и Алгоритмы). В отличие от широко разрекламированного языка VHDL язык ДИСТАЛ решает задачи не только моделирования, но и синтеза, причем задачи синтеза ставились в основу при разработке языка ДИСТАЛ. Транслятор синтезирующего типа позволил на этапе трансляции решать множество задач структурного и логического синтеза трансформацией ДИСТАЛ-описаниЙ ОП и компонентов (в этом случае отпадает необходимость » использовании программ логического синтеза). Язык ДИСТАЛ разрабатывался с ориентацией на использование кириллицы, но может быть адап-тирован к любому языку пользователя.

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

•        База компонентов содержит иерархические параметризованные ДИСТАЛ-описания функ циональных (Ф) и структурных (С) компонен тов и архитектур и их критериальные модели. Компонентами нижнего (нулевого) ранга явля ются элементы технологических базисов, кото рых может быть несколько.

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

•        Система является открытой по составу про ектных процедур, маршрутам проектирования и базе компонент.

САПР "Интеллект" может сопрягаться с различными системами логического моделиро вания и конструкторского проектирования на уровне их входных форматов.

В настоящее время, система реализована на технических средствах ЕС ЭВМ. Вариант системы, обеспечивающий функционально-логический и структурно-логический синтез, реализован на ПЭВМ типа PC/AT 286. К началу 1992 г. будет реализована полная версия системы для ПЭВМ.


Постоянный адрес статьи:
http://swsys.ru/index.php?page=article&id=1340
Версия для печати
Статья опубликована в выпуске журнала № 4 за 1991 год.

Возможно, Вас заинтересуют следующие статьи схожих тематик: