Hallo, ich habe mit die Web Edition von Quartus II installiert. Nun möchte ich ein kleines Beispiel VHDL Programm zum laufen bringen. Ich möchte das ganze nur simulieren. Harware besitze ich nicht. Wenn ich Start Compilation drücke erscheinen folgende Fehlermeldungen: Info: ******************************************************************* Info: Running Quartus II Analysis & Synthesis Info: Version 10.1 Build 197 01/19/2011 Service Pack 1 SJ Web Edition Info: Processing started: Fri Feb 18 16:51:07 2011 Info: Command: quartus_map --read_settings_files=on --write_settings_files=off Adder -c Adder Info: Found 2 design units, including 1 entities, in source file adder.vhd Info: Found design unit 1: test_add-rtl Info: Found entity 1: test_add Error: Top-level design entity "Adder" is undefined Error: Quartus II Analysis & Synthesis was unsuccessful. 1 error, 0 warnings Error: Peak virtual memory: 222 megabytes Error: Processing ended: Fri Feb 18 16:51:09 2011 Error: Elapsed time: 00:00:02 Error: Total CPU time (on all processors): 00:00:02 Error: Quartus II Full Compilation was unsuccessful. 3 errors, 0 warnings Wahrscheinlich liegt es auch daran, dass ich noch keine Pins zugewiesen habe. Wie mache ich dies mit Qurtus II ?
hi! also erstmal: was du willst ist simulation, da bist du bei synthese eigentlich ganz falsch erstmal (es gibt da zwar sowas wie post-synthese simulation, aber das ist eigentlich nicht was du willst). du brauchst auch keine pins, aber wenn du uns mal deinen code posten koenntest kann man dir weiterhelfen und das ganze zum simuliern bringen. ob und wie man mit quartus simuliert weiss ich nicht, ich benutz fast nur xilinxzeug, aber von altera gibts das ebenfalls kostenlose modelsim: http://www.altera.com/products/software/quartus-ii/modelsim/qts-modelsim-index.html das reicht fuer deine zwecke wahrscheinlich vollkommen. damit kannst du das dann simulieren.
Hi zachso, danke für deine Hilfe. Im Anhang befindet sich der VHDL-Code. Es handelt sich dabei um einen einfachen Zähler. Wie könnte man sowas mit Quartus II simulieren (Signalverläufe anschauen)? Ist dies überhaupt, mit Quartus II zu simulieren ?
He schrieb: > Error: Top-level design entity "Adder" is undefined Was hast du "Adder" genannt? Das Projekt? Die VHDL-Datei? Bei Quartus solltest du immer gleiche Namen für Projekt, top-level Datei usw. verwenden, das erspart dir n haufen Ärger! MFG Mixer
Sorry, habe falsche Datei angegeben. Im Anhang befindet sich die richtige Datei. Für eine reine Simulation reicht ModelSim von Altera Quartus II vollkommen aus ?
Dann nenn doch die entity "test_add" in "Adder" um und probiers nochmal! Übrigens schreibt man meistens die Namen in VHDL in GROSSBUCHSTABEN, obwohl das funktionell egal ist. MFG Mixer
Ok das habe nun gemacht und nochmals Start Compilation ausgeführt. Es erscheinen nur ein paar Warnungen. Wie kann ich jetzt mir nun die zeitlichen Signalverläufe anschauen ? Was müsste ich da noch konfigurieren ?
Ich hab mir nun mal ModelSim für Altera Quartus II heruntergeladen und installiert. Wenn ich ModelSim ausführem, erscheint eine Fehlermeldung. Irgendwas stimmt mit der Lizens nicht. Dies ist aber eine kostenlose Version.
Christoph S. schrieb: > Übrigens schreibt man meistens die Namen in VHDL in GROSSBUCHSTABEN, ...im Zeitalter von Syntaxhighlighting bei Editoren nicht mehr. GROSSSCHRIFT ist schlechter lesbar als z.B. GrossSchrift oder auch gross_schrift...
Ich habe nochmals Start Compilation ausgeführt. Es erscheinen nur ein paar Warnungen. Wie kann ich jetzt die zeitlichen Signalverläufe anschauen ? Was müsste ich da noch konfigurieren in Quartus II?
Wenn ich "Start SignalProbe Comoilation" starte erscheinen einige Fehlermeldungen: Error: Can't perform ECO Fit -- no Fitter ECOs to apply Error: Quartus II Fitter was unsuccessful. 1 error, 0 warnings Error: Peak virtual memory: 189 megabytes Error: Processing ended: Fri Feb 18 18:27:55 2011 Error: Elapsed time: 00:00:01 Error: Total CPU time (on all processors): 00:00:01 Error: Current flow ECO Fitting ended unexpectedly
Bei mir gibt es auch keine Möglichkeit ein Vector Waveform File zu erzeugen.Die Auswahl gibt es gar nicht.
Hallo He, ich hab diese Thread eben erstmals gesehen und von oben bis unten durchgelesen. Ich habe das Gefühl bekommen, Du liest die Antworten nicht richtig. Vergiss bitte Quartus. Für die Simulation benutzt man Quartus nicht. Hör auf zu kompilieren, schließe alle Fenster bis du den Desktop sehen kannst. Dann schau in die Taskleiste ob da noch ein Quartus rumliegt. Wenn ja, schließen. Bei Bedarf boote den Rechner neu. Und lass die Finger von Quartus. Das Programm deiner Wahl heißt "ModelSim-Altera Starter Edition". Kann sein, dass Du aus versehen "ModelSim-Altera" installiert hast. Wenn ja, dann weg damit und die Starter-Edition installiert. Und dann das Tutorial über ModelSim lesen, dann sollte die Richtung stimmen. Viel Erfolg, Harald
Harald Flügel schrieb: > Ich habe das Gefühl bekommen, Du liest die Antworten nicht richtig. Da bin ich mal gespannt, ob er deine Antwort liest... ;-) Mal von solchen kleinen Software-Hackeleien abgesehen ein paar Worte zum VHDL-Code... Das mit der Vektorbreite width ist hier maximal misslungen:
1 | generic ( width : integer := 17 ); -- Die landläufige Denkweise: Width = Breite = Anzahl Bits.... |
2 | port ( clk : in std_ulogic; |
3 | :
|
4 | inp1, inp2 : in std_logic_vector ( width downto 0); -- Pech, schon die Eingangsvektoren sind ein Bit breiter als witdh |
5 | sum : out std_logic_vector ( (width + 1) downto 0) ); -- und logischerweise der Ausgangsverktor gleich 2 Bits... |
6 | end test_add; |
7 | |
8 | architecture rtl of test_add is |
9 | |
10 | constant terminal_count : integer := 2**( sum'high + 1 ) - 1; -- hier hätte man auch mit width weiterrechnen können.... |
11 | subtype adder_range is integer range 0 to terminal_count; |
12 | signal sumx, inp1x, inp2x : adder_range; |
13 | |
14 | begin -- rtl |
15 | sum <= std_logic_vector( to_unsigned ( sumx, width + 2 )); -- und hier ist der Zielvektor 2 Bits breiter als width... |
Das Ganze hätte so abgekürzt werden können:
1 | library ieee; |
2 | use ieee.std_logic_1164.all; |
3 | use ieee.numeric_std.all; |
4 | |
5 | entity test_add is |
6 | generic ( width : integer := 18 ); |
7 | port ( clk : in std_ulogic; |
8 | reset : in std_ulogic; |
9 | enable : in std_ulogic; |
10 | inp1, inp2 : in std_logic_vector (width-1 downto 0); |
11 | sum : out std_logic_vector (width downto 0); |
12 | end test_add; |
13 | |
14 | architecture rtl of test_add is |
15 | begin
|
16 | process ( clk, reset ) |
17 | begin
|
18 | if reset = '0' then |
19 | sumx <= (others=>'0'); |
20 | elsif rising_edge (clk) then |
21 | if enable = '1' then |
22 | std_logic_vector(to_unsigned( to_integer(unsigned(inp1)) + to_integer(unsigned(inp2)), sum'length)); |
23 | end if; |
24 | end if; |
25 | end process adder; |
26 | end rtl; |
Danke erstmal für eure Unterstützung. Ich habe mir nun "ModelSim-Altera 6.6c (Quartus II 10.1) Starter Edition" heruntergeladen und folglich auch installiert. Das mit dem zeitlichen SIgnalverlauf anzeigen lassen funktioniert nicht. Was müsste ich da zuvor noch in ModelSim konfigurieren?
Lothar Miller schrieb: > Das Ganze hätte so abgekürzt werden können: nee, nich wirklich. Beim drueberschauen fallen mir sofort 3 Fehler auf :o) Ausserdem sehe ich: Du verwendest, entgegen deiner heiligsten Ueberzeugungen, sogar einen asynchronen Reset... Huiiiii :o) Nochwas an den TO: Du schreibst oben, du willst simulieren. Dazu brauchst du wie schon mehrfach erwaehnt einen VHDL Simulator. Das kann ModelSim sein, oder auch ISIM falls du Xilinx ISE verwendest, aber auch z.B. GHDL. Wenn du z.B. einen Debian/Ubuntu Rechner hast, dann einfach ueber die Paketverwaltung GHDL und GTKWAVE installiert, hier im Forum mal nach 'ghdl' gesucht, da findest du alles notwendige. Ausserdem brauchst du noch eine sog. Testbench (auch mal hier die SuFu benutzen).
Ich hab nun mal einen ganz einfachen addierer gebastelt. Der Code lässt sich auch ohne Fehler mit ModelSim übersetzen. Ich kann nur nicht den zeitlichen Verlauf darstellen.
du brauchst eine testbench, die findest du hier als beispiel: http://www.quicknet.se/hdc/hdl/ha_fa/index.htm die testbench integrierst du dann in dein modelsim-projekt und dann kanns los gehn
berndl schrieb: > nee, nich wirklich. Beim drueberschauen fallen mir sofort 3 Fehler auf > :o) Naja, schnell hingekritzelt eben. BTW: es sind 4 Fehler... ;-) > Ausserdem sehe ich: Du verwendest, entgegen deiner heiligsten > Ueberzeugungen, sogar einen asynchronen Reset... Huiiiii :o) Da wollte ich nicht schon zu Anfang zuviel Verwirrung stiften...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.