cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
5,366 Views
Registered: ‎10-22-2013

ERROR:HDLParsers:1305 - Line 72. result of operator and is not static.

please help to synthesize it.

0 Kudos
7 Replies
Highlighted
Xilinx Employee
Xilinx Employee
5,361 Views
Registered: ‎08-02-2007

Hi,

 

are you trying to select a memory instantiation based on the address?

 

--HS

----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
Highlighted
Visitor
Visitor
5,355 Views
Registered: ‎10-22-2013

yes..it is a designing of 64 x 8 byte Memory  using a 16 x 4 memory chip and i binded it using a configuration.

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
5,348 Views
Registered: ‎09-20-2012

Hi,

 

The mem64.vhd contains a generate statements. A generate statement must have a static (fixed) condition. You are using an input "addre" in the IF condition which is not static. Change this to a constant (static) to overcome the error.

 

Use the attached file and check if that helps.

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
Highlighted
Visitor
Visitor
5,318 Views
Registered: ‎10-22-2013

address cannot be taken as a constant in this logic coz it the input based on which the 16x4 memory instantiation is selected...

 -- Thanks!

0 Kudos
Highlighted
Teacher
Teacher
5,314 Views
Registered: ‎03-31-2012

address cannot be taken as a constant in this logic coz it the input based on which the 16x4 memory instantiation is selected

 

Then you can't use generate in this context. You have to implement actual hardware if you need run time control. For generate all control must be resolved by elaboration time.

- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
Highlighted
Xilinx Employee
Xilinx Employee
5,312 Views
Registered: ‎07-11-2011

Hi,

 

Just to add one more point we usually will have a memory with fixed address lines in hardwre and your entity address range is also fixed, when you want to change it you will eventually rerun the implementation.

So you may use local declaration i= address range(64)  and run the generate statement.

Change it when ever your address lines width changes.

 

Hope this helps.

 

 

Regards,

Vanitha.

 

 

---------------------------------------------------------------------------------------------
Please do google search before posting, you may find relavant information.
Mark the post - "Accept as solution" and give kudos if information provided is helpful and reply oriented
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
5,310 Views
Registered: ‎09-20-2012

Hi,

 

I used generic and it worked fine. In such a case you can send its value from top level instatiation. Check if that meets your need. 

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos