На время получения индивидуальных откликов от всех бит-процессоров тестируемого канала (в данном случае это \[ T_{d} \] из (6.1) курса "Задачи и модели вычислительных наноструктур" основное влияние оказывают два фактора: режим работы бит-процессора и допустимое время "сеанса связи" с ним, которое определяется вторичной топологической структурой тестовой микропрограммы.
Из таблиц 5.7, 5.8 курса "Задачи и модели вычислительных наноструктур" и 3.1, видно, что бит-процессор может работать в трех режимах: комбинационного ( AND, NAND, XOR ), конечного ( ADD, ST1, CG ) и коммутационного ( WTR ) автомата с FIFO -регистровым типом распространения данных в процессе передачи, обработки или циклического "хранения" ( CG ).
В режиме конечного автомата "глубина" PD - ассоциативной обратной связи (см. рис. 5.12 и 5.13 курса "Задачи и модели вычислительных наноструктур") равна одному такту. Поэтому минимальная
последовательность тест-данных, в которой формируется декартово произведение второго порядка \[ S*S (S\in\{0, 1, 2, 3\}) \] , отвечающее полной матрице переходов такого автомата, имеет вид: 0,0,1,1,2,2,3,3,0,2,1,3,2,0,3,1,0.
Здесь \[ S \] - десятичное представление наборов значений двоичных входных переменных бит-процессора: \[ (S = 1):=(x_{2} = x_{1} = 0) \] , \[ (S = 2):=(x_{2} = 0; x_{1} = 1) \] , \[ (S = 2):=(x_{2} = 1, x_{1} = 0) \] , \[ (S = 3):=(x_{2} = x_{1} = 1) \] .
Действующая карта отказов способна перевести бит-процессор из режима комбинационного в режим конечного автомата, что вынуждает использовать эту же последовательность и при диагностике "комбинационных" бит-инструкций.
При работе в режиме коммутационного автомата используются только D -триггеры канала АЛУ и транзита, полная матрица переходов которых задана на алфавите \[ S\in\{0,1\} \] и формируется последовательностью 0,0,1,1,0.
В Т -рекурсивных тестах слияние по "ИЛИ" откликов от всех бит-процессоров одного тестового канала и продолжительность "сеансов связи" с каждым из них, которая ограничена 4 тактами (см. рис. 7.12- 7.14), приводят к следующим разбиениям на циклы и модификациям этих последовательностей тест-данных:
Здесь:
Специфика работы тестовых микропрограмм при контроле бит-инструкций:
динамику работы подсистемы локализации и идентификации отказов в современных микроэлектронных МКМД-бит-потоковых технологиях, можно сделать следующие выводы.
Согласно методике многоуровневого имитационного моделирования бит-потоковых субпроцессоров (см. раздел 3.4), во время функционального контроля пространство прямой диагностики бит-процессоров разбивается на три подпространства:
Таким образом, стратегию функционального иерархического контроля можно реализовать как взаимосвязанную систему тестов, в которой поэтапно сужается проверяемое пространство возможных состояний бит-матрицы за счет информации, полученной на предыдущих этапах тестирования.
В СБИС Н1841 ВФ1 каналы ввода и хранения бит-инструкций выполнены по простейшей последовательной схеме, что было обусловлено количеством выводов в корпусе СБИС. Это увеличило время ввода (микро)программы, но позволило достаточно просто проконтролировать правильность ее загрузки в 320-битный FIFO -регистр. Для этого достаточно осуществить двойной ввод (микро)программы и сопоставить на выходе загружаемую последовательность с получаемой после первого ввода. Это достаточно достоверный способ обнаружения отказов D -триггеров, но он не позволяет отреагировать на сбои во время второго сеанса ввода (микро) программы.
В системе параллельного ввода (микро)программы рис. 7.19 время ввода сокращено в 16 раз, но усложнена процедура контроля правильности ввода, так как нет возможности напрямую считывать реально хранимую бит-инструкцию в каждом регистре бит-инструкции. В этом случае подпространство управления можно тестировать только косвенно в процессе контроля коммутационных и функциональных возможностей бит-матрицы, которые в регистрах бит-инструкций представлены различными полями (см. рис. 3.2).
При контроле вертикальных и горизонтальных связей косвенно проверяются D -триггеры, принадлежащие поля А1-А6 регистра бит-инструкций. Поэтому тестовые микропрограммы контроля вертикальных и горизонтальных связей необходимо модифицировать таким образом, чтобы каждый из этих триггеров побывал и в "нулевом", и в "единичном" состояниях.
Аналогичным образом косвенно проверяется работоспособность D -триггеров, принадлежащих полю кода операции регистра бит-инструкций, когда во время тестирования арифметико-логических функций необходимо делать вывод о неработоспособности либо АЛУ, либо регистра. Это делает весь процесс эксплуатационного контроля бит-матрицы глобально связанным, что негативно сказывается на продолжительности коммутационного и функционального контроля бит-матрицы и служит достаточно серьезным препятствием на пути построения такой системы взаимного контроля бит-матриц, в которой вопрос "кто сторожит сторожа" стоял бы не так остро.
По результатам косвенной проверки пространства управления трудно получить достаточную информацию о характере неисправности бит-процессора и о количестве одновременных отказов, так как отказ одного или двух вентилей в бит-процессоре не выводит его из строя, а лишь сокращает пространство ( \[ E = 2^{R} \] ) правильно исполняемых инструкций.
Поэтому имеет смысл организовать доступ к регистрам бит-инструкций для непосредственного контроля пространства управления по схеме рис. 7.19, где:
Из перечисленных сигналов глобальными являются SetTs и C, и именно они ограничивают размеры синхронно работающей бит-матрицы.
Схема рис. 7.19 работает следующим образом. Сначала за 1 такт в регистр команды бит-процессора, выделенного с помощью сигнала SetPr, заносится бит-инструкция, а в остальные бит-процессоры заносятся нули. После этого в течение 16 тактов подается сигнал SetTst = 1 и регистры команд всей матрицы начинают работать как сдвиговые регистры. Но так как во все регистры, кроме тестируемого бит-процессора, внесены нули, то записанная инструкция считывается на выходе TstPrg последовательно старшим разрядом вперед. Общее время диагностики подпространства управления \[ T^{u}_{d} \] равно \[ T_d^u = [8\cdot(М_{1} *М_{2})^{2} +24\cdot М_{1} *М_{2}]\cdot\tau, \] (должно быть \[ (1+16)*М_{1}*М_{2} \] ), что при тактовой частоте бит-матрицы 250 МГц и ее размерах \[ М_1 = 40 М_{2} = 40 \] составит 83 миллисекунды.
Возможны и другие варианты построения схем бит-процессоров с доступным для тестирования подпространством управления, которые минимизируют системные временные издержки этого этапа диагностики за счет схемотехнического уровня организации работы бит-матрицы. Конкретный вариант схемы управления "записью-чтением" регистров команд бит-процессоров зависит от разбиения всего пространства управления на две составляющие, контролируемые прямым и косвенным путем. Поэтому в первую очередь необходимо оценить все системные аппаратно-временные издержки на функциональный контроль и контроль коммутации, и только после этого приступать к их минимизации, вводя в схему бит-процессора дополнительные элементы для эффективного контроля регистров бит-инструкций.
При выборе подпространства прямой диагностики внутренней системы коммутации бит-процессоров следует учесть, что отобранные кодовые комбинации тестируемых бит-инструкций кроме всего прочего должны обеспечить опосредованный информационный доступ к каждому бит-процессору. Только при выполнении этого условия можно организовать из последовательности бит-процессоров общий канал распространения тест-данных и откликов от периферии к центру бит-матрицы и наоборот (в дальнейшем тестовый канал ).
Выделить подпространство коммутации, контролируемое прямым путем, можно с помощью упрощающей гипотезы: если в процессе прямой диагностики бит-матрицы каждый бит адресной части (А1-А6, рис. 3.2) всех бит-инструкций побывал и в "нулевом", и в "единичном" состоянии, то результаты прямого контроля полученных таким путем коммутационных функций бит-процессоров с высокой степенью достоверности можно распространить на остальные, косвенно контролируемые комбинации соединения входов-выходов.
В этом случае для прямого контроля коммутационных возможностей бит-матрицы требуется всего два типа тестовых микропрограмм, которые к тому же обеспечивают контроль вертикальных и горизонтальных каналов FIFO -регистровой передачи данных по бит-матрице, а значит, и правильность исполнения в ней операции "расширенный транзит" ( WTR - см. табл. 3.1) [138-141]. Для такого тестирования достаточно закодировать термы, изображенные на рис. 7.20, следующим образом:
Для рис. 7.20-а пары адресов (А1-А4) кодируют канал передачи бит-данных "слева-направо", (А2-А5) - "справа-налево", а (А3-А6) -
"слева-налево", а для рис. 7.20-б все аналогично, только с вращением вдоль побочной диагонали [298]. Аналогично для соответствующих пар рис. 7.20 (в-г), (д-е), (ж-з), (и-к), (л-м).
Таким образом, контроль подпространства коммутации можно совместить с контролем подпространства управления в части управления входными и выходными коммутаторами и определяет характер расположения интерфейса ввода-вывода бит-матрицы. Для удобства тестирования интерфейс должен быть полностью доступен (см. рис. 7.18) либо слева и снизу при термальном составе рис. 7.20-а и 7.20-б, либо сверху и справа при термальном составе рис. 7.20-в и 7.20-г.
В этом случае контроль подпространства коммутации и связанного с ним подпространства управления можно ограничить двумя типами однострочных тестов [138-141] (на рис. 7.20 верхняя строка - это первый тип, а нижняя - это второй тип), которые снижают размерность тестируемого пространства состояний регистра бит-инструкций бит-процессора с 216 до 9:
Таким образом, при контроле бит-матрицы тестовое ядро прямой оперативной диагностики можно ограничить семью состояниями регистра команд каждого бит-процессора из 216 возможных. При этом повысить полноту диагностики всей бит-матрицы можно в процессе послеполетного обслуживания ЛА. Цель такой диагностики состоит в построении и анализе матрицы трансформаций функций под воздействием карт отказов, которую можно использовать при интерактивной компоновке "рабочего тела" микропрограммы, учитывающей топологию размещения бит-инструкций, фактически реализуемых бит-процессорами с отказавшими вентилями.