EmbDev.net

Forum: FPGA, VHDL & Verilog for loop with real


von angelo (Guest)


Rate this post
useful
not useful
Hi everyone!

I would like to create a for loop for code like this:

if input >= 1.0 then output = 11111111111111
if input =0.999878 then output = 11111111111110
if input =0.999756 then output = 11111111111101
.
.
.
.
.
if input = -0.999878 then output = 10000000000001
if input <= -1.0 then output = 10000000000000


It seams to be simple but apparently the paramater of the for loop can't 
be of real type. Do you know an other way to do the same thing I want 
but real compatible please ??

von Lothar M. (Company: Titel) (lkmiller) (Moderator)


Rate this post
useful
not useful
angelo wrote:
> Do you know an other way to do the same thing I want but real compatible
> please ??
Is this for simulation only or must it be implemented on real hardware?


BTW: when I look at your code then I am fairly sure that there is a kind 
of algorithm or a formula to calculate the result...

von Tom (Guest)


Rate this post
useful
not useful
For-loops with real/float types are allowed, but not always useful.

In this case I would use a linear function with no loop at all.

Something like "output = (input+1)*8192". Try it for a few input values.

von angelo (Guest)


Rate this post
useful
not useful
Lothar Miller wrote:
> Is this for simulation only or must it be implemented on real hardware?

Yes is this for simulation, I know real is not synthesizable.

Tom wrote:
> Something like "output = (input+1)*8192". Try it for a few input values.

Tom, few adaptations your code and that gives me exactly I want, thank 
you a lot!

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.