Устройство для отладки мультипрограммных систем

Номер патента: 1735855

Авторы: Бек, Моченков, Тимонькин, Ткаченко, Харченко, Чернышов

ZIP архив

Текст

СОЮЗ СОВЕТСКИСОЦИАЛИСТИЧЕСИРЕСПУБЯИН ае ао Ю)506 Г 11/28 ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТНРцтиймПРИ П(НТ СССР ЭОБРЕТЕНИЯТЕЛЬСТВУ(21) 4680190 (22) 18,04,8 (46) 23,059 (72) А.В,Бек С,Н,Ткаченко В,С,Харченко (53) бР 1,3 ( (56) Клямко контроль авт выцислительн ское радио,Авторское Г 8 М 713, кл 2, Бюл, И 19И.А.Чернышов,Г,Н.Тимонькин,и А,Б,Иоченков88,8)(54) УстРойство Для отлАрки иульти" пРоГРдиных систеи(57) Изобретение относится к вычислительной технике и может найти применение при отладке мультипрограммных систем, а также для контроля и оценки производительности иультипрограм" мных систем, Целью изобретения является повышение достоверности контроля, Устройство для отладки мульти- программных систем содержит первый 1,1 и второй 1,2 блоки памяти, блок 2 регистров, генератор 3 тактовых7358554 импульсов, первый 4, второй 5 и тре- и второй 182 коммутаторы, третий 19 тий 6 сумматоры, третий счетчик 7, четвертый 20,1, пятый 20,2, второйм мпервыи . 1 и второи 8.2 счетчики, 21. 1 и первый 2 1,2 элементы И, трепервый 9,1 и второй 9.2 триггеры пус- тий 22, четвертый 23, восьмой 25, ка, первый 10 и второй 11 триггеры первый 26, шестой 27, девятый 28, локировки, первый 12,1, и второй 12,2 второй 29, седьмой 30, пятый 31 триггеры занятости ресурса, счетный элементы ИЛИ, одновибратор 32, пертриггер 13, первый 14,1 и второй 14,2 вый 33 и второй 34 элементы задержки. дешифраторы, комбинационный сумматор 1 О Устройство позволяет повысить достодикации, первый 17,1 верность контроля за счет учета рви второй 17.2 преобразователи кодов боты программы супервизора, обрабв" команд в коды времени, первый 18, тывающей прерывания. 1 ил.Изобретение относится к вычислительной технике и может использоваться для отладки мультипрограммных систем, а также для контроля иоценки производительности мультипрограммных систем.Цель изобретения - повышение достоверности контроля. 25На чертеже приведена функциональная схема устройства,Устройство для отладки микропрограммных систем содержит первый 1.1и второй 1,2 блоки памяти, блок 2регистров, генератор 3 тактовых импульсов, первый 4, второй 5 и третийб сумматоры, третий счетчик 7, пер-.вый 8,1 и второй 8,2 счетчики, первый 9.1 и второй 9.2 триггеры пуска,первый 10 и второй 11 триггеры блокировки, первый 12,1 и второй 12.2триггеры занятости ресурса, счетныйтриггер 13, первый 14, 1 и второй 14,2дешифраторы, комбинационный сумматор15, блок 16 индикации, первый 17.1и второй 17.2 преобразователи кодовкоманд в коды времени, первый 18,1и второй 18,2 коммутаторы, третий19, четвертый 20, 1, пятый 20,2,второи 21,1 и первый 21,2 элементымфИ, третий 22, четвертый 23 элементыИЛИ, группу 24 выходов блока 2 регистров, восьмой 25, первый 26,шестой 27, девятый 28, второй 29,седьмой 30, пятый 31 элементы ИЛИ,50одновибратор 32, первый 33 и второй34 элементы задержки, группу 35 информационных входов устройства, тактовый вход 36 устройства, первую 37,вторую 38, третью 39 и четвертую 40группы входов блока 16 индикации,первый 41,1,. второй 41,2, третий41.3 и четвертый 41,4 выходы генератора 3 тактовых импульсов, второй42.1, первый 422, третий 42,3 ичетвертый 42,4 выходы первого дешиф"ратора 14,1 третий 43,1, четвертый43.2, первый 43,3 и второй 43.4 выходы второго дешифратора 14.2.Устройство для отладки мультипрограммных систем работает следующимобразом,В исходном состоянии все элементыпамяти, кроме первого 1,1 и второго1,2 блоков памяти, блока 2 регистров,обнулены (цепи установки элементовпамяти в исходное не показаны), Устройство для отладки мультипрограммных систем может функционироватькак в режиме контроля мультипрограммных систем, так и в режиме моделирования работы мультипрограммной системы, Второй режим предназначен, например, для оценки, производительности данной системы, В первом режиме, когда система контролируетсяпо времени обработки программ, впервый 1.1 и второй 1,2 блоки памяти заносятся реальные программы функционирования мультипрограммной системы, В режиме моделирования в блоки 1,1 и 1,2 памяти помещаютсясмеси команд, которые сформированыпо закону распределения вероятностейгенератором псевдослучайных чисел сзаданными характеристиками, однозначно соответствующими программномуобеспечению отлаживаемой системы.Для моделирования мультипрограммного режима в каждую смесь случайнымобразом заносятся команды обращенияк некритичным ресурсам (для ЕС ЭВИкоманды ЯЧС), команды обращения ккритичным ресурсам: занятия ресурса БЧСР(Ч,) и освобождение5 173БЧСЧ(Ч; ), где Р(Ч,) - есть значениясемафора, говорящего о занятии ре- .,сурса, а Ч(Ч; ) - об освобожденииресурса. Как и в реальных программах, команды обращения к ресурсамрасполагаются в смеси следующим об"разом: вслед за командой занятий -горесурса ЯЧСР(Ч,) следует через случайное число команд команда 8 ЧСЧ(Ч) -освобождение этого ресурса, в об"ратном порядке эти команды в смесине встречаются,Конец каждой программы обозначается считыванием из блоков 1.1 и 1.2памяти команды "Конец программы".В регистрах блока 2 регистровразмещены коды приведенных временобработки программной - супервизором. системы прерванной, каждому типупрерванной соответствует свой заданный код времени,Перед началом работы устройствакод начального адреса подается нагруппу 35 входов устройства Сигналом "Пуск" с входа 36 устройстватриггеры 9,1 и 9.2 пуска установятсяв единичное состояние Сигналом навыходе элемента ИЛИ 22 по синхровходу в счетчики 8. и 8.2 адреса запишется код начального времени. Этимже сигналом запустится генератор 3тактовых импульсов и откроется элемент И 19 для прохождения йервыхтактовых импульсов с выхода 14,1генератора 3 тактовых импульсов насчетный вход кольцевого счетчика 7;Кольцевой счетчик 7 настроен на чис"ло импульсов, соответствующее квантувремени, отводимому на обработку одной из задач, после чего ресурс занимает другая задача (по сигналу переполнения счетчика 7).Сигналом на прямом выходе счетного триггера 13 открыт элемент И 20.1.для прохождения вторых тактовых им-:пульсов с выхода 41.2 генератора 3тактовых импульсов на счетный входсчетчика 8;1 адреса, по этим им"пульсам на группе выходов счетчика8. 1 адреса формируется код адреса;по которому из блока 1.1 памяти выбирается очередная команда, .Каждойвыбранной из блока 1.1 памяти команде преобразователем 17. 1 кодов,ста"вится в соответствие определенныйкод приведенного времени,. инициирую"щий время обработки данной команды.Код приведенного времени по третьемутактовому импульсу с выхода 41.3 . 5855 6генератора 3 тактовых импульсов че-,.рез коммутатор 18.1 поступит на группу входов сумматора 6, куда он запишется по заднему фронту импульсас выхода 41,3 генератора 3 так 1 овыхимпульсов. По окончании кванта времени - переполнению счетчика 7,насчетный вход счетного триггера 1319поступит сигнал по которому данныйтриггер 13 изменит свое состояние,при котором единичный сигнал появится на инверсном выходе счетного триг"гера 13 т.е. элемент И 20,1 закро"ется для вторых тактовых импульсов15с выхода 41.2 генератора 3, а элемент И 20.2 откроетсяТаким обра"зом, вторые тактовые импульсы начнутпоступать на второй счетчик 8,220 адреса, т.е. в данный квант временибудет обрабатываться вторая задача,алгоритм обработки команд которойаналогичен описанному для первойзадачи. Сигнал переполнения счетчи 25ка 7 также поступит на соответст-.вующий вход блока 2 Регистров, поэтому сигналу на группе 24 выходовпоявится код приведенного времени,инициирующий время обработки супер-визором прерывания по окончании кван"З 0 та времени,Код времени работы супервизора сгруппы 24 выходов блока 2 регистровпоступит на сумматор 4 и через элемент 34 задержки и коммутатор 18.135 по второму тактовому импульсу с выхода 41.2 генератора 3 тактовых импульсов поступит на сумматор 6, Нагруппу выходов коммутатор 18,2 кодыне поступают, так как коммутатор46 18,1 закрыт сигналом логической "1"с пряного выхода счетного триггера13. Код приведенного времени работысупервизора в сумматоры 4 и 6 запи-шется по заднему фронту второго так.45 тового импульса с выхода 41.2 гене"ратора 3 тактовых импульсов, Такимобразом, время работы супервизорараспределяется по задачам, суммируется ко времени той задачи, чьи50 запросы она отрабатывала.0 случае считывания из блока 1.1(1.2) памяти кода команды обращения .к некритичному ресурсу (ЯЧС) данныйкод поступит как на преобразователь55 17.1 (17,2) кодов, так и на дешиф"ратор 14.1 (14.2).Дооустим, считывание команды ЗЧС. произошло во время кванта временипервой задачи. Значит, код с группы .55 8решения второй задачи и управлениеперейдет к первой задаце. Данный.процесс происходит следующим образом.Сцитанный из блока 1.2 памяти кодБЧСР(Ч,) поступит на преобразователь 17.2 кодов и дешиФратор 14,2, Удешифратора 14,2 на соответствующемвыходе 43.4 появися сигнал, которыйразрешит считывание соответствующего кода времени из блока 2 регистров, а также поступит на второй входоткрытого по первому входу элементаИ 21,1.Сигнал с выхода элемента И 21.1церез элемент ИЛИ 30 установит в единичное состояние триггер 10, атакжеобнулит счетчик 7, Потенциальный сигнал с прямого выхода триггера 10изменит состояние триггера 13 (отдаст управление первой задаце), Триггер 13 будет в единичном состоянии до тех пор, пока из блока 1.1 памятине будет считана команда освобожде ния ресурса БЧСЧ(Ч;) даже, если данная команда будет считана не в этом кванте времени, а К-том (сигналы переполнения сцетчика 7 не будут оказывать влияние на счетный триггер 13). При поступлении команды БЧСЧ(Ч,) на группу входовдешифратора 14,1 на выходе 42,3 по" явится импульс, который через элемент ИЛИ 29 считает из блока 2 регистров код времени работы супервизора для этой команды, обнулит триггеры 12.1 и 12.2, а также триггер 11. Теперь по очередному сигналупереполнения счетчика 7 триггер 13 изменит свое состояние на противоположное (т.е. установится квантвремени для другой задачи).В слуцае окончания одной из программ сигнал "Конец программы" с выхода 42,1 (43.1) дешифратора 14.1(14.2) обнулит триггер 9,1 (92) пуска, а также поступит через элемент ИЛИ 25 на единичный вход триггера 10, сигнал с прямого выхола которого перебросит триггер 13 в противоположное состояниепередав окончательно управление другой программе.Также сигнал с выхода элемента ИЛИ 25 разрешит выдачу кода времени обработки прерывания по времени супервизором из блока 2 регистров. По сигналу "Конец программы" свидетель- . ствующего об окончании обработки другой программы, обнулится соответствующий триггер 9. (9,2) пуска, на 7 17358выходов преобразователя будет соответствовать времени, затраценномусистемой на инициализацию этой команды БЧС. У дешифратора 14,1 по кодукоманды БЧС по третьему тактовому импульсу с выхода 41.3 генератора 3тактовых импульсов на выходе 42,3появится сигнал, который через элемент ИЛИ 29 поступит на соответствующии вход блока регистров, на группеО24 выходов которого по этому сигналу появится код приведенного времени, необходимый супервизору для обработки обращения первой программы,к некритичному ресурсу. Данный код15времени запишется в сумматор 4 четвертым тактовым импульсом с выхода41.4 генератора 3 тактовых импульсов, а в сумматор 6 по заднему Фронту третьего тактового импульса запишется код времени, затраченного навыборку команды БЧС. По заднему фронту четвертого тактового импульса запишется код времени, затраченный супервизором на работу по обработке25данного прерывания,При считывании из блока 1.1 (12)памяти команды обращения к критичномуресурсу БЧСР (Ч) данный код поступит на группу входов дешифратора 14,1(14.2). Предположим, что дешифратор14.1 дешифрирует этот код, на выходе42,2 дешифратора 14,1 появится импульспо приходу третьего тактового импульса с выхода 41,3 генератора 3 тактовых импульсов. Сигнал с выхода 42.2дешифратора 14.1 поступит на единичный вход триггера 12.1 и элементИЛИ 26, Сигнал с выхода элементаИЛИ 26 разрешит выдачу из блока 2 40регистров кода времени, необходимогосупервизору для обработки данногопрерывания.единичное состояние триггера 12.1свидетельствует о том, цто критичный ресурс занят,В случае окончания кванта времени,отведенного для обработки первой задачи, а считывания команды освобождения ресурса БЧСЧ(Ч;) остается занятым первой задацей,. Сигнал переполнения на выходе счетчика 7 разрешитработу второй задачи, счетчик 8.2адреса нацнет формировать коды адресов с того числа, на котором произошло предыдущее прерывание по времени. Бсли вторая программа запросит ресурс, который занят первымресурсом, то произойдет блокировка5855 10 1 О 15 Ю 50 раторов, к входу первого элемента задержки, к третьему входу блока ре 55 9 173выходе элемента ИЛИ 22 пропадет сигнал, тем самым генератор 3 тактовыхимпульсов остановится,В момент окончания одной из программ при обнулении соответствующеготриггера 9.1 (9.2), единичный сигналс инверсного выхода данного триггерапоступит на запрещающий вход одного из сумматоров 5 (6). Данный сумматор 5 (6) прекратит работу, зафиксировав на своей группе выходов кодвремени обработки соответствующей задачи, который отразится на блоке 16индикации, При завершении обработкидругой задачи при обнулении соответствующего триггера 9.1 (9.2) на группе выходов соответствующего сумматора зафиксируется код времени обработки данной задачи,Суммарные коды времени обработкизадач поступают на соответствующиегруппы входов комбинационного сумматора 15, тем самым код на группе 39выходов которого будет соответствовать времени работы мультипрограммнойсистемы, Данное время складываетсяиз времени обработки первой задачис учетом работы супервизора, а такжевремени обработки второй задачи сучетом работы супервизора в интересах второй задачи, Сумматор ч с группы 37 выходов выдает на блок 16индикации .код суммарного времениработы программ супервизора. Такимобразом, блоком 16 индикации будетотображено четыре характеристикимультипрограммной системы: общеевремя функционирования системы, время обработки первой задачи, времяобработки второй задачи, время работы супервизора. формула изобретенияУстройство для отладки мульти- программных систем, содержащее блок регистров, генератор тактовых импульсов, первый и второй счетчики, первый и второй дешифраторы, первый и второй элементы И, первый, второй и третий элементы ИЛИ, причем первый выход первого дешифратора подключен к первому входу первого элемента И и к первому входу первого элемента ИЛИ, выход которого подключен к первому входу блока регистров, первый выход второго дешифратора подключен к первому входу второго элемента И, второй выход вто 25 30 35 40 45 рого дешифратора подключен к перво-,му входу второго элемента ИЛИ, выход третьего элемента ИЛИ подключен к синхровходу первого счетчика,отличающееся тем, цто,с целью повышения достоверностиконтроля, в него введены первыйи второй блоки памяти, первый, второй и третий сумматоры, третий счетчик, первый и второй триггеры пуска,первый и второй триггеры блокировки,первый и второй триггеры занятостиресурса, счетный триггер, комбинационный сумматор, блок индикации, первый и второй преобразователи кодовкоманд в коды времени, первый и второй коммутаторы, третий, четвертый ипятый элементы И, четвертый, пятыйшестой, седьмой, восьмой, девятыйэлементы ИЛИ, одновибратор, первыйи второй элементы задержки, причемгруппы выходов первого и второго блоков памяти подключены соответственно к группам входов первых дешифратораи преобразователя .кодов команд в кодывремени и вторых дешифратора и преоб,разователя кодов команд в коды вре;мени, группа выходов блока регистровподключена к первым группам входовпервого и второго коммутаторов и кгруппе входов первого сумматора, группа выходов которого подклюцена к первой группе входов блока индикации,первый выход генератора тактовых импульсов подключен к первому входутретьего. элемента И, выход которогоподключен к синхровходу третьегосчетчика, первый выход генератора тактовых импульсов подклюцен к второмувходу блока регистров, второй выходгенератора тактовых импульсов подключен к первому входу четвертогоэлемента ИЛИ, к первым входам четвертого и пятого элементов И, выходыкоторых подключены соответственно ксчетным входам первого и второго счетчиков, третий выход генератора тактовых импульсов подклюцен к стробирующим входам первого и второго дешиф -гистров, .к первому входу пятого элемента ИЛИ, выход которого подключен к первым разрешающим входам второго и третьего сумматоров, четвертыйвыход генератора тактовых импульсов подключен к второму входу четвертогоэлемента ИЛИ, выход которого подключен к второму входу пятого элемента11ИЛИ, к разрешающему входу первого сум матора, н входу второго элемента задержки, группа выходов второго сумматора подключена к второй группе входов блока индикации и к первой группе входов комбинационного сумматора, группа выходов которого подключена к третьей группе входов бло" ка индикации, группа выходов третьего сумматора подключена к второй группе. входов комбинационного сумматора и к четвертой группе входов блока индикации,. выход переполнения третьего счетчика подключен к первому входу пятого элемента ИЛИ и к четвертому входу блока регистров группы выходов первого и второго счетчиков подключены к группам адресных входов первого и второго блоков памяти, прямые выходы первого и второго триггеров пуска подключены соответственно к первому и второму входам третьего элемента ИЛИ, выход которого подключен к синхровходу второго счетчика, к входу генерато" ра тактовых импульсов, инверсные выходы первого и второго триггеров пуска подключены к вторым управляющим входам третьего и второго сумматоров соответственно, прямой выход первого триггера блокировки подклю" чен к.второму входу шестого элемента ИЛИ, выход которого подключен к входу одновибратора, прямой выход второго триггера блокировки подключен к третьему входу шестого элемента ИЛИ, прямые выходы первого и второго триггеров занятости ресурса подключены к вторым входам второго и первого элементов И соответственноу выходы которых подключены к первому и второму входам седьмого элемента ,ИЛИ, прямой выход счетного триггера подключен к второму входу четвертого элемента И, к прямым первому и второму входам первого коммутатора и инверсным первому и второму входам второго коммутатора группы выходов которых подключены к группам входов третьего и второго сумматоров соот" ветственно, инверсный выход счетно" го триггера подключен к второму вхо:ду пятого элемента И, второй выход5855 12 5 10 15 20 25 30 35 40 45 И первого дешифратора подключен к обнуляющему входу первого триггера пускаи к первому входу восьмого элементаИЛИ, выход которого подключен к пятому входу блока регистров и к единичному входу первого триггера блокировки, третий выход первого дешифратора подключен к второму входу второго элемента ИЛИ, выход которогоподключен к шестому входу блока регистров, к оонуляющим входам первого и второго триггеров занятости ресурса и к обнуляющему входу второготриггера блокировки, четвертый выходпервого дешифратора подключен к пер"вому входу. девятого элемента ИЛИ,выход которого подключен к седьмомувходу блока регистров, первый выходпервого дешифратора подключен к еди"ничному входу первого триггера занятости ресурса, второй выход второ"го дешифратора подключен к единичному входу второго триггера занятости ресурса и к второму входупервого элемента ИЛИ, третий выходвторого дешифратора подключен квторому входу девятого элемента ИЛИчетвертый выход второго дешифратораподключен к второму входу восьмогоэлемента ИЛИ и к обнуляющему входувторого триггера пуска, группы выходов первого и второго преобразователей кодов команд в коды времениподключены к вторым группам входовпервого и второго коммутаторов, вы" .ход седьмого элемента ИЛИ подключенк единичному входу второго триггера, блокировки и к обнуляющему входутретьего счетчика, выход одновибратора подключен к счетному входу счетного триггера, выход первого элемента задержки подключен к третьим входам управления первого и второго коммутаторов, выход второго элементазадержки подключен к четвертым входамуправления первого и второго коммутаторов, группа входов задания начального адреса устройства подключена к группам информационных входовпервого и второго счетчиков, тактовыйвход, устройства подключен к едийичным и синхронизирующим входам первого и второго триггеров пуска.

Смотреть

Заявка

4680190, 18.04.1989

ПРЕДПРИЯТИЕ ПЯ А-7160

БЕК АЛЕКСАНДР ВЛАДИМИРОВИЧ, ЧЕРНЫШОВ МИХАИЛ АНАТОЛЬЕВИЧ, ТКАЧЕНКО СЕРГЕЙ НИКОЛАЕВИЧ, ТИМОНЬКИН ГРИГОРИЙ НИКОЛАЕВИЧ, ХАРЧЕНКО ВЯЧЕСЛАВ СЕРГЕЕВИЧ, МОЧЕНКОВ АНДРЕЙ ВЛАДИМИРОВИЧ

МПК / Метки

МПК: G06F 11/28

Метки: мультипрограммных, отладки, систем

Опубликовано: 23.05.1992

Код ссылки

<a href="https://patents.su/6-1735855-ustrojjstvo-dlya-otladki-multiprogrammnykh-sistem.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для отладки мультипрограммных систем</a>

Похожие патенты