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

Реферат

 

Изобретение относится к цифровой вычислительной технике и может быть использовано при исследовании различных технологий программирования. Цель изобретения расширение функциональных возможностей за счет учета среднего времени отладки программы. Для достижения поставленной цели в устройство введены коммутатор времени отладки и сумматор, а в каждый узел моделирования этапа программирования блок задания математического ожидания времени отладки, генератор случайных чисел и сумматор. 1 ил.

Изобретение относится к цифровой вычислительной технике и может быть использовано при исследовании различных технологий программирования.

Известно устройство, содержащее генератор импульсов, блок индикации, счетчик числа команд программы, группу каналов моделирования ошибок программного обеспечения, каждый из которых состоит из счетчика числа неискаженных команд программы, последовательно соединенных генератора случайной последовательности импульсов ошибок, первого элемента НЕ и первого элемента И, элемента ИЛИ, счетчика числа неискаженных и исправленных команд, второго элемента И и последовательно соединенных генератора случайной последовательности импульсов исправленных ошибок, второго элемента НЕ и третьего элемента И [1] Недостаток устройства заключается в узости его функциональных возможностей и малой точности моделирования, так как для исследования технологии программирования используется машинный код, содержащий всего один разряд, и не предусмотрен возврат кода на доработку (т.е. на исправление), и именно на этот этап, где произошла ошибка.

Наиболее близким к изобретению является устройство, содержащее генератор импульсов опроса, счетчик обработанных команд, коммутатор, блок элементов задержки, первый и второй регистры памяти, группу коммутаторов, дешифратор, группу счетчиков ошибок и узлы моделирования этапа программирования, в состав каждого из которых входят генератор случайной последовательности импульсов, элемент НЕ, блок элементов ИЛИ, блок элементов задержки и элемент И [2] Недостаток устройства заключается в том, что оно позволяет исследовать технологию программирования только на основе анализа качества ошибок на этапах моделирования, без учета такого важного показателя, как среднее время откладки программы.

Целью изобретения является расширение функциональных возможностей устройства моделирования.

На чертеже представлена структурная схема устройства моделирования технологии программирования.

Устройство для моделирования технологии программирования содержит генератор 1 импульсов опроса, счетчик 2 обработанных команд, коммутатор 9, дешифратор 12, группу коммутаторов 13, регистр памяти 14, группу счетчиков 15 ошибок, коммутатор 16 времен отладки, сумматор 17, узлы моделирования 3, в состав каждого из которых входит генератор 4 случайной последовательности импульсов, элемент НЕ 5, блок 6 элементов ИЛИ, элемент И 8, сумматор 7, блок 10 задания математического ожидания времени отладки, генератор 11 случайных чисел.

Устройство работает следующим образом.

Перед началом работы устройства через его установочный вход на установочные входы всех счетчиков и общего сумматора поступает управляющий сигнал, обнуляющий их.

В регистр памяти 14 записывается N-разрядный единичный код (например, для N 7 записывается код 1111111).

Генератор 1 вырабатывает последовательность импульсов, которая разрешает прохождение единичного кода через коммутатор 9, моделируя последовательность машинных кодов программы. Количество кодов, поступивших на выход коммутатора 9, подсчитывается счетчиком 2. Код с выхода коммутатора 9 поступает на вход первого узла 3 моделирования этапа программирования. Узлы 3 моделирования предназначены для моделирования N технологических этапов программирования.

Генераторы 4 случайного потока импульсов, элементы НЕ 5 и элементы И 8 предназначены для моделирования потоков ошибок, возникающих на протяжении этапов программирования. В случайные моменты появления импульсов на выходах генераторов 4 случайного потока импульсов на входах элементов И 8 появляются сигналы, запрещающие прохождение сигналов по определенным разрядам, т.е. ошибки, возникающие на первом этапе процесса программирования, приводят к появлению кода 0111111 (для N 7), на N-ом этапе 1111110. Если с входов генераторов 4 случайного потока импульсов импульсы не поступают, то единичный код через элементы И 8 проходит без искажений.

Код с выхода одного узла 3 моделирования этапа программирования поступает на вход последующего узла 3 моделирования этапа программирования. С выхода последующего узла 3 моделирование этапа программирования код поступает на вход дешифратора 12, который предназначен для анализа кодов, прошедших все этапы технологического процесса.

Если код не содержит ошибок (не был искажен в процессе прохождения технологических этапов), то управляющий сигнал появится на (N + 1)-м выходе дешифратора и поступит на счетный вход соответствующего счетчика 15. Если код был искажен, на К-ом этапе cодержит ноль в К-ом разряде), то на соответствующем выходе дешифратора 12 появится управляющий сигнал, который поступит на счетный вход соответствующего счетчика 15 ошибок, на управляющий вход соответствующего коммутатора 13 и на соответствующий управляющий вход коммутатора 16.

Вероятность искажения одного и того же кода на нескольких этапах моделирования достаточно мала. Поэтому для упрощения устройства при появлении, например, кода 1011101 (для N 7) управляющий сигнал появится на младшем (втором в данном случае) выходе дешифратора 12, т.е. код будет отправлен на доработку на второй технологический этап (на технологический этап с меньшим порядковым номером).

На информационные входы коммутатора 13 поступает исходный единичный код с выхода регистра 14 памяти. При появлении сигнала на управляющем входе К-го коммутатора 13 (при наличии нуля в К-м разряде кода на входе последнего узла 3 моделирования этапа программирования), на его выходе появляется единичный код, который поступает на второй вход К-го узла 3 этапа моделирования. Тем самым моделируется процесс возвращения ошибочных кодов на доработку на соответствующий технологический этап.

В каждом узле 3 моделирования этапа программирования в течение всего процесса моделирования происходит формирование времени отладки этапа путем сложения или вычитания математического ожидания времени отладки этапа и дисперсии времени отладки. Причем если в данный момент времени на выходе генератора 4 случайной последовательности импульсов находится импульс, то сумматор 7 будет складывать поступившие на его входы коды математического ожидания времени отладки этапа и дисперсии времени отладки, если импульс отсутствует вычитать, или наоборот. Математическое ожидание времени отладки задается переключателями блоков 10 задания математического ожидания времени отладки этапа, а значение дисперсии определяется кодом с выхода генератора 11 случайных чисел, который выдает случайным образом числа от 0 до Х, где Х предельное значение дисперсии времени отладки этапа.

При возникновении ошибки на К-ом этапе (появлении управляющего сигнала на К-ом выходе дешифратора 12), управляющий сигнал с К-го выхода дешифратора 12, как описано выше, поступает на соответствующий управляющий вход коммутатора 16 времен отладки. При этом сумматор 17 добавит поступившие с К-го узла 3 моделирования этапа программирования время отладки этапа к ранее накопленной сумме.

Таким образом, предлагаемое устройство для моделирования технологии программирования может быть использовано для исследования различных технологий программирования. Исследователь, варьируя количество этапов моделирования программирования, математическое ожидание и дисперсию времени отладки каждого этапа и анализируя полученные результаты: количество обработанных команд, количество правильно обработанных команд, количество ошибок на каждом этапе, среднее время отладки программы, может сделать вывод о целесообразности использования той или иной технологии программирования. Это особенно актуально, так как разработка программного обеспечения стоит дороже, чем вычислительная техника, для которой программное обеспечение создается.

Формула изобретения

УСТРОЙСТВО ДЛЯ МОДЕЛИРОВАНИЯ ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ, содержащее генератор импульсов опроса, счетчик обработанных команд, коммутатор, регистр памяти, дешифратор, группу коммутаторов, группу счетчиков ошибок, N узлов моделирования этапа программирования, каждый из которых включает блок элементов ИЛИ, элемент И, генератор случайной последовательности импульсов, элемент НЕ, в каждом узле моделирования этапа программирования выход генератора случайной последовательности импульсов подключен к входу элемента НЕ, выход которого соединен с первым входом элемента И своего узла моделирования этапа программирования, разрядные входы регистра памяти являются информационными входами устройства, разрядные выходы регистра памяти подключены к информационным входам коммутатора и коммутаторов группы, выход генератора импульсов опроса соединен со счетным входом счетчика обработанных команд и управляющим входом коммутатора, установочные входы счетчика обработанных команд и счетчиков ошибок группы объединены и являются установочным входом устройства, счетный вход K-го счетчика ошибок группы подключен к K-му выходу дешифратора (K 1, N + 1, N число технологических этапов программирования) и управляющему входу K-го коммутатора (K 1, N), выходы коммутатора соединены соответственно с первой группой входов элементов ИЛИ первого узла моделирования этапа программирования, выход элемента И (K - 1)-го узла моделирования этапа программирования подключен к (K 1)-му входу второй группы входов блока элементов ИЛИ K-го узла моделирования этапа программирования, выходы коммутаторов группы соединены соответственно с второй группой входов блока элементов ИЛИ, отличающееся тем, что, с целью расширения функциональных возможностей за счет учета среднего времени отладки программы, в него введены коммутатор времени отладки и сумматор, а в каждый узел моделирования этапа программирования введены блок задания математического ожидания времени отладки, генератор случайных чисел и сумматор, в каждом узле моделирования этапа программирования управляющий вход сумматора соединен с выходом генератора случайной последовательности импульсов, выходы блока задания математического ожидания времени отладки и генератора случайных чисел подключены соответственно к первому и второму информационным входам сумматора, выход блока элементов ИЛИ соединен с вторым входом элемента И, выходы сумматоров всех узлов моделирования этапа программирования соединены соответственно с информационными входами коммутатора времени отладки, управляющие входы которого подключены соответственно к первому по N-й выходам дешифратора, выход коммутатора времени отладки соединен с информационным входом сумматора, установочный вход которого подключен к установочному входу устройства, выход элемента И N-го узла моделирования этапа программирования соединен с входом дешифратора.

РИСУНКИ

Рисунок 1