Научная статья на тему 'Частичное восстановление работоспособности дискретных систем с произвольным доступом'

Частичное восстановление работоспособности дискретных систем с произвольным доступом Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Седов Юрий Владимирович

Предложено компактное представление всевозможных разбиений булева пространства дихотомическими деревьями с числом вершин от 1 до 2 m, где m размерность булева пространства. Проблема частичного восстановления работоспособности систем с произвольным доступом сведена к поиску специального минимального отображения P. Получение минимального отображения осуществляется перебором дихотомических деревьев. Перебор может быть сокращен за счет использования свойств подмножества множества исправных адресов системы с произвольным доступом.

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

Partial restoration of descreet systems with random access

It is suggested a compact representation of all possible boolean space's splittings. They are produced by using dichotomy trees with number of nodes from 1 to 2 m, where m is a dimension of boolean space. The problem of descreet systems' partial restoration reduced to building special minimal reflection P. Minimality of the reflection achived with searching through dichotomy trees. Properties of subsets of system's correct elements can be used for reducing computational cost of the search.

Текст научной работы на тему «Частичное восстановление работоспособности дискретных систем с произвольным доступом»

ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА

№ 269 январь 2000

КИБЕРНЕТИКА. ИНФОРМАТИКА

УДК 519.718

Ю.В. Седое

ЧАСТИЧНОЕ ВОССТАНОВЛЕНИЕ РАБОТОСПОСОБНОСТИ ДИСКРЕТНЫХ СИСТЕМ С ПРОИЗВОЛЬНЫМ ДОСТУПОМ

Предложено компактное представление всевозможных разбиений булева пространства дихотомическими деревьями с числом вершин от 1 до 2", где т - размерность булева пространства. Проблема частичного восстановления работоспособности систем с произвольным доступом сведена к поиску специального минимального отображения Р. Получение минимального отображения осуществляется перебором дихотомических деревьев. Перебор может быть сокращен за счет использования свойств подмножества множества исправных адресов системы с произвольным доступом.

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

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

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

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

Основные определения

Соответствие между сокращенным (А) и полным (В) адресными пространствами можно задать в виде отношения Р со следующими свойствами: АРВ=>УаеА В единственный ЬеВ и ЬеЕ, где Е - множество адресов полного адресного пространства, соответствующих не-

исправным элементам устройства Различным элементам из А соответствуют различные элементы из В.

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

АРВ^>если Uf еА,тт Ilf еВ &UB Г\Е=0, (1)

где U * ,U* - равномощные интервалы. Различным интервалам из А соответствуют различные интервалы из В.

Интервалы UB,Uf удобно представлять в виде

троичных векторов а * , а ®. Если компонентам векторов сокращенного адресного пространства поставить в соответствие символы входных переменных, а компонентам векторов полного адресного пространства - значения функций, то по отношению Р можно построить систему F={/, из и булевых фун-

кций от т переменных, где и и в - размерности сокращенного и полного адресных пространств соответственно. При этом а* будет описывать конъюнкцию входных переменных, а а ® - вхождение этой конъюнкции в функции системы. Конъюнкции системы F попарно ортогональны.

Может быть выбрано несколько различных отношений Р между сокращенным и полным адресными пространствами. Возникает задача выбора лучшего в том или ином смысле. Уточнить понятие качества решения можно, конкретизировав базис, в котором предлагается реализовать дополнительное комбинационное устройство, обеспечивающее частичное сохранение работоспособности системы с произвольным доступом. В данной работе в качестве базиса синтеза выбраны программируемые логические матрицы (ПЛМ). ПЛМ характеризуется тройкой (s, t, q), где s - число входов ПЛМ, t - число выходов, q - число промежуточных шин.

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

91

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

Дихотомическое дерево - двоичное дерево, в котором из каждой неконцевой вершины исходит два ребра. Пусть дано дихотомическое дерево с / концевыми вершинами. Каждому ярусу дерева сопоставим компоненту троичного вектора, а ребра пометим символами О и 1. В результате каждый путь из корня в концевую вершину будет представлен троичным вектором. В нем компоненты, сопоставленные вершинам пути, принимают определенные значения 0, 1 согласно пометкам ребер, составляющих путь. Неупомянутым среди вершин пути компонентам сопоставляется неопределенное значение. Дерево в целом будет содержать / таких троичных векторов. Это множество образовано ортогональными интервалами и является разбиением булева пространства на подмножества. Будем говорить, что полученное множество интервалов несомо деревом.

Если некоторое множество непересекающихся интервалов С сопоставимо множеству интервалов D, несомому дихотомическим деревом R, то будем говорить, что множество интервалов С сопоставимо дереву R.

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

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

Известно, что любой интервал в булевом пространстве содержит 2*'' элементов булева пространства, где г - ранг интервала. В булевом пространстве можно выделять подмножества из 2*"' элементов, не являющихся интервалами. В дальнейшем такие подмножества будем называть неинтервальными подмножествами ранга г. Для представления таких подмножеств требуется от двух до 2* ~г троичных векторов.

Интервальные разбиения булева пространства

Разбиение булева пространства на интервалы будем называть интервальным разбиением.

Утверждение 1. Интервальное разбиение Т булева пространства представимо неразмеченным дихотомическим деревом.

Доказательство. Мощность каждого интервала ю Т есть степень двойки. Выберем из Т подмножество интервалов минимальной мощности. Обозначим число элементов в каждом интервале через 2™, т<к. Двоичным представлением числа 2т является булев вектор длины к с единицей в компоненте т (компоненты нумеруются справа налево, начиная с нулевой). Если множество Т содержит нечетное число таких интервалов, то сумма всех мощностей интервалов из Т будет представляться двоичным вектором с единичным значением в т-й компоненте и, следовательно, не будет равна 2*. Поэтому число t0 интервалов минимального ранга системы Т будет четным.

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

Получим систему множеств Т0. Оно получено из Т заменой набора множеств минимальной мощности на объединение соответствующих пар и в общем случае не является интервальным. Из Т0 опять выберем набор подмножеств минимальной мощности. В этом наборе их также будет четное число, а значит, можно продолжить построение дерева описанным выше способом и получить систему множеств Т\. И так далее, до тех пор, пока на очередном шаге Т, не будет содержать единственное множество, полученное объединением всех подмножеств исходного множества Т. Дихотомическое неразмеченное дерево построено. Что и требовалось доказать.

Рассмотрим всевозможные интервальные разбиения булева пространства заданной размерности. Отношение сопоставимости, введенное между интервальными разбиениями, есть отношение эквивалентности. Значит, это отношение разбивает все множества интервальных разбиений на классы эквивалентности.

Утверждение 2. Любой паре интервальных разбиений из некоторого класса эквивалентности сопоставляется одно и то же неразмеченное дихотомическое дерево.

Доказательство следует из утверждения 1. Таким образом, выбирая некоторое непомеченное дихотомическое дерево, мы фиксируем целый класс разбиений булева пространства, сопоставимых этому дереву. Непомеченное дихотомическое дерево представляет множество интервальных разбиений. Некоторые из них получаются всевозможными разметками вершин и ребер дихотомического дерева. В этом случае каждой внутренней вершине также сопоставляется интервал булева пространства. Однако класс интервальных разбиений, сопоставляемых непомеченному дихотомическому дереву, гораздо шире. В частности, в него входят такие интервальные разбиения, для которых концевые вершины дерева сопоставляются интервалам, а внутренние - множествам, не обязательно являющимся интервалами.

Всевозможные дихотомические деревья с заданным числом / концевых вершин позволяет получить алгоритм 1.

92

Алгоритм 1

Обозначим множество всех деревьев с одинаковым числом концевых вершин, полученных на очередном шаге через Rs, где s - число концевых вершин.

1. Пусть 5=1. Этот класс R\ содержит единственное неразмеченное дихотомическое дерево, состоящее из корня.

2. Выбираем из класса Rs очередное дерево и переходим в п. 3. Если таких больше нет, то s = s +1, и построенное множество деревьев Л'+1 принимаем за исходное Rs. Если 5 = 1, то конец, иначе в 2.

3. В текущем дереве выбираем очередной ярус, имеющий концевые вершины. Строим новое дерево, где из произвольной концевой вершины этого яруса проводим два ребра в новые вершины следующего яруса. Полученное дерево проверяем на совпадение с уже существующими в классе Л'+|. Если в Я'+| нет эквивалентного с построенным дерева, то заносим его в /?'+1. Если все ярусы пройдены, то в 2, иначе в 3.

Построение

минимального отношения Р

Сопоставим компонентам векторов полного адресного пространства символы переменных. В этом случае набор Е адресов неисправных элементов устройства может быть представлен в виде дизъюнктивной нормальной формы (ДНФ) функции /Е, принимающей значение 1 на адресах неисправных элементов. Исправная область памяти будет описана инверсией этой функции /£ . Среди всевозможных разбиений сокращенного адресного пространства А, представляемых не-помеченными дихотомическими деревьями, существуют отношения Р„ порождающие множества подмножеств полного адресного пространства В, удовлетворяющие условию (1). Среди них нужно выбрать такое отношение, которое представляется деревом с минимальным числом концевых вершин.

Любой интервал из В, входящий в область /£, может быть получен из некоторой простой импликанты / £ приписыванием некоторых переменных и их инверсий. Таким образом, имея список максимальных интервалов функции /£, можно построить искомое отношение, перебрав всевозможные комбинации различных интервалов из М{Е . Алгоритм 2 позволяет ограничиться перебором некоторых комбинаций интервалов.

Алгоритм 2

Строим множество всех простых импликант /£. Пусть 5- число концевых вершин дерева, s = 1. По алгоритму 1 формируем очередное дихотомическое дерево с 5 концевыми вершинами. Пусть построено очередное дерево R из Rs. Требуется выяснить, существует ли порожденное им отношение Р, в /£ .

1. Упорядочиваем множество интервалов, порожденных R, по убыванию мощностей. Строящееся отношение Р полагаем пустым.

2. Обозначим через tt число равномощных интервалов мощности N„ порожденных R. Множество простых импликант включаем в текущий список Sj.

3. Перебирая концевые вершины дерева по ярусам, начиная с ближайшей к корню, находим для каждой из них соответствующий интервал из /£. Найден-

ные интервалы попарно не пересекаются.

Пусть рассматриваются концевые вершины некоторого яруса, которым соответствуют интервалы мощности N,. Интервалы будем строить из текущего списка Sj.

4. Если в Sj присутствуют интервалы большей мощности, расщепляем их всевозможными способами до различных интервалов мощности Nt. Расщепление осуществляется приписыванием подходящих констант к представляющим интервалы векторам. Полученные интервалы включаем в Sj вместо расщепленных.

5. Выбираем из текущего списка Sj t, ортогональных интервалов мощности N,. Каждый из выбираемых интервалов должен быть ортогонален всем интервалам, уже включенным в строящееся отношение Р. Если это удается, включаем полученное множество интервалов в Р, вычеркивая его из Sj. Затем переходим к концевым вершинам следующего яруса, присваивая им номер <+1 и возвращаясь в п. 4.

Если просмотрены все концевые вершины, то минимальное отношение Р построено. Если найти подмножество из b ортогональных интервалов нужной мощности не удается, то получаем очередное дихотомическое дерево и начинаем алгоритм с п. 1.

Работа алгоритма 2 может быть рассмотрена на примере. Пусть задано полное адресное пространство размерности 4, содержащее 5 неисправных элементов. Адреса неисправных элементов известны и построчно записаны в двоичную таблицу £:

Е =

110 10 0 1110 0 0 111 10 10 0

т

Необходимо построить отношение Р между исправными элементами полного адресного пространства и сокращенным адресным пространством размерности 3.

Рассматривая таблицу Е как таблицу истинности булевой функции fE от четырех переменных, запишем совершенную ДНФ и получим из нее сокращенную

ДНФ /£ . Эта ДНФ состоит из простых импликант,

поэтому список троичных интервалов, соответствующих ей, может быть использован при построении отображения Р. Обозначим его через S0:

S0 =

'01111--00- 0 - 1 0 1 0 0 1 о

0 1 1 - - 0 0 - - 1

--- 10 10 101

т

Перебор дихотомических деревьев начинаем с дерева, образованного единственной корневой вершиной (s = 1). Поскольку в текущем списке нет интервалов, содержащих 23 двоичных векторов, то переходим к следующему классу R2 дихотомических деревьев (s = 2). Этот класс содержит единственное дерево с двумя концевыми вершинами. Разбиение, порожденное этим деревом, содержит два интервала мощности 4. В списке So нет соответст-

93

вующего подмножества троичных интервалов. Переходим к следующему классу дихотомических деревьев /?3.

Этот класс разбиений образован двумя интервалами мощности 2 и одним интервалом мощности 4 = 1,

Nt = 4; t2 = 2, N2 = 2). Начинаем перебор ярусов дерева с корня. В So есть интервал нужной мощности, включаем его в строящееся отношение Р и переходим к следующему ярусу дерева. Формируем список St :

1 1 1 1 - - 0 0 1

0-101 0010 1 1 - - 0 0 - - 1

- 1 10 1 0 1 0 1

-|Т

Выбираем из St два взаимоортогональных интервала мощности 2, образующих ортогональную систему уже построенным отношением Р. Получаем сле-

дующее подмножество интервалов:

0-0 1- 1 1 10-0

Раз-

мечая некоторым образом дихотомическое дерево,

соответствующее построенному множеству интерва-

лов, получаем искомое отношение

Р =

0 _ _ о - 0 - ‘ 10-1-1 1

1 1-10-0

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

Заключение

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

ЛИТЕРАТУРА

1. Матросова А.Ю., Седов Ю.В. Способ восстановления неисправных микросхем памяти с произвольным доступом // Доклады всероссийской конференции «Новые информационные технологии в исследовании дискретных структур». Екатеринбург, 1996. С. 131-136.

Статья представлена кафедрой программирования факультета прикладной математики и кибернетики Томского государственного университета, поступила в научную редакцию «Кибернетика и информатика» 15 декабря 1999 г.

94

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