SU980093A1 - Генератор случайных чисел - Google Patents
Генератор случайных чисел Download PDFInfo
- Publication number
- SU980093A1 SU980093A1 SU813296057A SU3296057A SU980093A1 SU 980093 A1 SU980093 A1 SU 980093A1 SU 813296057 A SU813296057 A SU 813296057A SU 3296057 A SU3296057 A SU 3296057A SU 980093 A1 SU980093 A1 SU 980093A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- output
- input
- register
- generator
- signal
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
(Sk) ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ
1
Изобретение относитс к вычислительной технике и может найти применение при статистическом моделировании в цифровых вычислительных машинах.
Известно устройство дл формировану случайных чисел, содержащее генератор тактовых импульсов, блок формировани равномерно распределенных случайных чисел, дешифратор кодовых комбинаций , дешифратор номера разр да, ю запоминающее устройство, избирательную схему, регистр, схемы совпадени , счетчик 11
Однако устройство имеет низкое быстродействие, так как в каждом так-is те его работы формируетс только один разр д случайного числа с фиксирован- , ной зап той.
Известно устройство,- содержащее генератор равномерно распределенных 20 случайных чисел, схему сравнени , запоминающее устройство, блок логарифмического перебора, генератор тактовых импульсов 2.
Устройство также имеет низкое быстродействие , так как т-разр дное случайное число с фиксиросанной зап той формируетс в течение (т+1) тактов.
Наиболее близким техническим решением к предлагаемому вл етс генератор случайных чисел, содержащий генератор тактовых импульсов, генератор равномерно распределенных случайных чисел, вход которого соединен с первым выходом генератора тактовых импульсов , запоминающее устройство, схему сравнени , перва и втора группы входов которой подключены к выходам запоминаххцего устройства и генератора равномерно распределенных случайных чисел соответственно, первую и вторую группы элементов И, дешифратор регистр, выходы которого через дешифратор соединены с первой группой входов запоминающего устройства, второй вход запоминающего устройства подключен к первому выходу генератора тактовых импульсов, входы регистра соединены с выходами первой группы элементов И, перва и втора группы входов которой подключены к выходам схемы сравнени и генератора тактовых импульсов соответственно, выходы регистра через вторую группу элементов И соединены с выходами устройства, последний выход генератора тактовых импульсов подключен к второй группе входов второй группы элементов И
Известное устройство обладает ограниченными функциональными возможност ми , поскольку не позвол ет формировать нормализованные случайные числа С плавающей зап той с заданным законом распределени , что в конечном сче те снижает его точность. Цель изобретени - повышение точно сти за счет одновременного формировани случайных чисел с фиксированной зап той и нормализованных случайных чисел с плавающей зап той с заданным законом распределени . Поставленна цель достигаетс тем что в известный генератор случайных чисел, содержащий первый регистр пам ти , дешифратор, блок пам ти, информационный вход которого через дешифратор соединен с первым выходом первого регистра пам ти, генератор тактовых импульсов, схему сравнени , пер вый и второй блоки элементов И, выход второго блока элементов И вл етс первым выходом генератора, генератор равномерно распределенных случай ных чисел, первый выход которого соединен с первым входом схемы сравнени , введены второй, третий и четвертый регистры пам ти, коммутатор, блок инверсии кода, сумматор, третий блок элементов И, причем первый и второй управл ющие и информационные входы первого регистра пам ти соединены с первым и вторым выходами генератора тактрвых импульсов и с выходом схемы сравнени соответственно, второй выход первого регистра пам ти подключен к первому управл ющему входу генератора тактовых импульсов, входы Пуск и Стоп которого вл ютс соответственно входами Пуск и Стоп генератора , а второй управл ющий вход генератора тактовых импульсов подключен к выходу схемы сравнени , третий выход генератора тактовых импульсов под-55 нальна схема блока инверсии кода; на ключен. к управл ющему входу блока па- фиг. 5 - временна диаграмма работы м ти и первому входу второго регистра пам ти, выход блока пам ти соединей с информационным входом второго регистра пам ти, выход которого подключен к второму входу схемы сравнени , третий вход которой соединен с четвертым выходом генератора тактовых импульсов, первый, второй и третий входы первого блока элементов И подключены соответственно к третьему выходу первого регистра пам ти, к выходу схемы сравнени и к первому выходу генератора тактовых импульсов, выход первого блока элементов И вл етс вторым выходом генератора, п тый выход генератора тактовых импульсов
устройства дл формировани случайных чисел. подключен к первому входу коммутатора , второй и третий входы которого соединены с выходом схемы сравнени и с первым выходом генератора тактовых импульсов соответственно, шестой выход генератора тактовых импульсов подключен к четвертому входу коммутатора , к входам третьего регистра пам ти , второго и третьего блоков элементов И, к первому входу сумматора и к входу генератора равномерно распределенных случайных чисел, второй и третий выходы которого соединены с п тым входом коммутатора и с информационным входом блока инверсии кода соответственно, седьмой выход генератора тактовых импульсов подключен к первому управл ющему входу блока инверсии кода, второй управл ющий вход которого соединен с выходом коммутатора , группа выходов которого подключена соответственно к группе входов третьего регистра пам ти, группа выходов последнего соединена соответственно «с группой входов второго блока элементов И, группа входов сумматора подключена соответственно к группе выходов блока инверсии кода, второй вход сумматора подключен к выходу четвертого регистра пам ти, а группа выходов сумматора соединена соответственно с группой входов третьего блока элементов И, выход которого вл етс третьим выходом генератора. На фиг. 1 приведена структурна схема устройства дл формировани случайных чисел; на фиг. 2 - функциональна схема генератора тактовых импульсов; на фиг. 3 .функциональна схема коммутатора; на фиг. 4 - функциоУстройство дл формировани случайных чисел содержит первый регистр 1 пам ти, дешифратор 2, блок 3 пам ти , генератор k тактовых импульсов, второй регистр 5 пам ти, схему 6срав нени , первый блок 7 элементов И, ге нератор 8 равномерно распределенных случайных чисел, коммутатор 9 трети регистр 10 пам ти, второй блок 11 эле ментов И, четвертый регистр 12 пам ти , блок 13 инверсии кода, сумматор 1/4, третий блок 15 элементов И, входы 16 и 17, второй 18, первый 19 и третий 20 выходы. Генератор тактовых импульсов (фиг. 2) содержит элементы-И 21-23, импуль1;ный формирователь 2k, первый триггер. 25, генератор 26 импульсов, BTOpol 27 и третий 28 триггеры, 16, 17, 30, 31 29 элементов И, входы и группу выходов 32. Коммутатор 9 (фиг. 3) содержит ре гистр 33 сдвига, первый 3 и второй 35 блоки элементов И, импульсный фор мирователь 36, элемент НЕ 37,- элемен И 38, третий блок 39 элементов И, блок «0 элементов ИЛИ, входы , группу входов 45, выход 46 и группу выходов 47. Блок 13 (фиг. 4) содержит первый блок 48 элементов И, блок 49 элементов ЗАПРЕТ, второй блок 50 элементов И, блок 51 элементов ИЛИ-НЕ, входы 52 и 53, группу входов и группу выходов 55Генератор случайных чисел работает следующим образом. В каждом такте работы генератора (такт работы задаетс генератором 4 тактовых импульсов) формируетс один разр д bj случайного числа с заданзаконом распределени путем сравнени равномерно распределенного случайного числа с значением функции распределени F(x) в узловой точке X. При этом число снимаетс с выхода генератора 8 равномерно распределенных случайных чисел, а в регистре 5 находитс значение F(x:) функции распределени , которое поступает в регистр 5 из блока 3 пам ти по сигналам с второй группы выходов регистра 1 и с второго выхода генератора 4 так товых импульсов. Сравнение равномерно распределенного числа с значением функции распределени F() осуществл етс с помощью схемы 6 сравнени в момент времени, задаваемый си|- налом с третьего выхода генератора 4 блок тактовых импульсов. Если при этом окажетс , что 7iF (), то на выходе схемы 6 сравнени по витс единичный си|- нал . (х), то . Здесь j - текущий номер разр да случайного числа с заданным законом распределени . Сформированный таким образом си1- нал (разр д) bi, где ,ni поступает одновременно на вход младшего разр да регистра 1, на четвертый вход генератора Ц тактовых импульсов, на второй вход первого блока 7 элементов И и на первый вход коммутатора 9- Здесь т - разр дность формируемых случайных чисел. Случайное число с фиксированной зап той формируетс в регистре 1, который одновременно вл етс и адресным регистром блока 3 пам ти. До начала каждого цикла формировани очередного случайного числа по сигналу с четвертого выхода генератора тактовых импульсов m разр дный регистр 1 в начальное состо I . . 001, т. е. в Р °0 гистр 1 записываетс двоичный код, имеющий единицу только в одном младшем разр де. По этому адресу в запоминающем устройстве 3 записано значение функции распределени при ,5, т. е. F(0,5). Поэтому в первом такте работы устройства формируетс первый разр д t) случайного числа путем сравнени с F(0,5). Результат сравнени (т. е. сигнал Ь,) поступает в младший разр д регистра 1, содержимое которого в это же врем по сигналу с перво/о выхода генератора 4 тактовых импульсов сдвигаетс на один разр д в сторону старших разр дов. Таким образом по окончании формировани первого разр да {i случайного числа в регистре 1 будет находитьс код 00 ... ООЪф Во втором такте формируетс второй разр д Ьл случайного числа. При этом в зависимости от значени сигнала Ь из блока пам ти в регистр 5 будет считано либо значение F(0,25) функции распределени , либо F(0,75)Это объ сн етс тем, что по адресу 00...010 (т. е. при ) в блоке пам ти записано значение F(0,25), а по адресу 00...011 (т. е. при ) Значение F(0,75). Поэтому, если Ь 0 (т. е. (0,5)), тоиз блока пам ти в регистр 5 будет считано значение F(0,25) функции распределени , подсчитанное на середине интервала ( 0,05), а при Ь 1 (т, е. при / (0,5)) значение F(0,75) функции F(х ), подсчитанное на середине интервала (0.5,1). В результате сра&не ни k с значением функции распределени , наход щимс в регистре 5, во вто ром такте будет сформирован второй разр д Ь-2, случайного числа. Сформированный сигнал Ьл с выхода схемы 6 сравнени поступит в младший разр д регистра 1, в результате чего в регистре 1 установитс новый код 00...1 поскольку содержимое регистра 1 по сигналу с первого выхода генератора тактовых импульсов вновь сдвигаетс ни один разр д, а в освободивший с при этом младший разр д записываетс знамение сигнала Ьл- Описанный процесс сравнени равномерно распреде ленного случайного числа со срединными значени ми функции F(x) будет продолжатьс m тактов, примем в т-ом такте в регистре 1 будет находитьс код ,... .. В m-OM такте содержимое регистра (за исключением старшего разр да, в котором записана единица), а также значение т-го разр да Ь снимаемое свыхода схемы 6 сравнени , через вый блок 7 элементов И по сигналу метвертого выхода генератора k тактовых импульсов поступает на первую группу 18 выходов устройства. Действи тельно, перва группа входов блока 7 элементов И соединена с выходами (т-1 ) младших разр дов регистра 1, т. е. с выходами тех разр дов регистра Г, е которых находитс код . , . а второй вход блока 7 подключен к выходу схемы 6 сравнени ,с которой снимаетс в т-ом такте сигнал Ь Таким Образом в т-ом такте на выход 18 устройства проходит т-разр дное случайно . фиксированчисло ной зап той (зап та фиксирована ред старшим разр дом b/t)- При необходимости разр дность формируемых случайных чисел может быть увеличена за счет добавлени к т-разр дному числу разр дов равномерно распределенного снимаемого с выхода случайного числа, генератора 8. Рассмотрим теперь процесс формировани нормализованного случайного числа с плавающей зап той. Как известно,
зап той представл число с плавающей
то М етс в следующем виде М-2, где
мантисса числа; Р - пор док числа 9 с
торый вл етс обратным кодом отрицательного числа , ... 001 (работа блока 13 будет рассмотрена ниже). По38 Число вл етс нормализованным, если в старшем разр де мантиссы стоит единица . Использование нормализованных чисел ведет к повышению точности решени задач, так как люба величина представл етс нормализованным числом с наибольшей точностью. В данном генераторе мантисса числа формируетс в третьем регистре 10, а пор док числа - в сумматоре It. До начала формировани каждого случайного числа по сигналу с шестого выхода генератора 4 тактовых импульсов третий регистр 10 устанавливаетс в начальное с;осто ние 100...00, а в сумматор 14 заноситс код, который снимаетс с выхода четвертого регистра 12. Таким образом, до начала формировани случайного числа старший разр д регистра 10 всегда будет находитьс в единимном состо нии, тогда как осталь- ные разр ды регистра 10 будут находитьс в нулевом состо нии. Поскольку выход схемы 6 сравнени мерез коммутатор 9 подключен к разр дным входам третьего регистра 10, то сформированные схемой 6 сравнени сигналы Ь; (разр ды случайного числа) поступают на входы соответствующих разр дов регистра 10. Коммутатор работает таким образом, что если сигнал Ь. следующие за ним сигналы Ь ,Ь,, ...,Ьр равны нулю, то они не смогут пройти на входы регистра 10 (работа коммутатора 9 будет описана ниже). Таким образом, если все старшие 1 разр дов случайного числа, где Km, равны нулю, то регистр 10 не изменит своего начального состо ни , равного 100...00. Однако каждый нулевой сигнал Ь; , вход щий в начальную серию нулевых сигналов, будет вызывать по вление в следующем такте на седьмом выходе генератора k тактовых импульсов единичного сигнала временна диаграмманафиг . 5, в которой числами обознамены номера соответствующих входов и выходов генератора тактовых импульсов). Сформированные таким образом единичные сигналы с седьмого выхода генератора ; тактовых импульсов поступают на второй вход блока 13, в котором формируютс коды слагаемых, поступающих на входы сумматора 14. В частности, по сигналу с седьмого выхода генератора k тактовых импульсов в блоке 13 формируетс k-разр дный код 11. ..110, ко99 скольку группа выходов блока 13, по которой поддаетс k-разр дный код соединена с разр дными входами k-разр дного накапливающего сумматора 1, то в сумматоре будет происходить ело жение поступающего на его входы числа с содержимым данного сумматора. Таким образом, каждый единичный сигнал , поступающий на второй вход блока 13 (особый случай составл ет рабо та блока 13 в т-ом такте), вызывает поступление на входы сумматора I ко да 11... 110. Поскольку накапливающий сумматор 1Ц работает в режиме суммировани чисел в обратном коде, то поqтyплeниe его на входы кода -11... 11 ведет к вычитанию из содержимого сумматора единицы, так как названный код вл етс обратным кодом отрицательного числа ,.., 001. Таким образом каждый нулевой сигнал Ь .вход щий в начальную серию, состо щую из нулевых сигналов, вызовет уменьшение содержимого накапливающего сумматора на единицу. Но сумматор k предназначен ДЛЯ формировани пор дка числа с плавающей зап той. Следовательно, если все 1 старших разр дов случайного чис ла равны нулю, где Um, то пор док такого числа будет уменьшатьс на 1 единиц. Поскольку нормализаци чисел 1 старших разр дов мантиссы которых равны нулю, заключаетс в сдвиге мантиссы влево на 1 разр дов и уменьшении пор дка на 1 единиц, то в результате предлагаемое устройство формирует нормализованное случайное число с плавающей зап той, так как по окончании начальной серии, состо щей из 1 нулевых сигналов , в m-l старшие разр ды регистра 10 записываютс оставшиес разр ды случайного числа. Коммутатор 9 как раз и предназначен дл занесени в соответствующие разр ды регистра 10 разр дов Ьд случайного числа. Эти разр ды поступают на первый вход коммутатора 9 с выхода схемы 6 сравнени и проход т на входы соответствующих разр дов регистра 10. В 1 младшие разр ды регистра 10 через коммутатор 9 поступает равномерно распреде ленное случайное число с второй группы выходов генератора 8. Пример. Пусть предлагаемое устройство сформировало шестиразр дное случайное число, с фиксированной зап той, равное 0,001001,, т. е. в рассматриваемом примере . Тогда старшие два нулевых разр да случайного 3 числа вызовут уменьшение содержимого сумматора 1 на две единицы, а код 1001 поступит в четыре старших разр да регистра 10. Таким образом, в случае нулевого состо ни регистра 12 предлагаемое устройство за шесть тактов сформирует нормализованное случайное число с плавающей зап той, равное 0,1001 а,.а,- 2, так как в шестом такте в два младших разр да регистра 10 через коммутатор 9 с второй группы выходоа генератора 8 поступит двухразр дное равномерно распределенное ( в рассматриваеслучаиное число а а мом примере регистр 10 вл етс шестиразр дным и по истечении шести тактов в нем будет находитьс код 1001 а-а, а в сумматоре k будет находитьс пор док числа . .. 101 ). Очевидно, если в старшем разр де формируемого случайного числа уже имеетс единица (т. е. случайное число уже вл етс нормализованным), то содержимое сумматора k останетс без изменени , а само случайное число поступит через коммутатор 9 в регистр 10 без сдвига. По сигналу с шестого выхода генератора тактовых импульсов сформированное случайное число с плавающей зап той с выходов регистра 10 и сумматора Т через блоки 11 и 15 элементов И поступит на выходы 19 и 20 устройства. При этом на группу выходов 19.проходит мантисса числа, а на выходы 20 - пор док числа. По заднему фронту импульса с шестого выхода генератора тактовых импульсов регистр 10 и сумматор 1Ц устанавливаютс в начальное состо ние и устройство начинает формировать следующее случайное число (запуск генератора 8 равномерно распределенных случайных чисел происходит по сигналам с шестого выхода генератора 4 тактовых имПульсов ). Устройство будет продолжать работу до тех пор, пока на его вход 17 не .поступит сигнал Останов. По этому сигналу генератор t тактовых импульсов прекращает формировать управл ющие импульсы и устройство заканчивает свою работу. Рассмотрим более подробно работу отдельных блоков генератора. Генератор k тактовых импульсов (фиг. 2) предназначен дл формировани сигналов, управл ющих работой предлагаемого устройства. Работу генератора k по сн ет, пример временной , 11 98 диаграммы (фиг. 5), в котором N и ht обозначают соответственно номер цикла и текущий номер такта внутри каждого цикла, а числами обозначены номера входов и выходов генератора k тактовых импульсов. На диаграмме Jti, Т„ и обозначают состо ни триггеров 25, 27 и 28 соответственно. Диаграмма построена дл случа . По сигналу с первого выхода 324 генератора 4 тактовых импульсов происходит сдвиг содержимого первого регистра 1 на один разр д в сторону старших разр дов. Поэтому импульсы на первом выходе генератора k формируютс в каждом такте за исключейием последнего такта кёждого цикла. В, последнем т-ом такте каждого цикла проис ходит установка т-разр дного регистра 1 в начальное состо ние, равное 00... 001, Названна установка происходит по сигналу с четвертого выхода 32 генератора и тактовых импульсов, который формируетс в т-ом такте каждого цикла (пример временной диаграммы, приведенной на фиг. 5). В каждом цикле , состо щем из m тактов, в предлагаемом устройстве формируетс одно случайное число с заданным законом , распределени ,Момент окончани очередного цикла определ етс по сигналу, поступающему на первый вход генератора t тактовых импульсов с .первого выхода регистра 1 Первый выход регистра 1 вл етс выходом его старшего т-го разр да, Будем считать, что регистр 1 построен по двухступенчатой схеме (на основе двухступенчатых триггеров), исключающей возникновение неустойчивых состо НИИ. Поэтому переходы регистра, из одного состо ни в другое происход т по заднему фронту управл ющих сигналов , поступающих на его первый или второй входы. Поскольку начальное состо ние регистра 1 равно 00..,001, а в каждом такте его содержимое сдвигаетс на один разр д влево по заднему фронту сигнала с первого выхода генератора k тактовых импульсов, то едини ца, первоначально занесенна в младший разр д, достигнет старшего т-го рёзр да только через т-1 тактов, т, е. а начале т-го такта на первом выходе регистра 1 по витс единичный сигнал Этот единичный сигнал поступит на, пер вый вход 30 генератора i тактовых импульсов и переведет триггер 25 в еди ничное состо ние (на временной диагра 5, показано. на фиг. приведеннои ме, как измен ютс состо ни триггеров Т, ат работы предлагаемого устройства). Поскольку первый выход триггера 25 подключен к первым входам элементов И 29, то на выходе названных элементов И (т. е, на выходах . и 32 генератора t тактовых импульсов) импульс может по витьс в тот момент времени, когда три1- гер 25 находитс в единичном состо нии , т. е, в т-ом такте, либо в начале первого такта следующего цикла, так как триггер 25 по заднему фронту сигнала с первого выхода генератора 26 импульсов в первом такте следующе го цикла вернетс в нулевое состо ние. Таким образом, на четвертый 3 и шестой 32л выходы генератора 4 смогут пройти только по одному импульсу в каждом цикле. В свою очередь первый вход элемента И 29 подключен к втоо рому (инверсному) выходу триггера 25. :Поэтому на выходе элемента И 29 (т.е, на первом выходе 32 генератора 4) импульсы по вл ютс в те моменты времени , когда триггер 25 находитс в нулевом состо нии, т. е. в течение всего цикла за исключением т-го такта. Генератор 26 импульсов вырабатывает на первом и втором своих выходах две серии импульсов, сдвинутых друг относительно друга на половину периода , которые проход т соответственно на второй 32 и третий 32 выходы генератора k тактовых импульсов. Запуск генератора 26 импульсов происхс/дит по сигналу, поступающему .на второй вход 16 генератора тактовых импульсов. В генераторе 4 тактовых импульсов используютс три триггера, причем первый триггер 25 - синхронный двухступенчатый триггер 1К типа, второй триг ®Р 1 асинхронный триггер 1К типа, третий триггер 28 - синхронный триггер D типа. Кроме того, триггер 25 имеет асинхронный установочный вход в единичное состо ние, а триггеры 27 и 28 имеют асинхронные установочные входы в нулевое состо ние. Названные асинхронные входы подключены к входу 16 генератора тактовых импульсов. Поэтому в момент поступлени сигнала Пуск на вход 16 триггер 25 перейдет в единичное состо ние, а триггеры 27 и 28 - в нулевое состо ние. Названные состо ни триггеров вл ютс их начальными состо ни ми.
Четвертый вход 31 генератора товых импульсов подключен к выходу схемы 6 сравнени . Поэтому единичный 1 с выхода схемы 6 сравнесигнал Ь.
ни при условии, что триггер 25 нахо- s му на п тый вь1ход 32j- генератора 4 дитс в нулевом состо нии, пройдет че рез элемент И 21 на первый вход (вход I ) триггера 27 и переведет его в единичное состо ние. Следовательно триггер 27 будет находитьс в начальном нулевом состо нии до прихода первого , отличного от нул сигнала где , т. е. до тех пор, пока на вы ходе схемы 6 сравнени формируетс начальна сери следующих друг задру гом нулевых сигналов. Поскольку вторые (инверсные) выходы триггеров 25 и 27 через элемент И 23 подключены к первому входу (входу О)триггера 28, то триггер 28 перейдет в единичное состо ние в момент прихода на его вто рой вход (вход синхронизации С) импульса с первого выхода генератора 26 импульсов при условии, что триггеры 25 и 27 наход тс в нулевйК состо нии . Если же триггер 25 или триггер 27 перейдут в единичное состо ние, то это вызовет переход триггера 28 в нулевое состо ние. Выход триггера 28 подключен к первому входу элемента И 29е- Поэтому на седьмой выход 32 генератора тактовых импульсов единичные сигналы с второго выхода генератора 26 через формирователь 2 и элемент И 29г смогут пройти только в те моменты времени, когда триггер 28 находитс в единичном состо нии (т.е пока тр 1ггеры 25 или 27 не перейдут в единичное состо ние). Но триггер 27 будет переведен в единичное состо ние первым, отличным от нул сигналом bg с°йыхода схемы 6 сравнени . Следовательно , на седьмой выход 32-j генератора смоисет пройти только 2 импульсов , где t количество нулевых сигналов , по вившихс на выходе схемы 6 сравнени с момента начала формировани очередного случайного числа и до первого единичного сигнала ус ловии, что litm. Поскольку седьмой выход генератора k тактовых импульсов подключен к второму входу блока 13 логических элементов, то в результате содержимое сумматора по сигналам с седьмого выхода генератора будет уменьшено на Ц единиц, где Km. Если .т, то на седьмом выходе генератора k по витс t-1 импульсов (работа пред9800931
Ц так- латаемого устройства в этом случае будет рассмотрена ниже).
Claims (2)
- Первый выход триггера 27 подключен к первому входу элемента И 29. Поэтотактовых импульсов единичные сигналы с первого выхода генератора 26 через элемент И 29 смогут пройти лишь в те моменты времени, когда триггер 27 нав единичном состо нии, т. е. ходитс после по влени на выходе схемы 6 сравнени первого, отличного от нул СИ1- нала Ьр , . Заметим, что в кажbt дом цикле количество импульсов на п том выходе 32 генератора k равно т-1-Е.при и равно нулю при . Импульсы с п того выхода генератора k поступают иа третий вход коммутатора 9 и разрешают прохождение сигналов с выхода схемы 6 сравнени через КОммутатор 9 на соответствующие входы регистра 10. Следовательно, если в первых тактах очередного цикла, где будет сформировано на выходе схе„у сравнени t нулевых сигналов, то эти нулевые сигналы Ь- не смогут пройти через коммутатор 9 на входы регистра 10, но содержимое сумматора 1 в этом случае будет уменьшено на f единиц , а в регистре 10 поступ т разр ды случайного числа, следующие за первым, отличным от нул разр дом (сигналом) Ьп. Это объ сн етс тем, что т-1-1 младших разр дов случайного числа по сигналам с п того выхода генератора тактовых импульсов пройдут через коммутатор 9 на соответствующие входы регистра 10,а первый, отличный от нул разр д bg. случайного числа на первый вход регистра 10 через коммутатор 9 не поступает, так как при установке в начальное состо ние в первый (старший) разр д регистра 10 уже была записана единица. Сигнал с второго выхода генератора 26 импульсов пройдет через элемент И 22 на второй вход триггера 27 и переведет его в нулевое состо ние, если на первый вход элемента И 22 поступит единичный сигнал с первого входа 30 генератора тактовых импульсов. Сигнал , поступающий на первый вход 30 генератора Ц тактовых импульсов, пеpeвoдиt все три триггера в начальное состо ние, после чего начинает цикл формировани следующего случайного числа и описанна выше последовательность действи повтор етс . 159 Рассмотрим работу коммутатора 9, функциональна схема которого призедена на фиг, } Назначение коммутатора 9 подключать поочередно в каждом такте входы регистра 10, начина с второго, к выходу схемы 6 сравнени после окончани начальной серии, состо щей из t нулевых сигналов Ь; (в мае ном случае Сможет быть равно и нулю При этом разр ды случайного числа, следующие за первым, отличным от нул разр дом Ьр, должен поочередно поступать на входы регистра 10 так, чтобы разр д Ь24-2.попал во второй разр д регистра 10, разр д bg+5 - в третий и т, д., наконец разр д b,--b(m- ый разр д. Кроме того, в т-ом такте . по сигналу, поступающему на второй вход k2, через коммутатор 9 в младшие 1 разр дов () регистра 10 проходит равномерно распределенное случайное число с второй группы выходов генератора 8. Коммутатор 9 содержит т-разр дный регистр 33 сдвига, перва и втора rpynhbi выходов которого подключены к первой и второй группам входов блока 3 элементов И соответственно. В первую группу выходов,регистра 33 вход т пр мые выходы всех разр дов регистра 33, исключа выход последнего (самого младшего) разр да, а во вторую группу выходов регистра 33 вход т инверсные выходы всех разр дов регистра 33, исключа выход первого (старшего) разр да. Исходное состо ние регистра 33 сдвига устанавливаетс по сигналу с шестого выхода генератора 4 тактовых импульсов. Этот сиг нал поступает на четвертый вход kk коммутатора 9 и записывает в регистр 33 код, равный 100, . .0.0. Поэтому в первом такте каждого цикла единичный сигнал по витс только на выходе элемента И З,, так как первый и второй входы элемента И соединены с выходом первого разр да и с инверсным выходом второго разр да регистра 33 соответственно. По первому сигналу с п того выхода генератора 4 тактовых импульсов, поступающему на третий вход 43 коммутатора 9, регистр 33 сдвига перейдет в следующее состо ние 110,..00, так как названный сигнал сдвигает содержимое регистра 33 на один разр д в сторону младших разр дов и одновременно записывает в пер вый (старший) разр д регистра 33 еди3 16 ницу. Но первый сигнал на п том выходе генератора тактовых импульсов будет сформирован только после по влени на выходе схемы 6 сравнени первого , отличного от нул сигнала. Ь/ e+f т, е. в (1+2)-ом такте. Следовательно, если в течение первых 2. тактов на выходе схемы 6 сравнени по витс нулевых сигналов bi, то регистр 33 сдвига не. изменит сбоего начального состо ни 100...00, ана выходе элемента И 34. в течение всего этого времени будет единичный сигнал. Если , т, е, если в течение всех m тактов на выходе схемы 6 сравнени не по витс ни одного единичного сигнала, то регистр 33 сдвига будет сохран ть свое начальное состо ние в течение m тактов. Первый k и второй k2 входы коммутатора 9 подключены сортветственно к выходу схемы 6 сравнени и к четвертому выходу генератора k тактовых импульсов , на котором единичный сигнал по вл етс только в т-ом такте. Поскольку первый и второй входы элемента И 38 подключены через элемент НЕ 37 и формирователь 36 соответственно к входам k и k2 коммутатора 9 то-единичный сигнал на выходе элемента И 38 может по витьс только в ш-ом такте при условии, что на первый вход 1 коммутатора 9 поступил с выхода схемы 6 сравнени нулевой сигнал b/j , а на выходе элемента И З,} сформирован единичный сигнал, что возможно только при , Следовательно, единичный сигнал на первом выходе k6 коммутатора 9 по витс только вки-ом такте при условии , I Если km, то на третий вход АЗ коммутатора 9 в течение одного цикла поступит m-1-t импульсов с п того выхода генератора А. тактовых импульсов. При этом первый сигнал с п того выхода генератора А тактовых импульсов переведет в (1+2)-ом такте регистр 33 сдвига в состо ние 110.,,00 и поэтому на выходе элемента И 3 по витс единичный сигнал. Этот единичный си|- нал разрешит прохожден 1е сигнала. Ь. с выхода схемы 6 сравнени , поступающего на коммутатора 9 в (1+2)ом такте, через элементы И 35-, и ИЛИ 0 на выход kj коммутатора 9- Аналогично , второй сигнал с п того выхода генератора тактовых импульсов переведет в следующем (1+3)-ем такте регистр 33 сдвига в состо ние 1110,,. 00 и на выходе элемента И З+з по витс единичный сигнал, который разрешит прохождение сигнала bg через элементы И 35 и ИЛИ 40 на выход 7 коммутатора 9 и т. д. Описанный процесс будет продолжатьс до тех пор, пока в т-ом такте сигнал Ь не пройдет на выход )в коммутатора 9- Кроме того , в т-ом такте на вход Л2 коммутатора 9 с четвертого выхода генератора тактовых импульсов поступит единичный сигнал. Этот сигнал поступит на первую группу входов блока 39 элементов И и разрешит прохождение равно мерно распределенного случайного числа , поступающего на вторую группу входов блока 39 через те элементы Иблока 39 третий вход которых подключен к инверсному выходу разр да регистра 33, наход щегос в нулевом состо нии. Поэтому открыты дл прохождени равномерно распределенного случайного числа, поступающего с второй группы выходов генератора 8 на группу входов 5 коммутатора 9. будут только те элементы И блока 39, на третий вход которых подаетс единичный сигнал с инверсного выхода разр да регистра 3 наход щегос в нулевом состо нии, I Группа выходов коммутатора 9 подключена к разр дным входам регистIра 10 так, что выход 7 соединен с входом второго разр да регистра 10, выход 47i.. с входом третьего разр да и т. д., выход коммутатора 9 - с входом т-го разр да реги.стра 10 Поэтому сигнал выхода коммутатора 9 поступит во второй разр д регистра 10, сигнал bp,j- в третий разр д и т. д., сигнал в (т-1 )ый разр д. В оставшиес 1 младшие разр ды регистра 10 (им будут соответствовать разр ды регистра 33, которые наход тс в нулевом состо нии) в т-ом такте по сигналу с входа 2 коммутатора 9 поступит равномерно рас пределенное случайное число с второй группы выходов генератора 8. Таким образом, в т-ом такте в регистре.10 будет находитьс мантисса 1 . bg.- m W-C-«-1 1 °° с задан ным законом распределени , в старшем разр де которой всегда будет- записана единица. Здесь а; - значени разр дов равномерно распределенного случайного числа, снимаемого с второй группы выходов генератора 8., Очевидно при 1 О в регистре 10 сформируетс 98 3 код 1 . . ., а при 1 m мантисса случайного числа, наход ща с в регистре 10, будет равна 1 ... . При необходимости разр дность мантиссы может быть увеличена за счет добавлени к коду, наход щемус в регистре 10, равномерно распределенного случайного числа, снимаемого с генератора 8.. Рассмотрим работу блока 13 функциональна схема которого приведена на фиг. А. Назначение блока 13 формировать коды слагаемых, которые поступают в накапливающий сумматор . где они суммируютс с содержимым данного сумматора. Входы 52 и 53 блока 13 логических элементов подключены соответственно к первому выходу коммутатора 9 и к седьмому выходу генератора t тактовых импульсов. Выше быЗ ло показано, что единичный сигнал на первом выходе 46 коммутатора 9 по вл етс только в т-ом такте при условии , т. е. при условии, что в гпразр дном случайном числе с фиксированной зап той во всех m разр дах записаны нули. В свою очередь, на седьмом выходе генератора k тактовых импульсов может по витьс 1 единичных сигналов, если Km, и -1 единичных сигналов при . Здесь, как и прежде , 1 - количество нулевых сигналов Ь.-, по вившихс на выходе схемы 6 сравнени с начала формировани очередного случайного числа и до первого , отличного от нул сигнала Группа выходов 55 блока 13 подключена к входам К разр дного сумматора I, причем выход 55н блока 13 соединен с входом первого (младшего) разр да сумматора k, а выход 551C с входом Кго (самого старшего) разр да сумматора 14, т. е. по сигналу, снимаемому с выхода 55у,блока 13. к содержимому сумматора 14 прибавл етс слагаемое, сформированное в блоке 13 логических элементов. Рассмотрим работу блока 13 при 1 т. В этом случае каждый единичный сигнал, поступивший на вход 53 блока; 13 с седьмого выхода генератора 4 тактовых импульсов, вызывает формирование в блоке 13 К-разр дного кода Л 11... 110, который вл етс обратным кодом отрицательного числа ...001. Действительно, в этом случае сигнал f на входе 52 блока 13 равен нулю и поэтому единичный сигнал с входа 53 199 проходит 1ерез элемент ЗАПРЕТ 3 на; ..п,. ,,г ,-1 ... первый вход элемента ИЛИ-НЕ , на выходе которого образуетс нулевой сигнал. Это объ сн етс тем, что второй вход элемента ЗАПРЕТ Э вл етс запрещающим входом и единичный сигнал через элемент ЗАПРЕТ Цд проходит толь ко.при условии . При на выходе элемента ЗАПРЕТ 9/х и на выходе всех элементов И блока 50 будут нулевые сигналы, которые вызовут по вление на выходе элементов Sl/z. НЕ единичных сигналов. На остальные выходы группы выходов 55 блока 13 проходит единичный сигнал с второго входа 53 блока 13. В результате имеем , что нулевой -сигнал формируетс только,на выходе блока 13 (т. е. равен нулю самый младший разр д слагаемого ), а на всех остальных выходах блока 13 по витс единичный сигнал, т. е. ...110. Как отмечалось выше поступление кода А/11...110 на входы сумматора Н вызывает уменьшение его содержимого на единицу. После поступлени 1 единичных сигналов на вход 53 блока 13 в сумматоре будет проведено 1 операций сложени , в результате чего содержимое сумматора уменьшитс на И единиц. Рассмотрим случай . В этом случае работа блока 13 во всех тактах кроме т-го такта не отличаетс от ранее рассмотренного. В т-ом такте одновременно на входы.52 и 53 блока 13 поступают единичные- сигналы, т. е. в. этом случае. . Сигнал с входа 52 блока 13 поступит на первую группу входов блока 50 элементов И и разрешит прохождение сигналов с выходов блока 9 элементов ЗАПРЕТ на входы блока 51 элементов ИЛИ-НЕ. Одноврет менно единичный сигнал запретит прохождение сигнала с входа 53 блока 13 через элемент ЗАПРЕТ k3. На выходе остальных элементов ЗАПРЕТ блока +9 будут формироватьс несовместимые случайные последовательности сигналов , вepo тнoctи по влени единичного сигнала в которых равны где q - пор дковый номер элемента ЗАПРЕТ в блоке , q 2,6. Например, на выходе элемента ЗАПРЕТ 9. веро тность по влени единичного сигнала в т-ом такте равна 2, на выходе элемента ЗАПРЕТ 9 - т. д. Это объ сн етс тем, что группа входов 5 блока 13 подключена iK третьей группе выхо320 дев генератора 8 равномерно распределенных случайных чисел, веро тность по влени единичного сигнала на каждом выходе которого равна 2-1 На выходе элемента ЗАПРЕТ . единичный сигнал по витс в т-ом такте в случае 1 ттолько при , где С - значение сигнала на входе . Поэтому веро тность по влени в т-ом такте при единичного сигнала на выходе элемента ЗАПРЕТ It) равна веро тности событи , которое наступает с веро тностью так как вход 5 блока 13 подключен к разр дному выходу генератора 8 равномерно распределенных случайных чисел. На выходе элемента ЗАПРЕТ 9 единичный сигнал по витс только при и С-тО, где значение сигнала на входе Веро тности событи 1 равна 2 в силу отсутстви коррел ции между выходными последовательност ми генератора 8. Аналогично, единичный сигнал на выходе элемента ЗАПРЕТ k. по витс только при Q, и , т. е. с веро тностью Р( )2и т. д, Выход элемента ЗАПРЕТ 9/1 соединен с первым входом элемента ИЛИ-НЕ 512.Поэтому в т-ом такте при с веро тност;ью выходах блока 13 будет сформирован код ...101, который вл етс обратным кодом отрицательного числа А -0.... Выход элемента И 50/1 соединен с вторыми входами элементов ИЛИ-НЕ и ИЛИ-НЕ 51-2. Поэтому в ш-ом такте при с веро тностью выходе блока 13 будет сформирован код ...100, который вл етс обратным кодом отрицательного числа ... и т. д. Таким образом получили, что в случае т в т-ом такте содержимое сумматора с веро тностью 2 будет уменьшено на две единицы, с веро тностью 2 - на три единицы и т. д. Это необходимо делать дл того, чтобы более точно формировать случайные числа, которые по абсолютной величине меньше 2 Известное устройство все числа, которые по абсолютной величине, меньше 2 , где m - разр дность формируемых чисел, представл ет нулевым кодом, т. е. с очень большой погрешностью. Поэтому использование предлагаемого устройства позвол ет повысить точность представлени случайных величин. Заметим, что нормализованные случайные числа с плавающей зап той мож219 но получить из чисел с фиксированной зап той, примен операции сдвига и корректиру соответствующим образом пор док числа. Однако это требует до полнительных затрат времени на прове дение названных выше операций. Поэто му предлагаемое устройство, в которо т-разр дна мантисса случайного числа с плавающей зап той и пор док чис ла формируютс за m тактов одновременно с формированием т-разр дного случайного числа с фиксированной зап той , обладает более высоким быстро действием, так как не требует затрат времени на проведение дополнительных операций. Использование новух элементов регистров , коммутатора, блока логичес ких элементов, сумматора, блока элементов И выгодно отличает предлагаемое устройство от прототипа, так как позвол ет расширить его функциональ ные возможности, повысить точность представлени случайных величин и noвысить скорость формировани случайных чисел с плавающей зап той. Формула изобретени Генератор случайных чисел, содержащий первый регистр пам ти, дешифратор , блок пам ти, информационный вход которого через дешифратор соединен с первым выходом первого регистра пам ти , генератор тактовых импульсов, схе му сравнени , первый и второй блоки элементов И, выход второго блока элементов И вл етс первым выходом гене ратора, генератор равномерно распределенных случайных чисел, первый вы ход которого соединен с первым входом схемы сравнени , отличающийс тем, что, с целью повышени его точности, он содержит второй, третий и четвертый регистры пам ти, коммута тор, блок инверсии кода, сумматор, третий блок элементов И, причем первый и второй управл ющие и информационный входы первого регистра пам ти соединены соответственно с первым и вторым выходами генератора тактовых импульсов и с выходом схемы сравнени , второй выход первого регистра пам ти подключен к первому управл ющему входу, генератора тактовых импульсов , входы Пуск и Стоп которого вл ютс соответственно входами Пуск и Стоп генератора, а второй 3 управл ющий вход генератора тактовых импульсов подключен к выходу схемы сравнени , третий выход генератора тактовых импульсов подключен к управл ющему входу блока пам ти и управл ющему входу второго регистра пам ти , выход блока пам ти соединен с инЧ формационным входом второго регистра пам ти, выход которого подключен к второму входу схемы сравнени , третий вход которой соединен с четвертым выходом генератора тактовых импульсов , первый, второй и третий входы первого блока элементов И подключены соответственно, к третьему выходу первого регистра пам ти, к выходу .схемы сравнени и к первому выходу генератора тактовых импульсов, выход первого блока элементов И вл етс Iвторым выходом генератора, п тый выход генератора тактовых импульсов подключен к первому входу коммутатора, второй и третий входы которого соединены с выходом схемы сравнени и с пе{звым выходом генератора тактовых импульсов соответственно, шестой выход г,енератора тактовых импульсов подключен к четвертому входу коммутатора , к входам третьего регистра пам ти , второго и третьего блоков элементов И, к первому входу сумматора и к входу генератора равномерно распределенных случайных чисел, второй и третий выходы которого соединены с п тым входом коммутатора и с информационным входом блока инверсии кода соответственно , седьмой выход генератора тактовых импульсов подключен к первому управл ющему входу блока инверсии кода, второй управл ющий вход которого соединен с выходом коммутатора , группа выходов которого подключена соответственно к группе входов третьего регистра пам ти, группа выходов последнего соединена соответственно ,с группой входов второго блока элементов И, группа входов сумматора подключена соответственно к группе выходов блока инверсии кода, второй вход сумматора подключен к выходу четвертого регистра пам ти, а группа выходов сумматора соединена соответственно с группой входов третьего блока элементов И, выход которого вл етс третьим выходом генератора. Источники информации, прин тые во внимание при экспертизе 1. Авторское свидетельство СССР / № 185569, кл.с 06 F 7/58, 196.
- 2. Авторское свидетельство СССР № 309356, кл. G Об F 7/58, 1970, 980093 t 3 Авторское свидетельство СССР № 378826. кл. G Об F 7/58. 1971 (прототип ).X3032I-29. /7.13/2/v2227232фиг. 2.52г52,32,-2%29,Лf129,32т295Мм41 tt2Л6t
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU813296057A SU980093A1 (ru) | 1981-06-02 | 1981-06-02 | Генератор случайных чисел |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU813296057A SU980093A1 (ru) | 1981-06-02 | 1981-06-02 | Генератор случайных чисел |
Publications (1)
Publication Number | Publication Date |
---|---|
SU980093A1 true SU980093A1 (ru) | 1982-12-07 |
Family
ID=20961027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU813296057A SU980093A1 (ru) | 1981-06-02 | 1981-06-02 | Генератор случайных чисел |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU980093A1 (ru) |
-
1981
- 1981-06-02 SU SU813296057A patent/SU980093A1/ru active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SU980093A1 (ru) | Генератор случайных чисел | |
JP2766133B2 (ja) | パラレル・シリアル・データ変換回路 | |
US4958313A (en) | CMOS parallel-serial multiplication circuit and multiplying and adding stages thereof | |
JPS5841532B2 (ja) | セキワケイサンカイロ | |
SU1667059A2 (ru) | Устройство дл умножени двух чисел | |
SU1718215A1 (ru) | Устройство дл выполнени векторно-скал рных операций над действительными числами | |
JPH06314186A (ja) | 加算器連鎖及び加算方法 | |
SU1141403A1 (ru) | Устройство дл делени | |
SU1264165A1 (ru) | Накапливающий сумматор | |
RU1784972C (ru) | Устройство дл сложени чисел в дополнительном коде | |
SU1013942A1 (ru) | Преобразователь двоично-дес тичного кода в двоичный | |
RU2018934C1 (ru) | Устройство для деления | |
SU733109A1 (ru) | Троичный реверсивный п-разр дный счетчик импульсов | |
SU1115045A1 (ru) | Преобразователь @ -ичного позиционного кода в двоичный код | |
SU734669A1 (ru) | Преобразователь правильной двоичной дроби в двоично-дес тичную дробь и целых двоично-дес тичных чисел в двоичные | |
SU407313A1 (ru) | УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ОСТАТКА ПО МОДУЛЮ от ЧИСЛА | |
SU1124319A1 (ru) | Устройство дл перебора сочетаний,размещений и перестановок | |
SU437061A1 (ru) | Генератор цепеей маркова | |
SU1667060A1 (ru) | Устройство дл делени | |
SU1309019A1 (ru) | Устройство дл умножени | |
SU744564A1 (ru) | Устройство дл делени | |
SU1188728A1 (ru) | Устройство дл реализации булевых функций | |
SU1536374A1 (ru) | Устройство дл умножени чисел | |
SU734687A1 (ru) | Микропрограммное устройство управлени | |
SU1667061A1 (ru) | Устройство дл умножени |