Опубликован: 01.10.2013 | Уровень: для всех | Доступ: платный
Лекция 4:

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

Отсюда, как и в любой последовательной схеме соединения элементов, попадание хотя бы одного отказа в D -триггер (см. табл. 3.16) регистра бит-инструкции приводит к полной потере его работоспособности, или, что одно и то же, делает очень низкой вероятность правильной работы регистра передачи и хранения бит-инструкций. Здесь и далее приняты следующие обозначения константных неисправностей: "тождественный ноль" (" \equiv 0 "), "тождественная единица" (" \equiv 1 ") и "неопределенное состояние" (" \pm 1 ").

Таблица 3.15. Распределение логических вентилей в БП СБИС Н1841 ВФ1
Наименования основных блоков БП Количество вентилей Относительно всего БП
Последовательный 16-разрядный регистр 153 43,1 %
Арифметико-логическое устройство 72 20,3 %
Выходной коммутационный узел 34 9,6 %
Входной коммутационный узел 33 9,3 %
Схема коммутации канала транзита 30 8,4 %
Схема коммутации канала АЛУ 19 5,4 %
Дешифратор КОП 14 3,9 %
Всего в бит-процессоре 355 100,0 %
Таблица 3.16. Вероятности отказов D-триггера при одновременном отказе до двух вентилей
Выходы D-триггера Правильная реализация " \equiv 0 " " \equiv 1 " " \pm 1 "
Q 0,01 0,36 0,4 0,23
invQ 0,01 0,27 0,5 0,22

Сказанное подтверждается результатами моделирования, представленными в табл. 3.17. Действительно, как видно из рис. 3.21, отказ регистра команды гарантированно приводит к катастрофическому отказу бит-матрицы даже при 5-кратном резерве уже на первом - пятом отказе вентилей, потому что отказ регистра одного БП изменяет содержимое всех микрокоманд, распространяющихся через этот регистр по последовательному каналу ввода-вывода бит-инструкций всей СБИС (см. рис. 3.1). Здесь и далее использована гипотеза равномерного распределения отказов по вентилям СБИС.

Таблица 3.17. Процент нарушений сигналов записи инструкций в бит-матрицу
Тип системыввода в регистрбит-команд Процент нарушений в последовательности микрокоманд при отказе в бит-процессоре:
одного вентиля двух вентилей
Последовательный 41,6 % 66%
Параллельный 2,46 % 4,87 %

На рис. 3.21 Р_{раб} - вероятность сохранения работоспособности потоковой слов-инструкции, N_{отказ} - количество одновременно отказавших вентилей в бит-матрице, "Умножитель" и "Сумматор" - реализуемая слов-инструкция, 5х резерв - 5-кратный резерв, тонкие линии с маркерами - последовательная система ввода инструкций в бит-матрицу, жирные линии без маркеров - параллельная.

Вероятность сохранения работоспособности слов-команд

Рис. 3.21. Вероятность сохранения работоспособности слов-команд

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

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

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

Структурная схема CБИС с параллельной шиной инструкций

Рис. 3.22. Структурная схема CБИС с параллельной шиной инструкций

Структурные схемы последовательного и параллельного регистра инструкций БП изображены на рис. 3.23 и 3.24 соответственно. Из рис. 3.24 видно, что отказ D -триггера, передающего сигнал записи инструкции (на рисунке помечен "00" и красным цветом), в параллельном регистре приводит к потере этого сигнала, что, в свою очередь, приводит к потере управления над остальными БП, следующими за ним. Таким образом, на прохождение сигнала записи теперь влияет только один D -триггер, а не 16, как это было в схеме СБИС Н1841 ВФ1. Соответственно, если этот триггер технологически сделать более надежным, то вероятность отказа бит-матрицы по каналу управления можно свести практически к нулю.

Структурная схема последовательного регистра инструкций

Рис. 3.23. Структурная схема последовательного регистра инструкций
Структурная схема параллельного регистра инструкций

Рис. 3.24. Структурная схема параллельного регистра инструкций

Из данных табл. 3.18 видно, что общее количество вентилей такой схемы БП возросло на 8,7 %, но это увеличение можно компенсировать отказом от бит-операции "генерация константы" (см. табл. 3.1), которая использует 8 адресных бит регистра инструкции БП (поля А1-А4 - см. рис. 3.4). Эта бит-операция предназначена для хранения и циклического воспроизводства восьмибитной константы, задаваемой программистом. В этом случае функцию "генерация константы" можно реализовать не на схемотехническом, а на микропрограммном уровне организации вычислений.

С учетом изложенного, в дальнейшем в качестве базового будем использовать вариант, функционально аналогичный СБИС Н1841 ВФ1, с тем условием, что управление реализовано по схеме параллельного ввода бит-инструкций рис. 3.22.

Другим достаточно опасным источником возникновения катастрофических отказов в БП является его арифметико-логическое устройство, которое наиболее интенсивно используется в микропрограммах всех слов- и поток-инструкций. Согласно [101], АЛУ БП можно выполнить как по схеме универсального модуля рис. 3.12, так и многофункционального логического модуля (МЛМ) рис. 3.25.

Таблица 3.18. Распределение затрат в БП с параллельным регистром инструкций
Наименования основных блоков БП Количество вентилей Относительно всего БП
Р-трштер сигнала записи инструкции 12 3,1 %
Последовательный 16-разрядный регистр команды 176 45,6 %
Арифметико-логическое устройство 72 18,6 %
Выходной коммутационный узел 34 8,8 %
Входной коммутационный узел 33 8,5 %
Схема коммутации канала транзита 30 7,8 %
Схема коммутации канала АЛУ 19 4,9 %
Дешифратор КОП 10 2,6 %
Всего в бит-процессоре 386 100,0 %
Структурная схема многофункционального логического модуля (МЛМ)

Рис. 3.25. Структурная схема многофункционального логического модуля (МЛМ)

Во втором случае схема АЛУ функционально не избыточна, и она может выполнить только те арифметико-логические операции, которые предусмотрены системой бит-инструкций, закладываемых в проект БП в процессе декомпозиции задач проблемно-ориентированный СБИС (см. рис. 3.5). Это позволяет использовать в АЛУ схему многофункционального арифметико-логического модуля рис. 3.25, в котором каждая операция реализуется независимым блоком. Настройка такого АЛУ на заданную функцию пользователя выполняется с помощью выходного мультиплексора, на адресные входы которого подается код операции.

Основное достоинство данной схемы - это минимально возможная связность различных арифметико-логических функций по аппаратной реализации, что делает такое АЛУ минимально чувствительным к отказу одного "операционного" вентиля, так как общим в этой схеме является только выходной коммутатор. При этом в сравнении со схемой универсального логического модуля (УЛМ) схема АЛУ на МЛМ за счет параллельной и одновременной работы всех функциональных блоков многофункционального модуля обладает следующими отличиями:

  • потребляемая мощность возрастает (в данном случае) более чем в 3 раза, что критично для систем космического базирования;
  • время задержки в схеме возрастает на 60 %, что критично для существенно отстающей отечественной микроэлектроники.

Структурно-логическая схема АЛУ, реализованного по схеме УЛМ, включает дешифратор кода операции, операционный блок на основе мультиплексора и схему обратной связи, образованной D -триггером (см. рис. 3.2, рис. 3.12), (см. рис. 5.12, рис. 5.13 раздела 5.5 курса "Задачи и модели вычислительных наноструктур"). Данное АЛУ потенциально способно выполнить 16 логических функций двух переменных "комбинационного" типа и до десятка осмысленных операций "конечно-автоматного" типа. В АЛУ на УЛМ функциональную избыточность исключают с помощью схемы управления, дешифратор которой позволяет выполнить только предусмотренные проектом операции. В данном случае список бит-операций ограничен табл. 3.1.

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

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

Сравнительные характеристики нечувствительности к отказам этих двух схем АЛУ приведены в табл. 3.19, где показана вероятность сохранения правильной работы АЛУ в зависимости от количества отказавших вентилей, а параметром служит исполняемая бит-операция.

Таблица 3.19. Вероятность сохранения работоспособности функций АЛУ
Кол-во отказавших вентилей АЛУ на УЛМ АЛУ на МЛМ
+ \^ inv\^ mod2 stl + \^ inv\^ mod2 stl
1 0,2257 0,5278 0,5694 0,5278 0,2951 0,3669 0,7258 0,7258 0,6613 0,5282
2 0,0507 0,2836 0,3262 0,2806 0,0881 0,1326 0,5247 0,5247 0,4348 0,2764
3 0,0113 0,1552 0,188 0,1501 0,0266 0,0472 0,3778 0,3778 0,2843 0,1433

Приведенные данные позволяют сделать следующие выводы:

  • схема АЛУ на МЛМ в 1,6-4 раза менее чувствительна к отказам выходных каскадов вентилей по сравнению со схемой АЛУ на УЛМ, причем выигрыш возрастает с ростом карты отказов;
  • в обеих схемах устойчивость к отказам падает с ростом сложности реализуемой АЛУ функции, в частности, при реализации "конечно-автоматных функций" ("арифметическая сумма" и "запоминание единицей") устойчивость к отказам падает от двух до десяти раз в сравнении с реализацией "комбинационных функций" ("И", "И - НЕ", "сложение по модулю два").

Но высокая отказоустойчивость АЛУ, выполненного по схеме МЛМ, опасна увеличением латентного периода до получения функционально

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

Более высокая чувствительность АЛУ, выполненного по схеме УЛМ, удобна еще и тем, что сужает ядро схемы, диагностируемое прямыми методами, так как достаточно достоверным становится парадоксальное правило вывода типа: "если не реализуется более сложная операция БП, то тем более не реализуется и более простая".

Сказанное подтверждают результаты моделирования работы схем АЛУ, представленные в табл. 3.20, откуда видно, что для контроля правильной работы схемы АЛУ на УЛМ достаточно протестировать функции "арифметическая сумма", "запоминание единицей", "сложение по модулю два". Напротив, схема АЛУ на МЛМ требует тестирования всех функций. В табл. 3.20 "более сложные" функции стоят слева, а "более простые" - справа.

Таблица 3.20. Вероятность исполнения функции различными схемами АЛУ в условиях отказа более "сложных" функций
Кол-во отказавших вентилей АЛУнаУЛМ АЛУнаМЛМ
+ \^ inv\^ mod2 stl + \^ inv\^ mod2 stl
1 0,226 0,049 0,021 0 0,003 0,367 0,222 0,008 0,032 0,024
2 0,051 0,02 0,007 0 0,001 0,133 0,112 0,002 0,008 0,004

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

P_{раб}^{i} = (P^{1}_{раб})^{i} ( 3.5)

где P^{1}_{раб} - это вероятность сохранения работоспособности функции при одном отказе.

Однако как видно из табл. 3.19, гипотеза независимости отказов, а с ней и соотношение (3.5) соблюдается с определенными погрешностями. Например, для функции "сложение по модулю два" ( mod2 ), для АЛУ, выполненного по схеме УЛМ, P^{1}_{раб} = 0,5278, тогда P^{2}_{раб} = (P^{1}_{раб})^{2} = (0,5278)^{2} = 0,2785 и P^{3}_{раб} = (P^{1}_{раб})^{3} = (0,5278)^{3} = 0,147. Экспериментальные значения табл. 3.19 дают следующие результаты: P^{2}_{раб} = 0,2806; P^{3}_{раб} = 0,1501, то есть экспериментальные значения на \approx 0,0025 больше теоретических.

Евгений Акимов
Евгений Акимов

Добрый день!

 

Скажите, пожалуйста,планируется ли продолжение курсов по нанотехнологиям?

Спасибо,

Евгений

 

Nozimjon Fayziev
Nozimjon Fayziev
Таджикистан, Душанбе
Анна Волкова
Анна Волкова
Россия, г. Новосибирск