Forum: FPGA, VHDL & Co. Treiber zentral inferieren?


von guest (Gast)


Lesenswert?

Hallo,

in Anlehnung an den Thread 
Beitrag "Tristate nur in Top-Ebene?" wüsste ich gerne, wer in 
dieser Art seine Designs aufsetzt und das eine oder andere Feedback dazu 
abgeben kann?
Es geht darum, sämtliche Treiber im top level zu beschreiben, um 
IO-Zellen von der Logik zu separieren. So hab ich das zumindest 
verstanden.

Wie sieht das in der Praxis aus? Werden dann sämtliche Treiber manuell 
im Top Level instanziiert und das wars? Oder gibts noch andere Dinge auf 
die man achten muss?

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


Lesenswert?

guest schrieb:
> wer in dieser Art seine Designs aufsetzt
Ich.
> und das eine oder andere Feedback dazu abgeben kann?
Funktioniert gut.

Oder wie wolltest du das Feedback?

Wenn du inout quer über alle Module verwendest kannst du schnell mal 
eine "Buskollision" bekommen (es darf ja jedes Modul auf so einen Port 
schreiben), die der Synthesizer nicht auflösen kann. D.h. deine 
Treiberquellen können weit verstreut sein, das macht die Fehlersuche 
nicht einfach...
Wenn du nur out und in Ports verwendest, dann muß dein Adressdecoder in 
1 Modul zusammengefasst sein (das ist dann idR. das Top Modul oder 
irgendwas geradlinig darunter). Du siehst Überlappungen also sofort.

von guest (Gast)


Lesenswert?

Wie setzt man das denn nun um? Muss ich da etwas manuell instanziieren?
Oder reicht es wenn vom top level aus nur noch Signale vom Typ in und 
out in darunter liegende Hierachien geleitet werden?

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


Lesenswert?

guest schrieb:
> Oder reicht es wenn vom top level aus nur noch Signale vom Typ in und
> out in darunter liegende Hierachien geleitet werden?
Ja.
> Muss ich da etwas manuell instanziieren?
Ja: den bidirektionalen Treiber eben...
1
  datain  <= databus;
2
  databus <= dataout when enableout='1' else (others=>'Z');
Und diese datain und dataout gibst du nach unten weiter.

von guest (Gast)


Lesenswert?

Ok, ich denke nu ist das klar geworden. Besten Dank.

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.