1С
о ел
Од I1 Изобретение относится к вычислительной технике и может быть использовано в аппаратных и гибридных мониторах для подсчета частоты появления событий, принадлежащих к несколь КИМ классам, в частности для получения статистических характеристик о работе программ. Целью изобретения является уменьшение аппаратных затрат на реализацию блока памяти. На чертеже изображена схема устройства дпя контроля программ Устройство содержит блоки 1 и 2 памяти, регистр 3 режима, регистр 4 данных, первый 5, третий 6 и второй 7 мультиплексоры, третий 8, второй 9 и первый 10 элементы ИЛИ, счетчик 11 использования команд, счетчик 12 базового адреса, элемент НЕ 13, пер вьй 14, второй 15 и третий 16 элементы И, триггер 17 пуска-, счетчик 18 микрокоманд, дешифратор 19, триггер 20 и 21 считывания, регистр 22 базы, триггер 23 переполнения, триг гер 24 записи, сумматор 25, группу информационных входов 26, группу вхо дов 27 меток события, вход 28 записи, вход 29 признака нартупления события,, тактовый вход 30 и группу информационных выходов 31, Блок 1 памяти предназначен для запоминания результатов счета частоты использования команд, Он имеет емкость 2 -разрядных слов, где к - количество разрядов в коде опе рации; 2 - количество зон, на которые разбивается блок 1 памяти, причем та п. Для хранения результата счета команд, имеющих код операции UK , ,, i 2 i 1, в блоке 1 памяти отводятся ячейки, имеюшре адреса Ь - ,,, Ь2 Ы OL.K , ., о. 2а1 (btr,,, ,ь2ь1-ьлразрядный адрес зоны; о. к ... а 2а1 к разрядной код операции который испол зуется для адресации ячеек блока 1 памяти в пределах каждой зоны), причем младшиеh разрядов результата хранятся в ячейке, имеющей адрес О,,.ООа- к ... а 2а1 , следующие и разрядов - Б ячейке, имеющей адрес 0... 01 dK , ,, а 2а1, и так далее до старших и разрядов, которые хранятся в ячейке, имеющей адрес 1 ,,, 11 о..к., сх 2а1, Этот блок позволяет хранить 2 {-разрядных результатов счета, причем максимальная разрядность результата определяется из соотношения 1 п 2. Блок 2 памяти предназначен для запоминания bi -разрядных адресов зон и дополнительных одноразрядных признаков. Он имеет емкость 2 (т+1 )-разрядных слов. Адрес зоны и признак, для команды, имеющей код операции а к ...а 2а1, хранятся в ячейке блока 2памяти по адресу ак...а2сх1. Хранимая в блоке 2 памяти информация имеет вид Ь.т... Ь2ь-1 с (С- признак), причем, если С 0, то b.t-n , .. ь.2 ь 1 используется для адресации зоны блока 1 памяти, если 1, то в блоке 1 памяти адресуется нулевая зона, а код b.r-n ,. ь 2 bl прибавляется к содержимому выбранной ячейки первой зоны блока Г памяти. Регистр 3 режима задает режим работы устройства. Устройство может работать в двух режимах: рабочий режим, при этом все разряды регистра 3 режима должны быть О, и режим Считываустановлены в с начальной установкой, ние с начальной установкой, при этом регистр 3 режима содержит информацию Q.K ... х.2а. I b.t-n.b. 2Ь 1, где QK .. а2а1 - адрес ячейки блока 2 памяти; Ь t-n ... b2blQ.KQ2a.l - адрес ячейки блока 1 памяти. Б рабочем режиме устройство подсчитывает частоту использования команд в исследуемой программе. В режиме Считьшание с начальной установкой устройство считывает на регистр 4 данных содержимое ячеек блоков 1 .и 2 памяти, адреса которых определяются содержимым регистра 3 режима. Этот режим необходим для начальной установки устройства перед началом сеанса измерений и для вывода результатов подсчета частоты использования команд по окончании сеанса измерений. Устройство работает следующим образом. Перед началом сеанса измерений необходимо осуществить начальную установку устройства. Для этого на информационных входах 26 устройства устанавливается код о, «, ... о. 2 , а 1 , , bm .,, ь 2, b 1 , Сигналом с входа 28 записи этот код записьгоается на регистр 3 режима. Тем самым устанавливается режим Считьгаание с начальной установкой. При этом 1 с выхо да первого разряда регистра 3 режима поступает на управляющий вход мульти плексора 5 и открывает его по второй группе входов, пропуская кодаь;, ,, Oi2, Ql с регистра 3 режима на групп адресных входов блока 2 памяти и на группу младших адресных входов блока 1памяти, на управляющий вход муль типлексора 6, сигнал с выхода элемента ИЛИ 8 открывает мультиплексор 6 по второй группе входов и пропускает код а.к..а2а-1 с регистра 3 режима на группу старших адресных вхо дов блока 1 памяти; на вход счетчика 11 и через элемент ИЛИ 9 на вход сброса счетчика 12, поддерживая счет чики 11 и 12 в нулевом состоянии на элемент НЕ 13, нулевой сигнал с выхода которого закрьшает элемент И 14. Одновременно с записью на регистр 3 режима положительный потенциал, поступающий на вход первого разряда регистра 3 режима, поступает и на первый вход элемента И 15. Под воздействием сигнала с входа 28 записи на выходе элемента И 15 появляется положительный потенциал, который, пройдя через элемент ИЛИ 10, устанавливает триггер 17 пуска. На инверсном вькоде триггера 17 пуска появляется нулевой сигнал, который поступает на входы сброса счетчи- ка 18 микрокоманд и дешифратора 19, открьшая дешифратор 19 и разрешая счетчику 18 микрокоманд считать тактовые импульсы, поступающие на его счетный вход с тактового входа 30 устройства. Под воздействием тактовых импульсов на счетном входе счетчик 18 микрокоманд формирует на сво их выходах последовательность из вос ми комбинаций от 000 до 111. Эти комбинации дешифрируются дешифратором 19, на восьми выходах которого последовательно появляется 1, Сигнал с первого выхода дешифратора 19 устанавливает триггер 20 считьюания, с выхода которого 1 поступает на вход считьшания блока 2памяти, на выходах которого появляется информация, считанная из ячейки, имеющей адрес ..cx2aJ . Сигнал с второго выхода дешифрато ра 19 поступает на входы записи регистра 22 базы и счетчика 12, На ре гистр 22 базы записьшается информация с выходов блока 2 памяти. Содержимое счетчика 12 не изменяется, так как он поддерживается в нулевом состоянии единичным сигналом с выхода элемента ИЛИ 9. Сигнал с третьего выхода дешифраттора 19 устанавливает триггер 23 переполнения и триггер 21 считьшания., с выхода которого 1 поступает на вход считьшания блока 1 памяти. На .выходах блока 1 памяти появляется информация, считанная из ячейки, имеющей адрес ... b 2Ы схк .. .о.2а1 . Сигнал с четвертого выхода дешифратора 19 сбрасьгоает первый триггер 20 считывания, поступает на вход записи регистра 4 данных и записывает на него информацию с выходов блока 1 памяти и выходов регистра 22 базы. Выходы регистра 4 данных являются информационными выходами 31 устройства. Кроме того, этот сигнал поступает.на вход записи счетчика 11, содержимое которого не изменяется, так как он поддерживается в нулевом состоянии единичным сигналом с выхода первого разряда регистра 3 режима. Сигнал с пятого выхода дешифратора 19 сбрасьшает второй триггер 21 считьшания и поступает на счетный вход счетчика 11, не изменяя его состояния, так как на входе сброса этого счетчика стоит 1. Сигнал с шестого выхода дешифратора 19 устанавливает триггер 24 записи, с выхода которого 1 поступает на входы записи блоков 1 и 2 памяти. В ячейку блока 1 памяти, имеющую адрес b-m ., ь2Ь1ак. .a2al, записьшается И -разряднь1й код 0...00, приходящий на информационные входы блока 1 памяти с -информационных выходов счетчика 1 Г. В ячейку блока 2 памяти, имеющую адрес а.к..а 2а1 . записывается (т+1)-разрядный код О... 01 приходящий на информационные входы блока 2 памяти с выходов счетЧика 12 и триггера 23 переполнения. Сигнал с седьмого выхода дешифратора 19 срабатывает .триггер 24 записи. Сигнал с восьмого выхода дешифратора 19 поступает на вход сброса триггера 17 пуска. При этом на инверсном выходе триггера 17 пуска появляется 1, которая сбрасывает счетчик 18 икрокоманд и дешифратор I9 и поддеривает их в нулевом состоянии.
Для начальной установки устройства необходимо повторить описанную процедуру 2 раз, изменяя информацию, записываемую на регистр 3 режим от 0...01 до 1 ... 1 1 .
Для перевода устройства в рабочий режим нарегистр 3 режима сигналом с входа 28 записи записывается код 0...0, приходящий с групп информа- ционных входов 26 устройства. При этом О с выхода первого разряда ре гистра 3 режима поступает на управляпщй вход мультиплексора 5, разрешая через него прохождение к-разрядного кода операции ак ... с группы входов 27 меток события на группу адресных входов блока, 2 памяти и на группу младших адресных входЬв блок
1памяти; на вторые входы элементов ИЛИ 8 и 9, разрешая прохождение на
их выходы сигналов, поступающих на первые входы этих элементов; на вход сброса счетчика 1I, разрешая ему реагировать на сигналы, приходящие на вход записи и счетный вход; на вхо элемента НЕ 13, единичный сигнал с выхода которого открывает элемент И 14.
На второй вход элемента И 14 с входа 29 признака Событие устройства приходит сигнал, говорящий о том, что на группе входов 27 устройства находится код операции. На выходе элемента И 14 появляется 1, которая через элемент ИЛИ 10 устанавливает триггер 17 пуска. Дешифратор 19 вырабатьшает серию из восьми сигналов, появляющихся последовательно на его восьми выходах.
Сигнал с первого выхода дешифратора 19 -устанавливает триггер 20 счи тьгеания. При этом на выходах блока
2памяти появляется информация вида Ь 1-г,.. ь.2 Ь 1 с, считанная из ячейки, адресом которой является пришедший с группы входов 27 устройства код операции о. с. . a.2al.
Сигнал с второго выхода дешифра тора 19 записывает на счетчик 12 код Ь.гл.. Ь2Ь.1, а на регистр 22 базы - код b т .. b.2blc. При этом признак С с выхода первого разряда регистра 22 базы поступает на управляющий вход мультиплексора 7 и через элемент ИЛИ 8 на управляющий вход мультиплексора 6. Если , то мультиплексоры 6 и 7 пропускают
информацию на их первые группы входов. Значит на группу старших адресных входов блока 1 памяти приходит с регистра 22 базы код ь t, .. ь2ь.1, который используется в этом случае для адресации зоны памяти, а к групп входов счетчика 11 подключается группа выходов блока 1 памяти. Если то на группу старших адресных разрядов блока 1 памяти приходит с регистра режима код 0...00, к группе входов счетчика 11 подключается группа выходов сумматора 25.
Сигнал с третьего выхода дешифратора 19 устанавливает триггер 23 .переполнения и триггер 2 считывания и поступает на второй вход элемента И 16, на первый вход которого приходит признак С с первого выхода блока 2 памяти. Если с 1, то на выходе элемента И 16 появляется 1, которая проходит через элемент ИЛИ 9 и сбрасывает счетчик 12 базы. На выходах блока 1 памяти появляется информация, считанная либо из ячейки с адресом 0., .00 Q.K. . Q..2 а. (при С либо из ячейки с адресом Ь.ич. . ь 2Ыа ..а 2а1 (при с 0).
Сигнал с четвертого выхода дешифратора 19 сбрасьшает триггер 20 считьшания и записьшает на счетчик 1 либо информацию с выходов блока 1 памяти (при с 0 , либо информацию с выходов сумматора 25 при ) , которая является суммой кодаЬ.тп .. Ь2ь 1 с регистра 22 базы с информацией считанной из блока 1 памяти.
Сигнал с пятого выхода дешифратора 19 сбрасьшает триггер 21 считывания и, поступая на счетный вход счетчика 11, прибавляет к его содержимому 1, Если на счетчике 11 код 1 ... П , то прибавление к нему вызьюает переполнение счетчика. При этом счетчик 11 обнуляется к на его выходе переполнения появляется Сигнал, который сбрасывает триггер 23 переполнения и прибавляет 1 к содержимому счетчика 12.
Сигнал с шестого выхода дешифратора 19 устанавливает триггер 24 записи. При этом в ранее выбранную ячейку блока 1 памяти записьтается . информация с выходов счетчика 1I частоты, а в ранее выбранную, ячейку блока 2 памяти - информация с выходов счетчика 12 базы и триггера 23 переполнения. Сигнал с седьмого выхода дешифра тора 19 сбрасывает триггер 24 запи си, Сигнал с восьмого выхода дешифра ра 19 сбрасывает триггер 17 пуска. Для вьгоода из устройства результатов измерений оно переводится в режим Считывание с гашением. При этом окончательный результат измере ния частоты появления команды с код операции Q к.,,а 2 о. 1 формируется программно следую11им образом. Младшие ь разрядов результата по лучаются суммированием содержимого ячейки блока 1 памяти, имею1чей адре О,., О а.к , . а 2 Q. 1 , с кодом bt-n, ,, ь. 2 ь считанным из ячейки блока 2 памяти по адресу а. 1с .., а 2аЛ, Следующие разрядов результата считывааются и ячейки блока 1 памяти по адресу О,, 01 а.к , . а.2 а.1 и так далее. Причем, если признак , то к содержимому ячейки блока 1 памяти, имеющей адрес b.m ., ,ь. 2 Ь IQ. к , ,, Q 2 а 1, прибавляется 1, 7 Таким образом, изобретение позволяет уменьшить емкость памяти, необходимой для хранения f -разрядных результатов счета частоты использования команд, так как окончательный результат получается не суммированием содержимого ячеек, отведенных для данной команды, а подставкой содержимого ячейки (1+)-зоны слева от содержимого ячейки i -и зоны (,,,,, 2), Формула изобретения Устройство для контроля программ содержащее первый блок памяти, регистр базы и счетчик использования Команд, причем группа информационных выходов счетчика использования команд соединена с группой информационных входов первого блока памяти, отличающееся тем, что, с целью уменьшения аппаратурных затрат, в устройство введены второй бло памяти, регистр режима, три мультиплексора, три элемента И, элемент НЕ три элемента ИЛИ, счетчик базового адреса, триггер переполнения, сумматор, регистр данных, триггер пуска, счетчик микрокоманд, дешифратор, два триггера считывания и триггер записи причем входы меток событий устройства соединены с первой группой информа ционных входов первого мультиплексо- ра группа входов задания режима ра- . боты устройства соединена с группой информационных входов регистра режима, тактовый вход устройства и вход признака наступления события устройства соединены соответственно со счетным входом счетчика микрокоманд и первым входом первого элемента И, вход признака записи устройства соединен с первым входом второго элемента И и входом записи регистра режима, вход признака считьшания группы входов задания режима устройства соединен с вторым входом второго элемента И, выход которого соединен с первым входом первого элемента ИЛИ, выход режима счнтьгоания регистра режима соединен с управляющим «входом первого мультиплексора, с первыми входами второго и третьего элементов ИЛИ, входом начальной установки счетчика использования команд и через элемент НЕ с вторым входом первого элемента И, вьгход которого соединен с вторым входом первого элемента ИЛИ, выход которого соединен с единичным входом триггера пуска, инверсный выход которого соединен с входом разрешения счета счетчика микрокоманд и с входом разрешения дешифрации дешифратора, информационные выходы счетчика микрокоманд соединены с информационными входами дешифратора, первый выход которого соединен с единичным входом первого триггера считывания, прямой выход которого соединен с входом считывания второго блока памяти, второй выход дешифратора соединен с входами записи регистра и счетчика базового адреса, третий выход дешифратора соединен с единичным входом второго триггера считывания, первым входом третьего элемента Икс единичные входом триггера переполнения, четвертый выход дешифратора соединен с нулевым входом первого триггера считьшания, с входами записи регистра данных и счетчика использования Команд, пятый вьгход дешифратора соединен с нулевым входом второго триггера считьшания, со счетным входом счетчика использования команд, шестой, седьмой и восьмой вькоды депшфратора соединены соответственно с единичныь входом триггб-ра записи, с нулевым входом триггера записи и с рулевым входом триггера пуска, п 5ямой выход триггера записи соединен с входами записи первого и второго блоков памяти, прямой выход второго Т т.рйггера считьшания соединен с входом считьшания первого блока памяти, группа информационных выходов второго блока памяти соединена с группой информационньк входов счетчика базового адреса и регистра базы, группа информационных выходов счетчика базового адреса соединена с группой информационных входов второго блока памяти, группа информационных выходов первого мультиплексора соединена с группой адресных входов второго бло ка памяти, с второй группой адрес- . ных входов первого блока памяти, младпшй разряд регистра базы соединен с вторым входом третьего элемента ИЛИ, с управляющим входом второго мультиплексора и информационным входом регистра данных, информационные выходы которого являются информационными выходами устройства, группа информационных выходов первого блока памятги соединена с группой входов первого операнда сут матора, с первой группой информационных входов регистра данных и с первой группой информационных входов второго мультиплексора, группа информационных выходов регистра базы соединена с первой группой информационных входов третьего мультиплексора с второй группой информационных входов регистра данных и с группой входов второго операнда сумматора, группа выходов результата которого соединена с второй группой информационных входов второго коммутатора, группа информационных выходов которого соединена с группой информационных входов счетчика использования команд, выход переполнения которого соединен с нулевым входом триггера переполнения и счетным входом счетчика базового адреса, перт вая группа информационных выходов регистра режимов соединена с второй группой информационных входов первого мультиплексора, вторая группа информационных выходов регистра режимов соединена с второй группой информационных входов третьего мультиплексора, группа информационных выходов которого соединена с первойгруппой адресных входов, первого блока памяти, выход младшего разряда группы информационных выходов первого блока памяти соединен с вторым входом третьего элемента И, выход которого соединен с вторым входом второго элемента И, выход которого соединен с входом начальной установки счетчика базового адреса, прямой выход триггера переполнения соединен с информационным входом второго блока памяти, выход третьего элемента ИЛИ соединен с управляпощим входом третьего мультиплексора.
название | год | авторы | номер документа |
---|---|---|---|
Микропрограммное устройство управления | 1984 |
|
SU1188736A1 |
Микропрограммное устройство управления | 1983 |
|
SU1108449A1 |
Электронная вычислительная машина | 1988 |
|
SU1520533A1 |
Мультимикропрограммная управляющая система | 1984 |
|
SU1241244A1 |
Устройство для управления памятью | 1984 |
|
SU1236489A1 |
Имитатор канала | 1990 |
|
SU1714606A1 |
Многоканальный сигнатурный анализатор | 1984 |
|
SU1262500A1 |
Микропрограммное устройство управления | 1983 |
|
SU1100624A1 |
Микропрограммное устройство управления с самоконтролем | 1985 |
|
SU1247871A1 |
Устройство микропрограммного управления | 1988 |
|
SU1536380A1 |
Изобретение относится к вычислительной технике и может быть использовано в аппаратных и гибридных мониторах для подсчета частоты появления событий, принадлежащих к нескольким классам, в частности для получения статистических характеристик о работе программ. Цель изобретения уменьшение аппаратных затрат на .реализацию блока памяти, Устройство содержит два блока памяти, регистр,режима, регистр данных, три мультиплексора, три элемента ИЛИ, счетчик использования команд, счетчик базового адреса, элемент НЕ, три элемента И, триггер пуска, счетчик микрокоманд, дешифратор, два триггера считьшания, регистр базы, триггер переполнения, триггер записи, сумматор. 1 ил. (Л с
Устройство для определения профиля программ | 1981 |
|
SU960829A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Способ получения фтористых солей | 1914 |
|
SU1980A1 |
Феррари Д | |||
Оценка производительности вычислительных систем | |||
- М.: Мир, 1981, с | |||
Устройство для выпрямления многофазного тока | 1923 |
|
SU50A1 |
Авторы
Даты
1986-10-23—Публикация
1984-10-17—Подача