Смекни!
smekni.com

Разработка функциональной цифровой ячейки (стр. 1 из 8)

Содержание

Раздел 1. Простановка номеров цепей в соответствие с техническим заданием

Раздел 2. Компоновка типовых элементов конструкции

Раздел 3. Размещение микросхем на коммутационных платах

Раздел 4. Минимизация длины связей между контактами разъема и контактами внешних цепей

Раздел 5. Трассировка

Заключение


Раздел 1. Простановка номеров цепей в соответствие с техническим заданием

Первым этапом работы является простановка номеров цепей на принципиальной схеме в соответствие с техническим заданием. В нашем случае цепи представляют собой выводы, соединенные с общей шиной, которая, в свою очередь соединена с разъемом. Всего на схеме 18 элементов. В соответствие с техническим заданием они представляют собой 6 отдельных микросхем К155ЛА4 в корпусе DIP14 по 3 "3И-НЕ" (3 секции) с 4 выводами (3 входа и один инверсный выход). Поэтому был создан элемент: символ элемента в Symbol Editor, посадочное место и тип корпуса элемента (в Pattern Editor), затем символ и посадочное место были объединены в компонент и сохранены в библиотеке с помощью Library Executive [1, 2]. В редакторе Schematic работают с принципиальной схемой. Вместо компонента на шаблоне ставится созданный элемент. Используется Place Port. Стирают цепи и номера цепей, затем элемент соединяется проводом c шиной посредством Place Wire. Затем назначается номер новых цепей (Place Wire+ Port Properties/Net Name). Номера цепей, подходящих к разъему, назначаются произвольно (из списка номеров в техническом задании). Результатом является исходная функционально-логическая схема проектируемого узла (задание на курсовой проект) (рис.1).


Рис.1. Функционально-логическая схема проектируемого узла.


Раздел 2. Компоновка типовых элементов конструкции

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

На этапе компоновки могут решаться задачи типизации, покрытия и разрезания.

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

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

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

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

Алгоритм разрезания схемы состоит из двух этапов:

1) предварительное разрезание (быстрое получение результата)

2) окончательная компоновка (улучшение результата итерационным методом).

Последовательный алгоритм предварительной компоновки:

1. Построение матрицы смежности взвешенного графа схемы A.

2. Для каждого элемента рассчитывается его суммарная тяга к остальным элементам.

3. Выбирается элемент, имеющий максимальную локальную степень.

4. Выбранный элемент помечается меткой m. Вначале выполнения алгоритма m=0.

5. Выбираются все элементы, связанные с выбранными ранее, но непомеченные метками.

6. Увеличивается метка m=m+1. Помечаются выбранные в блоке 5 элементы метками m.

7. Выполняются блоки 5, 6, 7 пока не будут помечены все элементы.

8. Выбирается очередной модуль верхнего уровня М j для компоновки.

9. Компонуются в M j элементы с младшими метками, не вошедшие в компоновку ранее.

10. Компоновка в М j заканчивается, когда модуль полностью заполнен.

11. Продолжается выполнение блоков 8-11, пока не будут заполнены

все модули или пока не будет исчерпан список элементов.

12. Выход из алгоритма.

Итерационный алгоритм улучшения компоновки:

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

Пусть элемент Ei установлен в модуль Ms, а элемент Ej установлен в модуль Mt.

Рассчитываем показатель качества перестановки:

Rij =R внш it +R внш jt - R внт i - R внт j - 2 Rij, (1) где

R внш it - количество связей Ei с элементами в Mt, R внш jt - количество связей Ej с элементами в Ms, R внт i - количество связей Ei внутри модуля, R внт j - количество связей Ej внутри модуля.

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

Алгоритм:

1. Ввод начальной компоновки.

2. Расчет матриц связности Cs и Cst и заполнение их.

3. Расчет матрицы эффективности перестановок Rij для всех пар модулей.

4. Выбирается из этих матриц максимальный элемент.

5. Проверка: если показатель качества перестановок отрицательный, переход к блоку 7, иначе к блоку 6.

6. Перестановка элементов Ei и Ej и возврат к блоку 2.

7. Выход из алгоритма. Дальнейшее улучшение с помощью данного алгоритма невозможно [3].

Таким образом, на этапе компоновки 18 элементов сортируются по 6 микросхемам (в каждой - по 3 элемента) оптимальным образом. Для сортировки используем программу PROG (18 элементов, 6 блоков - максимальные значения входных данных для компоновки). Алгоритм работы в этой программе:

1) Сначала надо составить (заполнить) симметричную матрицу смежности (матрицу связей). Ее размер 18×18 (по количеству элементов). Главная диагональ - нулевая. Для каждого элемента электрической принципиальной схемы (начиная с первого) ищут элементы (последовательно перебирают оставшиеся 17), у которых повторяются номера связей с этим элементом (которые с ним связаны). Соответственно, на пересечении этих элементов в матрице ставится цифра (от 1 до 4, если повторения есть; 0, если повторений нет), которая говорит о количестве одинаковых цепей (количество связей) в двух элементах. Заполнив матрицу, смотрят предварительную схему соединений (F2). В ней 37 внешних связей и 8 внутренних. Таким образом, на данном этапе используют последовательный алгоритм предварительной компоновки, предварительное разрезание (быстрое получение результата) в автоматическом режиме. Полученная матрица:

Таблица 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 0 0 0 0 0 0 1 3 0 1 0 0 0 0 0 0 1 1
2 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 1 0
3 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 0 0 0
4 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0
5 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 1 1 1 0 1 0 0 0 1 0 0 0 0 0 1 0
7 1 0 1 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0
8 3 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1
9 0 1 0 0 0 0 0 0 0 1 0 0 1 2 2 0 0 0
10 1 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0
11 0 1 0 1 0 1 0 0 0 1 0 0 0 0 1 0 0 0
12 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1
13 0 1 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0
14 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 1
15 0 1 0 0 0 0 0 0 2 0 1 0 1 0 0 0 0 0
16 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 1
17 1 1 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0
18 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 1 0 0

От заполнения матрицы смежности переходят к весовым коэффициентам. Весовые коэффициенты: