Forum: FPGA, VHDL & Co. Erste Schritte mit dem Altera DE1 Board


von Robert S. (razer) Benutzerseite


Lesenswert?

Hallo an alle,

In letzter Zeit habe ich mich mit dem Thema VHDL beschäftigt. Nun möchte 
ich mit dem Altera DE1 Board in die FPGA Materie einsteigen.

Nun habe ich folgende einfache Entity:
1
library ieee;
2
use ieee.std_logic_1164.all;
3
4
entity LED is
5
  port(  LEDR : out std_logic_vector(3 downto 0);
6
         KEY : in std_logic_vector(3 downto 0));
7
end LED;
8
9
architecture BEHAVIOUR of LEDis
10
11
begin
12
  LEDR <= KEY;
13
end BEHAVIOUR;

Die Ein- und Ausgansports LEDR und KEY entsprechen den Pin-Definitionen 
aus der mitgelieferten Pin-Assignment Datei.

Nun habe ich ein erstes Projekt, für den verwendeten FPGA erstellt. Die 
Pin_Assignment Datei habe ich mit Assignments->Import Assignments 
eingebunden.

Beim vollständigen Compilieren des Projektes ergeben sich jedoch mehrere 
Warnings:
1
Warning: Feature LogicLock is only available with a valid subscription license. Please purchase a software subscription to gain full access to this feature.
2
Warning: Ignored I/O standard assignments to the following nodes
3
Warning: Found 4 output pins without output pin load capacitance assignment
4
Warning: Found invalid Fitter assignments. See the Ignored Assignments panel in the Fitter Compilation Report for more information.

Die erste Warung ist zu vernachlässigen. Die Einstellung der 
Ausgangskapazität weiß ich auch zu lösen: Assignments->Device->Device 
and Pin Options-> Tab Capacative Loading: Hier eine passende Kapazität 
eintragen. Welche Werte?? Gibts die im Datenblatt. Dieser Wert ist 
lediglich für eine genauere Timing-Analyse relevant, oder?

Was bedeuten die anderen Warnungen bzw. wie kann ich sie beseitigen?

Weiters bekomme ich noch eine kritische Warnung:
1
Critical Warning: No exact pin location assignment(s) for 8 pins of 8 total pins

Warum kommt es dazu? Ich habe doch eine passende Pin-Assignment Datei 
eingebunden.

Ich hoffe es kann mir als Anfänger jemand helfen und weitere Tipps 
geben.

Danke eim Voraus
lg Robert

von Lutius (Gast)


Lesenswert?

fehlt hier nicht ein Leerzeichen?
architecture BEHAVIOUR of LED * is

von Robert S. (razer) Benutzerseite


Lesenswert?

Lutius schrieb:
> fehlt hier nicht ein Leerzeichen?
> architecture BEHAVIOUR of LED * is

Ja fehlt hier. Enstand beim Kopieren....

von SeriousSam (Gast)


Lesenswert?

Ausser der critical warning kannst du alles ignorieren. Mehrere hundert 
Warnungen während der Kompilation sind normal, wenn du Hobbyprojekte 
kompilierst.
Du solltest also herausfinden wie du den Pins die richtige Location 
zuweisen kannst. Am besten machst du für Toplevel ein Schematic 
(Rechtsklick, Set as toplevel entity), fügst dort dein VHDL als Block 
(Rechtsklick, Create symbol file) ein und fügst Pins (Rechtsklick, 
Create pins for symbol ports) hinzu, die du so benennst wie es im Pin 
Assignment Fenster steht.

von MSTC (Gast)


Lesenswert?

Hallo,

ich frage mich, was du mit "pin-assignment" datei meinst. Etwa die Datei
mit der Endung "pin" ? Dies ist nur ein Report nach dem Place&Route von
Quartus II. Er wird bei jedem Lauf von Quartus neu erzeugt (wenn man
den Designflow nicht inkrementell betreibt)

Die Pins lassen sich über Tools -> Pinplanner vergeben. Hier wird dem
Signalnamen direkt die Pinnummer des FPGAs zugewiesen (100, ...) in 
Falle
eines FPGAs im BGA-Gehäuse die Location des Balls (A13,B20, ...).

Die Anschlüsse lassen sich aus den Beispielprojekten des DE-1 gewinnen 
oder
direkt aus der Schematic des Boards.

Abgespeichert werden diese Angaben im "*.qsf"-file. Dort wird man dann
solche Einträge finden :

set_location_assignment PIN_10 -to clk


Bei vielen Pins ist es einfacher, die qsf-datei mit einem Texteditor wie
Ultraedit zu editieren. Aber vorsicht, hier ist das gesamte Projekt zu
finden. Man sollte daher ohne Kenntis nichts weiter als die Pins ändern.

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.