Uirh : другие произведения.

Про очень большую микросхему

Самиздат: [Регистрация] [Найти] [Рейтинги] [Обсуждения] [Новинки] [Обзоры] [Помощь|Техвопросы]
Ссылки:
Школа кожевенного мастерства: сумки, ремни своими руками
 Ваша оценка:


   То, что следует сказать - должно
   быть сказано ясно, четко и
   однозначно. О том, о чем не удается
   сказать ясно, четко и однозначно -
   следует умолчать.
   Из введения к описанию Алгола-60
  
  
   На этом фоне сентенция "советские большие интегральные микросхемы -
   самые большие интегральные микросхемы в мире!" выглядит мягко говоря некрасиво: запланированная автором этой пародии на широко известные на тот момент лозунги двусмысленность сама по себе весьма двусмысленна. Что дает повод посмеяться уже над её автором.
   Но мы смеяться пока не будем, а вместо этого задумаемся:
   - микросхема большая - хорошо это или плохо? Ну конечно хорошо! Чем больше площадь кристалла интегральной микросхемы, тем больше на ней разместится элементов и тем более сложное устройство можно сделать. Можно конечно уменьшить сами элементы - по этому пути все и пошли, потому как это дает дополнительный выигрыш в уменьшении энергопотребления и увеличении быстродействия каждого элемента... Но мы сейчас рассуждаем о другом.
   - если большая микросхема это хорошо, то почему же они такие маленькие? А потому, что чем больше площадь кристалла, тем больше вероятность попадания на эту площадь хотя бы одного дефекта. В результате чего кристалл окажется неработоспособен и пойдет в брак. Процент выхода годных микросхем конечно зависит от технологии... Ну так большие интегральные микросхемы как раз и изготавливаются на технологическом пределе - для них площадь кристалла такова, что выход годных составляет единицы или даже доли процента!
  
   Если один дефект делает микросхему неработоспособной, а технология пока не может обеспечить плотность дефектов меньшую чем одна штука на сколько-то квадратных миллиметров... (Ох уж эта технология!) ...То нельзя ли сделать так, чтобы устройство, которое мы реализуем в виде микросхемы, состояло из множества достаточно мелких одинаковых блоков, работающих все одновременно, причем таких чтобы для работоспособности устройства было не обязательно чтобы все эти блоки обязательно были исправны?
  
   Ну микропроцессор таким методом сделать скорее всего не удастся, а вот что-то типа ПЛИС, или вот: коммутатор...
  
  
   Соображения по поводу распределенной коммутационной среды.
  
   На сколько я понимаю - есть такая проблема "коммутация". Она конечно решается, но не то что бы очень.
   Т.е. существует и функционирует телефонная сеть, способная соединить два любых подключенных к ней телефона. Но не все одновременно. (Впрочем это и не требуется.) Раньше коммутация телефонного сигнала производилась в аналоговой форме с помощью механических устройств - сначала шаговых искателей, потом координатных соединителей, реле, в т.ч. герконовых... Сложно, громоздко и ненадежно. Теперь звук оцифровывается и между абонентскими комплектами двух связанных сетью телефонов пересылается поток чисел. То есть от коммутации как таковой фактически отказались: числа перебрасываются между ячейками запоминающего устройства, соответствующими абонентским комплектам, в точности как в памяти компьютера. Собираются в пакеты и пересылаются в таком виде - коммутация каналов заменена маршрутизацией пакетов...
   Для телефонии задача можно считать решена. Но на одной только коммутации речевого сигнала с его сильно ограниченным частотным и динамическим диапазоном свет клином конечно не сошелся. Проблема аналоговой коммутации никуда не делась.
   Ну а у меня есть на этот счет одна идейка...
  
  
   Рассмотрим то, что можно было бы назвать "коммутационная среда" (КС). Это матрица, состоящая из квадратных или шестигранных ячеек. Как соты. Границу, разделяющую две ячейки, пересекают N сигнальных линий (например две, или четыре), которые ячейка способна электрически соединить (или не соединить) с одноименными линиями, пересекающими другие её границы. Если ячейка квадратная - она способна одновременно установить два соединения, если шестигранная - три. К ячейкам, находящимся на периферии КС подключаются коммутируемые объекты - например телефонные линии. КС способна соединить любой из этих объектов с любым путем образования между ними цепочки скоммутированных ячеек - "трассы". Прокладка и разрушение трасс а так же тестирование целостности ячеек КС выполняется под управлением внешнего контроллера.
   Самое интересное в этой системе то, что она сильно избыточна, и поэтому является "живучей" - т.е. может нормально функционировать при выходе части ячеек из строя. Это позволяет реализовать данную систему в виде единой "очень большой" интегральной микросхемы.
   Как известно, интегральные микросхемы изготавливаются с помощью групповой технологии: на одной пластине, вырезанной из кремниевого монокристалла, формируется множество одинаковых схем. После чего пластина разрезается на отдельные кристаллы. Некоторые из них содержат дефекты и поэтому отбраковываются. Остальные устанавливаются в корпуса или используются в бескорпусном исполнении.
   Если ячейка КС получится достаточно простой и занимающей площадь не более одного квадратного миллиметра, то вполне можно получить "выход годных" на уровне 90 - 95 процентов. В этом случае можно изготовить КС в виде "очень большой" интегральной микросхемы, в том числе занимающей целиком всю площадь полупроводниковой пластины. Разрезание пластины на отдельные кристаллы и их разбраковка не потребуется. Однако необходимо произвести тестирование интерфейсных схем, расположенных на периферии кристалла чтобы при подключении внешних выводов использовать только исправные.
  
   Предположим что ячейка КС квадратная - т.е. имеет четырех соседей. С каждым из соседей она соединена N сигнальными линиями. Эти линии коммутируются с помощью шести комплектов аналоговых ключей, соединяющих одноименные линии по полному графу. Состояние ячейки - это состояние этих ключей.
   Коммутируемые объекты подключаются к периферийным ячейкам КС, отличающимся от остальных только тем, что снабжены контактными площадками для подсоединения внешних выводов. Ну и еще может быть возможностью скоммутировать сигнальные линии крест накрест.
   Каждая ячейка в каждый момент времени работает в одном из двух режимов которые назовем "работа" и "управление". В первом из них ячейка сохраняет неизменным своё текущее состояние и никак не реагируя на сигналы, передаваемые по сигнальным линиям. Во втором - ячейка воспринимает информацию, передаваемую по сигнальным линиям как команды. С их помощью можно:
   - изменить состояние ячейки, в т.ч. замкнуть или разомкнуть любой из имеющихся в ней комплект аналоговых ключей.
   - опросить состояние ячейки
   - проверить работоспособность и состояние любого из соседей данной ячейки
   - устроить сброс любой из соседних ячеек.
   - изменить режим работы ячейки: т.е. передать режим "управление" любому из четырех соседей данной ячейки. (При этом, если ячейка, получившая режим управления не входит в трассу - управление может быть потеряно.)
   "Трассой" будем называть непрерывную цепочку ячеек, сигнальные линии которых соединены между собой. Все ячейки трассы, кроме может быть одной, должны находится в рабочем режиме. Если в пределах трассы нет ни одной ячейки, находящейся в режиме управления - трасса считается готовой к использованию. Периферийные (интерфейсные) ячейки извещают об этом подключенные к ним внешние устройства с помощью специального сигнала.
   Внешнее управляющее устройство постоянно хранит карту ячеек КС, в которой отмечает их текущее состояние. По этой карте оно решает задачу трассировки - т.е. вычисляет последовательность ячеек, которые должны образовать необходимую трассу. Это может быть сделано множеством способов. Например с помощью широко известного "волнового" алгоритма.
   Внешнее управляющее устройство подключается к одному или нескольким
   специальным управляющим портам, отличающимся от прочих периферийных ячеек
   наличием дополнительного сигнала "сброс", принудительным образом
   размыкающего все ключи и переводящего данную ячейку в режим управления.
  
   Работа КС производится следующим образом:
   Перед началом работы тестируется весь объем КС: от управляющего порта прокладываются всевозможные трассы таким образом чтобы проверить работоспособность всех ячеек КС и заполняется карта ячеек. А сами ячейки приводятся в исходное состояние (всё отключено).
   При поступлении запроса на установление соединения между двумя внешними объектами вычисляются две трассы - основная, соединяющая периферийные ячейки, к которым непосредственно подключены коммутируемые объекты, и вспомогательная
   - соединяющая одну из этих ячеек с управляющим портом. Далее управляющее устройство прокладывает вспомогательную трассу, потом основную, после чего разрушает вспомогательную.
   При поступлении запроса на разрыв соединения заново вычисляется вспомогательная трасса (до любой из ячеек основной). После этого вспомогательная трасса прокладывается, основная трасса разрушается, разрушается вспомогательная.
  
   Прокладка, а так же разрушение трассы производится за столько шагов, сколько ячеек входят в трассу. На каждом очередном шаге:
   - опрашивается состояние текущей управляемой ячейки (т.е. находящейся в режиме управления) и сравнивается с ожидаемым. Кроме того опрашивается работоспособность соседних ячеек на предмет выявления вышедших из строя.
   - если расхождений с информацией в карте ячеек нет - ячейка приводится в требуемое состояние, т.е. размыкаются или замыкаются находящиеся в ней аналоговые ключи.
   - режим управления передается одной из соседних ячеек. В результате этого трасса удлиняется или укорачивается.
  
   Для передачи управляющих сигналов можно использовать нечто вроде интерфейса I2C: требует всего две сигнальные линии; легко реализуется как программно так и аппаратно - на сдвиговых регистрах и простейшей логике. В ячейках КС, которые всегда будут пассивными, не требуется наличие тактового генератора - всё можно делать по синхросигналу интерфейса. Например первый байт - команда, а второй аргумент или ответ управляемой ячейки. Причем вполне можно ограничиться передачей не восьми а четырех бит в каждом "байте".
  
   Возможный недостаток рассматриваемой системы - большое затухание сигнала.
  

 Ваша оценка:

Связаться с программистом сайта.

Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души" М.Николаев "Вторжение на Землю"

Как попасть в этoт список

Кожевенное мастерство | Сайт "Художники" | Доска об'явлений "Книги"