Конструктивные особенности разработки библиотеки топологий цифровых логических ячеек

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 02.02.2019
Размер файла 540,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

УДК 621.375.9

Омский государственный Технический университет

КОНСТРУИВНЫЕ ОСОБЕННОСТИ РАЗРАБОТКИ БИБЛИОТЕКИ ТОПОЛОГИЙ ЦИФРОВЫХ ЛОГИЧЕСКИХ ЯЧЕЕК НА ПРИМЕРЕ ТЕХПРОЦЕССА 180НМ КМОП

А.В. Косых

С.А. Завьялов

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

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

-время перехода с низкого в высокое состояние;

-время перехода в высокого в низкое состояние;

-внутреннюю задержку;

-емкость каждого входа;

-выходное сопротивление;

-чувствительность к переходу;

II. Постановка задачи

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

Довольно широко получило распространение планирование топологии элементов с помощью путей Эйлера. Для повышения плотности и лучшего заполнения кристалла лучше всего располагать n-МОП и p-МОП транзисторы в виде непрерывной цепочки соединенными стоками или истоками между собой соответственно. Рассматриваемый подход требует в обоих карманах одной области диффузии. Использование данной реализации дает множество топологических решений. Расположение элементов, сигнальных проводников является относительным. В зависимости необходимого расположения входных и выходных клемм реализация топологии одной и той же схемы может отличаться. К достоинствам применяемого метода можно отнести довольно хорошее заполнение на кристалле, легкость автоматизации процесса трассировки[1].

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

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

1. Front-end описание ячейки в каком либо виде (Schematic, Verilog, VHDL). Содержит несколько файлов в котором находятся лучшие, худшие и типичные характеристики ячейки.

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

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

Основные достоинства:

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

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

3. Использование таблиц с задержками и подобной информацией позволяет сократить время моделирования схемы с нескольких недель или дней до нескольких часов по сравнению с транзисторным моделированием.

Однако у этой технологии есть и ряд минусов:

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

2. За счет аппроксимации временных параметров, занесенных в таблицы библиотеки, результаты моделирования ИС получаются приблизительными и могут быть использованы лишь на стадии проектирования схемы.

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

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

Использование параметризованных элементов подразумевает стандартизацию разработки на уровне логического вентиля. Для этого библиотека должна содержать целый набор логических элементов. К набору основных логических операций (AND, NAND, OR, NOR, XOR, XNOR, INVERTOR итп) могут быть добавлены более сложные функции, мультиплексор, сумматор, счетчик, кодеры, декодеры составленные из готовых логических операций или собранные на транзисторном уровне, удовлетворяющие правилам библиотеки (одинаковость высот элементов). Технологию стандартных ячеек можно комбинировать уже с другими подходами, например вставляя в проект нестандартные модули, аналоговые блоки.

III. Топологическая реализация

На рис. 1 приведен пример реализации топологии с помощью метода стандартных ячеек. Разно широкие ячейки объединены в строки, также установлен дополнительный модуль. Из рисунка видно что немаловажной задачей становится размещение межсоединений с минимизацией служебных издержек. В технологиях с малым количеством слоев металла возможно внедрение трассировочных каналов. Также это необходимо в некоторых случаях, когда влияние шины данных или межсоединений недопустимо на соседние ячейки. Для перехода из ряда в ряд используется пустые ячейки. Современные процессы и технологические нормы позволяют использовать 5-6 и более слоев металлизации. В таком случае соединение ячеек возможно произвести над самими ячейками, тем самым изрядно сэкономить занимаемую площадь. Плотность структур может достигать более 90%, то есть весь кристалл заполнен элементами и лишь небольшая доля потерь приходится на незанятое пространство для межсоединений или подключений к блоку.

Рис. 1. пример структуры с использованием стандартных ячеек

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

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

Шины питания проложены аналогичным путем, количество металлов для соединений ограничено четырем. К схеме предъявлены требования минимизации занимаемой площади, тем самым удалось приблизиться к плотности 86%. Входная и выходная шина данных расположена справа от блока, отчасти там же есть возможность при оптимизации межсоединений получить дополнительный выигрыш по плотности. Практически все сигналы проведены над ячейками. Занимаемая площадь первого варианта реализации 158х102 микрон (занимаемая площадь 0,0162 мм2) , для второго варианта 120х60 микрон (занимаемая площадь 0,0072 мм2). Полученные результаты дают разницу в 2,22 раза в занимаемой площади. Решением в пользу того или иного варианта реализации должны являться технические требования к проекту, в том числе: занимаемая площадь, таблица задержек прохождения сигналов через блок, предельно допустимые воздействия от соседних элементов, времена переключений, максимальное количество возможно задействованных слоев металлизации. Фактически во многих исследованиях было доказано, что в современных условиях при создании сложных, несимметричных проектов с огромным количеством элементов автоматизированных подход успешно соперничает с ручной разработкой. Инструменты синтеза собирают информацию о соединениях, вычисляют наиболее оптимальные пути прохождения сигналов, имеют дополнительные функции оптимизации по некоторым параметрам.

Рис. 2. Реализация топологии с использованием трассировочных каналов

Шины питания проложены аналогичным путем, количество металлов для соединений ограничено четырем. К схеме предъявлены требования минимизации занимаемой площади, тем самым удалось приблизиться к плотности 86%. Входная и выходная шина данных расположена справа от блока, отчасти там же есть возможность при оптимизации межсоединений получить дополнительный выигрыш по плотности. Практически все сигналы проведены над ячейками. Занимаемая площадь первого варианта реализации 158х102 микрон (занимаемая площадь 0,0162 мм2) , для второго варианта 120х60 микрон (занимаемая площадь 0,0072 мм2). Полученные результаты дают разницу в 2,22 раза в занимаемой площади. Решением в пользу того или иного варианта реализации должны являться технические требования к проекту, в том числе: занимаемая площадь, таблица задержек прохождения сигналов через блок, предельно допустимые воздействия от соседних элементов, времена переключений, максимальное количество возможно задействованных слоев металлизации. Фактически во многих исследованиях было доказано, что в современных условиях при создании сложных, несимметричных проектов с огромным количеством элементов автоматизированных подход успешно соперничает с ручной разработкой. Инструменты синтеза собирают информацию о соединениях, вычисляют наиболее оптимальные пути прохождения сигналов, имеют дополнительные функции оптимизации по некоторым параметрам.

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

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

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

Рис. 3. Топология инвертора

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

Рис. 4. Топология ячейки NAND

Логический элемент выполнен по 180нм КМОП технологии. Для полноты понимания на рисунке приведены три варианта реализации с разными параметрами. Третий вариант реализации занимает практически полностью стандартную ячейку и является потребляемым из всех, но при этом имеет самый мощный выход. Стратегия трассировки уже была рассмотрена в рамках статьи, затворы транзисторов соединены попарно и являются тремя входами устройства, поликремниевые дорожки проходят вертикально. Входы/выходы расположены в теле ячейки, что дает возможность использовать элемент как в варианте с трассировочными каналами так и для трассировки над элементом. Для подключения к входам ячейки можно подвести соединительные дорожки с любой из четырех сторон, это реализовано с помощью продуманного расположения переходных отверстий с первого на второй металлы. Выход можно подключить к дорожке в любом удобном для конкретного случая месте поставив переходное отверстие либо подключить следующую ячейку первым металлом. Шины питания расположены сверху и снизу ячейки, имеют с ней равную ширину, при установке без зазора со следующим элементом питание будет подключено автоматически. Архитектуру, наложенную на все элементы данного типа можно представить в виде чертежа, представленного на рис. 5. библиотечный цифровой конструктивный

Рис. 5. Эскиз стандартизированных ячеек

В случае меньшего или большего количества входных клемм расстояния между ними являются неизменными. Сформированные во втором слое металла могут быть подключены для рассматриваемого примера шиной из 3 дорожек с любой из сторон с минимальными допусками согласно технической документации к техпроцессу. Расстояние до любого из краев входных\выходных клемм является минимальным зазором между дорожками металла. Важной особенностью следует заметить два слоя Nselect и Pselect, в которых разрешено располагать транзисторы соответствующего типа. Геометрически данные слоя растянуты во всю ширину ячейки, что дает возможность при установке вплотную ячеек получить непрерывную диффузионную полоску с расположенными внутри транзисторами. В добавок зона Pselect окружена N-well карманом в котором находятся p-МОП транзисторы с контактами к подложке.

Выводы

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

Литература

1. Alan Hastings The art of analog layout // Prentice - Hall - 2001. - 735 с.

2. Dan Clein CMOS IC layout. Concepts, Methodologies, and Tools // Newnes, 2000, 281 pages.

Аннотация

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

Ключевые слова: CMOS, интегральная схема, топология ячейки, стандартная цифровая ячейка, библиотека цифровых элементов, автоматическая система трассировки.

Размещено на Allbest.ru

...

Подобные документы

  • Изучение принципов построения цифровых устройств различной функциональной сложности – от логических элементов до микропроцессоров. Приминение компактной микроэлектронной "памяти" в современной электронной аппаратуре самого различного назначения.

    курсовая работа [756,6 K], добавлен 19.11.2010

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

    практическая работа [230,8 K], добавлен 25.03.2015

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

    курсовая работа [5,3 M], добавлен 31.05.2014

  • Описание предметной области. Алгоритм разработки приложения для создания, управления и просмотра базы данных библиотечной литературы. Построение схемы классов для графического отображения функций программы и анализа взаимосвязей между различными классами.

    курсовая работа [2,0 M], добавлен 14.12.2012

  • Изучение принципов построения локальных вычислительных сетей. Обоснование выбора сетевой архитектуры для компьютерной сети, метода доступа, топологии, типа кабельной системы, операционной системы. Управление сетевыми ресурсами и пользователями сети.

    курсовая работа [1,8 M], добавлен 25.04.2016

  • Описание функциональных блоков контроллера. Анализ серий микроконтроллеров представленных на рынке и используемых в цифровых магнитолах: AVR, PIC, MK-51. Микровыключатели К1-К6, их функции. Разработка функционирования программы, схема устройства.

    курсовая работа [483,5 K], добавлен 28.12.2012

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

    курсовая работа [1,6 M], добавлен 16.03.2019

  • Описание общих принципов работы ППП Автокад, ее назначение. Способы создания чертежей в программе. Особенности применения и выполнения ряда операций, необходимых для создания чертежа. Редактирование многострочного текста, специфика построения сплайнов.

    курсовая работа [1,5 M], добавлен 12.01.2010

  • Исследование теоретических основ проектирования и разработки баз данных. Выявление функциональных зависимостей, построение инфологической модели. Обзор языковых и программных средств, предназначенных для создания, ведения и совместного использования БД.

    курсовая работа [1,5 M], добавлен 22.02.2012

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

    лабораторная работа [2,1 M], добавлен 02.03.2011

  • Суть выбора редактора для создания коммерческого сайта. Формирование интерфейса взаимодействия пользователя с системой. Изучение основных языков проектирования. Особенность тестирования программных средств. Анализ разработки сопроводительных документов.

    отчет по практике [2,4 M], добавлен 20.05.2017

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

    курсовая работа [821,6 K], добавлен 19.03.2012

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

    методичка [2,1 M], добавлен 16.03.2014

  • Понятие информации, автоматизированных информационных систем и банка данных. Общая характеристика описательной модели предметной области, концептуальной модели и реляционной модели данных. Анализ принципов построения и этапы проектирования базы данных.

    курсовая работа [1,7 M], добавлен 18.01.2012

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

    дипломная работа [7,0 M], добавлен 11.02.2012

  • Принципы построения и программирования игр. Основы 2-3D графики. Особенности динамического изображения и искусственного интеллекта, их использование для создания игровых программ. Разработка логических игр "Бильярд", "Карточная игра - 50", "Морской бой".

    отчет по практике [2,3 M], добавлен 21.05.2013

  • Представление данных в цифровых автоматах, методы контроля их работы. Построение алгоритма реализации численного метода "быстрой сортировки", построение кода и блок-схемы Хемминга. Выполнение арифметических и логических исчислений с целыми числами.

    курсовая работа [98,7 K], добавлен 22.12.2009

  • Оценка риска статического сбоя по всем выходным переменным. Анализ цифровых схем по методу простой итерации и событийному методу. Моделирование аналоговых схем: метод узловых потенциалов и переменных состояния. Анализ цифровых схем по методам Зейделя.

    контрольная работа [382,1 K], добавлен 10.11.2010

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

    контрольная работа [390,8 K], добавлен 28.10.2013

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

    дипломная работа [2,9 M], добавлен 17.10.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.