ted
Full Member level 3
I am working with a VHDL project where the tools are the free versions of: Leonardo Spectrum (@ltera edition) and MAX II + 10.12, while the chip is ACEX1k50. Design is small enough to fit very easily, but has some tough timing requirements.
Actually the tools are not too bad, at least up to a certain point. But a misery starts when fitting the result. The placement generated by fitter(e) in MAX II+ is horrible. Selecting "optimize for speed" in Leonardo helps very little, the horror is in routing. And that is done by MAX II +, which has two fittere: One old and pretty bad (spreading cells all over like a shotgun), another is using "Quartus technology"--it's a little better but has restrictions in assignements it accepts. And still not smart enough for good, timing optimal placement.
OK, I can use the floor plan editor and manually improve the result -- but then, I have two issues:
1) The compilation by Leonardo renames internal nets in a module very often to some auto-generated ones, so that finding anything in the design is made maximally difficult. How to prevent that grazy renaming of stuff?
2) When I have for instance a critical setup time issue from a certain pin to a certain register, finding which path is the slowest is not easy. At least I have not yet found out how to find that in MAX II +
Have anybody experiences with the package, and could help me with these two issues?
Ted
Actually the tools are not too bad, at least up to a certain point. But a misery starts when fitting the result. The placement generated by fitter(e) in MAX II+ is horrible. Selecting "optimize for speed" in Leonardo helps very little, the horror is in routing. And that is done by MAX II +, which has two fittere: One old and pretty bad (spreading cells all over like a shotgun), another is using "Quartus technology"--it's a little better but has restrictions in assignements it accepts. And still not smart enough for good, timing optimal placement.
OK, I can use the floor plan editor and manually improve the result -- but then, I have two issues:
1) The compilation by Leonardo renames internal nets in a module very often to some auto-generated ones, so that finding anything in the design is made maximally difficult. How to prevent that grazy renaming of stuff?
2) When I have for instance a critical setup time issue from a certain pin to a certain register, finding which path is the slowest is not easy. At least I have not yet found out how to find that in MAX II +
Have anybody experiences with the package, and could help me with these two issues?
Ted