Система анализа топологических чертежей интегральных схем
При проектировании интегральных схем на уровне топологических чертежей возникает задача проверки правильности этих чертежей. Одним из способов ее решения является следующий: построить по заданному чертежу принципиальную электрическую схему, правильность которой проверить в системе моделирования.
Опишем принцип работы СП, которая строит по заданному описанию топологии эквивалентную ему электрическую схему. В качестве входного языка взято подмножество языка GAELIC - простого графического языка, используемого для описания элементов слоев в топологии интегральных схем и предназначенного для описания разрабатываемых проектов электронной технологии [88]. В языке используются операторы для описания топологических элементов посредством ссылок на простейшие геометрические фигуры. Выберем два типа таких фигур: прямоугольники и многоугольники со сторонами, параллельными осям координат.
Прямоугольник описывается с помощью формата
R(слой) x0, y0 : Dx1, Dy2;
где x0, у0 - - абсолютные координаты нижнего угла прямоугольника; Dx1, Dy2 — инкрементные значения, задающие координаты противоположного угла. Многоугольник записывается в следующем формате:
p(слой) x0, y0 : Dx1, Dy2, .., Dxn-1, Dyn;
где x0, у0 — абсолютные координаты начальной точки; Dxi, Dyi+1 — инкрементные значения, задающие координаты всех точек многоугольника (r = 1...n- 1).
Например, описанию
P(1)1,1 : 2, 2, 4, -2, 4, 2, 2, 2, -7, -1, -5, -3;
соответствует следующий многоугольник первого топологического слоя (рис.1.9).
В заданном языке описания топологии выделены семь топологических слоев, каждому из которых соответствует свой цвет на чертеже. Таким образом, введение слоев позволяет интерпретировать топологический чертеж как пространственную фигуру, спроектированную на плоскость.
Для наглядности изложения проанализируем фрагмент топологии ячейки хранения информации в регистре типа "очередь", которому соответствует следующее описание в GAKLIC-формате.
R(8) 12, 22 : 8, 9;
R(8) 28, 43 : 8, 9;
R(8) 42, 0 : 15, 13;
R(8) 77, 0 : 19, 12;
R(8) 93, 20 : 8, 10;
P(1) 61, 35 : 17, 9, -8, 11, -9, -20;
P(1) 47, 32 : 9, 11, -6, -12, -9, -21, 6, -2;
P(2) 33, 0 : 22, 22, 13, -9, 10, 1 4, -24, 14, -6, 23, -13, -10, 8, -18, 6, -25, -16, -11;;
Р(2) 18, 43 : 11, 2, 5, -51, 11, 18, -6, 18, -104, -11, -11;
Р(2) 68, 0 : 26, 22, 17, 21, -11, -15, -5, 4, -7, 10, -20, 22, -15, -10, 10, -17, 20, -27, -15, -10;
Р(2) 2, 21 : 11, 3, 6, -3, 11, 11, -11, -3, -6, 3, -11, -11;
R(4) 13, 0 : 5, 64;
R(4) 28, 0 : 4, 15, 2, 49, -6, -8, 2, -37, -2, -19;
Р(4) 59, 3 : -11, 15, -9, -5, 5, -14, 15, 4;
Р(4) 47, 30 : 10, 14, -6, 9, -11, -10, 7, -3;
Р(4) 56, 10 : 11, 21, -4, -10, -7, -11;
Р(4) 60, 34 : 22, 11, -11, 8, -11, -19;
Р(4) 79, 3 : 19, 4, -15, 14, -10, -5, 6, -13;
Р(4) 102, 0 : 5, 20, -8, 44, -7, -28, 3, -21, 7, -15;
R(7) 37, 15 : 8, 9;
R(7) 71, 14 : 9, 9;
R(7) 47, 28 : 9, 7;
R(7) 75, 35 : 10, 10;
R(6) 0, 0 : 112, 9;
R(6) 0, 22 : 14, 9;
Р(6) 18, 22 : 61, 33, 9, -94, -20;
R(6) 81, 22 : 31, 9;
R(6) 0, 44 : 112, 9;
R(6) 0, 55 : 112, 9;
R(6) 0, 11 : 112, 9;
R(5) 6, 25 : 3, 3;
R(5) 23, 25 : 3, 3;
R(5) 22, 47 : 3, 3; (5) 37, 3 : 3, 3;
R(5) 38, 25 : 3, 3;
R(5) 39, 58 : 5, 3;
R(5) 57, 58 : 7, 3;
R(5) 60, 14 : 3, 3;
R(5) 72, 3 : 3, 3;
|
R(5) 104, 36 : 3, 3;
********************
Этому описанию соответствует следующий фрагмент топологии, показанный на рис. 1.10.
Соответствующая данной топологии принципиальная электрическая схема показана на рис. 1.11.
Рис.1.10. Топологический чертеж ячейки хранения информации га регистре типа "очередь"
Описание электрической схемы в виде нижеприведенной таблицы является результатом работы системы.
Рис.1.11.
Номер транзистора | Тип транзистора | Соединения | |||||
Исток | Сток | Затвор | W | L | |||
T1 T2 T3 T4 T5 T6 T7 T8 | 0-42 0-42 0-41 0-42 0-41 0-42 0-42 0-42 | 1 004 1 001 1 002 1 003 1 002 1 003 | 1 008 1 007 1 006 1 005 | ||||
База знаний этой системы сформирована в результате взаимодействия экспертов с инженерами знаний и представляет собой модель предметной области, которая может быть не полностью формализована, но включает в себя основные понятия (компоненты), их свойства (характеристики). множество отношений, семантику этих отношений и множество продукций - эвристических правил, задающих процедурные знания в анализируемой предметной области. Эти знания описывают особенности построения топологических чертежей интегральных схем и правила построения электрических схем по топологии.
В заданном языке описания топологии выделены семь топологических слоев. В соответствии с этим выделено такое же количество базовых типов компонент для описания многоугольников:
НАГР окна под легирование нагрузочных транзисторов;
ДИФ слой диффузии;
ПОЛИКР слой поликремния;
АЛ+КОН окна под контакт алюминия к диффузии или поликремнию;
АЛЮМ слой металла (алюминия);
ПОЛИ+КОН окна под контакт поликремния и диффузии;
УПРАВ окна под легирование управляющих транзисторов.
У выделенных типов компонент задана характеристика v1 — размеры площади на топологическом чертеже, занимаемой данной компонентой и вычисляемой по координатам вершин многоугольника.
Над v1 определено несколько операций. Приведем для примера некоторые из них:
DOM(v1i, v1j ) — нахождение общей части двух многоугольников;
CON(v1i,v1j ) — логическая операция, проверяющая, пересекаются ли заданные многоугольники;
INSERT(v1i, v1j ) — логическая операция проверки: вложен ли многоугольник n1i в v1j;
OST(v1i, v1j ) — вычисление разности от пересечения двух многоугольников.
Все операции над компонентами реализованы в виде процедур на языке программирования ПЛ/1.
В результате лексического анализа исходное описание топологии, приведенное выше, преобразуется во множество компонент следующих типов: УПРАВ, УПРАВ, УПРАВ, УПРАВ, УПРАВ, УПРАВ, НАГР, НАГР, ДИФ, ДИФ, ДИФ, ДИФ, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИКР, ПОЛИ+КОН, ПОЛИ+КОН. ПОЛИ+КОН, ПОЛИ+КОН, АЛЮМ, АЛЮМ, АЛЮМ, ЛЛЮМ, АЛЮМ, АЛЮМ, АЛЮМ, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН, АЛ+КОН.
Основной структурной компонентой системы является ТРАНЗИСТОР, у которого выделены следующие характеристики: тип транзистора (нагрузочный или управляющий), исток, сток, затвор (узлы будущей электрической схемы), L — длина транзистора, W — ширина, v1 — площадка, занимаемая транзистором на топологическом чертеже.
Из таблицы видно, что для построения электрической схемы по топологическому чертежу необходимо:
v) выделить транзисторы на чертеже, их типы и размеры (W, L);
w) определить для каждого транзистора исток, сток и затвор;
x) определить внутренние и внешние узлы в схеме;
y) выделить из внешних узлы питания и земли.
Опишем для примера группу правил для выделения транзисторов на чертеже.
Правило 20. Если многоугольник диффузионного слоя (ДИФ) пересекается с многоугольником поликремниевого слоя (ПОЛИКР), то область пересечения этих слоев образует ТРАНЗИСТОР, у которого можно вычислить длину (L) и ширину (W), как функции от размеров пересекающихся многоугольников.
Правило 21. Если транзистор пересекается с многоугольником слоя ПОЛИ+КОН, но не вложен в него, то это ТРАНЗИСТОР с обеднением (на схеме исток и затвор этого ТРАНЗИСТОРА являются одним узлом).
Правило 22. Если транзистор вложен в многоугольник слоя ПОЛИ+КОН, то область их пересечения образует поликремниевый контакт (НОЛИ+КОН).
Правило 23. Если ТРАНЗИСТ'ОР вложен в прямоугольник слоя УНРЛ13 то он имеет тип управляющего (0-42).
Правило 24. Если ТРАНЗИСТОР вложен в прямоугольник слоя НАГР, то данный транзистор имеет вид нагрузочного (0-41).
Применяя правила 20-24 к исходному множеству компонент для приведенного выше примера из топологического чертежа, можно выделить восемь транзисторов и три поликремниевых контакта (рис. 1.12).
Рис.1.12. Проекция диффузионного и поликремниевого слоев топологического чертежа ячейки хранения информации в регистре типа "очередь"
Аналогичные правила были сформулированы для пп. б)-г). На основе этих правил была написана система продукций, которая насчитывает около 50 правил и составляет базу знаний системы анализа топологических чертежей интегральных схем.
Описываемая система была построена с использованием технологического пакета СКИП. Входными данными для системы является описание топологии на языке GAELIC - - указание координат геометрических фигур и их слоев. Исходное состояние базы данных задается текстом (строкой символов), который преобразуется в представлении множества геометрических фигур (многоугольников). Это множество преобразуется с помощью продукций к виду, из которого генерируется текст на языке описания электрических схем. Таким образом, для представления информации о задаче необходимо использовать два типа баз данных для представления: строк (Б1) и множества (Б2).
Функциональная схема системы представлена на рис.1.13.
Выбранные модули технологического пакета настраиваются для использования в заданной предметной области. Множество правил эксперта переписывается в множество продукций на языке пакета ПРОЗА [8]. Так, описанные выше правила примут вид:
20: <ДИФ ... ПОЛИКР>/соn(vl(1),vl(2))=l & ost (vl (1) , vl (2))=1
® <(КОМП(1), vl = ost1) + (KOMП(l), vl = ost2) + (TPAH3,vl = dom(vl(l), vl(2))) + КОМП(2))>;
21: <TPAH3 ... ПОЛИ+KOH>/insert(vl(l), vl(2)) /= 1 & con(vl(l), vl(2)) /= 1
® <КОМП(1), com=l) + КОМП(2)>;
22: <ТРАНЗ ... ПОЛИ+KOH>/insert(vl(l), vl(2)) = 1 ® <КОМП(2), vl = vl(l)>;
23: <ТРАНЗ ... УПPAB>/insert(vl(l), vl(2)) = 1 ® <КОМП(1), ТИП = "042">;
23: <ТРАНЗ ... HAГP>/insert(vl(l), vl(2)) = 1 ® <КОМП(1)б ТИП = "041">;
Рис.1.13. Структура системы анализa топологических чертежей интегральных схем
Настройка технологического пакета СКИП на заданную предметную область потребовала около двух человеко-месяцев. Общий объем сгенерированной системы составляет около 3 000 операторов IIJI/1.
Дата добавления: 2016-03-05; просмотров: 799;