Forum: FPGA, VHDL & Co. Quartus II Pinzuweisung nicht möglich


von Thomas R. (skeleton)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bin gerade dabei, mich in Quartus II einzuarbeiten und habe ein 
kleines Projekt begonnen.
Eine Ampelsteuerung, die neben den Farben auch Relais ansteuert, um im 
Faller Car System Stoppstellen in einer Kreuzung aktivieren zu können. 
Zur Hilfenahme nutze ich das Einführungsskript von Patrick Harbarth. Als 
ich die Pin`s unter Assignments zuweisen wollte, kommt nur die Meldung, 
dass keine File ausgewählt wurde. Der Reiter Assignments Editor ist 
ebenfalls nicht wählbar.
Das selbe Problem habe ich in einem anderen Projekt ebenfalls.

Kann es daran liegen, dass ich das Projekt innerhalb Quartus nicht 
getestet habe?
Wäre toll, wenn mir da jemand weiterhelfen könnte...

MFG skeleton

von Klaus (Gast)


Lesenswert?

Thomas Richter schrieb:
> kommt nur die Meldung,
> dass keine File ausgewählt wurde

DAS ist mit Sicherheit nicht die genaue Fehlermeldung.

von Thomas R. (skeleton)


Lesenswert?

Sry,
falsch ausgedrückt, es erscheint keine Fehlermeldung, sondern es wird 
ein weiteres Fenster innerhalb Quartus geöffnet, indem grob übersetzt 
der Text drinsteht, dass keine File ausgewählt wurde. Nach dem von mir 
genannten Skript sollte eine Übersicht der verschiedenen I/O`s 
erscheinen, die ich zuordnen kann.
Ich kann das von mir beschriebene Problem gerade nicht weiter 
darstellen, da ich kein Quartus aufm Rechner habe.

von P. K. (pek)


Lesenswert?

Thomas Richter schrieb:
> indem grob übersetzt der Text drinsteht, dass keine File ausgewählt wurde

Du musst aber ein mindestens ein File in Deinem Projekt haben. Und Dein 
Projekt muss ein definiertes Toplevel haben. Von diesem Toplevel sucht 
er sich dann die Pins raus (I/O in der Toplevel-Entity), welche Du dann 
auf die FPGA-Pins assignen kannst.

von Thomas R. (skeleton)


Lesenswert?

Hallo Peter,
ich nutze ein CPLD (EPM7032), den ich mit oben aufgeführter Datei 
programmieren wollte. Im Rahmen des Projektes habe ich den CPLD in 
Quartus auch definiert. Das von mir aufgeführte File ist aus diesem 
Projekt, daher verstehe ich nicht, warum ich die I/O`s nicht zuweisen 
kann.
Ist das Toplevel abhängig vom benutzten Typ? Wie/wo kann ich dieses 
einsehen/verändern?
Habe wie gesagt erst angefangen mich mit der Materie 
auseinanderzusetzen.

von P. K. (pek)


Lesenswert?

Geh mal nach

Assignments > Settings... > General

Dort sollte eine "Top-level entity:" ausgewählt sein.

von P. K. (pek)


Lesenswert?

Ah ja noch was: Kann sein, dass Du, wenn das Toplevel gewählt ist, erst 
mal "Analysis & Synthesis" ausführen musst, damit Quartus die Ports 
kennt und Du dann Pins assignen kannst...

von skeleton (Gast)


Lesenswert?

Ich hatte endlich wieder Gelegenheit, mich mit meinem Projekt 
auseinanderzusetzen. Erst mal danke an Peter für seine Tipps, sie haben 
mich von der Analyse weiter gebracht zu folgenden Meldungen: (Auszug aus 
Quartus)

Info: 
*******************************************************************
Info: Running Quartus II Analysis & Synthesis
  Info: Version 11.0 Build 208 07/03/2011 Service Pack 1 SJ Web Edition
  Info: Processing started: Thu Dec 13 15:33:44 2012
Info: Command: quartus_map --read_settings_files=on 
--write_settings_files=off Ampelsteuerung -c Ampelsteuerung
Warning: Parallel compilation is not licensed and has been disabled
Info: Found 1 design units, including 1 entities, in source file 
ampelsteuerung.v
  Info: Found entity 1: Ampelsteuerung
Info: Elaborating entity "Ampelsteuerung" for the top level hierarchy
Error: Can't synthesize current design -- design does not contain any 
logic
Error: Quartus II Analysis & Synthesis was unsuccessful. 1 error, 1 
warning
  Error: Peak virtual memory: 249 megabytes
  Error: Processing ended: Thu Dec 13 15:33:44 2012
  Error: Elapsed time: 00:00:00
  Error: Total CPU time (on all processors): 00:00:00
Error: Quartus II Full Compilation was unsuccessful. 3 errors, 1 warning

 Besonders interessiert mich die Fehlermeldungen
Error: Can't synthesize current design -- design does not contain any 
logic
und
Error: Peak virtual memory: 249 megabytes

Zur 1. Meldung: Den Inhalt verstehe ich, nicht aber den Grund für die 
Meldung? Alle Ein- und Ausgänge sind richtig bezeichnet und verbunden. 
Einige Leitungen sind allerdings "offen" ohne weitere Funktion. Kann der 
Grund für die Meldung darin liegen?
Die 2. Meldung hat vmtl. mit meiner Rechenleistung zu tun, verstehe aber 
ebenfalls nicht den Grund. Mein Rechner: Win7 4GB RAM 125GB HDD 
i7-Prozessor
 Daran sollte es eigentlich nicht liegen.

Haz jemand Ideen?

von P. K. (pek)


Lesenswert?

skeleton schrieb:
> Error: Can't synthesize current design -- design does not contain any
> logic

Ich glaube, da musst Du ansetzen. Du benutzt verilog (*.v-Endung)? Da 
kenne ich mich nicht aus, aber bei meinen VHDL-Files steht jeweils:

Info: Found 2 design units, including 1 entities, in source file
.../usbif.vhd
  Info: Found design unit 1: USBIF-RTL
  Info: Found entity 1: USBIF

Bei Dir steht aber:

Info: Found 1 design units, including 1 entities, in source file
ampelsteuerung.v
  Info: Found entity 1: Ampelsteuerung

Da ist also eine Entity aber keine Architektur und somit keine Logik 
(und darum moniert er "does not contain..."). Was wieder auf VHDL 
schliessen lässt. Weiss aber nicht, ob die File-Endung wichtig ist.

von Duke Scarring (Gast)


Lesenswert?

skeleton schrieb:
> Einige Leitungen sind allerdings "offen" ohne weitere Funktion.
Vielleicht kannst Du mal Deinen aktuellen Quelltext hier als Anhang zur 
Verfügung stellen? Dann können auch andere Forumsteilnehmer versuchen, 
das Problem nachzuvollziehen.

Duke

von skeleton (Gast)


Lesenswert?

Hi Duke & Peter
Quelltext schön und gut, aber alles mir zur Verfügung stehende ist die 
*.bdf, ohne irgendetwas in VHDL/Verilog geschrieben zu haben. Alles 
wurde grafisch mittels Drag & Drop programmiert.
Wie gesagt, dies sind die Meldungen nach Ausführung der "Analyses & 
Synthesis" Funktion in Quartus II.
Problematisch ist für mich gerade, dass ich nicht weiss, wo ich bzgl. 
der Fehlerbehebung ansetzen kann....*confused*

von Uff (Gast)


Angehängte Dateien:

Lesenswert?

So. Paar Fehler entfernt, Projekt erzeugt, Chip zugewiesen, kompiliert 
und annotiert.

von Thomas R. (tinman) Benutzerseite


Angehängte Dateien:

Lesenswert?

also :

- die .bdf ist kaputt, bzw nicht alle joints sind vorhanden. Das mag an 
meiner version liegen, muss aber nicht

- du hast irgendetwas falsch gemacht beim "projekt erstellen"

- du hast top level entity nicht gesetzt

Ich habe deine bdf bereinigt, bzw die fehlenden joints hinzugefügt.
Habe auch projekt erstellt und getestet.

Einfach anhang downloaden, entpacken, quartus starten und 
"Ampelsteuerung.qpf" als projekt öffnen. Bei frage nach dem
update mit "ja" bestätigen (ich benutze Quartus 9.x und nicht 11.x).

Dann einfach compilieren, fertig.

von Thomas R. (tinman) Benutzerseite


Lesenswert?

Uff schrieb:
> So. Paar Fehler entfernt, Projekt erzeugt, Chip zugewiesen, kompiliert
> und annotiert.

ehm

Thomas Richter schrieb:
> Hallo Peter,
> ich nutze ein CPLD (EPM7032),

und nicht Cyclone IV :)

von Uff (Gast)


Lesenswert?

Thomas R. schrieb:
> Thomas Richter schrieb:
>> Hallo Peter,
>> ich nutze ein CPLD (EPM7032),
>
> und nicht Cyclone IV :)

...ob das gut geht? ;)

von skeleton (Gast)


Lesenswert?

Thomas R. schrieb
> - du hast irgendetwas falsch gemacht beim "projekt erstellen"

Hallo Thomas und Uff,

die bdf-Datei habe ich im übertriebenen Aktionismus erstellt, ohne dies 
im Rahmen eines Projektes zu machen. Das Projekt habe ich erst hinterher 
erstellt, also muss die Datei vorher kaputt gewesen sein. (Den Tipp mit 
dem Projekt bekam ich erst hier) Manche Verbindungen waren beim 
runterscrollen getrennt, das dachte ich wäre normal ;-(

Welcher Art Fehler lagen vor?
Kann in der qpf-Datei der Chip neu (EPM7032) zugewiesen werden?

Auf jeden Fall mal danke für die Mühe

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.