Генератор случайной последовательности
Иллюстрации
Показать всеИзобретение относится к вычислительной технике и предназначено для получения случайной последовательности заданного набора данных с требуемыми характеристиками. Технический результат заключается в повышении достоверности генерируемой последовательности значений за счет обеспечения зависимости выбора значения только от заданной законом распределения вероятности появления этого значения. Устройство содержит селектор-мультиплексор (1), оперативное запоминающее устройство (2), источник случайных чисел (3), К Р-разрядных регистров (4), где К≥2 и Р≥2, К блоков сравнения (5), шифратор приоритетов (6) и N, где N≥1, инверторов (7). 1 з.п. ф-лы, 2 ил.
Реферат
Изобретение относится к вычислительной технике и предназначено для получения случайной последовательности элементов заданного набора данных с требуемыми характеристиками.
Известно устройство для получения случайных чисел с заданным законом распределения (см. Авт.св. СССР № 478298, кл. G06F 1/02, 1973), содержащее генератор равномерно распределенных случайных чисел, многоступенчатый дешифратор, наборное поле, блок элементов ИЛИ и выходное устройство, в состав которого входит блок элементов И-НЕ, счетчик и дешифратор.
Недостатком генератора является то, что он имеет ограниченную область использования, так как не позволяет генерировать с заданным законом распределения символьные и строковые константы.
Известен генератор последовательностей случайных чисел (см. Авт.св. СССР № 447706, кл. G06F 1/02, 1974), содержащий датчик равномерно распределенных чисел, коммутатор, первый и второй генераторы тактовых импульсов, счетчик, регистры, клапаны, элемент задержки, преобразователь, формирователь импульса сбора и ключ.
Недостатком генератора является ограниченная область применения, так как данное устройство не позволяет получать последовательности заданных значений набора данных.
Известен генератор случайных чисел (см. Авт.св. СССР № 771654, кл. G06F 1/02, G07C 15/00, 1978), содержащий источник равномерно распределенных случайных сигналов, два блока памяти, сумматор, переключатель и умножитель.
Известный генератор позволяет получать случайные числа с заданной точностью аппроксимации как с непрерывными распределениями, так и с распределениями, имеющими разрывы первого рода. Недостатком генератора является ограниченная область его использования вследствие невозможности формирования им случайной конечной последовательности заданных значений набора данных с заданным законом распределения.
Из известных наиболее близким аналогом (прототипом) по своей технической сущности заявленному устройству является генератор случайных чисел заданных значений набора данных (см. Авт.св. РФ №2138074, кл. G06F 1/02, 1999), состоящий из источника случайных чисел, первого и второго оперативных запоминающих устройств (выполненных в виде набора из 16-ти оперативных запоминающих устройств каждое), TV-разрядного селектора-мультиплексора (выполненного в виде набора из 3-х селектров-мультиплексоров), блока сравнения и блока элементов И. М-разрядный выход блока элементов И, где М≥2 - разрядность генерируемых чисел, является N-разрядным выходом «Результат» генератора. Разряды N-разрядного выхода источника случайных чисел, где N≥2 - количество разрядов, достаточное для адресации элементов заданного набора данных, подключены к соответствующим входам второй группы информационных входов N-разрядного селектора-мультиплексора, N-разрядный выход которого подключен к N-разрядным адресным входам первого и второго оперативного запоминающего устройства. N входов первой группы информационных входов N-разрядного селектора-мультиплексора являются соответствующими разрядами N-разрядного адресного входа генератора. M-разрядные информационные входы первого оперативного запоминающего устройства и второго оперативного запоминающего устройства объединены и являются первым M-разрядным информационным входом генератора. M-разрядный выход первого оперативного запоминающего устройства подключен к M-разрядному информационному входу блока сравнения, а M-разрядный выход второго оперативного запоминающего устройства подключен к M-разрядному входу блока элементов И. Каждое оперативное запоминающее устройство снабжено инверсными входами выбора кристалла и чтения/записи, которые являются соответствующими входами «Выбор кристалла 1», «Выбор кристалла 2», «Чтение/запись 1», «Чтение/запись 2» генератора. Выход блока сравнения подключен к второму управляющему входу блока элементов И. Управляющий вход источника случайных чисел, вход выбора N-разрядного селектора-мультиплексора и управляющий вход блока элементов И объединены и являются управляющим входом генератора. Инверсный разрешающий вход N-разрядного селектора-мультиплексора является первым разрешающим входом генератора.
Известный генератор обеспечивает формирование случайной конечной последовательности элементов заданного набора данных с заданным законом распределения.
Однако устройство-прототип имеет недостаток - относительную низкую достоверность генерируемой последовательности заданных значений набора данных. При этом под достоверностью следует понимать степень соответствия характеристик генерируемой последовательности заданных значений набора данных характеристикам случайных процессов, протекающих в реальных системах.
Невысокая достоверность генерируемой последовательности заданных значений набора данных обусловлена следующими причинами:
1. Заданием закона распределения посредством указания абсолютных значений требуемого числа наблюдений заданных элементов набора данных, что приводит к детерминированной частоте их появления на выходе генератора и к неоднородности генерируемой последовательности, выражающейся в том, что на начальном периоде функционирования генератора последовательность определяется только законом распределения источника случайных чисел, используемого для выбора очередного генерируемого элемента, а на конечном этапе - законом распределения источника случайных чисел и значениями требуемого числа наблюдений элементов заданного набора данных.
2. Ограничением длины генерируемой последовательности суммой заданного количества генераций для каждого элемента заданного набора данных.
Целью изобретения является разработка генератора случайной последовательности, обеспечивающего более высокую достоверность генерируемой последовательности значений из заданного набора данных за счет обеспечения зависимости выбора очередного генерируемого значения только от заданной законом распределения вероятности появления этого значения.
Поставленная цель в заявленном генераторе случайной последовательности достигается тем, что в известном генераторе случайной последовательности заданных значений набора данных, содержащем источник случайных чисел, первое и второе оперативные запоминающие устройства, N-разрядный селектор-мультиплексор, где N≥1 - количество разрядов, достаточное для адресации элементов заданного набора данных, блок сравнения и блок элементов И, М-разрядный выход которого, где M≥2 - разрядность генерируемых чисел, является М-разрядным выходом «Результат» генератора, разряды N-разрядного выхода источника случайных чисел подключены к соответствующим входам второй группы информационных входов N-разрядного селектора-мультиплексора, N-разрядный выход которого подключен к N-разрядным адресным входам первого и второго оперативного запоминающего устройства, N входов первой группы информационных входов TV-разрядного селектора-мультиплексора являются соответствующими разрядами N-разрядного адресного входа генератора, M-разрядные информационные входы первого оперативного запоминающего устройства и второго оперативного запоминающего устройства объединены и являются первым М-разрядным информационным входом генератора, М-разрядный выход первого оперативного запоминающего устройства подключен к M-разрядному информационному входу блока сравнения, а М-разрядный выход второго оперативного запоминающего устройства подключен к М-разрядному входу блока элементов И, каждое оперативное запоминающее устройство снабжено инверсными входами выбора кристалла и чтения/записи, которые являются соответствующими входами «Выбор кристалла 1», «Выбор кристалла 2», «Чтение/запись 1», «Чтение/запись 2» генератора, выход блока сравнения подключен к второму управляющему входу блока элементов И, управляющий вход источника случайных чисел, вход выбора N-разрядного селектора-мультиплексора и управляющий вход блока элементов И объединены и являются управляющим входом генератора, инверсный разрешающий вход N-разрядного селектора-мультиплексора является первым разрешающим входом генератора, дополнительно введены К P-разрядных регистров, где К≥2 - количество элементов в заданном наборе данных, а Р≥2, шифратор приоритетов, N инверторов, (К-1) блоков сравнения. Источник случайных чисел выполнен с P-разрядным выходом. Входы инициализации Р-разрядных регистров объединены и являются входом «Установка» генератора. Р-разрядный информационный вход k-го Р-разрядного регистра, где k=1, 2, ..., К, является k-м первым Р-разрядным входом "Верхняя граница" генератора, P-разрядный выход «Случайное число» источника случайных чисел соединен с Р-разрядными входами К блоков сравнения. Р-разрядный выход k-го Р-разрядного регистра подключен к второму P-разрядному входу «Верхняя граница» k-го блока сравнения. Выход «Результат сравнения» k-го блока сравнения подключен к k-му инверсному входу шифратора приоритетов, n-й инверсный выход которого, где n=1, 2, ..., N, соединен с входом n-то инвертора. Инверсные выходы N инверторов подключены к соответствующим разрядам второго N-разрядного информационного входа N-разрядного селектора-мультиплексора, M-разрядный выход оперативного запоминающего устройства является M-разрядным выходом «Результат» генератора.
Блок сравнения состоит из компаратора, Р-входового элемента ИЛИ-НЕ и элемента ИЛИ, первый вход которого подключен к выходу «Неравенство» компаратора. Второй вход элемента ИЛИ подключен к инверсному выходу Р-входового элемента ИЛИ-НЕ. Выход элемента ИЛИ является выходом «Результат сравнения» блока сравнения. Р входов первой группы информационных входов компаратора являются Р-разрядным входом «Случайное число» блока сравнения. Р входов второй группы информационных входов компаратора соединены с соответствующими входами Р-входового элемента ИЛИ-НЕ и являются вторым Р-разрядным входом «Верхняя граница» блока сравнения.
Поставленная цель достигается за счет введения К регистров, шифратора приоритетов, N инверторов и блоков сравнения, обеспечивающих задание закона распределения элементов заданного набора данных посредством указания вероятностей их появления, а также зависимость выбора очередного генерируемого элемента только от заданной законом распределения вероятности его появления и независимость длины генерируемой последовательности от исходных данных.
Проведенный заявителем анализ уровня техники позволил установить, что аналоги, характеризующиеся совокупностями признаков, тождественных всем признакам заявленного технического решения отсутствуют. Следовательно, заявленное изобретение соответствует условию патентоспособности «Новизна».
Результаты поиска известных решений в данной и смежных областях техники, с целью выявления признаков, совпадающих с отличительными от прототипа признаками заявленного изобретения, показали, что они не следуют явным образом из уровня техники. Из определенного заявителем уровня техники не выявлена известность влияния предусматриваемых существенными признаками заявленного изобретения преобразований на достижение указанного технического результата. Следовательно, заявленное изобретение соответствует условию патентоспособности «Изобретательский уровень».
Заявленное устройство поясняется чертежами, на которых:
на фиг.1 - генератор случайной последовательности;
на фиг.2 - блок контроля интервалов.
Генератор случайной последовательности (см. фиг.1) состоит из N-разрядного селектора-мультиплексора 1, оперативного запоминающего устройства 2, источника случайных чисел 3, К Р-разрядных регистров 41-4K, К блоков сравнения 51-5K, шифратора приоритетов 6 и N инверторов 71-7N.
Вход выбора SE N-разрядного селектора-мультиплексора 1 соединен с управляющим входом источника случайных чисел 3 и является управляющим входом 11 генератора. Первая группа из N информационных входов A1-AN N-разрядного селектора-мультиплексора 1 является N-разрядным адресным входом 10 генератора. Вторая группа из N информационных входов B1-ВN N-разрядного селектора-мультиплексора 1 подключены к соответствующим инверсным выходам инверторов 71-7N. N выходов Q1-QN N-разрядного селектора-мультиплексора 1 подключены к соответствующим адресным входам A1-AN оперативного запоминающего устройства 2, М информационных входов D1-DM которого являются соответствующими разрядами M-разрядного информационного входа 12 генератора. Оперативное запоминающее устройство 2 снабжено инверсным входом выбора кристалла и инверсным входом чтения/записи , которые являются соответственно входом «Выбор кристалла» 9 и входом «Чтение/запись» 8 генератора Р-разрядные информационные входы D1-DP каждого из К Р-разрядных регистров 41-4K являются первыми Р-разрядными входами «Верхняя граница» 141-14K генератора. Входы инициализации С всех К Р-разрядных регистров 41-4K объединены и являются входом «Установка» 13 генератора. Р-разрядные информационные выходы Q1-QP каждого из К Р-разрядных регистров 41-4K подключены к соответствующим вторым Р-разрядным входам «Верхняя граница» 181-18K каждого из К блоков сравнения 51-5K. Р-разрядный выход «Случайное число» 17 источника случайных чисел 3 соединен с Р-разрядными входами «Случайное число» К блоков сравнения. Каждый из К выходов «Результат сравнения» 191-19K всех блоков сравнения 51-5K подключен к соответствующему инверсному входу шифратора приоритетов 6. N инверсных выходов шифратора приоритетов 6 соединены с соответствующими входами N инверторов 71-7N. M выходов C1-СM оперативного запоминающего устройства являются М-разрядным выходом «Результат» 20 генератора.
N-разрядный селектор-мультиплексор 1 предназначен для коммутации на свой N-разрядный выход сигналов одной из двух групп из N информационных входов. Схема реализации N-разрядного селектора-мультиплексора известна. См., например, в книге И.И.Петровского и др. «Логические ИС КР1533, КР1554», справочник в двух частях. Часть 1. - M.: Бином, 1993, с.211.
Оперативное запоминающее устройство 2 предназначено для хранения значений элементов заданного набора данных. Схема реализации оперативного запоминающего устройства известна. См., например, в книге В.Л.Шило «Популярные цифровые микросхемы». - M.: «Радио и связь», 1987, с.164-166.
Источник случайных чисел 3, предназначенный для генерирования P-разрядных случайных чисел, известен и показан, например, в книге М.П.Бобнева «Генерирование случайных сигналов». - M.: Энергия, 1971, с.168-174.
Регистры 41-4K предназначены для хранения двоичных кодов, определяющих вероятности появления соответствующих элементов заданного набора данных. Описание работы и схема таких регистров известны и приведены, например, в книге: П.П.Мальцев, Н.С.Долидзе и др. «Цифровые интегральные микросхемы: справочник». - M.: «Радио и связь», 1994, с.57-62.
Шифратор приоритетов 6 предназначен для преобразования значения логического нуля на одном из его входов в соответствующий двоичный код на его выходе, причем преобразование осуществляется с учетом приоритетов, определяемых номером входа. Схема реализации шифратора приоритетов известна. См., например, в книге: П.П.Мальцев, Н.С.Долидзе и др. Справочник «Цифровые интегральные микросхемы». - М.: «Радио и связь», 1994. с.40-41.
Инверторы 71-7N предназначены для инвертирования сигналов с инверсных выходов шифратора приоритетов. Схема реализации инвертора известна. См., например, в книге И.И.Петровского и др. «Логические ИС КР1533, КР1554», справочник в двух частях. Часть 2. - М.: Бином, 1993, с.471-472.
Блоки сравнения 51-5К предназначены для сравнения случайного значения, генерируемого источником случайных чисел, и значения на выходе соответствующего регистра, а также для формирования результата сравнения. Блок сравнения может быть реализован в различных вариантах. В частности, его схема, показанная на фиг.2, содержит компаратор 5.1, Р-входовый элемент ИЛИ-НЕ 5.2 и элемент ИЛИ 5.3. Первый вход элемента ИЛИ 5.3 подключен к выходу «Неравенство» 5.4 (который на фиг.2 обозначен символом «А>В») компаратора 5.1. Второй вход элемента ИЛИ 5.3 подключен к инверсному выходу Р-входового элемента ИЛИ-НЕ 5.2. Выход элемента ИЛИ является выходом «Результат сравнения» 19 блока сравнения 5. Р входов первой группы информационных входов компаратора 5.1 являются Р-разрядным входом «Случайное число» 17 блока сравнения 5. Р входов второй группы информационных входов компаратора соединены с соответствующими входами Р-входового элемента ИЛИ-НЕ 5.2 и являются вторым Р-разрядным входом «Верхняя граница» 18 блока сравнения 5.
Компаратор 5.1 предназначен для сравнения двух Р-разрядных чисел и формирования результата сравнения. Описание работы и схема компаратора приведены, например, в книге: В.Л.Шило «Популярные цифровые микросхемы». - М.: «Радио и связь», 1987, с.183-184.
Элемент ИЛИ-НЕ 5.2 предназначен для формирования на своем выходе значения логического нуля, если на всех разрядах второго Р-разрядного входа «Верхняя граница» блока сравнения установлены значения логической единицы. Схема реализации элементов ИЛИ-НЕ известна. См., например, в книге И.И.Петровского и др.: «Логические ИС КР1533, КР1554», справочник в двух частях, часть 1. - М.: Бином, 1993, с.246-247.
Элемент ИЛИ 5.3 предназначен для формирования на своем выходе значения логической единицы, если на одном из его входов имеется значение логической единицы. Схема реализации такого элемента ИЛИ известна. См., например, в книге: Б.В.Тарабрин, С.В.Якубовский, Н.А.Барканов и др. «Справочник по интегральным микросхемам». - 2-е изд., перераб. и доп. - М.: Энергия, 1981, с.109.
В предлагаемом устройстве выбор значения элемента из заданного набора данных осуществляется на основе закона распределения, который задается путем указания требуемой вероятности появления соответствующего элемента заданного набора данных. При этом применяется подход (Моделирование информационных систем. / Под ред. О.И.Шелухина. Учебное пособие. - М.: Радиотехника, 2005. - 368 с.: ил.), основанный на использовании источника случайных чисел, распределенных равномерно в диапазоне [0; 1). Данный диапазон разбивается на совокупность интервалов, количество которых соответствует количеству элементов в заданном наборе данных. Величины интервалов соответствуют значениям требуемых вероятностей наблюдения соответствующих элементов заданного набора данных. Вероятность попадания случайного числа, сформированного источником случайных чисел, внутрь каждого интервала равна его длине.
В предлагаемом устройстве номер интервала используется в качестве адреса для извлечения элемента заданного набора данных из оперативного запоминающего устройства, а для задания интервалов указываются их верхние границы.
Задание вероятностей появления элементов заданного набора данных осуществляется следующим образом. Пусть Н={h1, h2, ..., hk, ..., hK} - множество требуемых вероятностей появления элементов заданного набора данных, где , К - количество элементов заданного набора данных, а В={b1, b2, ..., bk, ..., bK} - множество соответствующих значений верхних границ интервалов. Тогда значение верхней границы k-го интервала будет равно сумме значений вероятностей появления элементов из заданного набора данных от 1-го до k-го:
Таким образом, диапазон [0; 1) будет разбит на следующие интервалы:
В заявленном устройстве используется Р-разрядный источник случайных чисел с равномерным законом распределения. При этом Р-разрядный двоичный код, формируемый на выходе источника случайных чисел, и Р-разрядный двоичный код, используемый для задания верхней границы интервала, рассматриваются как числа из диапазона [0; 1) без указания целой части.
Например, задано множество требуемых вероятностей появления элементов заданного набора данных Н={0,125; 0,125; 0,25; 0,5}. Тогда значения верхних границ интервалов будут равны соответственно 0,125, 0,25, 0,5 и 1. В соответствии с правилами перевода (Б.Я.Никитин, В.И.Скребков «Теоретические основы вычислительной техники», часть 2, - Л: ЛВВИУС, 1988, стр.9-11) правильных десятичных дробей в двоичное представление данные значения в четырехразрядном коде представляются соответственно в виде чисел 0,0010, 0,0100, 0,1000, 0,1111. А в предлагаемое устройство заносятся только дробная часть этих чисел: соответственно значения 0010, 0100, 1000 и 1111.
Аналогичным образом, если источник случайных чисел сформировал значение 1101 (в десятичном представлении 0,8125), то, представляя это значение как дробную часть числа из диапазона [0; 1), т.е. как 0,1101, и учитывая множество верхних границ интервалов из предыдущего абзаца, видно, что случайное значение попало в интервал, ограниченный числами 0,1000 и 0,1111.
Заявленное устройство работает следующим образом.
В исходном положении на управляющем входе 11 и входе «Установка» 13 установлены значения логического нуля, а на входе «Чтение/запись» 8 и входе «Выбор кристалла» 9 - значения логической единицы.
Генератор работает в следующих режимах:
режим подготовки к генерации;
режим генерации.
Режим работы генератора определяется комбинацией сигналов на управляющем входе 11 генератора, входе «Установка» 13, входе «Чтение/Запись» 8 и входе «Выбор кристалла» 9.
Для перевода устройства в режим подготовки необходимо на управляющий вход генератора и входы «Выбор кристалла» и «Чтение/Запись» подать значения логического нуля, а на вход «Установка» - значение логической единицы.
В режиме генерации управляющий вход генератора и вход «Чтение/Запись» устанавливаются значения логической единицы, а на входы «Выбор кристалла» и «Установка» - значения логического нуля.
В режиме подготовки генератора к работе выполняются следующие шаги.
Первый шаг - занесение множества А=[а1, а2, ..., аK} значений элементов заданного набора данных в оперативное запоминающее устройство, при этом:
0≤ak≤2M-1 - элемент заданного набора данных, где ;
М≥2 - количество двоичных разрядов, достаточное для представления значений элементов заданного набора данных;
К≥2 - количество элементов в заданном наборе данных;
N≥1 - количество двоичных разрядов, достаточное для адресации элементов набора данных.
Второй шаг - установка множества В={b1, b2, ..., bK} значений верхних границ интервалов, на которые разбивается множество адресов заданного набора данных А.
Первый шаг подготовки генератора к работе включает следующие действия. По N-разрядному адресному входу 10 генератора на первую группу информационных входов A1-АN селектора мультиплексора 1 подается N-разрядный адрес, по которому должно быть записано значение первого элемента а1. На управляющем входе 11 генератора устанавливают значение логического нуля, который поступает на вход SE селектора-мультиплексора 1, что приводит к коммутации адреса, установленного на входах A1-АN селектора-мультиплексора, на второй N-разрядный вход «Случайный адрес» 16 оперативного запоминающего устройства 2. По М-разрядному информационному входу 12 генератора на информационные входы D1-DM оперативного запоминающего устройства подают значение первого элемента а1 заданного набора данных, которое записывается в оперативное запоминающее устройство при поступлении на его входы и значений логического нуля по входам «Выбор кристалла» 9 и «Чтение/запись» 8 соответственно. Затем по TV-разрядному адресному входу 10 генератора на первую группу информационных входов A1-АN селектора мультиплексора 1 подается TV-разрядный адрес, по которому должно быть записано значение второго элемента а2, а по М-разрядному информационному входу 12 генератора на информационные входы D1-DM оперативного запоминающего устройства подают значение элемента а2 и путем установки значений логического нуля на входах «Выбор кристалла» 14 и «Чтение/запись» 15 генератора записывают значение а1 в оперативное запоминающее устройство. Аналогичным образом в оперативное запоминающее устройство заносятся все К значений элементов заданного набора данных. После чего на входе «Чтение/запись» 8 генератора устанавливают значение логической единицы.
Второй шаг подготовки генератора к работе выполняется следующим образом. На первые P-разрядные входы «Верхняя граница» 141-14K генератора устанавливают значения верхних границ интервалов. При этом на вход 141 устанавливают значение b1, которое поступает на группу информационных входов D1-DP регистра 41, на вход 142 - значение b2, которое поступает на группу информационных входов D1-DP регистра 42, на вход 14K - значение bK, которое поступает на группу информационных входов D1-DP регистра 4K. Для записи значений верхних границ интервалов в регистры 41-4K на входе «Установка» 13 устройства устанавливают значение логической единицы, которая поступает на входы инициализации С каждого регистра. По окончании записи верхних границ интервалов в соответствующие регистры на входе «Установка» 13 устройства устанавливают значение логического нуля.
После вышеописанных действий генератор готов к работе.
В режиме генерации работа устройства происходит следующим образом. На управляющий вход 11 генератора подают значение логической единицы, который поступает на вход выбора SE селектора-мультиплексора 1, что обеспечивает коммутацию адреса, поступающего с выхода инверторов 71-7N, на адресные входы A1-АN оперативного запоминающего устройства 2.
Источник случайных чисел 1 при наличии на управляющем входе 11 генератора значения логической единицы формирует Р-разрядное случайное значение адреса, которое поступает одновременно на первые группы информационных входов A1-АP всех компараторов 5.11-5.1K блока сравнения 5, где происходит сравнение случайного значения адреса со значениями верхних границ заданных интервалов В=[b1, b2, ..., bK}. В случае, если поступившее значение адреса принадлежит k-му интервалу, т.е. оно меньше либо равно значения верхней границы k-го интервала, то на выходе «Неравенство» компараторов 5.11-5.1k-1 формируются значения логической единицы, а на выходах «Неравенство» остальных компараторов значения логического нуля.
Сигналы с выходов «Неравенство» каждого компаратора поступают на соответствующие инверсные входы шифратора приоритетов.
Таким образом, при выполнении условия bk-1<ak<bk, на входах шифратора приоритетов 6 будут установлены значения логической единицы, а на входах - значения логического нуля. В этом случае на N-разрядном выходе шифратора приоритетов 6 будет сформирован двоичный код в инверсном представлении, соответствующий значению первого номера входа с установленным значением логического нуля, т.е. код, соответствующий числу k - номеру интервала, которому принадлежит значение аk. Полученный код после инвертирования в элементах 71-7N поступает на первый N-разрядный вход «Случайный адрес» 15 второй группы информационных входов селектора-мультиплексора 1 и далее на адресные входы A1-АN оперативного запоминающего устройства 2. При этом по входу «Выбор кристалла» 9 генератора на вход оперативного запоминающего устройства 2 подают значение логического нуля, а по входу «Чтение/запись» 15 генератора на вход оперативного запоминающего устройства 2 подают значение логической единицы, что соответствует операции чтения данных. Таким образом, в соответствии со случайными адресами, формируемыми источником случайных чисел, происходит чтение значений элементов А={а1, а2, ..., аk} заданного набора данных из оперативного запоминающего устройства, которые поступают на выход «Результат» 20 генератора.
Генератор прекращает работу, когда на его управляющий вход 11 подается значение логического нуля, что соответствует прекращению формирования источником случайных чисел случайных адресов, либо когда по входу «Выбор кристалла» 9 генератора на вход оперативного запоминающего устройства подают значение логической единицы.
В отличие от устройства-прототипа, в предлагаемом устройстве выбор очередного генерируемого элемента зависит только от заданной законом распределения вероятности его появления и, при этом, длина генерируемой последовательности не зависит от исходных данных. Таким образом, в предлагаемом устройстве обеспечивается более высокая степень соответствия характеристик генерируемой последовательности заданных значений набора данных характеристикам случайных процессов, протекающих в реальных системах, что, в конечном счете, приводит к повышению достоверности генерируемой последовательности заданного набора данных.
1. Генератор случайной последовательности, содержащий N-разрядный селектор-мультиплексор, где N≥1 - число двоичных разрядов, достаточное для адресации элементов заданного набора данных, источник случайных чисел, первый блок сравнения, оперативное запоминающее устройство, М, где М≥2 - разрядность генерируемых чисел, информационных входов которого являются М-разрядным информационным входом генератора, при этом N входов первой группы информационных входов N-разрядного селектора-мультиплексора являются N-разрядным адресным входом генератора, вход выбора N-разрядного селектора-мультиплексора соединен с управляющим входом источника случайных чисел и является управляющим входом генератора, N выходов N-разрядного селектора-мультиплексора подключены к соответствующим N адресным входам оперативного запоминающего устройства, инверсные входы выбора кристалла и чтения/записи оперативного запоминающего устройства являются соответственно входами «Выбор кристалла» и «Чтение/запись» генератора, отличающийся тем, что дополнительно введены К Р-разрядных регистров, где К≥2 - количество элементов в заданном наборе данных, а Р≥2, шифратор приоритетов, N инверторов, (К-1) блоков сравнения, а источник случайных чисел выполнен с Р-разрядным выходом, причем входы инициализации Р-разрядных регистров объединены и являются входом «Установка» генератора, Р-разрядный информационный вход k-го Р-разрядного регистра, где k=1, 2, ..., К, является k-м первым Р-разрядным входом «Верхняя граница» генератора, Р-разрядный выход «Случайное число» источника случайных чисел соединен с Р-разрядными входами «Случайное число» К блоков сравнения, Р-разрядный выход k-го Р-разрядного регистра подключен к второму Р-разрядному входу «Верхняя граница» k-го блока сравнения, выход «Результат сравнения» k-го блока сравнения подключен к k-му инверсному входу шифратора приоритетов, n-й инверсный выход которого, где n=1, 2, ..., N, соединен с входом n-го инвертора, инверсные выходы N инверторов подключены к соответствующим разрядам второго N-разрядного информационного входа N-разрядного селектора-мультиплексора, М-разрядный выход оперативного запоминающего устройства является М-разрядным выходом «Результат» генератора.
2. Устройство по п.1, отличающееся тем, что блок сравнения состоит из компаратора, Р-входового элемента ИЛИ-НЕ и элемента ИЛИ, первый вход которого подключен к выходу «Неравенство» компаратора, второй вход элемента ИЛИ подключен к инверсному выходу Р-входового элемента ИЛИ-НЕ, выход элемента ИЛИ является выходом «Результат сравнения» блока сравнения, Р входов первой группы информационных входов компаратора являются Р-разрядным входом «Случайное число» блока сравнения, а Р входов второй группы информационных входов компаратора соединены с соответствующими входами Р-входового элемента ИЛИ-НЕ и являются вторым Р-разрядным входом «Верхняя граница» блока сравнения.