2004
Доклады Б ГУ ИР
ОКТЯБРЬ-ДЕКАБРЬ
№ 4
УДК 621.382
МИНИМИЗАЦИЯ ЭНЕРГОПОТРЕБЛЕНИЯ ГЕНЕРАТОРА ПСЕВДОСЛУЧАЙНЫХ ТЕСТОВЫХ НАБОРОВ ДЛЯ ВСТРОЕННОГО САМОТЕСТИРОВАНИЯ
И.А. МУРАШКО
Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь
Поступила в редакцию 27 февраля 2004
Рассмотрены вопросы снижения энергопотребления генератора псевдослучайных тестовых наборов для встроенного самотестирования цифровых устройств. Предложена новая структура генератора, который позволяет формировать тестовые воздействия при меньших энергетических затратах. Основная идея предлагаемого подхода заключается в применении триггеров Г-типа вместо традиционных триггеров /3-типа.
Ключевые слова: встроенное самотестирование, минимизация потребления энергии, псевдослучайная последовательность, сканирование.
Введение
Одним из важнейших параметров, определяющих эффективность проектирования цифровых устройств, является энергопотребление. Это связано с двумя основными факторами. Во-первых, величина потребляемой энергии определяет время работы мобильных цифровых устройств, питание которых осуществляется от автономных источников питания (аккумуляторов, батареек и т.п.). Во-вторых, максимальная производительность современных цифровых систем часто ограничивается не технологическими факторами, а тепловыделением интегральных схем. Например, энергопотребление процессоров Celeron фирмы Intel достигает 30 Вт, что требует принудительного охлаждения процессора и отвода тепла из конструктивного модуля [1].
Во время тестирования (самотестирования) цифрового устройства потребляется значительно больше энергии, чем при его нормальной работе. Это объясняется следующими факторами. Во-первых, для сокращения времени проведения тестирования проверку проводят на максимально возможной частоте работы устройства, тогда как рабочая частота может быть значительно ниже. Во-вторых, при тестировании необходимо гарантировать обнаружение всех возможных неисправностей. Это приводит к значительному возрастанию переключательной активности цифрового устройства. При этом, как показано в [2], потребление энергии во время тестирования возрастает в 2-3 раза.
Для решения проблемы снижения энергопотребления при тестировании применяются различные подходы. В [3] авторы предлагают подбор тестовых наборов с учетом энергопотребления, а в [4] — процедуру минимизации переключательной активности за счет изменения порядка следования тестовых наборов. В [5] предлагается использовать LFSR с порождающим полиномом, который имеет минимальное число ненулевых коэффициентов, а в [6] — генератор тестовых наборов на основе нелинейных клеточных автоматов с пониженной переключательной активностью.
В [7] показано, что затраты энергии на формирование тестовых воздействий могут достигать 10 % от общего энергопотребления устройства при проведении самотестирования, поэтому большое внимание уделяется снижению потребления энергии генератора псевдослучайных тестовых наборов (ИНН), в качестве которого, как правило, используется LFSR (Linear Feedback Shift Register). Причем почти половина энергии тратится в цепи синхронизации. В [8] предлагается использовать так называемый DS-LFSR (Dual-Speed Linear Feedback Shift Register), который состоит из двух LFSR — "медленного" и "обычного". Частота синхронизации "медленного" LFSR в d раз ниже, чем у "обычного", поэтому значительно снижается переключательная активность как самого генератора, так и входов тестируемой схемы (ТС), подключенных к "медленному" LFSR, что приводит к снижению рассеиваемой мощности при тестировании. В [9] предлагается использовать два одинаковых LFSR, работающих на половинной частоте, при этом частота смены тестовых наборов на входе тестируемой схемы не изменяется.
В данной работе рассматривается новый подход к решению проблемы минимизации энергопотребления генератора М-последовательности (псевдослучайной последовательности максимальной длины, которая используется в качестве тестовой последовательности). Суть подхода заключается в запрещении подачи импульсов синхронизации на триггеры, состояние которых не изменяется в текущем такте. Это позволяет исключить ненужные переключения в ГПТН, при этом уменьшается потребляемая мощность.
Методика оценки энергопотребления ГПТН
Энергия, потребляемая КМОП-схемой. может быть разделена на два вида: статическую и динамическую. Как показано в [10], доминирующей является динамическая, так как в статическом режиме через элементы КМОП-схемы ток практически не протекает. Динамическая энергия вызвана перезарядом емкостей логических элементов в момент переключения. Рассмотрим подробнее источники динамической потребляемой мощности.
Энергия, потребляемая j-м узлом схемы при переключении, равна 1 /2CjV2¿d- где Су -емкостная нагрузка у-го узла, Vdd - напряжение источника питания [10]. Следовательно, выражение 1/2fjCjV2 dd позволяет оценить потребляемую j-м узлом схемы энергию за f) переключений. Для узлов, к которым подключено несколько входов логических элементов, емкостная нагрузка возрастает пропорционально числу входов Sj. Поэтому выражение для энергии, потребляемой /-м узлом схемы, можно записать следующим образом:
Ej=l/2sjfjCoV2dcb (1)
где С0 — номинальная (нормализованная) емкостная нагрузка одного входа, которая является одинаковой для всех логических элементов, выполненных по единой технологии. Выделим из (1) постоянную и переменную части. Значения С0 и V2dd не изменяются в процессе работы, поэтому на их основании запишем выражение Е0, которое определяет энергию одного переключения в узле с единичной нагрузкой
£-0=1/2 C0V2dd. (2)
Произведение sj) определим как переключательную активность SAj (Switching Activity — SA) узла j и будем использовать в качестве оценки для рассеиваемой этим узлом энергии. Соответственно переключательная активность всей схемы за один такт синхронизации запишется как
SAax=±Sjfj, (3)
7=1
где fj — число переключений /-го узла за один такт синхронизации, Sj — количество входов логических элементов, подключенных к данному узлу, v — количество узлов логической схемы. Тогда переключательная активность всей схемы за п тактов работы может быть найдена из следующего выражения:
Соответственно энергия Е. потребляемая КМОП-схсмой, запишется
Е=ЫЕ„
(5)
Таким образом, для анализа потребления энергии КМОП-схемы будем использовать оценку числа переключений схемы за время ее работы.
Анализ переключательной активности ГПТН на основе ЬЕ81?
Рассмотрим работ} [^Я (рис. 1) и найдем его переключательную активность при формировании псевдослучайной последовательности максимальной длины ^/-последовательности), период которой равен 15 (¿=15).
БМ1
ах.
Ъ2 81 С1_К
Э2
1 О-
5-"
С
Б2
81
О
ТТ
3
152
53
т
С
Рис. I. с полиномом ср(х)= I +х'+х4
В качестве базового элемента генератора возьмем синхронный двухступенчатый /)-триггср (рис. 2). Все множество внутренних узлов триггера (Х1-Х12) разделим на две части: цепь синхронизации (элемент Б6, узлы Хц; х} ) и цепь данных (элементы I О От-О . узлы Х]-Хю). В работе принято, что задержка распространения сигнала через логический элемент равна нулю, поэтому запись информации в первую ступень триггера (элементы Д-Д) происходит по положительному фронту синхроимпульса С. а перезапись информации во вторую ст\ пень триггера происходит по отрицательному фронту. При анализе переключательной активности триггера будем учитывать, что он используется только для реализации регистра сдвига при проектировании Это означает, что изменение логического ровня на входе И может происходить только по отрицательному фронту сигнала синхронизации, когда изменяются состояния разрядов регистра сдвига.
Рис. 2. Ф5 нкциональная схема О-триггера
При подаче на вход синхронизации одного тактового импульса (0-1-0) в цепи синхронизации (хц. х)2) произойдет десять переключений (шесть в узле хп и четыре в узле х!2). Число переключений в цепи данных (узлы л^-Хю) зависит от того, изменяется ли состояние выхода триггера в данном такте. Обозначим через /), — значение на входе В в г-м такте работы. О, — значение выхода в 7-м такте работы. О, 1 — значение выхода в (г I 1 )-м такте работы. Таким образом, число переключений в цепи данных зависит от О, и Q,-l. Учитывая, что {¿г г Д,
С
Q, можно сделать вывод, что число переключений зависит от двух последовательных
символов, поступающих на вход триггера, т.е. от Дч и Д. В случае Д_1=Д=0 произойдет четыре переключения (два в узле х4 и два в узле х7). В случае Д |=Д=1 также произойдет четыре переключения (два в узле х3 и два в узле х8). В случае Дч=0, а Д=1 произойдет 13 переключений (два в узле хь одно в х2, два в х3, два в х5, два в х6, два в х7, одно в х9 и одно в Хю). В случае Д_7=1, а Д=0 произойдет также 13 переключений (два в узле хь одно в х2, два в х4, два в х5, два в хб, два в х8, одно в х9 и одно в Хю).
Для общего случая М-последовательности, определяемой примитивным полиномом (р(х) степени т и имеющей период 2т-\,ъ2т~'случаях в триггере будет происходить четыре переключения и в 2т 1 случаях — 13 переключений. Эти выражения вытекают из свойств серий М-последовательности [11]. Любая серия, кроме серии из двух нулей, встретится 2т раз. Серия из двух нулей встретится на один раз меньше, т. е. 2m -1 раз. Соответственно серия из двух одинаковых символов (00 или 11) встретится 2т4-1 раз, а серия из двух различных символов (01 или 10) — 2т~ раз.
Найдем число переключений LFSR (рис. 1) при формировании М-последовательности. Для этого разделим все множество узлов схемы на три подмножества. Первое подмножество <V| включает в себя входы синхронизации (|S1|=4, где |S1| — мощность множества S1), второе подмножество S2 — Двходы триггеров (|S2|=4), третье подмножество S3 — входы цепи обратной связи, состоящей из двухвходового сумматора по модулю два, т.е. |S3|=2. Переключательную активность входов синхронизации обозначим через SAsl. Учитывая, что число входов синхронизации равно четырем, число импульсов синхронизации равно 15, а каждый импульс синхронизации вызывает десять переключений, получим SASi=4 15 10=600. Для подмножества S2 число входов равно четырем. На каждый из входов поступает М-последовательность длиной 15 бит, причем в восьми случаях в триггере происходит 13 переключений, а в семи — четыре. Поэтому SAS2=4 (8 13+7-4)=528. Подмножество S3 состоит из двух входов, на каждом из которых происходит восемь переключений, т.е. SAS3=2-8=16. Получим SALFSR=SAS1+SAS2+SAS3=1144. Найдем удельную переключательную активность LFSR, т.е. число переключений, которое требуется для формирования одного символа М-последовательности (Weighted Switching Activity — WSA): WSAj lfsr= 1144/15=76,3. Таким образом, для формирования нового символа М-последовательности требуется в среднем 76,3 переключений.
По аналогии проведем расчет удельной переключательной активности LFSR для произвольного случая. Пусть работа LFSR определяется примитивным полиномом <р(х) степени т. Период формируемой М-последовательности равен 2т-1, число переключений по входам синхронизации в каждом такте равно 10, число входов равно т. Тогда
Число переключений по цепи данных в каждом такте зависит от текущего и предыдущего состояний Двхода триггера, поэтому можно записать:
Подмножество S3 состоит из входов многовходового сумматора по модулю два цепи обратной связи, который, как правило, реализуется некоторой схемой на двухвходовых элементах "Исключающее ИЛИ". Число входов такого сумматора определяется видом примитивного порождающего полинома. В случае, когда порождающий полином имеет вид <р(х) = 1+х7 + х/и, число входов равно двум (min (|S3|)=2). В случае, когда порождающий полином имеет все ненулевые коэффициенты, число входов двухвходовых элементов "Исключающее ИЛИ", используемых для реализации такого сумматора, максимально и равно 2т-2 (max (\S3\)=2m-2). Число переключений в М-последовательности, поступающей на каждый вход сумматора по модулю два в цепи обратной связи равно 2тЛ [11]. На основании этого для подмножества S3 запишем два выражения:
SASi=w (2W-1) 10=10w(2m-l).
(6)
SAS2=w(4 (2m_1 -1)+13 •2m4)=( 17 •2m_1 -4) m.
(7)
CA —9-9ж_' —9OT-
(8)
8А33 т.,х=(2/и-2)2"'ч=(иг-1 )2'". (9)
Среднее значение переключательной активности подмножества 83 запишется как
8А33=т-2"'-\ (10)
Из выражений (6), (7) и (10) найдем среднее значение переключательной активности 1^Р8Япри формировании одного символа М-последовательности:
\¥8А | ЬрЗК=(38т2И! ' —14/77)/(2"'—1). (11)
Анализ переключательной активности ГПТН на Т-триггерах
В [12] предложена методика синтеза ГПТН на Т-триггерах. Основная идея данной методики заключается в замене Э-триггеров на Т-триггеры в При этом значительно улучшается качество формируемых псевдослучайных тестовых наборов, так как увеличиваются межканальные фазовые сдвиги псевдослучайных последовательностей.
Отличительной особенностью Т-триггера является то. что при наличии логической единицы на Т-входе он изменяет свое состояние, а при наличие логического нуля — нет. Поэтому в качестве Т-триггера может быть использована следующая схема на основе Э-триггера (рис. 3). Структурная схема ГПТН на Т-триггерах. работа которого определяется порождающим полиномом ср(х)=1 г' х4. представлена на рис. 4. Данный ГПТН повторяет работу (рис. 1) как выборку каждого четвертого состояния. При этом на его выходах формируется та же самая М-последовательность, различающаяся только своим фазовым сдвигом. В общем случае при использовании примитивного и неприводимого порождающего полинома (р(х) и выполнении условия взаимной простоты т и 2я'—1 (где т с^ ср(х) — старшая степень порождающего полинома, который определяет обратные связи) ГПТН на Т-триггерах формирует М-последовательность, определяемую порождающим полиномом той же самой степени т.
D
Т
С
&
С
Рис. 3. Функциональная схема Т-триггера
Найдем число переключений LFSR (рис. 4) при формировании М-последовательности. По сравнению со схемой на рис. 1 ,а цепь синхронизации разбита на два подмножества — S11 и S12 (|S11|=4. \S12\=4). Кроме того, добавилось подмножество S4. (|S4|=4). Подмножества S2 и S3 не изменились ( S2 =4. |S3|=4). Переключательная активность подмножества Sil равна SASii=4 15 2=120. На С-входы триггеров поступит 8 тактовых импульсов, поэтому SAg 12—4-8 ■ 10—320. За период формирования М-последовательности каждый триггер переключается восемь раз. поэтому SAg2=4 8 13=416. Переключательная активность подмножества S3 не изменилась и равна SAg3=2 8=16. Подмножество S4 состоит из четырех входов, на каждом из которых происходит восемь переключений. т.е. SAg3=4 8=32. Получим SATpg=SAs11+SAs12+SAs2+SAS3+SAs4=120+320+4 16+16+32=904. Удельная переключательная активность TPG: WSAT трО=904/15=60,3. Таким образом, для формирования нового символа М-последовательности требуется в среднем на 21 % меньше переключений, чем при использовании LFSR (рис. 1).
311
сик
54
52
512
52
Э4
J Э1
512
,34_ &
512
'зИ^-
вМ1
тт
з О
Ф*
л 33
эз
Э4
'511
Э2
Б12
ТТ 4 С
Рис. 4 ГПТН на Т-триггерах с полиномом <р(х)= I I х31-х4
По аналогии проведем расчет удельной переключательной активности генератора на рис. 4, работа которого определяется примитивным полиномом ф(х) степени т для произвольного случая. Период формируемой М-последовательности равен 2т-\, число переключений по входам синхронизации в каждом такте равно 10, число входов равно т. Тогда
8Азп=т(2,"-1)2=2/и(2'и-1), (12)
$>Аъи=т2т 40=10т2т \
(13)
т-1
За период формирования М-последовательности каждый триггер переключается 2 раз, поэтому можно записать
8А 52=т ■ 13 ■2т~1=\Ът2т~\ (14)
Средняя переключательная активность подмножества 83 определяется выражением (10). Подмножество 84 состоит из т входов, на каждом из которых происходит 2т—1 переключений, т.е.
8А=4= т-2"
(15)
На основании этих выражений найдем среднее значение переключательной активности ТРв при формировании одного символа М-последовательности:
\¥8АттРо=(8А311+8А312+8Азз+8Аз4)/(2т-1)=
=2т{Тл-\)+\Ът2тА+\Ът2тА+т-2тЛ +т-2"'"1=(29ш2"'"1-2/и)/(2"'-1). (16)
Для оценки эффективности предлагаемого решения построим функцию, которая показывает в процентном отношении энергозатраты предлагаемого генератора при формировании одного символа М-последовательности. При этом энергозатраты Ы^Я равны 100%. Для этого разделим (16)на(11)и получим функцию
й(т)= \VSAt троА¥8Ат 100%. (17)
График функции представлен на рис. 5. Анализ графика показывает, что уже при т> 10 предлагаемый генератор в среднем тратит на 23,7% меньше энергии на формирование одного символа М-последовательности, чем Ы^К.
70,31
ад
.76.316
73
11] 15 20 25 30 35
40 .40,
Рис. 5. ГрафикДт) при т= 3-40
Заключение
В работе предложен новый подход к решению проблемы минимизации энергопотребления ГТГГН. Он позволяет снизить переключательную активность ГТГГН примерно на 23%. Соответственно на эту же величину уменьшается потребление энергии. Дополнительные аппаратные затраты на реализацию минимальны (один вентиль на каждый разряд генератора). Применение подхода не требует громоздких вычислений и модификации тестируемой схемы.
POWER MINIMIZATION PTPG FOR THE BUILT - IN SELF-TESTING
I.A MURASHKO Abstract
Power minimizations of pseudorandom test pattern generator for built-in self-test are considered. The new structure of the generator that allows forming test stimuli at smaller power expenses is offered. The basic idea consists in replacement of D-flip-flops by the T- flip-flops.
Литература
1. Intel® Celeron® Processor for the PGA370 Socket at 1.20 GHz on 0.13 ц process Datasheet, October 2001 (Order Number: 298596-001).
2. Zorian Y. II Proc. 11th IEEE VLSI Test Symposium. 1993. P. 4-9.
3. GirardP., GuillerL., Landrault C., Pravossoudovitch S. И Proc. 17th IEEE VLSI Test Symposium. 1999. P. 407-412.
4. Латыпов P.X. II АиТ. 2001. № 4. С. 160-162.
5. Brazzarola M., FummiF.il Proc. Int. Symposium Defect and Fault Tolerance in VLSI Systems. 1999. P. 138-146.
6. Corno F„ Rebaudengo M„ ReordaM.S., et al. И Proc. 18th IEEE VLSI Test Symposium. 2000. P. 29-34.
7. Gerstendorfer S„ Wunderlish H.J. И Proc. IEEE Int. Test Conference. 1999. P. 77-83.
8. Wang S„ Gupta S.K. И Proc. IEEE International Test Conference. November 1997. P. 848-857.
9. VirazelA., Wunderlich H.-J. II Third VIVA Schwerpunkt-Kolloquium, Chemnitz, Germany, March 18-19, 2002. P. 128-135.
10. PedramM. //ACM Transaction on Design of Electronic Systems. 1996. Vol. 1. P. 3-56.
11. Ярмолик B.H., Демиденко C.H. Генерирование и применение псевдослучайных последовательностей в системах испытаний и контроля. Мн., 1986.
12. Ярмолик В.Н., Мурашко И.А II Автоматика и вычислительная техника. 1995. № 6. С. 25-35.