книги / Автоматизация конструкторского проектирования в радиоэлектронике и вычислительной технике. Автоматизация конструкторского проектирования вычислительной техники
.pdfгде /7 - число входов элемента а ;
к- порядковый номер входа элемента^-
Ьк - элемент или вход схемы, нагруженный на к-ый вход элемента й)
Ск - к-ая координата куба С, САе{0 ^,х} J суммирование производится ЛИШЬ ДЛЯ С#е{0,/}%
Оценки управляемости входов логической схемы полагаем равными 1. Выполняя подстановки от входов схемы к выходам, получим искомые оценки управляемости. Поиск оценок для схем с глобальными обратными связями фактически сводится к ре шению системы линейных уравнений. Для схем с глобальными связями при расчете оценок возникают допэ. .тительные аспек ты, которые в данной работе не рассматриваются.
В соответствии с предложенной методикой получены фор мулы оценок управляемости-для функциональных схем регист-*- ров, приведенных ча рис. 4. Полученные формулы и результа
ты расчетов сведены в |
табл. |
2. |
|
Т а б л и ц а 2 |
|||
|
|
|
|
|
|||
|
Номер разряда |
|
|
Примечание |
|||
1 |
|
3 |
•»# |
|
|||
2 |
п> |
|
|
|
|||
w r jw fV |
тач’пкгч |
WJ3 |
••• |
т(п°)*т(пЧ |
|
|
|
7 |
17 |
31 |
• •• |
2л2+4ц +1 |
к |
рис. 4а |
|
5 |
10,5 |
17 |
... |
|
к |
рис. |
46 |
5 |
13,5 |
26 |
• ••• |
?***&fit*4S |
к |
рис. |
4в |
8.5 |
22,5 |
42,5 |
••• |
|
к |
рис. |
4г |
4. О о т^^е ние_перебора^при^прстрэении_тест эв_
Оценки управляемости могут быть использованы для адап тации программ синтеза тестов. Как известно, построение уста новочной последовательности требует значительных затрат ма шинного времени и существенно зависит от выбора варианта установки. Критерием при выборе куба может служить мини мум цены куба S(c)}определенной выше. Такой подход обеспе чивает поиск простейшего варианта установки. Даже для впол не "благополучных* схем достигалось 30% сокращение времо-
1 41
Fuc. 4 . Регистровые схемы
ни проектирования теста по сравнению с упорядочением, анало гичным £ 2]. Тем более заметен эффект упорядочения для бо лее сложных схем. Так, например, с использованием цен ку бов для решения установочной задачи был впервые построен контролирующий тест для микропроцессора К1804ВС1, 80% элементов которого взаимосвязаны. Тест, подразделенный на 61 сегмент, состоит из 2 6 9 наборов,
5, Заключен£е
Предложена методика расчета оценок управляемости эле ментов логической схемы на основе кубических покрытий. По иск оценок сводится в общем случае к решению системы ли нейных уравнений. Расчет оценок реализован в виде програм мы на языке, FORTRAN /у. Время расчета оценок управляе мости для ЭВМ ЕС 1033 не превышало 3 0 секунд для рхем, содержащих 4 0 т 90 микросхем среднего уровня интеграции. По лученные оценки могут служить основой для оценки "сложиэ- ^сти* принятых схемных решений. В связи с этим появляется возможность численной оценки вариантов улучшения контроле пригодности. На основе оценок управляемости можно рассчи тать другие оценки, характеризующие контролепригодность про екта: оценки наблюдаемости, оценки затрат на синтез теста. Предложенные оценки управляемости позволяют существенно
.повысить эффективность систем генерации тестов.
Ли т е р а т у р а
1.ЗВЯГИН В.Ф., НЕМОЛОЧНОВ О.Ф. "Сокращение перебо ра при решении установочной задачи для логических схем с
глобальными обратными связями". - Автоматика и вычислитель ная техника, 1978, № 5, с. 28-3*2.
2. КИРКЛЕНД ТОМ, ФЛОРЕС ВИКТОР. "Программные средства анализа тестируемости и автоматическая генерация
тестов для СБИС" - Электроника, 1 9 8 3 , том 5 6 , |
5, с. 4 1 - |
48. |
|
УДК 6 8 1 .3 .0 6
АНАЛИЗ КОНТРОЛЕПРИГОДНОСТИ ЦИФРОВЫХ УСТРОЙСТВ
Р.К. М о г е ю н е н е , К.Л. М о т е ю н а с
Рост сложности систем и устройств на базе больших и сверхбольших интегральных схем привел к возможности проек тирования таких цифровых схем, которые либо практически не поддаются тестированию, либо разработка хороших тестов для которых обходится слишком дорого. Поэтому в настоящее вре мя появился ряд работ [1 -3 ], посвященных анализу контроле пригодности цифровых устройств. Цель данных работ - оценить проектируемую схему с точки зрения ее тестируемости. Одна ко приводимые в [1 -3 ] оценки очень грубые и в ряде случаев не отражают тех сложностей, которые могут возникнуть при генерации тестовых воздействий.
При построении тестов в принципе осуществляется перебор среди строк таблиц истинности всех элементов. С увеличени ем числа уровней схем резко возрастает число возможных ва риантов перебора'. В случае возросшей интеграции логических элементов тесты строятся цля схем, перебор всех вариантов условий активизации которых невозможно выполнить даже при помощи самых быстродействующих ЭВМ. Целью разных иссле дований является сокращение при построении тестов числа пе ребираемых вариантов. Однако в общем случае мерой таких показателей контролепригодности как управляемость и наблю даемость [1] достаточно обоснованно может служить число возможных вариантов перебора. В качестве единицы измере ния числа вариантов перебора будем использовать одну опера цию обращения к таблицам истинности элементов.
Сначала рассмотрим определение управляемости каждого узла логической схемы. Под управляемостью узла понимается трудоемкость получения определенного логического значения в рассматриваемом узле. Число строк таблицы истинности для единичного и нулевого значения выходного сигнала элемента может сильно отличаться. Поэтому для узла у (целиу ) име ет смысл вычислять управляемость в случае заданного нуле вого значения и в случае заданного единичного значения вы ходного сигнала. Так как принципы вычисления как единичной, так и нулевой управляемости одинаковы, в дальнейшем между
1 3 4
ними мы не будем делать никакого различия, а будем гово рить об управляемости вообще, и обозначать ее через U. Уп равляемость вычисляется для каждой выходной цепи элемента, начиная с элементов, все&оды которых подключены к входам схемы, до элементов, подключенных к выходам схемы, по воз растанию их рангов. Управляемость всех входных цепей схемы равна нулю (Ц =0).
Пусть дан элемент (см. рис. 1), выполняющий любую ло гическую функцию, а также даны таблицы истинности этого
элемента!. Управляемость |
(как нулевая, так и единичная) всех |
||
входных цепей (Jtjу |
Хп) элемента уже определена, сле |
||
дует вычислить управляе |
|||
мость выходной цепи эле |
|||
мента (цепи у ). |
|
||
Приведем вычисление |
|||
трех значений управляемо |
|||
сти: минимальной ( |
|
||
максимальной (Uma*) и |
|
||
средней ( ЦУ ). |
|
||
а ? 1Л*т /} |
c s и пнп) н 1 |
||
где J - |
номер строки в |
|
|
таблице |
истинности; /п - |
|
|
число строк |
таблицы ис |
либо единичной в зависимости от то |
|
тинности |
(либо нулевой, |
го, вычисляется ли нулевая или единичная управляемость), В
формулу включаются |
только тех цепей |
значения ко |
торых определены в J |
-той строке таблицы |
истинности. |
иТ **£ (П и т**)+т
С7 |
j'f W *L |
и т^ Л представляет |
собой минимальное число обращений к таб |
лицам истинности логических элементов, требуемое для уста новления заданного сигнала на цепи у Значение U, реально
только для комбинационных схем типа дерева. Для разветвлек- I/fPiд
ных схем и д достигается только при идеальном управлении перебором, что на практике неосуществимо.
Wy** представляет собой максимальное число обращений к таблицам истинности логических элементов, требуемое для'ьы-
1 3 5
числения всех возможных вариантов установки заданного сиг нала на цепи В процессе построения тестов, как правило, требуется определить лишь один вариант установки заданного сигнала, поэтому даже для сильно разветвленных схем показа тель является завышенным. достигается лишь в тех случаях, когда существует лишь один вариант (набор) установ ки на цепи у заданного логического значения и лишь при та ком алгоритме вычисления, который проверяет противоречия не на внутренних и входных цепях схег-ы, а только на входных.в
Более |
реальным является показатель |
формулу которого при |
водим |
ниже: |
|
где к |
- число групп цепей (группу составляют цепи, содержа |
|
|
щие хотя бы одну общую точку |
разветвления); |
О - величина с -той группы (число цепей, составляющих 6 -тую группу).
Остается открытым вопрос, каким образом вычислять уп равляемость в тех случаях, когда схема содержит контуры об ратных связей или некомбинационные элементы, такие, как реги стры, счетчики, Д-триггерэ и т.д. Возможен следующий подход. Управляемость вычисляется двумя этапами. На первом этапе
все точки |
обрыва контуров обратных связей |
и фиктивные точ |
ки памяти |
(они, как правило, включаются в |
описание некэмби- |
нациэнных логических элементов) принимаются за первичные входы схемы, и схема вычисляется как чисто комбинационная. На втором этапе точкам обрыва контуров обратных связей и фиктивным точкам памяти присваиваются значения управляемо сти их генерирующих цепей и производится повторный проход по схеме. На обоих этапах используются те же формулы, при веденные выше. Таким образом, как для комбинационных, так V. для последовательностных схем используются те же форму лы, а отличие заключается лишь в том, что д*я вычисления управляемости узлов комбинационных схем достаточно одного прохода, а в последовательностных схемах требуются два про хода.
Использование таблиц истинности логических элементов позволяет довольно точно определить степень управляемости узлов схемы. Однако чрсто встречается ситуация, когда тре
1 3 6
буется определить показатели контролепригодности схемы, но в систему еще не включены описания функционирования элемен тов, составляющих схему. В таких случаях следует применять упрощенное вычисление показателя управляемости. Для этого достаточно каждому выходу элемента присвоить число Z j ука зывающее общее среднее число строк как в единичной, так и в нулевой таблицах истинности, а также указать, если элемент некомбднационный, фиктивные точки памяти. Числов пользо
ватель может указать по своему усмотрению, а самое простое -
|
где Z* ~ число строк в единичной таблице истинно |
||
сти; |
Z9 - число строк в нулевой таблице истинности. Тогда по |
||
лучаем следующие формулы вычисления управляемости: |
|||
|
а |
- г |
U ) |
|
« У " |
• ( / ) |
( 2 ) |
|
|
|
( 3 ) |
|
Следует отметить, ^что в этих формулах уже |
дана общая |
|
, управляемость, т.е. как для установки на цепи £ |
единичного, |
||
так |
и нулевого сигнала. |
|
|
|
Для каждого узла |
схемы рядом с показателем управляемо |
сти целесообразно* ввести два дополнительных показателя, ха рактеризующих сложность подсхемы, ь лходом которой являет ся рассматриваемый узел. Это максимальное число последова тельно соединенных элементов памяти С$*) и общее число эле ментов памяти в подсхеме (G°)s
Допустим, что рассматриваемый элемент (рис. *1) содер
жит к оборванных контуров обратной связи и |
£ фиктивных |
|||
точек памяти, тогда для вычисления £ |
и |
получаем |
следу |
|
ющие формулы: |
+к +£; |
|
|
|
Gu -/яях |
|
|
|
|
Показатели ff* и ^вы числяю тся |
очень просто, но |
они |
||
довольно точно характеризуют |
с теп ей Пуститовки заданного зна |
чения сигнала на рассматриваемом узле, потому что, как по казывает практика, основное время при построении тестов ухо дит на построение установочной последовательности, переводя щей схему в заданное состояние. Следует еще при вычислении
1 3 7
G* и G* обратить внимание на два момента: если рассматри ваемый некомбинациэнный логический элемент содержит боль ше чем один выход, для более точного определения G" и G* целесообразно каждому выходу указать отдельное число fij в разветвленных схемах один и тот же контур обратной связи или фиктивная точка памяти может войти в показатель В° не сколько раз; чтобы этого избежать, следует для каждого уз ла вести список обратных связей и фиктивных точек памяти, включенных в
Рядом с показателями U, G* и G* позволяющими судить
отрудоемкости получения определенного логического значения
врассматриваемом узле, еше одним важным показателем яв ляется наблюдаемость. Под наблюдаемостью узла понимается трудоемкость обеспечения условий, нужных для транспортиров ки сигнала от рассматриваемого узла до одного из выходов схемы.
Рис. 2 .
Д л я того, чтобы наблюдать узел й на выходе схемы ^ необходимо в худшем случае установить конкретные значения
сигналов на всех узлах xf,.. j |
|
(за исключением £, |
|
w |
) |
|||
или для части узлов Xf, - |
Нели для каждого элемента |
(1, |
||||||
2, |
) существует только |
один набор, разрешающий |
наблю |
|||||
дать |
вход а |
на выходе элемента |
1, вход Ь на выходе |
элемен |
||||
та 2 |
и т.д., |
тогда для узла Q можно задать |
конкретные усло |
|||||
вия активизации пути до выхода |
Однако в |
общем |
случае воз |
|||||
можно, что |
имеется несколько наборов, позволяющих |
наблюаать |
1 3 8
конкретный вход элемента, на его выхоце. Тогда получаем множество условий активизации пути от узла & но выхода у. Однако их всех выписать нереально (число возможных вариан тов активизации конкретного пути может быть очень большим), тем более, что для наблюдения узла Л на выхоце у нужно обеспечить не все возможные варианты активизации, а только один. Поэтому для вычисления показателя наблюдаемости при мем следующие предположения:
1)для любого входа элемента имеется только один набор, позволяющий наблюдать этот вход на выхоце элемента;
2)в наборе, позволяющем наблюдать конкретный вход эле мента на его выходе, все остальные входы имеют определён ные значения сигнала;
3 ) * отсутствует описание функционирования элементов, со-* ставляющих схему;
4) управляемость всех узлов схемы уже определена и оп ределена по формулам 1 -3.
Первые два предположения, например, абсолютно верны для элементов типа И, ИЛИ, И-НЕ, ИЛИ-HE, но уже неверны для элементов типа И-ИЛИ, И-ИЛИ-НЕ или для подавляющего боль шинства некомбинационных элементов. Если задать единичные и нулевые таблицы истинности еще сравнительно просто, то указать условия активизации того или иного входа до выхода элемента довольно сложно* особенно для некомбинационных элементов, отсюда и вытекает третье, предположение. А чет вертое предположение является следствием третьего предполо жения, Из третьего и четвертого предположений также следу ет, что будем вычислять общую наблюдаемость конкретного узла, т.е. трудоемкость транспортировки до выхода схемы как нулевого, так и единичного сигнала.
Для того, чтобы наблюдать логическое значение узла на выходе схемы t/j необходимо без противоречий через первич
ные входы схемы обеспечить |
нужные для транспортировки зна |
чения сигналов на узлах |
Отсюда получаем формулы |
вычисления наблюдаемости: |
|
|
(4) |
|
( 5 ) |
|
<Р) |
1 3 9
Через №т1**,Ут** VL # ^обозначены соответственно |
минималь |
||
ная, максимальная и средняя наблюдаемости; 4 ,d,- v у |
Указы |
||
вают узел, для которого вычисляется наблюдаемость |
(узел <Z)t |
||
и путь, который активизируется |
(путь^,^**7 У |
)• |
|
Построение тестового набора |
или тестовой |
последователь |
ности для проверки конкретного узла предполагает как управ ление данного узла, так и наблюдение. К тому же при вычис лении наблюдаемости в формулы 4 -6 не включены значения уп равляемости узлов т.е. отсутствует фактор, позволя ющий судить о трудоемкости прохода через элементы активи зированного г^ти. Этот фактор важен для некомбинационных элементов, а особенно важен для некомбинационных элементов, содержащих больше чем один вь-сэц, Например, путь ъ -тый элемент (см. рис. 2) счетчик с 4-мя выходами, однако по фор мулам 4 -6 получаем, что наблюдаемость узла а на всех че тырех выходах а -того элемента одинакова. Поэтому введем новый показатель, охватывающий как трудоемкость установки конкретных логических значений на проверяемом узле Л и уз лах j так и трудоемкость прохода через элементы ак тивизированного пути. Назовем этот показатель тестируемо стью узла и обозначим через букву Г. Внизу буквы Т будем указывать узел, для которого вычисляется тестируемость, и путь, через который проходит сигнал от рассматриваемого уз
ла до выхода схемы. Например, |
^.Тестируемость вы |
числяется по тем же формулам* как |
и наблюдаемость, различие |
заключается лишь в |
том, что в выражения рядом |
с показате |
||
лями управляемости |
узлов |
включаются |
и показатели |
|
управляемости |
узлов CL, bj..^ |
w/y • |
|
|
Для схем, |
содержащих разветвления, следует |
выписать все |
возможные пути транспортировки сигнала от заданного узла до
выхода (выходов) |
схемы, для каждого ия путей вычислить те |
||||||
стируемое! *> |
и |
выбрать |
оптпмал* иый |
вариант. |
Тео |
||
ретически |
следует рассматривать |
как |
одномерные, так |
||||
и |
многомерные |
пути, |
однако |
практически достаточ |
|||
но |
определить |
тестируемость лишь одномерных |
пу |
тей. Тест, обнаруживающий одиночные константные-неисправно сти, считается построенным, если удалось активизировать пу ти, проходящие через все первичные входы схемы, точки обры ва контуров обратных связей и через все разветвления схемы. Поэтому показатель тестируемости не следует вычислять для всех узлов схемы, а достаточно определить тестируемость вы-
1 4 0