www.mikrocontroller.net

Forum: FPGA, VHDL & Co. XILINX ISE schematic im topmodule verwenden ?


Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte mit einem XL9572 in ISE 11.1 zwei Drehenkoder auswerten. Dazu 
habe ich ein Schematic rot.sch, auf dem ein paar Gatter sitzen. Aus 
diesem Modul habe ich ein Symbol erzeugen lassen (create schematic 
symbol) um es zwei mal in meinem topmodule verwenden zu können. Ziehe 
ich ein oder zwei dieser rot-Module auf meinen Hauptschaltplan und 
möchte die Pins zuweisen (floorplan), stehen mir dort nur die Signale C, 
D und Q zur Verfügung (das sind scheinbar die, die das D-Flipflop 
welches in rot.sch enthalten ist hat), anstatt die IOs des rot-Moduls 
(A, B ,CLK, CE, DIR).
Ziehe ich einfache Logikgatter auf die Hauptseite und verbinde diese mit 
IO Markern, werden selbige korrekt im Floorplan angezeigt, bis ich ein 
rot-Modul hinzufüge, dann sind wieder nur C D und Q zu sehen. Kann mir 
jemand sagen was ich falsch mache ?

Schöne Grüße
Stefan

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso machst du das im FloorPlan? Ist das nicht das Programm, was auf 
unterster Chip-Ebene das zeigs verdrahtet? Du musst eigentlich nur ein 
Projekt erstellen, als Top-Level Schematic einstellen, und dann ein 
Schematic File erzeugen, was dann dein Top-Level ist. Editiert wird das 
ganze im Schematic-Editor. Da kannst du dann beliebige Gatter, FlipFlops 
oder eben eigene Schematics oder VHDL Module verbinden. Die Verbindungen 
zu den Pins machst du mit den Input oder Output oder BiDir Markern. Die 
Schematics oder VHDL Module die du verwenden möchtest, fügst du erst zum 
Projekt hinzu und wählst dann "Create Schematic Symbol", dann stehen die 
Symbole im Schematic Editor zur Verfügung.
Im Normalfall hat man im FloorPlan eigentlich nix zu suchen, das Routing 
usw. macht das ISE doch alles alleine. Und die Pins weist man doch im 
PAce zu, also "Assign Package Pins"

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau, eigentlich hab ich's genau so gemacht:

Ok, ich probiers hier nochmal "live":
Neues Projekt, neuer Schaltplan main.sch (topmodule).
Noch einen Schaltplan subtest.sch.
Auf subtest ein AND-Gatter geschubst, 3 kurze "Wires" dran, und an diese 
jeweils einen I/O Marker. Wires A, B, C benannt.
Create schematic symbol laufen lassen.
Auf main.sch wechseln, und 2 von den subtest Modulen auf die Seite 
schubsen.
An alle Anschlüsse ein Stück Wire und einen I/O Marker dran und 
umbenennen: A1, A2, B1, B2, C1, C2. Auf dem topModule sind so nun 2 
Symbole mit insgesamt 6 I/O Markern, die nun auf die Pins gelegt werden 
sollen.
Floorplan öffnen (hieß glaube ich in den Version zuvor anders), damit 
öffnet sich Xilinx Pace. Hier stehen nun nicht wie erwartet A1, A2, B1, 
B2, C1, C2, sondern nur A, B, C zur Verfügung.

Was stimmt hier nicht ?

Grüße
Stefan

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss ich dann mal probieren. Ich arbeite noch mot 9.2.0.4 hier, läuft 
aber gerade ein anderes großes Design. Hast du alle Service Packs 
installiert? VIelleicht einfach ein Bug?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, Servicepacks sind alle drauf. Werde mal das ganze mit der 10er 
Version versuchen. In selbiger hatte ich aber immer ein ähnliches 
Phänomen: Sobald ich neben meiner "Submodul" auf das Topmodul z.B. einen 
einzelnen zusätzliches Logikgatter platziert hatte, waren in PACE nur 
noch die Pins dieses Gatters zu sehen. Schon seltsam dass in einer 11er 
Version die popelichsten Sachen immer noch nicht hinhauen...

Stefan

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm, komisch. Mach doch ein VHDL als TopLevel, das klappt wenigstens.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Mach doch ein VHDL als TopLevel, das klappt wenigstens.
Jo, wenn ich dass nur könnte ;-)

Habs nun mit der 10er Version gemacht, da gehts...

Stefan

Autor: Wolfgang M. (womai)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zumindest in der ISE-Version 9 (habe noch nicht auf 10 umgestellt) habe 
ich auch derartige Probleme, und es sieht sehr nach einem Bug in der 
Entwicklungsumgebung aus.

Ich habe aber einen einfachen Workaround entdeckt - man muss nur sein 
gesamtes Design zu einem einzigen Symbol machen und dann eine Instanz in 
den Toplevel setzen (anstatt im Toplevel mehrere Untersymbole zu haben). 
Dann hat's bei mir immer zuverlaessig funktioniert. Also einfach eine 
Ebene mehr einfuegen (ueber Deinem jetzigen Toplevel).

Wolfgang

Autor: walle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Öhm,

die Pinzuweisung erfolgt doch über ein .ucf-file im Sinne von:

NET "A1" LOC = "(Pinposition)"


Kai

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, es gibt auch eine GUI dafür: Xilinx Pace.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.