КОМПЬЮТЕРНАЯ ИНЖЕНЕРИЯ И _
ДИАГНОСТИКА 'w
УДК 681.327
ПРОЕКТИРОВАНИЕ АЛГОРИТМОВ ДИАГНОСТИРОВАНИЯ БЫСТРОДЕЙСТВУЮЩИХ МИКРОСХЕМ ОПЕРАТИВНОЙ ПАМЯТИ
РЯБЦЕВ В.Г._______________________
Предлагается метод проектирования U-Y-схем алгоритмов тестов диагностирования быстродействующих микросхем памяти. Показывается пример использования данного метода для синтеза алгоритма теста марш.
Развитие прогрессивных технологий в микроэлектронике, переход на новую элементную базу и применение новых архитектурных решений при проектировании изделий вычислительной техники требуют развития теории технической диагностики, разработки новых методов и средств. Важным представляется задача разработки новых методов автоматизации проектирования алгоритмов и программ тестового диагностирования сложных цифровых устройств, в частности больших интегральных схем (БИС) оперативных запоминающих устройств (ОЗУ).
Для микросхем памяти, которые в настоящее время применяются в электронных устройствах, характерны широкая номенклатура типов, большой диапазон характеристик, существенные различия в режимах работы и большое разнообразие вариантов конструктивно-технологического исполнения [1] . Самое высокое быстродействие имеют микросхемы памяти на арсенид галлиевых полевых транзисторах с затворами Шоттки, время выборки адреса которых не превышает 4 нс. Микросхемы памяти эмиттерно-связанной логики имеют время цикла 6-40 нс.
Для оценки работоспособности микросхем памяти необходимо осуществлять тестовое диагностирование на реальной рабочей частоте. Однако максимальная частота устройств тестового д иагностиро -вания БИС ОЗУ ограничена быстродействием блока микропрограммного управления, который задает микрооперации, выполняемые формирователями тестовых воздействий.
Значительного повышения быстродействия диагностических устройств можно достичь путем распараллеливания микроопераций формирования ко-
дов адреса, данных и обработки считанных реакций устройством диагностирования, обладающим аппаратной избыточностью. Преобразование параллельных кодов адреса, данных и кодов операций в последовательные коды увеличивает частоту формирования входных воздействий и снижает требования по быстродействию к основным блокам устройств тестового диагностирования полупроводниковой памяти. Однако аппаратная избыточность структуры диагностических устройств увеличивает сложность проектирования алгоритмов и программ тестов, так как необходимо управлять, одновременной работой нескольких групп формирователей адреса и данных.
Для отображения алгоритмов тестов удобно использовать графы адресных переходов G = (V, X ), вершины которых V соответствуют выбранным ячейкам памяти, а множество дуг X определяет операции, осуществляемые во время выполнения тестов.
Например, последовательность операций теста марш для запоминающего устройства, содержащего 8 ячеек, можно представить в виде ориентированного графа, приведенного на рис. 1. Множество вершин V= {0, 0, 1, ...,7} кроме номеров ячеек памяти содержит пустое множество 0, которое соответствует отсутствию выборки запоминающих ячеек и с данного состояния обычно начинается выполнение тестов.
Рис. 1. Граф теста марш
Множество дуг X графа G определяет последовательность выполнения адресных переходов, которые инцидентны дугам графа. Например, для теста марш множество пар из элементов V образует следующее множество:
X = {(&, a0), (a0> a0), (a0> aj), (ah ai),...,
(a6, a) (a7 a7)}.
Данная запись достаточно громоздка, однако она однозначно определяет последовательность осуществления адресных переходов, выполняемых по алгоритму проектируемого теста. Для реализации алгоритма теста необходимо в соответствующем графе осуществить обход вершин по маршруту, отраженному в его описании.
Для описания базовых условий и операторов, которые применяются в тестах диагностирования быстродействующих микросхем памяти, более удобным представляется использование U- Y-схем алгоритмов [2], которые определяются шестеркой
(A, U, Y, T, a(0),a(1)),
РИ, 2000, № 3
77
где A — множество состояний схемы; T— множество переходов; U — множество базовых условий; Y— множество базовых операций; a(0) — начальное состояние схемы; a(1) — заключительное состояние схемы.
Каждый переход из множества Т представляет
собой четверку (a, и, q, a'), где и — элементарное условие; q — элементарный оператор.
Эту четверку будем записывать в виде и/q
a-
->a .
Данное высказывание читается следующим образом: при истинном значении условия и схема А
переходит из состояния а в состояние a'.
Если условие перехода всегда выполняется (и=1), оно может быть опущено в описании алгоритма: q v ,
a —-—> a , пустой оператор q = e также можно не
указывать: a —u—> a'. Последовательность сопряженных переходов образует допустимый путь, который может быть записан в виде
a
ii1/ql
>a.
u2/q2
->a,
и
m—1
2
lqm^]
0
Данный путь отражает все выполняемые операторы и условия переходов, которые используются при изменении схем алгоритма из начального состояния а(0) в заключительное а(1).
Схемы алгоритмов удобно представлять графами с нагруженными дугами. Вершинами таких графов служат состояния схемы
A = {a(0), ai, a2,, am.h a(1)}.
Если осуществляется смена состояния
a.
и/q
->a
і+\ ■>
то вершины ai и aM соединяются дугой, которая нагружается парой и / q.
В [3] подробно изложен метод распараллеливания микроопераций в алгоритмах тестов диагностирования быстродействующих микросхем оперативной памяти, основанной на преобразованиях матриц инциденций графов адресных переходов.
Для описания параллельных микроопераций, выполняемых в тестах диагностирования микросхем памяти, предлагается использовать векторную форму записи состояний схем алгоритмов:
При выбранном коэффициенте к аппаратной избыточности структуры диагностического устройства данная запись принимает вид
X
X
где U =
вектор-предикат базовых усло-
и
к-1 _
вий переходов состояния схемы алгоритма, применяемый в текущий момент времени; x—безразличное состояние условия перехода; ukc-1 — используемое условие перехода, формируемое (k-1)-м формирователем;
б
qo
qi
вектор-столбец базовых операторов,
Lqk-і j
которые выполняются соответственно 0,1,...,(к-1)-ми формирователями кодов адреса и данных.
Условия переходов, отмеченные символом “ж”, в реализации ветвления программы не участвуют, а в приведенном выше примере используется условие перехода (к-1)-го адресного формирователя. Возможно использование условий перехода любого адресного формирователя, однако на практике, как правило, применяются условия перехода, формируемые либо нулевым, либо (к-1)-м адресным блоком.
Если применять условие перехода только нулевого адресного формирователя, тогда запись переходов в параллельных алгоритмах будет иметь вид
a
Такая особенность в записи переходов обусловлена тем, что все формирователи тестовых воздействий работают с общим объемом памяти диагностируемого изделия. Выборка данных из конечной запоминающей ячейки с координатами адреса (ж = nx) л (y = ny) или из начальной ячейки с координатами адреса (x = gx) л (y = gy) обычно возможна только при помощи одного адресного формирователя.
Для выбора условий перехода в структуре формата микрокоманд устройства необходимо предусмотреть отдельное поле, обеспечивающее задание номера формирователя, признаки перехода которого будут использоваться.
78
РИ, 2000, № 3
Как правило, вначале всех тестов осуществляется запись фона во все запоминающие ячейки диагностируемой микросхемы. Для подготовки к работе конвейера адреса в устройстве, имеющем степень аппаратной избыточности, равную четырем, необходимо выполнить такую последовательность переходов:
Г 0 > t, gx > x, gy > y'
0 > t, gx > x, gy > y 0 > t, gx > x, gy > y
a(0)
0 > t, gx > x, gy > y
-> a
i>
a 1
x > x x+1> x x+2 > x x+3 > x
a
2 •
На рис.2 представлен фрагмент алгоритма теста, при выполнении которого осуществляется запись нулей во все запоминающие ячейки диагностируемой микросхемы памяти.
Рис. 2. Фрагмент алгоритма записи фона во все ячейки
Для организации цикла в качестве условия перехода используется вектор-предикат
x
x
5
x
(x Ф nx) V (y Ф ny)
а реализацию операций записи данных во все ячейки памяти обеспечивает вектор операторов
w, x + 4 > x, y +1 > y * w, x + 4 > x, y +1 > y * w, x + 4 > x, y +1 > y * w, x + 4 > x, y +1 > y *
Символ * означает, что операция изменения кода адреса по координате у осуществляется только при наличии переноса из координаты х.
Если условие перехода u4 = (х ф nx)v(g ф ng) выполняется, то происходит циклическое повторение операций записи фона в смежные ячейки микросхемы памяти.
Если условие перехода не выполняется
РИ, 2000, № 3
Q2 =
u4 = (x ^ nx) v(g ^ ny), то осуществляется запись фона в последние четыре ячейки и схема переходит в состояние а3.
U— К-схема алгоритма теста марш, который выполняется устройством, имеющим степень аппаратной избыточности, равную четырем, приведена на рис. 3.
Для заполнения ячеек памяти фоном используются условие перехода и операторы
[U2 / Q2 ] _
x / w, x + 4 > x, y +1 > y *
x w, x + 4 > x, y +1 > y *
x w, x + 4 > x, y +1 > y *
u 2 _ / w, x + 4 > x, y +1 > y *
где u
= lx Ф nx
)v (y * ny )
Заполнение ячеек “марширующими” единицами / нулями при последовательном увеличении кода адреса обеспечивает базовое условие и операторы
U,/ qJ=
x / r, x + 2 > x, y + 1 > y *
x w, x + 2 > x, y + 1 > y *
x r, x + 2 > x, y + 1 > y *
и 5 / w, x + 2 > x, y + 1 > y *
2
где и5 = u2.
Заполнение ячеек “марширующими” нулями/еди-ницами при последовательном уменьшении кода адреса обеспечивает применение выражения
U.l Q
x r, x-2 > x, y-1> y *
x w, x-2 > x, y—1> y *
x r, x-2 > x, y—1> y *
и . w, x-2 > x, y—1> y*
где и. = (x ф gx) v(y Ф gy)
Повторное выполнение теста марш с инверсными данными обеспечивается циклическим повторением теста, для этого используется неравенство нулю счетчика циклов в следующем выражении:
[Ц/Q]=[) * 0]
gx > x, gy > у gx > x, gy > y,nott> t gx > x, gy > y gx > x, gy > y,nott> t
Использование U—К-схем алгоритмов тестов позволяет наглядно отобразить применяемые операторы и условия переходов, а также выделить параллельно выполняемые операции. Затем, используя синтаксис специализированного машинно-ориентированного языка программирования, можно разработать программу теста [4].
Достоинством использования графов с нагруженными дугами для синтеза схем алгоритмов является
79
сокращение объема графического материала, что уменьшает трудоемкость проектных работ. При изменении структуры диагностического устройства внешний вид графа алгоритма теста практически не изменяется, а корректируется лишь набор базовых условий переходов и операторов.
Таким образом, можно использовать общие графические изображения схем алгоритмов для проекти-
©
рования целого набора различающихся программ, x>x
соответствующих выбранной структуре диагности- x+1>x
ческого устройства. x+2>x
Используя распараллеливание микроопераций в x+3>x
алгоритмах тестов, можно проектировать и изготавливать быстродействующие устройства тесто -вого диагностирования микросхем оперативной памяти, частота работы которых достигает 100 МГц и более.
U2/ Q2
1>j
0>t, gx>x, gy>y 0>t, gx>x, gy>y 0>t, gx>x, gy>y 0>t, gx>x, gy>y
Для отладки алгоритмов и визуализации процесса выполнения программ тестов разработан комплекс программных средств [5]. По предложенному методу разработаны алгоритмы и программы тестов марш, галоп, бегущая единица, крест, галоп по строке, столбцу, по диагонали и целый ряд других.
Предлагаемый метод проектирования алгоритмов тестов, комплекс программных средств и поддерживающей документации рекомендуется научно-производственным объединениям, изготовляющим изделия полупроводниковой памяти, а также студентам и аспирантам высших учебных заведений.
x>x
x>x
x+1>x
x+1>x
V3 J
gx>x, gy
gx>x, gy>y gx>x, gy>y, nott>t gx>x, gy>y gx>x, gy>y, nott>t
U5/ Q5
Литература: 1. Лебедев O.H. Применение микросхем памяти в электронных устройствах: справочное пособие. М.: Радио и связь. 1994. 216с. 2.Капи-тонова Ю.В., Летичевский А.А. Математическая теория проектирования вычислительных систем. М.: Наука, 1988. 296с. 3. Адесина ТА., Башорун В.А., Рябцев В.Г. Автоматизированный синтез алгоритмов тестов полупроводниковой памяти // Проблемы управления и информатики. 1996. №5. С.127-133. 4.Тимченко А.А., Рябцев В.Г., Лизогуб Р.А., Салиу Дж. А. Имитационное моделирование устройств диагностирования микросхем оперативной памяти// Проблемы управления и информатики. 1996. №4. С. 120-126. 5.Мельников А.В., Порецкий М.А., Рябцев В.Г., Титаренко О.Л. Система диагностического обслуживания полупроводниковых запоминающих устройств// В сб. "Прогресивна техніка і технологія машинобудування, приладобудування і зварю- U8/ q8
вального виробництва . К.: НТУУ КПІ. -1998. Т.1. С. 223-237.
Поступила в редколлегию 10.05.2000
Рецензент: д-р техн. наук Тимченко А. А.
Рябцев Владимир Григорьевич, канд. Uq/Qq техн. наук, доцент Черкасского инже- ^ нерно-технологического института.
Научные интересы: техническая диагностика изделий полупроводниковой памяти. Увлечения: строительство дачного домика, садоводство. Адрес: Украина, 18006, Черкассы-6, а/я 1129, тел.: (0472)-43-56-28.
U5/Q5
nx>x, ny>y, nott>t nx>x, ny>y, nott>t nx>x, ny>y, nott>t nx>x, ny>y, nott>t
x>x
x>x
x-1>x
x-1>x
Рис.3. Схема алгоритма теста марш
80
РИ, 2000, № 3