Forum: FPGA, VHDL & Co. Pin vor Optimierung schützen


von sim (Gast)


Lesenswert?

Hallo zusammen.

Kann mir einer sagen wie ich verhindern kann, dass mir die 
Entwicklungsumgebung (Lattice Diamond) Eingangs-Pins weg optimiert, wenn 
diese zu Testzwecken mal nicht mit einem Ausgang verknüpft sind.

von Duke Scarring (Gast)


Lesenswert?

Bau doch einen "Test"-Asgang ein. Da kannst Du alle noch irgendwie 
benötigten Pins hinverodern...

Duke

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

sim schrieb:
> Kann mir einer sagen wie ich verhindern kann, dass mir die
> Entwicklungsumgebung (Lattice Diamond) Eingangs-Pins weg optimiert, wenn
> diese zu Testzwecken mal nicht mit einem Ausgang verknüpft sind.
Was stört dich daran?

von Manas (Gast)


Lesenswert?

Hallo,
ich weiß nicht, welche Attribute es bei Lattice gibt, aber bei Altera 
(Quartus II) gibt es fertige Templates. Bei diesen Beispielen gibt es 
auch die sog. Synthesis Attributes.
Bsp:
-- Prevents Quartus II from minimizing or removing a particular
-- signal net during combinational logic optimization.  Apply
-- the attribute to a net or variable declaration.

attribute keep of <object> : <object_class> is true;

Ich hoffe, es hilft dir evtl. weiter.

ManAs

von sim (Gast)


Lesenswert?

Lothar Miller schrieb:
> Was stört dich daran?

Das ich in der Aufbauphase meines Systems manchmal Eingänge habe, die 
noch nicht mit einem Ausgang verknüpft sind, da dieser Zweig noch nicht 
implementiert ist. Bei der Synthese optimiert er mir die dann weg. 
Implenetiere ich dann den Ausgangszweig sind alle Pinzuordnungen dieser 
Pins wieder weg und ich muss von sie wieder neu zuordnen... Das nervt 
vor allem wenn man man testweise I/Os umlegt, weil man auf einem 
Ausgangspin was zu Testzwecken messen will. Legt man dann die 
Eigentlichen eingänge wieder an die Logik an (so dass diese wieder mit 
einem Ausgang verknüpft sind) dann sind diese Eingänge auf einmal an 
anderen Pins.

Gruß Sim

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dich stört also nicht, dass die wegoptimiert werden, sondern dass deine 
Pinzuordnung flöten geht? Die ist doch im Constraints File festgelegt
(http://www.latticesemi.com/support/faqs/details.cfm?id=711)

Und wahrscheinlich gibt es bei Lattice (wie auch bei Xilinx) einen 
Schalter "ingore unmatched loc constraints". Damit werden Fehler 
ignoriert, die entstehten, wenn im Constraints File zwar ein Pin 
definiert ist, der aber von der Synthese schnöde wegoptimiert wurde...

von sim (Gast)


Lesenswert?

Manas schrieb:
> Hallo,
> ich weiß nicht, welche Attribute es bei Lattice gibt, aber bei Altera
> (Quartus II) gibt es fertige Templates. Bei diesen Beispielen gibt es
> auch die sog. Synthesis Attributes.
> Bsp:
> -- Prevents Quartus II from minimizing or removing a particular
> -- signal net during combinational logic optimization.  Apply
> -- the attribute to a net or variable declaration.
>
> attribute keep of <object> : <object_class> is true;
>
> Ich hoffe, es hilft dir evtl. weiter.
>
> ManAs


KEEP war die Lösung. Dakne.

Gruß Sim

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.