Zaid Al-Hilli
Guest
Wed Jul 27, 2011 11:19 am
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
Rob Gaddi
Guest
Wed Jul 27, 2011 4:09 pm
On 7/27/2011 2:19 AM, Zaid Al-Hilli wrote:
Quote:
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
Yeah, bound the range of y sufficiently that you can implement the
entire thing in a RAM lookup table.
--
Rob Gaddi, Highland Technology
Email address is currently out of order
Benjamin Couillard
Guest
Wed Jul 27, 2011 7:23 pm
On 27 juil, 05:19, Zaid Al-Hilli <z.alhil...@gmail.com> wrote:
Quote:
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
One simple way would be to use a look-up table implemented in a ROM.
With "y" being the address and X being the data read at "y" address.
This solution would work well if the range of "y" in bits is smaller
or equal to 16 bits. If "y" is 32-bit wide then I don't think a look-
up table implemented in a FPGA-Rom will work.
noobie
Guest
Thu Jul 28, 2011 9:31 am
On Jul 27, 2:19 pm, Zaid Al-Hilli <z.alhil...@gmail.com> wrote:
Quote:
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
Use Taylor series expansion for the calculation of this equation. Use
fixed point arithmetic.
Zaid Al-Hilli
Guest
Fri Jul 29, 2011 12:41 pm
On Jul 27, 7:23 pm, Benjamin Couillard <benjamin.couill...@gmail.com>
wrote:
Quote:
On 27 juil, 05:19, Zaid Al-Hilli <z.alhil...@gmail.com> wrote:
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
One simple way would be to use a look-up table implemented in a ROM.
With "y" being the address and X being the data read at "y" address.
This solution would work well if the range of "y" in bits is smaller
or equal to 16 bits. If "y" is 32-bit wide then I don't think a look-
up table implemented in a FPGA-Rom will work.
Thanks a lot!
Zaid Al-Hilli
Guest
Fri Jul 29, 2011 12:41 pm
On Jul 27, 6:09 pm, Rob Gaddi <rga...@technologyhighland.com> wrote:
Quote:
On 7/27/2011 2:19 AM, Zaid Al-Hilli wrote:
Hi all,
I am about implementing a VHDL code but I am facing problem, I have an
exponential operation and I want to run that code op an FPGA board!!
Generally speaking the assignment is: X = (1 / (1+ exp((y + 87.

/
8.5)));
Would you please help me in that?
Many thanks in advance...
Zaid
Yeah, bound the range of y sufficiently that you can implement the
entire thing in a RAM lookup table.
--
Rob Gaddi, Highland Technology
Email address is currently out of order
Thanks a lot!