发明名称 一种均匀分布随机数发生器及均匀分布随机数产生方法
摘要 一种均匀分布随机数发生器,包括初始化模块,选择器,乘加器,以及延迟器,还包括第一移位模块,第二移位模块,第一加法器,第三移位模块,第四移位模块,第二加法器。一种均匀分布随机数产生方法:一,获取数值x0,a与x0相乘再加c得到z,a,c均为非负整数;二,将z使用移位器右移n位得到z1,z1再左移n位得到z2,其中2na+c<22n;三,将z和z1相加之和减去z2,其结果为y;四,将y加上1然后右移n位得到y1,y1再使用移位器左移n位得到y2,将y和y1相加之和减去y2得到xi+1,即本次产生的随机数;五,xi+1延迟,与a相乘再加c得到z,返回步骤二。本发明显著降低了计算量,可满足各种需要实时生成均匀分布随机数发生器的场合。
申请公布号 CN101127575B 申请公布日期 2010.09.01
申请号 CN200710154108.6 申请日期 2007.09.12
申请人 中兴通讯股份有限公司 发明人 李浩;丁杰伟
分类号 G06F7/58(2006.01)I 主分类号 G06F7/58(2006.01)I
代理机构 北京安信方达知识产权代理有限公司 11262 代理人 龙洪;霍育栋
主权项 一种均匀分布随机数发生器,包括初始化模块,选择器,乘加器,以及延迟器,初始化模块产生随机数发生器的种子,输入到所述选择器,所述选择器在初始时选择所述初始化模块输入的数值作为输出,进入正常工作状态,在正常工作状态时所述选择器选择延迟器输入的数值作为输出,选择器的输出输入到所述乘加器,所述乘加器将选择器的输出与a相乘再加c,得到乘加器的输出,其中,a和c均为非负整数,其特征在于,还包括第一移位模块,第二移位模块,第一加法器,第三移位模块,第四移位模块,第二加法器,其中,所述乘加器的输出输入到第一移位模块和第一加法器,第一移位模块对输入的数据进行右移n位,得到第一移位模块的输出,输入到第二移位模块和第一加法器,其中2na+c<22n;第二移位模块对输入的数据左移n位,得到第二移位模块的输出,输入到第一加法器;第一加法器将第一移位模块和乘加器输出的数值相加,减去第二移位模块输出的数值,再加上1,得到第一加法器的输出值,将其输入到第三移位模块和第二加法器;第三移位模块对输入值右移n位,输出至第四移位模块和第二加法器;第四移位模块将输入值左移n位,输出至第二加法器;第二加法器将第三移位模块和第一加法器的输出的数值相加,减去第四移位模块输出的数值,再减去1,得到第二加法器的输出值,即得到本次输出的随机数,并将其输入延迟器;延迟器把本次输出的随机数进行延迟,输出到所述选择器。
地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法律部