Forum Discussion
Altera_Forum
Honored Contributor
14 years agoStabilitiey of macro vs. mega functions in 3000
Over a decade ago, I designed a number of products with MAX-Plus, using
7000 series EPLDs. I use only the graphics editor. At that time I used a lot of macrofunctions, 74166 shift registers and other counters and registers. Then, Altera increased density and speed without changing part numbers, and they then recommended that built in macrofunctions, be replaced with megafunctions which were added to MAX. Well, now I am trying to port some of that old code still with macrofunctions to 3000 series. Must I change to megafunctions, or is 3000 more tolerant to the macros? Also, I prefer to use MAX-Plus ver. 10.23, but, can use Quartus if there is really a benefit in compiling for best stability of results. Thanks, Barry2 Replies
- Altera_Forum
Honored Contributor
It depends on what you have learned in the intervening decade :)
Do you know VHDL or Verilog and do you simulate your designs using Modelsim? If you don't, are you interested in learning? If I was given the task of updating your code, the first thing I would do is to create a testbench that verifies the functionality of the design. I'd use MAX+Plus II to synthesize your design, and then generate a Verilog or VHDL netlist. The testbench would be written in either Verilog or VHDL. That setup would be my 'reference' design. I'd then either convert the design to Verilog or VHDL, and use Megafunctions where needed. Though in your case, shift-registers, registers, and FSMs could be described directly in the language. The same testbench would be used to test this design, to confirm the functionality of the original design was reproduced. If you want to take a shot at updating to an HDL, you'll get help on this list. What function does your design implement? Cheers, Dave - Altera_Forum
Honored Contributor
I don't think you'll be seeing any difference in stability with either way with macrofunctions or megafunctions.
I'd say that by using megafunctions, you might be able to simplify your design and let the tool implement better optimizations. Ie. instead of building an 8 bit counter with registers and 7483 4-bit adders, you can just create a 8 bit counter megafunction and be done with it. MAX-Plus is a dead end, software wise. Altera only recommends it for legacy designs. When I have to support a design that's been tested and deployed, I often avoid even changing Quartus version. But whenever I move to a different device, I go for the latest Quartus. So, since you're changing device, I'd change to Quartus.