Формирователь тестов
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике, в частности к средствам автоматического контроля микропроцессорных устройств. Целью изобретения является повышение быстродействия формирователя. Это достигается введением в формирователь, содержащий блок синхронизации, генератор псевдослучайных кодов, дешифратор запрещенных комбинаций и регистр теста, регистра сдвига, двух элементов ИЛИ и элемента задержки. Очередйая команда формируется пословно путем выделения из случайных чисел, вырабатываемых генератором псевдослучайных кодов, допустимых команд. В качестве следующих слов команды используются любые случайные числа. Выявление допустимых кодов команд и дешифрация длины команды позволяют исключить этап анализа форматов команд . 4 ил. с S (Л
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИК ((9(SU (ш (s!)s С 06 F 11/26
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
М А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР (21) 4492772/24 (22) 10.10.88 (46) 15,03.91. Вюл. п9 10 (71) КишиНевский научно-исследоваIf ff тельский институт Квант (72) А,А.Гремальский (53) 681.3(088,8) (56) Авторское свидетельство СССР
У 527707, кл, G 06 F 11/00, 1974.
Авторское свидетельство СССР !!I 1269141, кл. G 06 F 11/26, 1985. (54) ФОРМИРОВАТЕЛЬ ТЕСТОВ (57) Изобретение относится к вычислительной технике, в частности к средствам автоматического контроля микропроцессорных устройств. Целью изобретения является повышение быстроI
Изобретение относится к вычислительной технике, в частности к средствам автоматического контроля микропроцессорных устройств, и может быть использовано в радиоэлектронной промышленности и промышленности средств связи в процессе разработки, производства и эксплуатации микропроцессорных систем.
Цель изобретения — повышение быстродействия формирователя.
На фиг. 1 представлена структурная схема предлагаемого формирователя тестов; на фиг. 2 — схема генератора псевдослучайных кодов; на фиг. 3 схема блока синхронизации, на фиг.4 временные диаграммы функционирования формирователя., формирователь тестов содержит re-( нератор 1 псевдослучайных кодов, блок 2 синхронизации с выходами 2,1
2 действия формирователя, Это достигается введением в формирователь, содержащий блок синхронизации, генератор псевдослучайных кодов, дешифратор запрещенных комбинаций и регистр теста, регистра сдвига, двух элементов ИЛИ и элемента задержки. Очередная команда формируется пословно путем выделения из случайных чисел, вырабатываемых генератором псевдослучайных кодов, допустимых команд.
В качестве следующих слов команды используются любые случайные числа, Выявление допустимых кодов команд и дешифрация длины команды позволяют исключить этап анализа форматов команд. 4 ил. и 2.2, дешифратор 3 запрещенных комбинаций, регистр 4 теста, регистр 5 сдвига, первый элемент ИЛИ 6, второй элемент ИЛИ 7, первый элемент И 8, второй элемент И 9, элемент HE 10 и элемент 11 задержки, Генератор 1 псевдослучайных кодов предназначен для формирования случайных чисел. В простейшем случае он может быть реализован на сдвиговых регистрах с обратными связями. Генератор, показанный на фиг, 2 содержит регистр 12 сдвига, элемент И-НЕ 13, сумматор 14 по модулю два и элемент
ИЛИ 15. Очередное случайное число получается в регистре 12 сдвига при поступлении на его управляющий вход
"Сдвиг" импульса с выхода 2.1 блока
2 синхронизации, Сумматор 14 по модулю два и элемент ИЛИ 15 образуют цепь обратной связи генератора. Элемент
1635187
И-НЕ 13 предназначен для обеспечения правильной работы генератора в случае, если в регистре 12 сдвига будет записан нулевой код.
Блок 2 синхронизации (фиг. 3) предназначен для формирования двух последовательностей сдвинутых один относительно другого тактовых импульсов на выходах 2, 1 и 2,2 соответствен-1р но. Блок 2 синхронизации содержит триггер 16, генератор 17 тактовых импульсов и элемент И 18.
Дешифратор 3 (фиг. 1) предназначен для выбора из случайной последователь-!5 ности кодов с вьжода генератора 1 тех чисел, которые являются допустимыми кодами команд микропроцессора, а также для определения длины команды, Дешифратор имеет 1 выходов, где 1 максимально возможная длина команды контролируемого микропроцессора. Если
-случайное число на входе дешифратора
3 не является допустимым кодом коман-ды, на всех его выходах устанавлива- 25 ются значения "0", Если же случайное число на входе дешифратора 3 является кодом некоторой команды, на k-м выходе, где k — - длина рассматриваемой команды, устанавливается значение " 1",30 а на всех. остальных выходах — значение "0".
Регистр 4 теста служит для хранения очередного слова формируемой тесткоманды. Регистр имеет информационный вход, по которому поступают соответст«35 вующие слова, и управляющий вход Прием" .
Регистр 5 сдвига предназначен для подсчета числа слов формируемой команды. Регистр 5 сдвига имеет информационные входы для параллельного приема информации, управляющий вход
"Прием" и управляющий вход "Сдвиг", Сдвиг в регистре осуществляется в сторону младших разрядов, Первый элемент ИЛИ 6 предназначен для выработки сигнала "1 в случае, если на вход дешифратора 3 подается допустимый код ком: нды или если содержимое регистра 5 сдвига отлично от нуля.
Второй элемент ИЛИ 7 предназначен для выработки сигнала "1" в случае, если содержимое регистра 5 сдвига отлично от нуля. Первый элемент И 8 предназначен для формирования управляющего сигна- ла "Прием" в регистр 4 теста, Сигнал
"Прием" вырабатывается импульсом с выхода 2,2. блока 2 синхронизации при условии, что на выходе первого элемента ИЛИ 6 установлено значение "1".
Второй элемент И 9, элемент НЕ 10 и элемент 11 задержки предназначены для формирования управляющего сигнала "Прием" в регистре 5 сдвига. Сигнал "Прием" формируется импульсом с выхода 2,2 блока 2 синхронизации при условии, что содержимое регистра 5 сдвига равно нулю, Элемент 11 задержки устраняет возможные состязания по контуру регистр 5 сдвига — элемент
ИЛИ 7 — элемент НЕ 10 — элемент И 9.
Величина задержки элемента 11 должна быть больше, чем время приема информации в регистр 5 сдвига. На практике функции элемента 11 могут выполнять паразитные задержки второго элемента ИЛИ 7 и элемента НЕ 10, На фиг. 4 обозначены: С<, С, 2
С7 — коды на выходе генератора 1 псевдослучайных кодов в тактах 1, 2, 7 соответственно; — величина задержки элемента 11 задержки; — длина команды, Для пояснения работы формирователя тестов воспользуемся следующей структурой команд микропроцессора.
Команды микропроцессора имеют переменную длину и могут состоять иэ 1, 2, 3 и т,д. слов. Например, микропроцессоры типа INTEL 8080, К580 имеют одно-, двух-, грехсловные команды, где длина одного слова состав яет 8 бит (один байт), Независимо от типа команды код выполняемой операции, длина самой командь и режимы адресации операндов задаются в ее первом слове, Следующие слова команды содержат данные, участвующие в операциях, либо их адреса, Назовем первое слово команды кодом команды.
Формирователь работает следующим образом.
В исходном состоянии все элементы памяти усгановлены в нулевое состояние (цепи начальной установки не показаны), По сигналу пуска триггер 16 блока 2 (фиг, 3) устанавливается в единичное состояние и включает генератор 17, который начинает формирование тактовых импульсов на выходах
2,1 и 2,2, По каждому тактовому импульсу с выхода 2,1 блока 2 осуществляется сдвиг информации в регистре 12 сдви-.
163518
Зр
ra генератора 1 и формирование нового кода случайного числа ил группе выходов генератора 1 (фиг. 2), Каждый случайный коп с выхода геS нератора 1 (фиг. 1) поступает нл входы дешифратора 3 злпрещениых комбинаций. При этом возможны следу>ощие случач.
Случай 1. Случлйиьп! код с выхода !ð генератора 1 не лвляетсл кодом команды (код С (, JI»60 С у ня временной д»аграмме фиг . 4) .
При этом иа всех выходях деш»фратора 3 устлнавливлетсл з>злчеиие !5
"0". Содержимое регистра 5 сдвига в исходном состолии» было нулевым, поэтому после импульса сд>зигл с выхода
2 ° 1 содержимос регистрл также 0сТ;1ется нулевым. При этом ил вьзходе элемента ИЛИ 7 устанлвливас.тсл значение
"0", на выходе элемеитл IIE 10 — знлчение "1", иа выходе элемента ИЛИ 6 значение "0". Импульс с выхода 2.2 блока 2 через элемент И 9 »оступлет на управляющий вход Пр»см регистра
5 сдвига, од»лкс содерж»мое регистра
5 остается нулевым, так клк все выходы дешифраторл 3 установлены в "0
Поскольку ил выходе элементл I!Jlfl 6 установлено зиаче»ие "0", ил вь:ходе элемента И 8 сохраняется нуле»ос значение, блокирующее запись случайного кода с выхода генератора в регистр 4 теста (фиг, 1).
Таким образом, если пр» формировании первого слона IcoMI»fib! нл выходе генератора 1 вырабатывается случайный код, который ие лвллетсл кодом команды, содержимое регистра 5 сдвига 4р остается нулевым, а случайньп код не записываетсл в регистр 4 теста.
Случай 2, Случайньп! код с выходя генератора является кодом команды (код С, либо С ил временной диаграм- 45 ме фиг. 4). При этом ил 1с-м выходе, где k — длина комлидьз, дсш»фратора
3 устанавливаетсл зилчеи»е "1", а на остальных выходах — з»лчение "0". При этом на выходе элемента ИЛИ 6 уста- бр навливлется значение "1", Поскольку в исходном состоя»и» содержимое ре— гистра 5 сдвига равно ззулю, импульс с выхода 2.1 блока 2 »е изменяет его содержимого. При этом выход элемента
ИЛИ 7 установлен в "0", элемента !!Е
10 — в "1". Импульс с выхода 2,2 блока 2 через элемент If 9 поступает на вход "Прием" регистра 5 сдвига и че7
;.ез элемент И 8 на вход "Прием" регистра 4 теста. При этом в регистр сдвига записывается информация с выходов дешифратора 3, т.е, "1" зал»сывлется в k и разряд и "0" — в остальные разряды, а в регистр 4 теста записывается код команды, который с выхода регистра 4 теста поступает на выход формирователя.
Изменение содержимого регистра 5
СДВИГЛ Г1РИВОД»Т К ТОМУ ЧТО ВЫХОД ..>лемеита ИЛИ 7 устлнавливлется в "1", о,нлко это не сказгпвается на прохож;>е>з»» импульса с выхода 2.2 на вход
"Прием" регистра 5, поскольку сигнал с выхода элемента ИЛИ 7 поступает на вход элемеипл !!Г 10 через задержку Ь (ф»г ° 4), згздавсзему>о элементом 11 задержки.
К момеиту поступления импульса с выходл 2.1 блокл 2 значение "1" с выхсдл элемента III!If 7 через элемент
11 злпс ржк» и элемент HE 10 устанавливает выход элемента И 9 в "Р". Импульс с выхода 2.1 блока 2 поступает ил управляющий вход Сдвиг регистра
5 сдвига, Содержимое регистра 5 сдвигается. Пр» этом "1" переходит из разрлдл Iс в разряд (k-1).
Очевидно, если длииа команды Iс
1, после сдвига содержимое регистрл 5 сдв»га становится равным нулю, выход элемента ИНИ 7 устанавливается в "0", л взпход элемента HE 10 — в
"1". Нл этом цикл формирования очередной комлнды завершен и формирователь возвращается в исходное состояние. Начинается цикл формирования следующей команды, I .ñëè же длина команды k 1, то после сдвига содержимое регистра 5 сдвига неравно нулю, так как (k-1)-й разряд установлен в "1". При этом
"1" с выхода элемента ИЛИ 7 блокирует »оступление импульса с выхода 2.2 блока 2 нл вход "Прием" регистра 5 сд >игл и разрешает поступление рассмлтриваемого импульса через элемент
И 8 ил вход "Прием" регистра 4 теста.
Таким образом, если длина команды
) 1, второе после кода команды случайное число с выхода генератора записывается в регистр 4 теста (код нл временной д»лгрлмме фиг. 4).
Очередной импульс с выхода 2. блока 2 поступает иа управляющий вход "Сдвиг" регистра 5 сдвига. При
1635187 этом в регистре 5 "1" из разряда (k-1) переходит в разряд (k-2).
Очевидно, если длина команды k
2, то после сдвига содержимое регистра 5 сдвига становится равным нулю, выход элемента ИЛИ 7 устанавливается в "0", а выход элемента HE
10 — в "1", На этом цикл формирования команды завершен, формирователь 10 возвращается в исходное состояние и начинается цикл формирования следующей команды.
Если же длина команды k ) 2, то после сдвига содержимое регистра 5 сдвига отлично от нуля и значение
"1" с выхода элемента ИЛИ 7 аналогичным образом вновь блокирует прохождение импульса с выхода 2.2 на вход
"Прием" регистра 5 сдвига и разрешает его прохождение на вход "Прием" регистра 4 теста. В результате в регистр 4 теста записывается третье слово формируемой команды (код С ) на временной диаграмме фиг. 4). 25
С приходом с выхода 2. 1 блока 2 очередного импульса в регистре 5 вновь выполняется сдвиг и т.д. до тех пор, пока содержимое регистра 5 не станет равным нулю. При этом в регистре 4 .30 теста поочередно будут записаны и выданы на выход формирователя, первое, второе ... k-e слова тест-команды, После выдачи k-го слова формирователь вновь возвращается в исходное состояние.
Далее очередное случайное число (код С7 на временной диаграмме фиг.4) с выхода генератора 1 вновь анализируется дешифратором 3 и аналогично 40 описанному формируется очередная команда.
При необходимости прекращения
Работы фоРмирователь отключается сиг- 45 налом останова, подаваемым на вход элемента И 18 (фиг. 3). При этом триггер 16 устанавливается в нулевое ,состояние, генератор 17 выключается и прекращает выдачу тактовых импульсов на выходы 2.1 и 2,2.
Временные диаграммы работы формирователя (фиг, 4) представлены для случая, когда случайный код С1 на выходе генератора 1 не является допустимым кодом команды, код. С является кодом команды с длиной k = 1, код С> не является допустимым кодом команды, код С является кодом команды с длиной k = 3 и поэтому следующие коды С и Cb- на выходе генератора 1 используются в качестве второго и третьего слов формируемой тест-команды, код С является кодом команды..
Формула и з о б р е т е н и я
Формирователь тестов, содержащий блок синхронизации, генератор псевдослучайных кодов, дешифратор запрещенных комбинации и регистр теста, причем первый выход блока синхронизации соединен с входом запуска генератора псевдослучайных кодов, выходы которого соединены с информационными входами дешифратора запрещенных комбинаций, выход регистра теста является выходом формирователя, о т л и ч аю шийся тем, что, с целью повышения быстродействия, формирователь содержит регистр сдвига, два элемента
ИЛИ, два элемента И, элемент НЕ и элемент задержки, причем выходы генератора псевдослучайных кодов соединены с информационными входами регистра теста, группа выходов дешифратора запрещенных комбинаций соединена с группой информационных входов регистра сдвига и группой входов первого элемента ИЛИ, выход которого соединен с первым входом первого элемента И, выход которого соединен с входом синхронизации регистра теста, группа разрядных выходов регистра сдвига соединена с группой входов второго элемента ИЛИ, выход которого соединен с входом первого элемента ИЛИ и входом элемента задержки, выход которого соединен с входом элемента НЕ, выход которого соединен с первым входом второго элемента И, выход которого соединен с входом разрешения регистра сдвига, вход синхронизации которого соединен с первым выходом блока синхронизации, второй выход которого соединен с вторыми входами первого и второго элементов И, 1635 187
1635187
2.1
2.7
Состаритель, В.Шиянов
Техред А.Кравчук Корректор О.Ципле
Редактор А.Лежнина
Заказ 757 Тираж 409 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Б-35, Раушская наб., д, 4/5
Производственно-издательский комбинат "Патент", r. Ужгород, ул. Гагарина, 101