Cadence virtuoso учебник: Схемотехника / Учебники и методички / LAB01PR

Схемотехника / Учебники и методички / LAB01PR

Лабораторная работа №1 по курсу «СТКУ АУ»

«Изучение простейших линейных схем аналоговой обработки сигналов»

Цель работы: Освоение процесса моделирования с использованием Cadence Virtuoso Schematic Editor & Virtuoso Symbol Editor, Analog Artist Simulation. Изучение простейших линейных схем аналоговой обработки сигнала.

Задание:

1.Провести частотный (AC Analysis) анализ схемы пассивного RC-фильтра НЧ или ВЧ первого порядка.

2.Провести временнόй (Transient) анализ схем инвертирующего или неинвертирующего усилителя (согласно варианту).

3.Провести анализ схемы активного инвертирующего интегратора.

4.Провести временнόй анализ схемы повторителя напряжения.

5.Провести временнόй анализ схемы сумматора-вычитателя.

6.Провести частотный и временные анализы схемы активного фильтра НЧ или ВЧ первого порядка (согласно варианту).

Каждую схему следует сохранять в отдельном файле.

ПОРЯДОК ВЫПОЛНЕНИЯ

1. Запуск САПР Cadence

Шаг 0: Запустите VMware Player и запустите с помощью него виртуальную машину RHL из папки 4226-linux.

Шаг 1: Дважды щѐлкните на ярлык с названием “CADENCE”.

На экране появится окно командного интерфейса (Command Interface Window (CIW)), которое показано на Рис. 1.

Рис. 1 – Главное окно программного комплекса Cadence

Шаг 2: В окне командного интерфейса выберите пункт меню

File…→New…→Library… Появится окно создания новой библиотеки «New Library». В

качестве названия библиотеки (графа Name) введите uXXXXXX, где XXXXXX – номер

1

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

Рис. 2 – Создание новой библиотеки

Шаг 3: В окне командного интерфейса выделите свою библиотеку, затем выберите пункт меню File…→New…→Cell View…

Появится окно создания нового файла «Create New File», показанное на Рис. 3.

Введите название файла “RC” и нажмите OK.

Рис. 3 – Создание нового файла.

2

Появится новое окно редактора схем «Virtuoso Schematic Editing», показанное на

Рис. 4.

Рис. 4 – Окно «Virtuoso Schematic Editing»

2. Ввод схемы пассивного фильтра низких частот первого порядка и задание номиналов элементов

Ввести схему пассивного RC фильтра первого порядка. Для ввода схемы необходимо расположить схемотехнические элементы, а затем соединить их проводниками, согласно электрической схеме на Рис. 5(ФНЧ) или Рис. 6(ФВЧ) по варианту. Далее приведено подробное описание процесса создания схемы пассивного RC

фильтра первого порядка.

3

Рис. 5 – Электрическая схема пассивного RC-фильтра низких частот (НЧ) 1-ого порядка

Рис. 6 – Электрическая схема пассивного RC-фильтра высоких частот (ВЧ) 1-ого порядка

4

Шаг 4: В окне «Virtuoso Schematic Editing» выберите пункт меню Add→Instance…

Появится показанное на Рис. 7 окно добавления элементов «Add Instance». Нажмите

Browse, появится дополнительное окно «Library Browser — Add Instance», показанное на

Рис. 8.

Рис. 7 – Окно добавления элементов и характеристики резистора R1

5

Рис. 8 – Окно просмотра библиотек элементов

Шаг 5: Выберите библиотеку analogLib в столбце «Library», элемент res в столбце

«Cell», и представление symbol в столбце «View». Затем переключитесь снова на окно Рис. 7 и заполните его, затем нажмите Hide, наконец, поставьте символ устройства res в

окне редактора схем Virtuoso Schematic Editing.

Поворот выделенной части схемы: пункт меню Edit Rotate (j) , отражение:

выберите элементы, выберите пункт меню при выделенном элементе Edit Move (M),

далее нажмите <F3> в появившемся окне нажмите Upside down. Для отмены активной команды нажать <Esc>. В общем случае, при нажатии <F3> появляется окно свойств текущей команды, с помощью которого можно, например, изменить тип линий проводников (только перпендикулярные линии под любым углом) или повернуть/отразить элемент при активной команде Edit Move.

6

Шаг 6: Повторите шаги 4–5, но для конденсатора cap с характеристиками,

показанными на Рис. 9.

Рис. 9 – Характеристики конденсатора C1

Шаг 7: Повторите шаги 4–5 для источника синусоидального напряжения vsin с

характеристиками, показанными на Рис. 10. Параметр AC magnitude требуется для дальнейшего моделирования, его значение равно 1. Такое значение выбрано исходя из удобства операций с децибелами, поскольку dB 1 = 0.

7

Рис. 10 – Характеристики источника напряжения V1

8

Шаг 8: Повторите шаг 4–5, добавьте два элемента земли gnd, окно свойств которых показано на Рис. 11.

Рис. 11 – Добавление gnd

Шаг 9: В окне Virtuoso Schematic Editing, выберите пункт меню Add→Pin…

Заполните появившееся всплывающее окно как показано на Рис. 12., нажмите Hide, и

затем поставьте вывод (pin) IN согласно рисунку со схемой Вашего фильтра.

Рис. 12 – Добавление вывода (pin) IN

9

Шаг 10: Повторите шаг 9 для вывода OUT. Обратите внимание, что для вывода IN

направление (direction) – input, а для OUT – output.

Рис. 13 – Добавление вывода (pin) OUT

Шаг 11: В окне Virtuoso Schematic Editing, выберите пункт меню

Add→Wire(narrow), и соедините все элементы, как показано на Рис. 6. Назначить имена

IN и OUT соответствующим проводникам в схеме следующим образом – с помощью команды Add→Wire Name… вызвать окно, в графе Names указать имя, далее нажать Hide,

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

Шаг 12: В собранную схему добавить блок источников питания для моделирования на рис.14 (НЕОБХОДИМО ОБЯЗАТЕЛЬНО ДОБАВЛЯТЬ ДАННЫЙ

БЛОК ВО ВСЕ СХЕМЫ, ПРЕДНАЗНАЧЕННЫЕ ДЛЯ МОДЕЛИРОВАНИЯ).

Параметры источников напряжения vdc из библиотеки analogLib: DC Voltage = 1.5V для

V1 и V2 и 0V для V0.

10

Архивы Учебник – ПСБ Софт, Россия

Перейти к содержанию

Адрес электронной почты

Пароль

Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Фамилия Имя Отчество Компания/университет Адрес электронной почты Номер телефона Пароль Повторите пароль

 Поля обязательные для заполнения

Я согласен с условиями обработки персональных данных Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty.
Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty. Адрес электронной почты Please leave this field empty.

Cadence Virtuoso — схема и моделирование — инвертор (45 нм)

~ Абдельрахман Х. Ахмед. 9/2015 ~

Virtuoso — это программное обеспечение для редактирования схем и макетов от Cadence.

1 Настройка среды и запуск Cadence Virtuoso

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

1.1 Рабочий каталог Virtuoso

В каталоге инструментов Cadence, созданном в разделе 1 «Учебное пособие по компилятору RTL», перейдите в папку с именем «cds». Эта папка будет рабочим каталогом для Cadence Virtuoso.

1.2 Найдите установочный файл и запустите Cadence

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

>> источник ../setup_local.csh
>> virtuoso –log Mylog&

>> источник /CMC/scripts/kit.gpdk45_OA_v5.csh
>> virtuoso -log myvit.log &

После выполнения предыдущих строк Cadence должна открыть главное окно, как показано на рис. 1, также известное как C команда I интерпретатор W окно (CIW). Прочтите журнал в этом окне, чтобы убедиться, что все прошло успешно, без ошибок или предупреждений.

Рис. 1. CIW Cadence Virtuoso.

2 Редакторы схем и символов Cadence Virtuoso

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

2.1 Создать новую библиотеку

В cadence virtuoso «библиотека» — это каталог вашего проекта. «Библиотека» может иметь несколько подпроектов, каждый из которых называется «ячейкой». «Ячейка» может иметь несколько представлений, таких как (схема, макет и т. д.). Каждый проект будет создан с использованием определенного процесса P D esign K it, также известного как PDK, поэтому «библиотека» должна быть привязана к используемому PDK.

Чтобы создать новую библиотеку, сначала перейдите в < Инструменты ->  Диспетчер библиотеки… >, чтобы открыть окно «Диспетчер библиотеки». В «Диспетчере библиотек» перейдите в < Файл ->  Новый ->  Библиотека… >, откроется новое окно с запросом имени вашей новой библиотеки. Выберите имя для своей библиотеки, которая в этом руководстве называлась ELEC402 , и нажмите «ОК». Появится новое окно с запросом файла технологии для вашей новой библиотеки. Выберите «Присоединиться к существующей технологической библиотеке» и нажмите OK. Затем выберите нужный PDK, который составляет gpdk045 в этом руководстве.

2.2 Создание новой схемы

Теперь в библиотеке проекта создайте новую схему для подъячейки. Выберите библиотеку проектов и перейдите к < Файл ->  Создать ->  Просмотр ячейки… >. Откроется новое окно с запросом сведений о новом представлении ячейки. Обязательно выберите имя для своей ячейки, которое описывает ее функциональность и выделяет любые другие важные сведения об этой ячейке. Также убедитесь, что в полях «Вид» и «Тип» установлено значение 9.0029 схема и нажмите OK. Теперь откроется окно редактора схем, как показано на рис. 2, а в окне диспетчера библиотек отобразятся только что внесенные изменения, как показано на рис. 3.

Рис. 2 Редактор схем Virtuoso.

Рис. 3. Окно диспетчера библиотек после создания новой схемы.

Начните изучение окна редактора схем и обратите внимание, что для создания новой схемы большинство необходимых параметров можно найти в раскрывающемся меню «Создать». Обратите внимание, что каждое действие можно выполнить либо через меню «Создать», либо с помощью кнопок графического интерфейса на панели инструментов, либо с помощью горячих клавиш. Например, чтобы добавить новый экземпляр, перейдите на < Создать ->  Экземпляр… >, используйте значок на панели инструментов или просто нажмите «I». Вы можете узнать о действиях и соответствующих им значках и горячих клавишах из меню «Создать». Чтобы изменить параметры любого устройства, выберите устройство и нажмите «Q».

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

Чтобы подготовить схему, которая будет использоваться для создания символа для вашей ячейки, обязательно используйте выводы для ваших входов, выходов, питания и земли. На рис. 4 показана схема инвертора, готового к использованию при создании символа. Обратите внимание, что inputOutput Тип контакта использовался для питания и заземления.

Рис. 4 Схема КМОП-инвертора.

2.3 Создание символа

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

Чтобы получить схему без ошибок и предупреждений со всеми портами, назначенными контактам, перейдите в < Create –>  Cellview –>  From Cellview > в редакторе схем. Откроется окно «Cellview из Cellview». Убедитесь, что в поле «Для просмотра имени» установлено значение 9.0029 символ и нажмите OK. Откроется окно «Параметры генерации символов», в котором вы можете выбрать желаемую спецификацию вывода, как показано на рисунке 5. Внесите необходимые изменения и нажмите OK. Откроется окно редактора символов, показанное на рис. 6.

Рис. 5. Окно параметров генерации символов.

Рис. 6. Редактор символов Virtuoso.

Начните изучать окно редактора символов и обратите внимание на сходство между ним и окном редактора схем. Используйте инструменты создания фигур, которые можно найти в раскрывающемся меню «Создать», чтобы создать символ для своей ячейки. Обратите внимание, что символ должен отражать функциональность ячейки и выделять ее основные черты. На рис. 7 показан символ КМОП-инвертора.

Рис. 7 Символ инвертора CMOS.

Примечание : Иногда может быть полезно изменить шаг привязки. Чтобы изменить его, нажмите «O», чтобы открыть окно «Параметры отображения».

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

3 Моделирование с использованием Analog Design Environment

Цель этого раздела — узнать, как создавать испытательные стенды для некоторых основных моделей моделирования, необходимых для определения характеристик цифровых стандартных ячеек с использованием редактора схем Cadence Virtuoso Schematic Editor и A nalog D esign E nvironment, известный как ADE, средство моделирования.

3.1 Создание испытательного стенда

Испытательный стенд — это просто схема, включающая тестируемую ячейку и некоторые вспомогательные экземпляры, такие как источники напряжения и источники тока. Большинство необходимых экземпляров для создания тестового стенда можно найти в библиотеке AnalogLib.

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

3.

2 Базовое моделирование КМОП-инвертора

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

3.2.1 Моделирование переходных процессов

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

Сначала создайте схему T est B ench для имитации переходных процессов инвертора, как показано на рис. vpulse из библиотеки AnalogLib).

Рис. 8. Стенд для моделирования переходных процессов для КМОП-инвертора.

Примечание . Присвоение параметрам вспомогательных экземпляров «имен переменных» может быть полезно при использовании ADE для имитации TB. Это позволит легко контролировать все параметры ТБ из одного места.

Заполните параметры экземпляров «vpulse» и «vdc», как показано на рисунке 9. Таким же образом задайте для «cap» значение переменной CL в поле емкости.

Рис. 9. Слева (свойства vpulse). Правильно (свойства vdc).

Чтобы начать моделирование испытательного стенда, перейдите в < Launch ->  ADE L > в окне редактора схем. Откроется окно ADE, показанное на рис. 10. В окне ADE выполните следующие шаги, чтобы подготовить его к моделированию:

Рис. 10 Окно ADE.

  • Импортируйте переменные проекта и задайте им нужные значения:
    Перейдите к < Переменные ->  Копировать из Cellview >. Обратите внимание, что ваши проектные переменные добавляются в раздел «Design Variables» в окне ADE. Заполните поля «Значение» нужными числами, как показано на рисунке 12.
  • Установите необходимые Анализы:
    Перейдите к < Анализы ->  Выберите … >. В новом окне выберите анализ «транзакций» и задайте свойства анализа, как показано на рисунке 11. Обратите внимание на изменение в части «Анализ» в окне ADE, как показано на рисунке 12.
  • Выберите сигналы для построения:
    Перейдите к < Выходы –>  Для построения –>  Выберите В проекте >. На схеме нажмите на провода «INPUT» и «OUTPUT», а затем нажмите «Esc». Обратите внимание, что эти сигналы были добавлены в часть «Выходы» в окне ADE, как показано на рисунке 12.

Рис. 11 Настройка анализа переходных процессов.

Рис. 12. Окно ADE после настройки анализа переходных процессов.

После выполнения предыдущих шагов ваш TB готов. Перейдите к < Simulation –>  Netlist и запустите >. Обратите внимание, что откроются два окна: журнал моделирования и окно визуализации сигнала. Проверьте журнал симуляции, чтобы убедиться, что все прошло успешно и без ошибок.

Исследуйте окно визуализации и особенно раскрывающиеся меню «Вид-График-Маркер». Подготовьте формы волн к измерению:

  • Перейдите к < Graph à Split Current Strip >, чтобы разделить графики, как показано на рисунке 13.
  • Нажмите «X», а затем, нажимая правую кнопку мыши, перетащите окно, содержащее два цикла, затем отпустите, чтобы приблизиться к этой области.
  • Начать добавление маркеров, нажав «M» при наведении курсора на нужную точку. Чтобы изменить значения маркера, дважды щелкните по нему.
  • Чтобы добавить дифференциальный маркер между двумя точками, нажмите «M» в первой точке, а затем «D» во второй точке.

Используя предыдущие советы, попытайтесь получить время задержки, нарастания и спада, как показано на рисунке 13.

Рисунок 13 Формы входных и выходных сигналов инвертора.

Обратите внимание на рис. 13, что время задержки, нарастания и спада составляет 39,28 пс, 48,75 пс и 66,43 пс соответственно. Что не является хорошим дизайном, ПОЧЕМУ?!!

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

Инструменты ->  Калькулятор >. Обратите внимание на все функции, которые можно выполнить с его помощью, в части «Панель функций».

Например, время нарастания выходного сигнала можно измерить, выполнив следующие действия:

  • Выберите   и затем в окне визуализации щелкните форму выходного сигнала.
    Обратите внимание, что эта строка будет добавлена ​​в окно калькулятора < clipX(v(«/OUTPUT» ?result «tran») 0.0 1.045E-9 ) >
  • На панели функций найдите «riseTime» и щелкните по нему.
  • Установите свойства функции времени нарастания, как показано на рис. 14, и нажмите OK. Строка изменится на >.
  • Наконец, нажмите  , чтобы оценить значение времени нарастания.

Рис. 14 Свойства функции «Время нарастания» в «Калькуляторе».

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

Наконец, чтобы сохранить настройки симуляции для последующего использования, перейдите к < Session ->  Save State >. Заполните необходимые поля, как показано на рисунке 15, и нажмите OK. Чтобы загрузить сохраненную настройку моделирования, перейдите к < Session ->  Load State >, затем выберите нужное состояние и нажмите OK.

Рис. 15 Окно сохранения состояния.

3.2.2 Моделирование постоянного тока

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

В качестве примера в этом руководстве моделирование постоянного тока будет использоваться для построения характеристической кривой инвертора. Характеристическая кривая может быть полезна при определении порогового напряжения инвертора, запаса по шуму и коэффициента усиления. Во-первых, измените TB, созданный в ‎3.2.1, поместив «vdc» на вход инвертора вместо «vpulse». В новом «vdc» установите поле «DC Voltage» на vin .

Откройте новое окно ADE и выполните следующие шаги настройки:

  • Импортируйте переменные проекта и присвойте им нужные значения:
    Перейдите к < Переменные ->  Копировать из Cellview >. Обратите внимание, что ваши проектные переменные добавляются в раздел «Design Variables» в окне ADE. Заполните поля «Значение» нужными числами, как показано на рисунке 17.
  • Установите необходимые Анализы:
    Перейдите к < Анализы ->  Выберите … >. В новом окне выберите анализ «dc» и установите свойства анализа, как показано на рисунке 16. Обратите внимание на изменение в части «Анализ» в окне ADE, как показано на рисунке 17.
  • Выберите сигналы для построения:
    Перейдите к < Выходы —>  Для построения —> Выберите On Design >. На схеме нажмите на провода «INPUT» и «OUTPUT», а затем нажмите «Esc». Обратите внимание, что эти сигналы были добавлены в часть «Выходы» в окне ADE, как показано на рисунке 17.
  • Сохранить состояние

Рис. 16 Настройка анализа постоянного тока.

Рис. 17 Окно ADE после настройки анализа DC.

После выполнения предыдущих шагов ваш TB готов. Перейти к < Моделирование –>  Список соединений и запуск >. Обратите внимание, что откроются два окна: журнал моделирования и окно визуализации сигнала. Проверьте журнал симуляции, чтобы убедиться, что все прошло успешно и без ошибок.

На рис. 18 показана кривая характеристики инвертора CMOS. Производная кривой может быть более информативной. Поэтому с помощью инструмента «Калькулятор» постройте производную, выполнив следующие действия:

  • Перейдите к < Инструменты ->  Калькулятор 9.0030 > открыть калькулятор.
  • Выберите , а затем в окне визуализации щелкните форму выходного сигнала.
    Примечание: эта строка будет добавлена ​​в окно калькулятора < v(«/OUTPUT» ?result «dc») >
  • На панели функций найдите «deriv» и щелкните по нему.
  • Строка изменится на < deriv(v(«/OUTPUT» ?result «dc»)) >.
  • Наконец, нажмите  , чтобы построить производную, как показано на рисунке 19.

Из рисунка 19 можно интерпретировать много информации о конструкции. Каково значение порогового напряжения инвертора, запаса по шуму и коэффициента усиления?

Рис. 18 Характеристическая кривая КМОП-инвертора.

Рис. 19 Производная характеристической кривой инвертора.

Учебник по каденсу 5

Учебник по каденсу 5
В этой лабораторной работе будут использоваться следующие инструменты Cadence CAD:
  • Virtuoso Composer (ранее известный как Composer) для создания схем,
  • Analog Environment (ранее известный как Analog Artist) для моделирования,
  • Virtuoso Layout для верстки,
  • Diva для DRC (проверка правил проектирования).
ВНИМАНИЕ! С макетом будет использоваться другая настройка для Cadence, существенных различий быть не должно, но их будет много небольшие отличия по сравнению с предыдущими уроками. Используй здравый смысл когда вы вернетесь к предыдущим 4 учебникам и увидите такие различия.

Первым аспектом, который меняется, является имя файла, используемого для инициализировать среду (раньше это было cadence, теперь это cdscdk). Мы будем также необходимо создать еще один совершенно новый каталог для Cadence под названием CDK для Cadence Design Kit (CDK), разработанный в Университете штата Северная Каролина, который мы будем использовать для макет. Сделайте это из своего домашнего каталога:

мкдир CDK

Чтобы настроить среду для запуска приложений Cadence, вам нужно открыть окно xterm и ввести:

. cdscdk

этот скрипт изменяет вашу среду (устанавливает PATH и экспортирует переменные), а также подготавливает Cadence Комплект конструктора (CDK).

Запуск инструментов Cadence
Перейдите в каталог CDK и запустите icfb:

компакт-диск CDK icfb и

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

Создайте новую библиотеку, назовите ее layout и на этот раз прикрепите ее к существующую технологическую библиотеку AMI 0.6u C5N, нажмите OK.

Новая библиотека должна появиться в диспетчере библиотек. Давайте также перенесем нашу старую библиотеку lab1 в менеджер библиотек. Из CIW вам нужно будет перейти в Инструменты -> Редактор пути к библиотеке и войдите в библиотеку lab1 с ее дорожка. Чтобы определить правильный путь, сначала посмотрите на путь только что созданная библиотека макетов, в моем случае это /net/eeuva.us1/mrs8n/CDK/layout. Тогда в моем случае я могу заполнить lab1 в библиотеке и /net/eeuva.us1/mrs8n/cadence/lab1 для Path, для других это будет иначе:

Теперь выполните «Файл» -> «Сохранить», и lab1 также должен появиться в вашем диспетчере библиотек. окно. Выйдите из редактора пути к библиотеке.

Чтобы получить другие старые библиотеки в Менеджере библиотек вам нужно сделать следующее:

Откройте файл cds.lib в новом каталоге, используя текст редактор по вашему выбору, например,

> dtpad /home/userid/CDK/cds.lib &

добавьте следующую строку в начало файла и сохраните:

ВКЛЮЧИТЕ /net/cdsic/share/local/cds.lib

В менеджере библиотек перейдите View->Refresh и обратите внимание на новые появятся библиотеки. Эти библиотеки автоматически ссылается симулятор, поэтому нам не нужно ничего делать еще с ними.

Давайте начнем наш пятый урок прямо сейчас!

СХЕМА С ЛЯМБДА-ПРАВИЛАМИ
В этой лабораторной работе 5 мы создадим схему и макет. инвертора. В этот раз, так как мы еще и макет делаем, то должны беспокоиться о правилах проектирования и технологии. Отныне мы собираемся использовать только одну технологию, которая будет одинаковой для проекта: технология AMI 0.5u C5N CMOS с 3 слоями металл, 2 слоя поли, рабочее напряжение 5 вольт и минимальная характеристика 0,5 микрона размер. Подробнее о технологии можно узнать по ссылке:
  • Процесс AMI C5N
  • Американ Микросистемс, Инк. (АМИ)
Для макета мы будем использовать SCMOS_SUBM масштабируемые правила проектирования CMOS для субмикронные процессы, доступные от MOSIS. Пожалуйста, пересмотрите свои заметки о классе и веб-страницу MOSIS для получения более подробной информации о правилах проектирования SCMOS. Процесс AMI C5N использует LAMBDA = 0,3u, что кажется противоречащим с утверждением, что это процесс 0.5u. Как объяснено в классе LAMBDA = 0,3u действительно выбран для удовлетворения правил проектирования для всего остального кроме длины транзистора. Для длины транзистора дополнительный шаг сделано в MOSIS, чтобы уменьшить его с нарисованных 0,6 ед. до 0,5 ед. Пожалуйста, приходите и см. меня, если у вас есть вопросы об этом.

Существует несколько последствий использования правил на основе LAMBDA:

  • Размеры транзисторов (и все другие размеры) больше не являются произвольными, а должно быть кратно половине лямбда (0,15u)
  • Сама раскладочная сетка полулямбда (0.15u)
Из-за вышесказанного нам нужно будет использовать разные символы транзисторов. которые поддерживают дизайн на основе LAMBDA. Они находятся в Технологическая библиотека NCSU_Analog_Parts. Создайте новую схему инвертора во вновь созданном макете библиотеку, выполнив File -> New -> Cell view и войдя в инвертор и схему. Используйте транзисторы NMOS и PMOS перейдя в Добавить -> Экземпляр -> NCSU_Analog_Parts -> N_Transistors -> nmos затем Добавить -> Экземпляр -> NCSU_Analog_Parts -> P_Transistors -> pmos для двух транзисторов, Добавить -> Экземпляр -> NCSU_Analog_Parts -> Supply_Nets -> vdd и Добавить -> Экземпляр -> NCSU_Analog_Parts -> Supply_Nets -> gnd для источник питания и Add -> Pin, чтобы добавить порты IN и OUT. Уведомление что на этот раз мы используем 3-контактные символы для транзисторов, эти автоматическое массовое подключение к vdd или gnd (для pmos и нмос соответственно). Отредактируйте свойства двух транзисторов. и обратите внимание, что их размеры выражены как в микронах, так и в единицы сетки (половина ЛЯМБДА). Длина например должна быть 0.6u или 4 единицы сетки. Измените ширину nmos на 5 лямбда (10 единиц) и pmos до 10 лямбда (20 единиц).

Окончательная схема должна выглядеть так:

Проверьте и сохраните и убедитесь, что у вас нет ошибок или предупреждений. Скопируйте вид символа инвертора из вашей библиотеки lab1. Также попробуйте смоделировать инвертор и убедитесь, что он работает. модели должны быть уже установлены (т.е. НЕ используйте модели из предыдущие лаборатории). Если все выглядит хорошо, то, наконец, пора начинать макет.

МАКЕТ С ЛЯМБДА-ПРАВИЛАМИ
Так как ошибки распространены, рекомендуется перейти сейчас в Параметры -> Настройки пользователя и увеличьте уровень отмены до 10:

Теперь всякий раз, когда вы делаете ошибки, вы можете просто вернуться к ним с помощью команды «Отменить».

Сначала создайте макет ячейки инвертора, перейдите в File -> New. -> Представление ячейки и заполнение инвертора для имени ячейки, макет для имени представления и Виртуоз для инструмента.

Должны появиться два окна: экран окна макета Virtuoso и LSW, который используется для выбора используемых слоев:

Теперь познакомьтесь с экраном макета Virtuoso. Это очень похоже в окне Composer важным дополнением являются X и Y абсолютные координаты и относительные координаты dX и dY вверху они очень полезны для нанесения точных размеров. Цифры указаны в микронах, но обратите внимание при перемещении курсора. что числа изменяются только как кратные 0,15u, что является значение половины лямбда, а также шаг сетки. Конфигурация форсирует политику «привязки к сетке», которая очень хороша для обеспечения соблюдения правила проектирования SCMOS. Все пользовательские макеты выполняются путем рисования прямоугольники или пути, выполнив Create -> Rectangle или Create -> Path и выбрав правильный слой в окне LSW.

Однако хороший макет — это больше, чем просто рисование прямоугольников… Самый важный аспект — планирование: вам НЕОБХОДИМО использовать карандаш и бумаги и перед началом работы сделайте простой набросок макета. Тебе нужно принимать решение:

  • положение и ориентация всех транзисторов
  • ориентация и металлический слой линий питания (vdd и gnd)
  • ориентация и слой входных и выходных портов
  • точные размеры для транзисторов и металлических линий.
Давайте спланируем наш макет! Мы будем использовать макет с похожей топологией. к схеме. Он будет иметь горизонтальные линии vdd (сверху) и gnd (снизу). IN слева и OUT справа, все металлические 1. Все металлические 1 линии будет иметь минимальный размер (3 лямбда или 6 лямбда/2 единицы, 0,9u), за исключением vdd и земля, которая будет иметь ширину 6 лямбда (12 лямбда/2 единицы). Два транзистора будут расположены по горизонтали. Макет будет сделан максимально компактным (т.е. использовать минимум расстояния, разрешенные DRC, где это возможно). С этими ограничениями приступаем к раскладке!

Сначала займемся nmos. Мы знаем, что NMOS имеет ширину 5 лямбда (10 единиц). который дает нам одно измерение активной области. Другое измерение можно получить, сложив вместе все необходимые функции и их минимальные размеры по правилам проектирования: нам нужны ворота (длина 2 лямбды), два контакта активного на металл1 (по 2 лямбда), два минимальных расстояния между контактом и поли (по 2 лямбда) и два минимальных перекрытия активного сверхконтакта (1,5 лямбда каждое). Если мы складываем все это вместе, мы получаем в общей сложности 13 лямбда. Это означает, что наша активная область для NMOS составляет 5×13 лямбда. Нарисуем прямоугольник 5×13 лямбда (1,5×3,9микрон) неактивных (то же, что и активные, но легче для чтения людьми), начиная с 0,00, -1,80 точки вниз и вправо. Сначала нажмите на nactive в окне LSW, затем выполните Create -> Rectangle и сначала щелкните, когда абсолютные координаты X: 0,00, Y: -1,80, затем двигайтесь, пока относительные координаты не покажут dX: -1,50, dY-3,90. Теперь сделайте Окно -> Подогнать все, затем Окно -> Масштаб -> Уменьшить на 2.

Теперь нарисуем ворота. Нарисуем еще один прямоугольник шириной в 2 лямбда, в середине активной области так, чтобы она перекрывала область на две лямбды с каждой стороны. Нажмите на полигон в LSW, а затем начните с точка X: 1,65, Y: -3,9от 0 до X: 2,25, Y: -1,20

Теперь нам нужно добавить два контакта, оба по 2 лямбды с каждой стороны (0,60) и 2 лямбда из поли и 1,5 лямбда снаружи. Нажмите на cc в LSW, а затем нарисуйте первый прямоугольник из X: 0,45, Y: -2,85 до X: 1,05, Y: -2,25, затем скопируйте прямоугольник в положение другого контакта, выполнив Edit -> Copy.

На этом активная область для NMOS готова, но нам все еще нужно поставить nselect вокруг активного. Прежде чем мы это сделаем, давайте определим площадь контакта с подложкой. Нарисуем пактивный прямоугольник, который составляет 5 лямбда с каждой стороны, примыкающей к NMOS-транзистору, то скопируйте контакт в середину этого региона.

Теперь нам нужно окружить активную область выбранными прямоугольниками. nselect для транзистора и pselect для контакта подложки. Эти области должны быть на 2 лямбда больше, чем активные. Нажмите на Сначала выберите и нарисуйте прямоугольник от X: 0,00 Y: -1,20 до X: 4,50 Y: -3,90

Затем нарисуйте прямоугольник pselect вокруг контакта с подложкой.

ВАЖНО: В общем, я предлагаю вам не смотреть слишком много на фактические координаты, много раз вы можете использовать свои глаза и тот факт, что курсор привязывается к сетке, чтобы обеспечить правильные размеры. Например, в случае выбора мы знаем, что он должен быть на 2 лямбда выше активного, на том же расстоянии, что и полигональное перекрытие. Это может помочь вам нарисовать правильные размеры, не глядя на координаты.

На этом nmos завершен, мы можем сделать pmos. PMO нарисован таким же образом, за исключением того, что неактивный становится пактивным и наоборот и nselect становится pselect и наоборот. Также ширина в два раза крупнее и нам нужно по два контакта с каждой стороны. Обратите внимание, что мы нарисовали NMOS с активной областью 6 лямбда ниже оси Y: 0,00, нарисуйте лямбда pmos 6 над осью Y: 0,00. Вы можете использовать копирование, растяжку вместо того, чтобы рисовать некоторые фигуры, чтобы сделать макет быстрее. В итоге у вас должно получиться что-то вроде этого:

Для транзисторов нужен еще один элемент: nwell для пмоса. Нарисуйте прямоугольник, окружающий активную область PMOS. на 6 лямбда (1,8 мкм) следует получить:

Нам также нужно добавить металл 1 над контактами, которые должны перекрываться. контакты на 1 лямбда.

Пришло время сохранить ваш дизайн (Дизайн -> Сохранить) и запустить предварительный ДРК. Перейдите в раздел «Подтвердить» -> DRC…

затем нажмите ОК. Проверьте свое окно CIW, у вас не должно быть ошибок, если у вас есть ошибки, вам нужно вернуться и исправить их.

Мы еще не закончили эту лабораторию! До сих пор мы делали то, что обычно называемое размещением, нам все еще нужно развести нашу схему. Сначала давайте направим вывод, нажмите на металл 1, а затем «Создать» -> «Путь». и прорисовываем путь от стока pmos до стока nmos (правая сторона). Путь имеет ширину всего 3 лямбды, поэтому нарисуйте его выровненным по правому краю. самая сторона. Вы должны дважды щелкнуть, чтобы закончить путь.

Теперь нарисуйте еще один путь с центром вокруг оси 0 до конца nwell.

Теперь подключим вход. Нарисуйте полипуть между двумя воротами. Обратите внимание, что ширина полилинии по умолчанию правильная: 2 лямбда.

Теперь начните еще одну полилинию с центром вокруг оси 0, идущую влево. и после того, как вы пройдете точку 0,0 и переключитесь на металл 1, используя Изменить на слой в окне Создать путь. Это должно автоматически вставить контакт между поли и металл 1, щелкните один раз, чтобы разместить контактную структуру рядом с точкой 0,0 справа. Дважды щелкните, когда вы дойдете до самого левого края nwell, чтобы закончить путь. Чтобы увидеть все слои в контакте «pcell» нажмите Shift-F с курсор в окне макета.

Остались только соединения vdd и gnd, которые мы собираемся используйте Create -> Polygon для них (мы также могли бы использовать прямоугольники или пути). Создайте полигон, используя точки:

X: -1,35 Y: 4,65
X: -1,35 Y: 5,55
X: -3,30 Y: 5,55
X: -3,30 Y: 7,35
X: 5,70 Y: 7,35
X: 5,70 Y: 5,55
X: 1,35 : 5,55
X: 1,35 Y: 4,65
Снова заметьте, что, за исключением нескольких моментов, вам не нужно ищите фактические координаты, так как они совпадают с существующими структурами (например, колодец или металл 1). Единственные размеры, о которых вам нужно беспокоиться, это расстояние до другого металла 1 (например, дренажа), которое должно быть >3 лямбда и ширину линии, которую мы решили сделать равной 6 лямбда.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *