Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Pipelining Fixed_pkg operations (VHDL 200x-FT)

Reply
Thread Tools

Pipelining Fixed_pkg operations (VHDL 200x-FT)

 
 
Divyang M
Guest
Posts: n/a
 
      02-01-2005
I was wondering if it is possible (and how) to pipeline operations
(such as mult, add, etc) that I use from the Fixed_pkg library?

I am hoping that this will speed up my system a little.
Thanks,
Divyang M

 
Reply With Quote
 
 
 
 
David Bishop
Guest
Posts: n/a
 
      02-03-2005
Divyang M wrote:

> I was wondering if it is possible (and how) to pipeline operations
> (such as mult, add, etc) that I use from the Fixed_pkg library?
>
> I am hoping that this will speed up my system a little.


Two ways to do it.

First, use Pipeline retiming. This is a (farily expensive) option on
most synthesis tools. I use this all the time. Just add some extra
registers after every operation and let the tool do the rest.

Second, create pipelined components of the correct width, and take
the functions apart to use them.

Example:
entity mult_18 is port (
a, b : sfixed (4 downto -4);
res : sfixed (8 downto -;
clk, rst : std_ulogic);
end entity mult_18;

architecture piplined of mult_18 is
signal as, bs : signed (a'high-a'low downto 0);
signal res_s : signed (2*(a'high-a'low)+1 downto 0);
component pip_signed_mult
..... -- Built with the Wizard
end component;
begin
as <= signed (to_slv (a)); -- cast into a signed numbre
bs <= signed (to_slv (b));
u1 : pip_signed_mult port map (
... -- hook it up
res <= to_sfixed (std_logic_vector(res_s (res_s'high-1 downto 0),
res'high, res'low);
end architecture piplined;

Why does he drop the last bit does he ask? It turns out the the
signed multiply from "numeric_std" gives you one more bit than you
can possibly use.

BTW, I'm the guy who wrote these packages.
 
Reply With Quote
 
 
 
 
Divyang M
Guest
Posts: n/a
 
      02-03-2005
Hello David,

First of all -- Thank You -- for putting in the effort to come up with
the packages.
It has definitely made designing fixed point circuits much faster and
easier for me
and I'm sure for others aswell who have come across this package.

I will try out the suggestions you mentioned.

And just out of curiosity -- do you have an idea on when the package
will become
an IEEE standard? I'm just asking because it would be great to have my
design
"fully" IEEE complaint..I even started using the numeric_std library
instead of the
popular std_logic_arith which I belive is not an IEEE standard.

Thanks,
Divyang M

 
Reply With Quote
 
David Bishop
Guest
Posts: n/a
 
      02-04-2005
Divyang M wrote:

> And just out of curiosity -- do you have an idea on when the package
> will become
> an IEEE standard? I'm just asking because it would be great to have my
> design
> "fully" IEEE complaint..I even started using the numeric_std library
> instead of the
> popular std_logic_arith which I belive is not an IEEE standard.


The plan is this year. LRM editing needs to start soon to get
this off the floor.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Synthesizing fixed_pkg in ISE 9.2 Andreas Schwarz VHDL 7 08-21-2007 12:00 PM
VHDL-200x Fixed_pkg Problems Jamin VHDL 7 01-29-2007 05:15 PM
Fixed_pkg: PRoblem using ABS operator Ved VHDL 8 08-12-2006 04:14 AM
VHDL-200x fixed_pkg synthesis warnings rnbrady@gmail.com VHDL 2 06-23-2006 02:22 PM
Compability of fixed_pkg (VHDL 200x-FT) with synthesis tools divyangm@gmail.com VHDL 6 12-14-2004 06:19 PM



Advertisments