Go Back   Velocity Reviews > Newsgroups > VHDL
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply

VHDL - Generic package

 
Thread Tools Search this Thread
Old 09-12-2006, 09:27 AM   #1
Default Generic package


hi,

is it possible to define a package with a generic option

i would like to have this :

package decoder is

generic (N : natural)

type POLY_TAB is array(0 to N) of std_logic_vector(7 downto 0);
....


thanks



patrick.melet@dmradiocom.fr
  Reply With Quote
Old 09-12-2006, 11:34 AM   #2
KJ
 
Posts: n/a
Default Re: Generic package


<> wrote in message
news: oups.com...
> hi,
>
> is it possible to define a package with a generic option
>
> i would like to have this :
>
> package decoder is
>
> generic (N : natural)
>
> type POLY_TAB is array(0 to N) of std_logic_vector(7 downto 0);
> ...
>


The short answer is 'no you can't put the generic in the package'. But the
following might work for you instead...

package decoder is
type POLY_TAB is array(natural range <>) of std_logic_vector(7 downto 0);
end package decoder;

Now type 'POLY_TAB' is an unconstrained array. At some point you'll want to
use it and you would declare a signal as...

signal My_Poly_Tab: POLY_TAB(0 to 5);

KJ


  Reply With Quote
Old 09-12-2006, 01:47 PM   #3
Andy
 
Posts: n/a
Default Re: Generic package

For now, KJ's approach is a close as you can get. But I believe the
next balloted revision of VHDL is due to have generic packages. Then
the vendors will have to update their tools to support it...

Andy


KJ wrote:
> <> wrote in message
> news: oups.com...
> > hi,
> >
> > is it possible to define a package with a generic option
> >
> > i would like to have this :
> >
> > package decoder is
> >
> > generic (N : natural)
> >
> > type POLY_TAB is array(0 to N) of std_logic_vector(7 downto 0);
> > ...
> >

>
> The short answer is 'no you can't put the generic in the package'. But the
> following might work for you instead...
>
> package decoder is
> type POLY_TAB is array(natural range <>) of std_logic_vector(7 downto 0);
> end package decoder;
>
> Now type 'POLY_TAB' is an unconstrained array. At some point you'll want to
> use it and you would declare a signal as...
>
> signal My_Poly_Tab: POLY_TAB(0 to 5);
>
> KJ


  Reply With Quote
Old 09-12-2006, 03:37 PM   #4
patrick.melet@dmradiocom.fr
 
Posts: n/a
Default Re: Generic package

thank you KJ

the solution you give works fine....

  Reply With Quote
Old 09-13-2006, 03:08 AM   #5
David Bishop
 
Posts: n/a
Default Re: Generic package

wrote:
> hi,
>
> is it possible to define a package with a generic option
>
> i would like to have this :
>
> package decoder is
>
> generic (N : natural)
>
> type POLY_TAB is array(0 to N) of std_logic_vector(7 downto 0);
> ...


It turns out that this is a feature of VHDL-2006.

Take a look at the code at:
http://www.vhdl.org/vhdl-200x/vhdl-200x-ft/files.html
  Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

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

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump