Научная статья на тему 'Автоматизация проектирования программы теста March FD'

Автоматизация проектирования программы теста March FD Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
70
17
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Рябцев Владимир Григорьевич, Аль Мади Мудар, Кудлаенко Валерий Михайлович

На основе многозначных преобразований матриц инциденций графов адресных переходов предлагается метод автоматизированного синтеза микроопераций U-Y-схемы алгоритма теста March FD, позволяющий уменьшить трудоемкость проектирования программы данного теста на языке Prover, пригодной для практического применения.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Automate the design of the test program March FD

On the basis of the multivalued transformations of incidence matrixes of graphs of address transitions, the method of automated synthesis of micro-operations of the U-Y scheme of the March FD test algorithm is proposed, which makes it possible to reduce the complexity of designing a program of this test in the Prover language suitable for practical application.

Текст научной работы на тему «Автоматизация проектирования программы теста March FD»

УДК 681.518.54

В.Г. РЯБЦЕВ, М.К. АЛЬ МАДИ, В.М. КУДЛАЕНКО

АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ ПРОГРАММЫ ТЕСТА March FD

На основе многозначных преобразований матриц инциденций графов адресных переходов предлагается метод автоматизированного синтеза микроопераций U-Y-схемы алгоритма теста March FD, позволяющий уменьшить трудоемкость проектирования программы данного теста на языке Prover, пригодной для практического применения.

Введение

В настоящее время вместе с повышением технических параметров микросхем полупроводниковой памяти продолжаются исследования [1-3], направленные на разработку новых тестов, обеспечивающих более эффективное диагностирование запоминающих устройств (ЗУ). Особый интерес вызывает новый метод тестового диагностирования ЗУ при помощи алгоритма March FD, который состоит из симметричной последовательности операций записи и считывания единиц и нулей и обеспечивает выявление множества наиболее распространенных неисправностей в микросхемах памяти [4].

Авторы теста предлагают для записи основных операций использовать следующие символы: W1, W0, R1, R0, что соответствует операциям записи единицы и нуля, а также операциям их считывания. Но в такой форме записи упускается адрес, по которому происходит обращение к ЗУ. При выполнении теста предполагается считывание из ячейки единицы или нуля, однако в неисправном устройстве данные могут быть искажены, и тогда выполняемый процесс не будет соответствовать его алгоритмическому описанию.

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

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

1. Операторная форма записи алгоритма теста March FD

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

W(a) - запись единицы в ячейку с адресом а;

V(a) - запись нуля в ячейку с адресом а;

R(a) - считывание данных из ячейки, адрес которой равен а.

Последовательность выполняемых операций P можно представить в виде операций, выполняемых над всем множеством тестируемых ячеек [5]. Например, операции записи

n—1

единиц во все ячейки при возрастании кода адреса можно отобразить в виде: P W(a), а

a=0

последовательность операций записи нулей во все ячейки при уменьшении кода адреса

0

можно представить в следующем виде: P V(a). Операции считывания данных отобража-

a=n—1

ют также последовательность выборки ячеек памяти, при возрастании кода адреса -

n—1 0

P R(a) и при его уменьшении - P R(a), но не отражают сами данные, которые могут

a=0 a=n—1

быть искажены в ЗУ.

Алгоритм теста March FD содержит 15 шагов, которые можно отобразить в операторном виде:

n—1 n—1 n—1 n—1

П™ = P0 V(a) Po R(a) P(R(a)W(a)W(a)R(a)) P(R(a)V(a)R(a)W(a)) ,

a=0 a=0 a=0 a=0

n—1 n—1 n—1 n—1 n—1

P (R(a)W(a)) P R(a) P R(a) P (R(a)V(a)V(a)R(a)) P (R(a)W(a)R(a)V(a)) ,

a=0 a=0 a=0 a=0 a=0

n—1 n—1 0 n—1 0 n—1

P (R(a)V(a)) P R(a) P (R(a)W(a)W(a)R(a)) P R(a) P (R(a)V(a)V(a)R(a)) P R(a) .

a=0 a=0 a=n—1 a=0 a=n—1 a=0

Количество шагов алгоритма определяется числом последовательностей выполняемых операций, а время выполнения теста вычисляется по формуле:

s kj

TMarch FD = tjj = 35tc, если Vi, Vj t ц = t c,

J=1 j=1

здесь tij - продолжительность j -й операции i-го шага алгоритма; s - число шагов алгоритма;

kt ек|к = (k17k2,..., ks} - число операций i-го шага; tc - время цикла обращения к ЗУ.

Предлагаемая операторная форма записи алгоритма теста March FD отображает тип выполняемой операции и последовательность смены кода адреса при выборке ячеек памяти.

2. Автоматизированный синтез микроопераций алгоритма теста March FD

Для снижения трудоемкости проектирования программ тестов предлагается использовать графы адресных переходов, которые возникают при выполнении теста. Для ЗУ емкостью n бит адресные переходы можно представить в виде направленного графа G = (V, Х), содержащего n+1 вершину и m ребер, число которых равно количеству операций обращения к ЗУ. Направленный граф представляем в виде матрицы инциденций, элементы которой принимают значение: а i, j =1, если ребро j выходит из вершины i; а i, j =-1, если ребро j входит в вершину i или в данной вершине имеется петля; а i, j = 0, если ребро j не имеет общей точки с вершиной i.

Множество вершин графа V = { 0 , 0,1, ..., n-1} кроме адресов ячеек памяти содержит символ пустого множества, что соответствует началу тестирования, когда нет выбранных ячеек. Множество ребер Х соответствует количеству операций обращения к ЗУ в исследуемом шаге алгоритма. Таким образом, каждый столбец матрицы инцидентен отдельной операции обращения к ЗУ и содержит два элемента +1 и -1, отличных от нуля, если выполняется адресный переход, а если код адреса не меняется, то столбец содержит только один элемент -1 отличный от нуля.

Для каждого шага алгоритма матрицу микроопераций можно представить в следующем виде:

Q = [q раб Q x Q yQ 11

здесь Ораб- рабочие микрооперации; Qx- микрооперации формирования кода адреса

координаты X; Q y - микрооперации формирования кода адреса координаты Y; Q t - микрооперации формирования данных. К рабочим микрооперациям относятся диагностические микрооперации: W - записи, R - считывания и A - сравнения считанных и эталонных данных.

Для синтеза микроопераций в параллельных алгоритмах предлагается использовать многозначные логические преобразования над элементами матриц инциденций графов адресных переходов, которые реализованы в программе Transfor.exe [6].

Для первого шага алгоритма при емкости памяти 8 бит матрица инциденций, сформированная на рабочем поле программы Transfor.exe, приведена на рис. 1.

ft ВО! J Т FILE EDIT ГтЕИОРУ OPERATION ь

-i i i 0 0 0 0 0 0:SbTIiFl 0 0 Гтнв

-1 1 ill 0 0 0 0 0

0 L i 0 0 0 0 0

a 0 -1 1 0 0 0 0 . _

CI □ Ш 1 i 0 0 0

□ 0 0 -i i 0 0

0 □ 0 0 0 " i 1 0

□ 0 0 0 0 0 -1 i

й 0 0 0 0 0 0 -i

d

_ _ -к ..Li A

Рис. 1. Матрица инциденций для первого шага В результате преобразований, выполненных программой Transfor.exe, получаем матрицы М0-М3, отображающие на первом шаге алгоритма микрооперации изменения кода адреса для тестера, который обеспечивает одновременное формирование тестовых воздействий для 4-х смежных тактов диагностирования:

M о =

' 1 0" " 1 0" " 1 0" " 1 0 "

-1 1 0 0 0 0 0 0

0 0 -1 1 0 0 0 0

0 0 0 0 -1 1 0 0

0 0 ; Mi = 0 0 ; M 2 = 0 0 ; M3 = -1 1

0 -1 0 0 0 0 0 0

0 0 0 -1 0 0 0 0

0 0 0 0 0 -1 0 0

0 0 0 0 0 0 0 -1

В результате анализа данных матриц можно установить, что первый адресный формирователь обращается к ячейке с адресом а = 0, второй - а = 1, третий - а = 2, четвертый - а = 3, а затем коды адреса увеличиваются на 4 до тех пор, пока 4-й формирователь не обратится к последней ячейке памяти.

Для второго шага можем получить аналогичные матрицы инциденций, с той лишь разницей, что операции записи заменяются операциями считывания.

Операции третьего шага можно представить в виде графа адресных переходов, приведенного на рис. 2.

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

Для третьего шага при емкости памяти 8 бит получаем следующую матрицу инциденций:

М5Й =

м.а = м.о = м.а = Мз43 =

1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 -1 1 О О О о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1 1 о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о о -1 -1 -1 -1

После преобразования данной матрицы при помощи программы Transfor.exe получаем четыре одинаковые матрицы, которые отображают микрооперации 4-х формирователей адреса для третьего шага алгоритма:

~ 1 о о о о о о о --1 1 о о о о о о о -1 1 о о о о о 0 0 -1 1 0 0 0 0 0 0 0 -1 1 0 0 0 о о о о -1 1 о о о о о о о -1 1 о

0 0 0 0 0 0 -1 1

о о о о о о о -1

Это свидетельствует о том, что все 4 адресных формирователя будут работать одинаково и формировать адреса одних и тех же ячеек памяти, а после 4-х циклов обращения к памяти код адреса будет изменяться на единицу. Аналогичные выводы можно сделать для 4-го, 8-го и 9-го шагов алгоритма.

На пятом шаге алгоритма к каждой ячейке обращаются дважды: сначала с операцией считывания, а затем с операцией записи единицы. Для емкости памяти 8 бит на пятом шаге получаем следующую матрицу инциденций:

~ 1 о о о о о о о о о о о о о о

-1 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 0

о о -1 -1 1 о о о о о о о о о о о о о о о -1 -1 1 о о о о о о о о о о о о о о о -1 -1 1 о о о о о о о о о о о о о о о -1 -1 1 о о о о о

0 0 0 0 0 0 0 0 0 0 -1 -1 1 0 0 0

о о о о о о о о о о о о -1 -1 1 о 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1

Mst5 =

После преобразования данной матрицы получаем четыре матрицы, которые отображают микрооперации 4-х адресных формирователей на 5-м шаге алгоритма:

Mst5 = Mst5 = 0 1

1 0 0 0

-1 1 0 0

0 0 0 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

0 -1 1 0

0 0 0 0

0 0 -1 1

0 0 0 0

0 0 0 -1

0 0 0 0

Mst5 = Mst5 =

2 3

1 0 0 0

0 0 0 0

-1 1 0 0

0 0 0 0

0 -1 1 0

0 0 0 0

0 0 -1 1

0 0 0 0

0 0 0 -1

Анализируя данные матрицы, приходим к выводу, что нулевой и первый формирователи обращаются к одним и тем же четным ячейкам, а второй и третий - к нечетным ячейкам. Для выполнения адресных переходов коды адреса нужно увеличивать на 2.

Аналогичные преобразования матриц инциденций выполняются для всех остальных шагов алгоритма теста.

3. Синтез U-Y-схемы алгоритма теста March FD

Для описания базовых условий и операторов, которые выполняются в тестах диагностирования быстродействующих микросхем памяти, удобно использовать U-Y-схемы алгоритмов [6], которые определяются шестеркой: (A, U, Y, T, a(0),a(1)). Здесь A - множество состояний схем; T - множество переходов; U - множество базовых условий; Y - множество базовых операций; a(0) - начальное состояние схемы; a(1) - заключительное состояние схемы. Для описания микроопераций устройства диагностирования, имеющего мультипроцессорную структуру, предлагается использовать векторную форму записи состояний схем U/Q

алгоритмов a

-> a', где U - вектор-предикат базовых условий переходов схемы

алгоритма, применяемый в текущий момент времени; Q - матрица микроопераций, которые выполняются параллельно работающими формирователями кодов операций, адреса и данных.

и-У-схема алгоритма данного теста приведена на рис. 3.

Объем диагностируемой памяти определяется содержимым регистров GX, GY начального адреса и регистров ККХ, NY конечного адреса. Обычно GX = GY = 0, а для квадратной

конфигурации запоминающих ячеек КХ = NY = л/п -1, где п - емкость диагностируемого изделия.

В качестве базовых условий переходов алгоритма используются следующие признаки, которые формируются при сравнении текущих координат адреса X и Y с состояниями регистров GX, GY и регистров ОТ, NY: X Ф ОТ,У Ф ОТ, X Ф ОХ,У Ф ОУ и комбинации данных условий: (X ф ОТ) ог (У ф ОТ), (X ф ОХ) ог (У ф СУ).

Для формирования выходных и эталонных данных применяются микрооперации занесения исходных данных в регистры То-Т3 и инверсии содержимого данных регистров. Для формирования кода адреса применяются следующие микрооперации:

_ Х1 :=Х1 ± С, У1 :=У1 ± С,

здесь С = {1, 2, 3, ..., 15}; 1 = 0,3 - номер формирователя.

На 1-11, 13 и 15 шагах алгоритма тестирование ЗУ осуществляется с увеличением адресов смежных ячеек и для циклического выполнения операций используется следующее условие перехода (X Ф КХ) ог (У Ф №У). На 12 и 14 шагах обращение к ячейкам памяти осуществляется при уменьшении их адресов, что обеспечивается применением условия перехода (X ф ОХ) ог (У ф ОУ).

Рис. 3. U-Y-схема алгоритма теста March FD

Выводы

Предлагаемый метод, в котором используются многозначные логические преобразования матриц инциденций графов адресных переходов, позволяет автоматизировать синтез микроопераций для тестеров, имеющих мультипроцессорную структуру и обеспечивающих одновременное формирование тестовых воздействий для смежных тактов, что увеличивает частоту диагностирования. Применение U-Y-схем алгоритмов тестов позволяет наглядно отобразить применяемые операторы и условия переходов, а также выделить параллельно выполняемые операции. Затем, используя синтаксис специализированного машинно-ориентированного языка программирования Prover [7], можно разработать программу теста.

Список литературы: 1. Yarmolik S.V, Yarmolik V.N. Memory Address Generation for Multiple Run March Tests with Different Average Hemming Distance. // Proceeding of East-West & Test International Workshop (EWDTW'06). Sochi, Russia, September 15-19. 2006. Р. 212-216. 2. SokolB, Yarmolik V.N. Memory fault Detection Techniques with Use of Degree of Freedom in March Tests. // Proceeding of East-West & Test

International Workshop (EWDTW'05). Odessa, Ukraine. September 15-19. 2005. Р. 96-101. 3. SokolB, MrozekI., Yarmolik V.N. Transparent March Tests to effective pattern sensitive. // Proceeding of East-West & Test International Workshop (EWDTW'04). Yalta-Alushta, Crimea, Ukraine. September 23-26. 2004. Р. 166171. 4. Harutunyan G., Vardanian V.A. A March Tests for Full Diagnosis of All Simple Static Faults in Random Access Memories. // Proceeding of East-West & Test International Workshop (EWDTW'06). Sochi, Russia, September 15-19. 2006. Р. 68-71. 5. Ryabtsev V.G., Kudlaenko V.M., Movchan Y. U. Method of estimation diagnostic properties of the Tests Family March. // Proceeding of East-West & Test International Workshop (EWDTW'04). Yalta-Alushta, Crimea, Ukraine. September 23-26, 2004. Р. 220-224. 6. Рябцев В.Г. Проектирование алгоритмов диагностирования быстродействующих микросхем оперативной памяти. // Радиоэлектроника и информатика. 2000. № 3. C. 77-80. 7. Мельников А.В., Рябцев В.Г. Контроль модулей памяти компьютеров. К.: "Корншчук", 2001. 172 с.

Поступила в редколлегию 23.09.2006 Рябцев Владимир Григорьевич, д-р техн. наук, профессор Черкасского государственного технологического университета. Научные интересы: тестовое диагностирование полупроводниковых запоминающих устройств. Адрес: Украина, 18006, Черкассы, бульв. Шевченко, 460, тел. 8-04-72-73-02-71.

Аль Мади Мудар, аспирант Черкасского государственного технологического университета. Научные интересы: верификация моделей микросхем памяти. Адрес: Украина, 18006, Черкассы, бульв. Шевченко, 460, тел. 8-04-72-73-02-71.

Кудлаенко Валерий Михайлович, аспирант Черкасского государственного технологического университета. Научные интересы: принципы построения устройств диагностирования микросхем и модулей памяти. Адрес: Украина, 18006, Черкассы, бульв. Шевченко, 460, тел. 8-04-72-73-02-71.

УДК 004.77:339.14 В.М. БОРЯЧОК

МЕТОД ОРГАНИЗАЦИИ ПОСТАВОК В СИСТЕМАХ ЭЛЕКТРОННОЙ КОММЕРЦИИ

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

Введение

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

В связи с этим целью работы является сокращение временных, а также финансовых затрат, связанных с организацией поставок в СЭК. Для достижения данной цели решаются следующие задачи: разработка метода маршрутизации в системах электронных поставок (СЭП), позволяющего существенно сократить временные и финансовые затраты, связанные с выбором наиболее эффективного варианта заказа товаров, а также снизить степень риска в принятии решений за счет снижения влияния субъективных факторов; модификация интеллектуальной прогнозирующей модели с использованием нейросетевых технологий, обладающих свойствами адаптации и обучаемости, что позволит осуществлять прогноз экономических показателей СЭК по малой выборке.

i Надоели баннеры? Вы всегда можете отключить рекламу.