Генератор псевдовипадкових чисел
Номер патенту: 6822
Опубліковано: 31.03.1995
Автори: Жабський Юрій Олександрович, Умеренко Ігор Віталійович, Биков Олександр Сергійович
Формула / Реферат
(57) Генератор псевдослучайных чисел, содержащий блок формирования равномерно распределенных псевдослучайных чисел и коммутатор, информационные входы которого соединены с разрядными выходами блока формирования равномерно распределенных псевдослучайных чисел, отличающийся тем, что в него введены первая и вторая схемы сравнения, счетчик, два элемента И, элемент ИЛИ, блок управления и генератор тактовых импульсов, первый выход которого соединен с первыми входами первого и второго элементов И, а второй выход - с входом синхронизации блока управления, первый выход которого соединен с управляющим входом коммутатора, первый выход которого соединен с первым входом первой схемы сравнения, а второй выход - со вторым входом первой схемы сравнения и первым входом второй схемы сравнения, второй вход которой является входом задания верхнего граничного значения, а выход "больше" соединен со вторым входом второго элемента И, выход которого соединен с первым входом элемента ИЛИ, второй вход которого является входом запуска генератора, а выход соединен с тактовым входом блока формирования равномерно распределенных псевдослучайных чисел и с входом "сброс" блока управления, второй выход которого соединен с вторым входом первого элемента И, третий вход которого соединен с выходом "равно" первой схемы сравнения, а выход - с счетным входом счетчика, вход сброса которого соединен с третьим выходом блока управления, а выход переполнения - с третьим входом элемента ИЛИ, четвертый выход блока управления является выходом "готовность" генератора и соединен с входом "запрет" генератора тактовых импульсов.
Текст
Генератор псевдослучайных чисел, содержащий блок формирования равномерно распределенных псевдослучайных чисел и коммутатор, информационные входы которого соединены с разрядными выходами блока формирования равномерно распределенных псевдослучайных чисел, о т л и ч а ю щ и й с я тем. что в него введены первая и вторая схемы сравнения, счетчик, два элемента И, элемент ИЛИ. блок управления и генератор тактовых импульсов, первый выход которого соединен с первыми входами первого и второго элементов И, а второй выход - с входом синхронизации блока управления, первый выход которого соединен с управляющим входом коммутатора, первый выход которого соединен с первым входом первой схемы сравнения, а второй выход - со вторым входом первой схемы сравнения и первым входом второй схемы сравнения, второй вход которой является входом задания верхнего граничного значения, а выход "больше" соединен со вторым входом второго элемента И, выход которого соединен с первым входом элемента ИЛИ, второй вход которого является входом запуска генератора, а выход соединен с тактовым входом блока формирования равномерно распределенных псевдослучайных чисел и с входом "сброс" блока управления, второй выход которого соединен с вторым входом первого элемента И, третий вход которого соединен с выходом "равно" первой схемы сравнения, а выход - с счетным входом счетчика, вход сброса которого соединен с третьим выходом блока управления, а выход переполнения - с третьим входом элемента ИЛИ, четвертый выход блока управления является выходом "готовность" генератора и соединен с входом "запрет" генератора тактовых импульсов. Изобретение относится к вычислительной технике и может быть использовано в аппаратуре контроля и диагностики цифровых блоков, в системах программного управления фрезерным станком при фрезеровании пазов в ключе дверных замков повышенной секретности. элемент И, элемент ИЛИ, элемент задержки, сумматор по модулю два и триггер [1]. В процессе эксплуатации генератора формируемые на разрядных выходах регистра сдвига коды носят псевдослучайный характер и равномерно распределены во времени, однако использование данного устройства в качестве генератора псевдослучайных размещений чисел для фрезерования пазов с о г р а н и ч е н н ы м числом Известен генератор псевдослучайных чисел, содержащий регистр сдвига, счетчик, С > СО О 6822 одинаковых углов невозможно из-за многократного повторения генерируемых кодов. Известен также генератор псевдослучайных чисел (прототип), содержащий блок формирования равномерно распределенных псевдослучайных чисел и коммутатор, информационные входы которого соединены с разрядными выходами блока формирования р а в н о м е р н о распределенных псевдослучайных чисел [2]. Такая конструкция генератора также не исключает возможность многократного повторения кодов и кроме этого не обеспечивает возможность регулирования верхней границы кодов, не используя перезапись информации в памяти. Это ограничивает применение данного генератора, в частности, в качестве программирующего устройства в системе программного управления фрезерным станком для фрезерования пазов в ключе дверных замков повышенной секретности. В основу изобретения поставлена задача создания генератора псевдослучайных чисел в котором достигается выделение комбинаций псевдослучайных чисел, соответствующих поставленным условиям, из всех возможных формируемых комбинаций, в результате чего обеспечивается исключение многократного повторения генерируемых кодов и реализация возможности регулирования их верхней границы, что позволяет применить данный генератор в качестве программирующего устройства в системе программного управления фрезерным станком для фрезерования пазов в ключе дверных замков повышенной секретности. Поставленная задача решается тем. что в генератор псевдослучайных чисел, содержащем блок формирования равномерно распределенных псевдослучайных чисел и коммутатор, информационные входы которого соединены с разрядными выходами блока формирования равномерно распределенных псевдослучайных чисел, согласно изобретению, введены первая и вторая схемы сравнения, счетчик, два элемента И, элемент ИЛИ, блок управления и генератор тактовых импульсов, первый выход которого соединен с первыми входами первого и второго элементов И, а второй выход - с входом синхронизации блока управления, первый выход которого соединен с управляющим входом коммутатора, первый выход которого соединен с первымвходом первой схемы сравнения, а второй выход - со вторым входом первой схемы сравнения и первым входом второй схемы сравнения, второй вход которого является входом задания верхнего граничного значения, а выход "больше" сое 5 10 15 20 25 30 35 40 45 50 55 динен с вторым входом второго элемента И, выход которого соединен с первым входом элемента ИЛИ, второй вход которого является входом запуска генератора, а выход соединен с тактовым входом блока формирования равномерно распределенных псевдослучайных чисел и с входом "сброс" блока управления, второй выход которого соединен с вторым входом первого элемента И, третий вход которого соединен с выходом "равно" первой схемы сравнения, а выход с счетным входом счетчика,вход сброса которого соединен с третьим выходом блока управления, а выход переполнения с третьим входом элемента ИЛИ, четвертый выход блока управления является выходом "готовность" генератора и соединен с входом "запрет" генератора тактовых импульсов. Благодаря такому выполнению данный генератор обеспечивает выделение комбинаций псевдослучайных, соответствующих поставленным условиям, из всех возможных комбинаций формируемых в регистре сдвига с сумматором по модулю два в обратной связи. Комбинации формируются путем сдвига содержимого гпхп -разрядного регистра сдвига, выходы которого объединены в n-групп по m-разрядов. Если комбинация не отвечает заданным требованиям осуществляется очередной сдвиг и новая проверка. За счет этого данный генератор обладает дополнительными возможностями, позволяющими получить комбинации чисел, обладающие о п р е д е л е н н ы м и с в о й с т в а м и , в частности получать комбинации с однократными повторениями, причем имеется возможность легко изменять верхнюю границу ряда чисел без аппаратурных изменений устройства. На чертеже приведена функциональная схема генератора. Генератор псевдослучайных чисел содержит блок 1 формирования равномерно распределенных случайных чисел, коммутатор 2, первую и вторую 3 и 4 схемы сравнения, счетчик 5, первый 6 и второй 7 элементы И, элемент ИЛИ 8, блок управления 9, генератор 10 тактовых импульсов, вход запуска 11, выход "готовность" 12. Первый выход генератора 10 соединен с первыми входами элементов 6 и 7, а второй выход - с входом синхронизации блока 9. Первый выход блока 9 связан с управляющим входом коммутатора 2, первый выход которого соединен с первым входом схемы 3, а второй выход - со вторым входом схемы 3 и с первым входом схемы 4. Второй вход последней является входом задания "верхнего граничного значения", а выход "больше" связан со вторым входом элемента 7, выход которого соеди 6822 йен с первым входом элемента 8, второй вход которого служит входом 11 запуска генератора 10. Выход элемента 8 связан с тактовым входом блока 1 и с входом "сброс" блока 9. Второй выход блока 9 подключен к второму входу элемента б, третий вход которого связан с выходом "равно" схемы 3, а выход - со счетным входом счетчика 5, имеющего вход сброса от третьего выхода блока 9. Выход переполнения счетчика 5 подключен к третьему входу элемента 8. Четвертый выход блока 9 является выходом "готовность" генератора псевдослучайных чисел и соединен с входом "запрет" генератора 10. Назначение генератора - одновременное получение п кодов (п двоичных чисел), содержащих m двойных разрядов, причем общее число совпадающих кодов не должно превышать выбранного предельного значения N, а каждое число не должно быть больше заданной граничной величины А < 2 т . Генератор работает следующим образом. Сигнал со входа запуска 11 генератора поступает через элемент ИЛ И 8 на тактовый вход блока 1 формирования равномерно распределенных псевдослучайных чисел. Указанный блок формирует очередное m-n - разрядное двоичное число, рассматриваемое в дальнейшем как п кодов (чисел) по m-разрядов в каждом. Запускающий сигнал попадает также на вход "сброс" блока управления 9, переводя его в начальное состояние. При этом на четвертом выходе блока управления появляется нулевой сигнал, разреш а ю щ и й работу генератора тактовых импульсов, а на третьем выходе блока управления - сигнал, осуществляющий сброс счетчика 5 в исходное нулевое состояние. Одновременно сигнал с первого выхода блока управления обеспечивает подачу первого m разрядного числа ai с блока 1 на второй выход коммутатора 2. Это число сравнивается во второй схеме сравнения 4 с заданной граничной величиной Агр. Если ai —^—« *-). Эти сигналы осуществляют управление коммутатором 2, обеспечивая следующий порядок коммутации: 5 10 15 20 25 30 35 40 45 50 55 - в течение первых (п - 1) тактов на первый вход коммутатора 2 поступает первое число an на второй выход - поочередно а2,аз,...ап; - в течение последующих (п - 2) тактов на первый вход коммутатора 2 поступает второе число аг, на второй выход поочередно аз,Э4 а п и т.д. вплоть до случая, когда на первом входе будет число a n -i, а на втором а п . Одновременно на первом такте появляется единичный сигнал, на втором такте блока управления, разрешающий подсчет числа совпадающих кодов счетчиком 5. Поскольку второй выход коммутатора 2 соединен с первым входом второй схемы сравнения 4, то в течение указанных (п - 1) тактов происходит последовательное сопоставление чисел а2.аз,..ап с Агр. Первая схема сравнения осуществляет попарное сопоставление чисел акі = 1,п, выдавая на своем выходе "равно" сигнал каждый раз, когда коды совпадают, т.е. если а\ = aj (і < j ; i = 1, n - 1, j = 2, n) Для проведения такого сопоставления требуется п ^ п *- тактов. Количество таких совпадений фиксируется счетчиком 5 синхронно с поступлением тактовых импульсов с первого выхода генератора 10 тактовых импульсов. Коэффициент N пересчета счетчика 5 устанавливается предварительно исходя из предельно допустимого числа совпадающих кодов. Если число совпадения оказывается больше п, на выходе переполнения счетчика 5 возникает сигнал, появляющийся затем на выходе элемента ИЛИ 8, схематичный сигнал возникает на элементе ИЛИ 8 и при первом же нарушении условия аі Агр появляется единичный сигнал на выходе "больше" второй схемы сравнения, а затем синхронно с тактовым импульсом и на выходе второго 7 элемента И. Появление сигнала на выходе элемента ИЛИ 8 означает, что сгенерированный набор кодов является неудовлетворительным, сигнал с выхода элемента ИЛИ 8 осуществляет перезапуск блока и сброс блока управления в исходное состояние, после чего осуществляется генерация очередного набора кодов и их последующая проверка. Если же сигнал на выходе элемента ИЛИ 8 не появляется, то после завершения п(п - 1) и —*— -го такта проверки заканчиваются и появляется единичный сигнал на четвертом выходе блока управления. 8 6822 Этот сигнал разрешает работу генератора тактовых импульсов и служит сигналом "готовность", свидетельствующим о том, что на выходах блока 1 имеют место п двоичных кодов псевдослучайных чисел по m разрядов 8 в каждом, причем число совпадающих кодов не превышает N. а каждое число не больше Агр. 5 Блок формирования равномерно распределенных псевдослучайных чисел Вторая схема сравнения 3 • Первая схема сравнения Генератор тактовых импульсов Упорядник Замовлення 4501 Техред М.Моргентал Коректор Н.Милюкова Тираж Підписне Державне патентне відомство України, 254655, ГСП. Київ-53, Львівська сіл., 8 Виробничо-видавничий комбінат "Патент", м. Ужгород, вул.ГагарЫа, 101
ДивитисяДодаткова інформація
Назва патенту англійськоюPseudo-random number generator
Автори англійськоюBykov Oleksandr Serhiiovych, Umerenko Ihor Vitaliiovych, Zhabskyi Yurii Oleksandrovych
Назва патенту російськоюГенератор псевдослучайных чисел
Автори російськоюБыков Александр Сергеевич, Умеренко Игорь Витальевич, Жабский Юрий Александрович
МПК / Мітки
МПК: G06F 7/58
Мітки: генератор, чисел, псевдовипадкових
Код посилання
<a href="https://ua.patents.su/4-6822-generator-psevdovipadkovikh-chisel.html" target="_blank" rel="follow" title="База патентів України">Генератор псевдовипадкових чисел</a>