0

I've got an issue with generics in Quartus.

They do work, but if I declare let's say n = 10, and later change it to n = 100, the compilation and simulation results do NOT change. It's as if the generic value was still n = 10.

I've tried recompiling the design, but it didn't work. I've tried deleting temporary files, by removing all directories in my project folder, but still nothing. I've tried archiving the project and restoring it - nope.

Only copying the content of VHDL file, inserting it into a new file with a different name, and recompiling seems to work.

Is there a way to force Quartus into acknowledging the generic value has changed? I suppose I could give those values a thought before inserting them, but for obvious reasons creating a new file, creating a new symbol, and changing the main design file is a BIT of annoyance. Any idea what can I do about that? Is there anything?

helencrump
  • 1,351
  • 1
  • 18
  • 27
Benji
  • 23
  • 1
  • 5

2 Answers2

0

Looks like top level schematic .bdf file is here at fault. Ive tried updating symbol after recompiling, it doesnt help. Deleting and re-adding component does help. After ditching main graphic file, and setting my VHDL design as top-level entity (with generic inside) simple re-compilation solves the problem.

Good job, Quartus. Good job.

Benji
  • 23
  • 1
  • 5
  • 1
    Yeah,mixing flows (here, schem and VHDL) is often poorly thought out to say the least. So most people stick to pure VHDL, and nobody has the answer to your question. Don't come down too hard on Altera here, it's probably the industry norm. (Also, pure HDL is easier to port to other manufacturers. Just something worth casually mentioning to sales reps... ) –  Apr 13 '16 at 11:20
  • Im trying to move from blocks to pure VHDL (for the portability, and 'generate' command) but it didnt occur to me the program will take into consideration what's on the block symbol, and not inside the file, ESPECIALLY after compilation. At least refreshing components should fix that - and yet it does not. – Benji Apr 16 '16 at 09:58
0

The problem is in top.vhd. To use generics with schematic view you need to do this:

  • take in focus <your_top_bdf_with_generics>
  • go to "File"
  • click "Create\Update"
  • click "Create HDL Design File for Current File"

After this your generics will be used.

GL

k.o.dead
  • 1
  • 1