Реферат: Автоматизация проектирования цифровых СБИС на базе матриц Вайнбергера и транзисторных матриц

МАТРИЧНЫЕ МИКРОПРОЦЕССОРЫ

      Матричные микропроцессоры можнорассмотреть с двух сторон: на уровне транзисторных матриц и матриц процессоров.

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

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

ТРАНЗИСТОРНЫЕ МАТРИЦЫ

       Сокращение сроков проектированиямикропроцессоров и повышение надежности проектов требуют применениясоответствующих систем автоматизации проектирования. Одним из самыхперспективных направлений в настоящее время считается подход к сквознойавтоматизации проектирования, называемой кремниевой компиляцией, позволяющийисходное задание на проектирование — функциональное описание, представленное наязыке высокого уровня, преобразовать в топологические чертежи. Кремниевыекомпиляторы используют в качестве базовых регулярные матричные структуры,хорошо приспособленные к технологии СБИС. Большое распространение получилипрограммируемые логические матрицы (ПЛМ) и их различные модификации. Ониориентированы на матричную реализацию двухуровневых (И, ИЛИ) логическихструктур, а также для оптимизации их параметров (площади, быстродействия)известны различные методы. Реализация многоуровневых логических структур СБИСчасто опирается на матричную топологию: в этом случае компиляторы генерируюттопологию по ее матричному описанию.

      Транзисторныематрицы

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

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

      На рис. 1.а представлена транзисторнаясхема, а на рис. 1.б — транзисторная матрица, реализующая данную схему.

<img src="/cache/referats/1207/image001.gif" v:shapes="_x0000_i1025">

      

      Символическоепредставление топологии транзисторных матриц.

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

      N — n-канальный транзистор;

      P — p-канальный транзистор;

      + — надпересечение — металл наддиффузией; металл над поликремнием; пересекающиеся вертикальный игоризонтальный металлы;

      <img src="/cache/referats/1207/image003.jpg" v:shapes="_x0000_i1026">  — контакт (к поликремнию либо диффузии);

      ! — p-диффузия;

      <img src="/cache/referats/1207/image005.jpg" v:shapes="_x0000_i1027">n-диффузия, либо поликремний;

      : — металл в вертикальном направлении;

 <img src="/cache/referats/1207/image007.jpg" v:shapes="_x0000_i1028">  — металл в горизонтальном направлении.

      Каждый символ транзистора соответствуеттранзистору минимального размера. Однако ширина канала может увеличиватьсямногократным повторением символа. Только один символ «+»требуетсядля того, чтобы обозначить пересечение всех трех уровней взаимосвязей: аименно, металл над диффузией, металл над поликремнием и пересекающийсявертикальный и горизонтальный металлы. Символ контакта «<img src="/cache/referats/1207/image003.jpg" v:shapes="_x0000_i1029">используется для того, чтобы определить контакт металла к поликремнию илидиффузии. Символ «<img src="/cache/referats/1207/image005.jpg" v:shapes="_x0000_i1030">используется для представления либо поликремниевых, либо n-диффузионных проводников. Символ для диффузии p-типа «!»требуется для различия ее от диффузии n-типа, которая может существовать в том же столбце.Символы для металла «:»либо «-»обозначаютвертикальные или горизонтальные линии металла соответственно. На рис. 1.в. даносимвольное представление лэйаута транзисторной матрицы, а на рис. 1.г. — заключительный лэйаут.

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

1. <span Times New Roman""> 

Глобальнаяоптимизация. Сначала осуществляется переход к системе дизъюнктивных нормальныхформ (ДНФ), которая обычно минимизируется, а затем представляется в видемногоуровневой логической сети, реализуемой в требуемом базисе. Основнаяоптимизация ведется при построении многоуровневой сети — обычно это сеть вбазисе И, ИЛИ, НЕ, а основным критерием сложности является критерий числа литералов(букв) в символическом (алгебраическом) представлении булевых функций. Методыоптимизации опираются либо на функциональную декомпозицию, либо на факторизацию(поиск общих подвыражений) в алгебраических скобочных представлениях функций,реализуемых схемой. Заключительный этап — реализацию в требуемом базисе принятоназывать технологическим отображением. Именно на этом этапе можно оценитьмаксимальную задержку схемы — задержку вдоль критического пути. Предполагается,что в узлах схемы установлены базисные элементы.

2. <span Times New Roman""> 

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

      Подробно обзор многих методов оптимизациимногоуровневых логических схем приведен в [0].

                                          МАТРИЧНЫЕ ПРОЦЕССОРЫ      

      Матричные процессоры наилучшим образомориентированы на реализацию алгоритмов обработки упорядоченных (имеющихрегулярную структуру) массивов входных данных. Они появились в середине 70-хгодов в виде устройств с фиксированной программой, которые могли бытьподключены к универсальным ЭВМ; но к настоящему времени в их программированиядостигнута высокая степень гибкости. Зачастую матричные процессоры используютсяв качестве вспомогательных процессоров, подключенных к главной универсальнойЭВМ. В большинстве матричных процессоров осуществляется обработка 32-хразрядных чисел с плавающей запятой со скоростью от 5000000 до 50000000 флопс.Как правило они снабжены быстродействующими портами данных, что даетвозможность для непосредственного ввода данных без вмешательства главногопроцессора. Диапазон вариантов построения матричных процессоров лежит отодноплатных блоков, которые вставляются в существующие ЭВМ, до устройств,конструктивно оформленных в виде нескольких стоек, которые по существупредставляют собой конвейерные суперЭВМ.

      Типичными видами применения матричныхпроцессоров является обработка сейсмической и акустической информации,распознавание речи; для этих видов обработки характерны такие операции, какбыстрое преобразование Фурье, цифровая фильтрация и действия над матрицами. Дляпостроения относительно небольших более экономичных в работе матричныхпроцессоров используются разрядно-модульные секции АЛУ в сочетании с векторнымпроцессором, основанном на основе биполярного СБИС-процессора с плавающейзапятой.

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

     

      Для реализации обработки сигналов матрицыМКМД могут быть организованы в виде систолических или волновых матриц.

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

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

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

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

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

2. <span Times New Roman""> 

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

  Оптимизация МВ на логическом уровнепредставляет более простую задачу. На этом этапе обычно минимизируетсячисло операторов f = k1 V...V kl — по существу число столбцов МВ. Минимизация числа строк происходит наэтапе топологического проектирования.

   Подробно обзор многих методов оптимизациимногоуровневых логических схем приведена в [4]. Заключая данный раздел,можно сказать, что актуальной проблемой является проблема разработки методовоптимизации многоуровневых структур с учетом последующей базовой топологическойреализации. Проблема осложняется тем, что нужно выработать еще соответствующиекритерии оптимизации. Если для ПЛМ критерий минимальности числа термов адекватенсложности последующей топологической реализации, то для МВ и, особенно для ТМ,типичной дилеммой при минимизации площади является следующая — провестидополнительную связь, либо установить дополнительный элемент. Может оказатьсятак, что сильная связность схемы может быть неприемлемой из-за больших затратплощади кристалла под соединения элементов.

    Заключение. В обзоре представлены основныеподходы к проектированию структур заказных цифровых СБИС на базе основныхмоделей матриц Вайнбергера и транзисторных матриц.

   Модификация основной модели МВ, когдаснимаются требования подключения каждого столбца к линии «земли»;реализация каждой переменной только в одной стоке матрицы;невозможности дублирования линий «земли»инагрузки;приводит к новым формальным постановкам задачоптимизации параметров МВ, хотя и для основной модели не все проблемы решены — открыта, например, проблема синтеза МВ с заданным быстродействием.

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

Матричные процессоры

   Матричные процессоры наилучшим образомориентированы на реализацию алгоритмов обработки упорядоченных (имеющихрегулярную структуру) массивов входных данных. Они появились в середине 70-ыхгодов в виде устройств с фиксированной программой, которые могли бытьподключены к универсальным ЭВМ; но к настоящему времени в ихпрограммировании достигнута высокая степень гибкости. Зачастую матричныепроцессоры используются в качестве вспомогательных процессоров, подключаемых кглавной универсальной ЭВМ. В большинстве матричных процессоров осуществляетсяобработка 32 разрядных циклов с плавающей запятой со скоростью от 5000000 до50000000 флопс. Как правило, они снабжены быстродействующими портами данных,что дает возможность для непосредственного ввода данных без вмешательстваглавного процессора. Диапазон вариантов построения матричных процессоров лежитот одноплатных блоков, которые вставляются в существующие ЭВМ до устройств,конструктивно оформленных в виде нескольких стоек, которые по существупредставляют собой конвейерные суперЭВМ.

   Типичными видами применения матричныхпроцессоров является обработка сейсмической и акустической информации,распознавание речи;для этих видов обработки характерны такие операции,как быстрое преобразование Фурье, цифровая фильтрация и действия над матрицами.Для построения относительно небольших более экономичных в работе матричныхпроцессоров используются разрядно-модульные секции АПУ в сочетании с векторнымпроцессором, реализованным на основе биполярного СБИС-процессора с плавающейзапятой.

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

   Главным архитектурным различием междутрадиционными ЭВМ, предназначенными для обработки научной и коммерческойинформации, является то, что последние (мини-, супермини-, универсальные имега-универсальные ЭВМ) имеют главным образом скалярную архитектуру, а машиныдля научных расчетов (супер-, минисупер-ЭВМ и матричные процессоры) — векторную. Скалярная ЭВМ (рис. 1.) имеет традиционную фон-неймановскую, то естьSISD-организацию, для которой характерно наличие одной шины данных ипоследовательное выполнение обработки одиночных элементов данных. Векторнаямашина (рис. 2.) имеет в своем составе раздельные векторные процессоры иликонвейеры, и одна команда выполняется в ней над несколькими элементами данных(векторами)

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

   Для реализации обработки сигналов матрицыМЛМД могут быть реализованы в виде систолических или волновых матриц.

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

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

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

   Транспьютер InmosТ414 предназначен дляпостроения МКМД структур;для обмена информацией ссоседними процессорами в нем предусмотрены четыре быстродействующиепоследовательных канала связи. Имеется встроенная память большой емкости,которая может быть подключена к интерфейсу шины памяти. Разрядность местнойпамяти каждого транспьютера наращивает разрядность памяти системы; такимобразом, полная разрядность памяти пропорциональна количеству транспьютеров всистеме. Суммарная производительность также возрастает прямо пропорциональночислу входящих в систему транспьютеров.

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

   Транзисторные матрицы (ТМ) являются одной изпопулярных структур для проектирования топологии макроэлементов заказныхцифровых СБИС, выполняемых по КМОП-технологии, ТМ имеют регулярную матричнуютопологию, получение которой может быть автоматизировано, что привлекает к нимразработчиков кремниевых компиляторов. Известные методы проектирования ТМориентированы на минимизацию площади кристалла, занимаемую информационнымитранзисторами, и оставляет в стороне вопрос о минимизации площади, требуемойдля разводки шин «земли» (Gnd)и «питания» (Vdd). Вданной статье предлагается метод минимизации числа шин Gnd и Vddв ТМ, после того, как ееплощадь была минимизирована с помощью методов [4,5].

1. <span Times New Roman""> 

Структура ТМ.

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

   Абстрактный лэйаут — схематический рисунокбудущего кристалла, где прямоугольники обозначают транзисторы, вертикальныелинии — поликремниевые столбцы, горизонтальные — линии металла, штриховые — диффузионные связи, точки — места контактов, стрелки — места подключениятранзисторов к линиям Gnd иVdd. При переходе к послойнойтопологии стрелки должны быть заменены полосками в диффузионном слое, покоторому осуществляются соединения между строками ТМ. Очевидно, что подведениювертикальных связей к линиям Gnd, Vddмогут препятствоватьтранзисторы, расположенные вдругих строках транзисторной матрицы, либо расположенные в тех же столбцахдиффузионные связи между строками (горизонтальные линии металла не являютсяпрепятствием). В следствие этого приходится размещать несколько линий Gnd в n-частиТМ и несколько линий Vddв p-части ТМ. Возникает задачаминимизации числа этих линий. Будем рассматривать ее только для n-частиТМ, задача минимизации числа линий Vddдля p-частиТМ решается аналогичным образом.

   Пример абстрактного лэйаута для КМОП-схемы(рис. 1.а.) показан на рис. 1.б.

2. <span Times New Roman""> 

Формализация задачи.

   Пусть транзисторная матрица размером n на m  задана абстрактным лэйаутом. Представимпоследний троичной матрицей Sразмером nна 2m, поставимее строки в соответствие строкам ТМ, а пары соседних столбцов — столбцам ТМ.Таким образом, каждый элемент матрицы Sпредставляет некоторуюпозицию лэйаута и получает значение 1, если там стоит стрелка, значение 0 — если там не показан ни транзистор, ни диффузионная связь, и значение * — востальных случаях. Легко видеть, что значение * свидетельствует о невозможностипроведения через данную точку диффузионной связи от стока некотороготранзистора к линии Gnd.

   Например, для абстрактного лэйаута ТМ (рис.1.б.) матрица Sимеет вид:

                        1   2     3  4    5   6   7   8    9 10   11 12   13 14

               S1    * 1  0 0  **  * * 0 0  0 0  * *

               S2    1 *  1*  * * 0 0  1 *  0 0  0*

        S=  S3    1 *  * 1  0 0  00  0 0 0 0  * 1

               S4    0 0  0 0  1*  0 0 0 0  0 0  * *

               S5    1 *  * *  00  * 1 0 0  0 0  0 *

еще рефераты
Еще работы по радиоэлектронике