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

Reply

VHDL - Quartus Inference Challenge

 
Thread Tools Search this Thread
Old 05-19-2009, 06:15 PM   #1
Default Quartus Inference Challenge


Im trying to replace an altsyncram instatiation with an implied
version, and I cant figure it out atm - thought Id put it out as a
little challenge.
Heres the altsyncram (dual clocked, in and out port width difference):

alt_ram : altsyncram
generic map (
Width_a => 64,
width_b => 16,

widthad_a => 7,
widthad_b => 9

)
port map (

clock0 => clka,
clock1 => clkb,

data_a => data_a,
address_a => std_logic_vector(to_unsigned(addr_a, 7) ),

address_b => std_logic_vector(to_unsigned(addr_b, 9) ),
q_b => q_b

);


Its easy to infer it when A and B ports are identical widths, bit how
to do it now there is a width mismatch?


Tricky
  Reply With Quote
Old 05-20-2009, 04:15 PM   #2
Jacko
 
Posts: n/a
Default Re: Quartus Inference Challenge
On May 19, 6:15*pm, Tricky <Trickyh...@gmail.com> wrote:
> Im trying to replace an altsyncram instatiation with an implied
> version, and I cant figure it out atm - thought Id put it out as a
> little challenge.
> Heres the altsyncram (dual clocked, in and out port width difference):
>
> alt_ram : altsyncram
> * generic map (
> * * Width_a * *=> 64,
> * * width_b * *=> 16,
>
> * * widthad_a *=> 7,
> * * widthad_b *=> 9
>
> * )
> * port map (
>
> * * clock0 * * * * => clka,
> * * clock1 * * * * => clkb,
>
> * * data_a * * * * => data_a,
> * * address_a * * *=> std_logic_vector(to_unsigned(addr_a, 7) ),
>
> * * address_b * * *=> std_logic_vector(to_unsigned(addr_b, 9) ),
> * * q_b * * * * * *=> q_b
>
> * );
>
> Its easy to infer it when A and B ports are identical widths, bit how
> to do it now there is a width mismatch?


Try multiplexing a 64 bit output port into 4*16 using two address
bits. This makes the same port widths.

cheers jacko


Jacko
  Reply With Quote
Old 05-20-2009, 05:06 PM   #3
Tricky
 
Posts: n/a
Default Re: Quartus Inference Challenge
On 20 May, 16:15, Jacko <jackokr...@gmail.com> wrote:
> On May 19, 6:15*pm, Tricky <Trickyh...@gmail.com> wrote:
>
>
>
> > Im trying to replace an altsyncram instatiation with an implied
> > version, and I cant figure it out atm - thought Id put it out as a
> > little challenge.
> > Heres the altsyncram (dual clocked, in and out port width difference):

>
> > alt_ram : altsyncram
> > * generic map (
> > * * Width_a * *=> 64,
> > * * width_b * *=> 16,

>
> > * * widthad_a *=> 7,
> > * * widthad_b *=> 9

>
> > * )
> > * port map (

>
> > * * clock0 * * * * => clka,
> > * * clock1 * * * * => clkb,

>
> > * * data_a * * * * => data_a,
> > * * address_a * * *=> std_logic_vector(to_unsigned(addr_a, 7) ),

>
> > * * address_b * * *=> std_logic_vector(to_unsigned(addr_b, 9) ),
> > * * q_b * * * * * *=> q_b

>
> > * );

>
> > Its easy to infer it when A and B ports are identical widths, bit how
> > to do it now there is a width mismatch?

>
> Try multiplexing a 64 bit output port into 4*16 using two address
> bits. This makes the same port widths.
>
> cheers jacko


Yup, I can do that, but its not as efficient as the direct
instantiation.

Altera have come back saying they dont support it - I shall put in an
enhancement request.


Tricky
  Reply With Quote
Old 05-20-2009, 07:18 PM   #4
Mike Treseler
 
Posts: n/a
Default Re: Quartus Inference Challenge
Tricky wrote:

> Yup, I can do that, but its not as efficient as the direct
> instantiation.


But it is portable.
Does the instance use zero LUTs for the mux?

-- Mike Treseler


Mike Treseler
  Reply With Quote
Old 05-21-2009, 05:01 PM   #5
Jacko
 
Posts: n/a
Default Re: Quartus Inference Challenge
On May 20, 7:18*pm, Mike Treseler <mtrese...@gmail.com> wrote:
> Tricky wrote:
> > Yup, I can do that, but its not as efficient as the direct
> > instantiation.

>
> But it is portable.
> Does the instance use zero LUTs for the mux?
>
> * * *-- Mike Treseler


Probly not. Good job he didn't want the write bus smaller width, and
write before read!

cheers jacko

http://nibz.googlecode.com version G-spot


Jacko
  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
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
partitioning challenge Sean Cleary A+ Certification 14 09-26-2009 12:26 PM
HiDef.com PS3 Challenge - Holiday Giveaway - PS3 60GB, 360 HD-DVD Drive and 360 Wireless Force Feedback Wheel HiDef.com DVD Video 0 12-24-2006 04:32 AM
How To Instantiate In Quartus 2 vijaychanderreddyp Software 0 11-10-2006 06:50 AM
TAKE THE ALPHA GEEK CHALLENGE! Dapunisher A+ Certification 0 04-01-2005 04:45 AM
Re: I challenge you to figure this one out. Ken Briscoe A+ Certification 0 06-24-2003 01:45 AM




SEO by vBSEO 3.3.2 ©2009, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46