- **VHDL**
(*http://www.velocityreviews.com/forums/f18-vhdl.html*)

- - **Scaling data**
(*http://www.velocityreviews.com/forums/t589214-scaling-data.html*)

Scaling dataHello All,
I am using the UNIFORM procedure in VHDL to generate random numbers. UNIFORM generates random numbers in the range 0.1 to 0.99999. I wish to generate random signed and unsigned numbers of variable widths(integer range). I would like to get some ideas on how I should scale this data? Right now, when i convert the real output from real to integer to signed, it just gives me an output of wither 0 or 1 . Your comments would be appreciated Thank you |

Re: Scaling dataOn Feb 3, 8:43 am, FPGA <FPGA.unkn...@gmail.com> wrote:
> Hello All, > > I am using the UNIFORM procedure in VHDL to generate random numbers. > UNIFORM generates random numbers in the range 0.1 to 0.99999. I wish > to generate random signed and unsigned numbers of variable > widths(integer range). I would like to get some ideas on how I should > scale this data? Right now, when i convert the real output from real > to integer to signed, it just gives me an output of wither 0 or 1 . > Your comments would be appreciated > > Thank you Try multiplying it by a scaling factor before you convert it to integer. |

Re: Scaling dataOn Feb 3, 8:11*am, Chris Maryan <kmar...@gmail.com> wrote:
> On Feb 3, 8:43 am, FPGA <FPGA.unkn...@gmail.com> wrote: > > > Hello All, > > > I am using the UNIFORM procedure in VHDL to generate random numbers. > > UNIFORM generates random numbers in the range 0.1 to 0.99999. I wish > > to generate random signed and unsigned numbers of variable > > widths(integer range). I would like to get some ideas on how I should > > scale this data? Right now, when i convert the real output from real > > to integer to signed, it just gives me an output of wither 0 or 1 . > > Your comments would be appreciated > > > Thank you > > Try multiplying it by a scaling factor before you convert it to > integer. Let the real random number you generated be "my_random_number". Let the random integer (my_random_integer) you want to generate be in the range "my_range_low" to "my_range_high". Then after using UNIFORM on "my_random_number", you would do my_random_integer <= my_range_low + my_random_number*(my_range_high - my_range_low) - Sudheendra Kadri |

All times are GMT. The time now is 06:59 PM. |

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.

SEO by vBSEO ©2010, Crawlability, Inc.