Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> VHDL

Einsteigerleitfaden zur Verwendung von Modelsim für die FPGA- und ASIC-Simulation

Tutorial – Verwendung von Modelsim für die Simulation, für Anfänger.

Modelsim ist ein von Mentor Graphics entwickeltes Programm zur Simulation Ihrer VHDL- und Verilog-Designs. Es ist das am weitesten verbreitete Simulationsprogramm in Wirtschaft und Bildung. Dieses Tutorial erklärt zunächst, warum Simulation wichtig ist, und zeigt dann, wie Sie Modelsim Student Edition kostenlos für Ihren persönlichen Gebrauch erwerben können.

Simulation ist ein entscheidender Schritt beim Entwurf von FPGAs und ASICs. Mithilfe der Simulation kann der Designer sein Design stimulieren und sehen, wie der von ihm geschriebene Code auf den Stimulus reagiert. Bei einer großartigen Simulation werden alle möglichen Zustände des Entwurfs geprüft, um sicherzustellen, dass alle Eingabeszenarien angemessen gehandhabt werden. Haben Sie irgendwo eine if-Anweisung vergessen? Haben Sie daran gedacht, alle möglichen Zuordnungen zu den Fallaussagen anzugeben? Dies sind die Arten von Fehlern, die sehr leicht passieren können, wenn Sie Ihr Design nicht simulieren. Fangen wir an.

Haben Sie Modelsim heruntergeladen und auf Ihrem Computer installiert? Holen Sie es sich hier. Führen Sie die Installation mit den Standardparametern durch. Beachten Sie, dass Sie eine Lizenz bei Mentor Graphics anfordern müssen . Am Ende der Installation müssen Sie „Fertig stellen“ auswählen und ein Browserfenster mit dem Lizenzanforderungsformular wird geöffnet. Das Klicken auf einen vorhandenen Link zur Lizenzanforderung in Ihrem Browser-Lesezeichen oder über einen im Internet veröffentlichten Link funktioniert nicht.

Der Code, den wir simulieren werden, ist das folgende VHDL-Design. Der eigentliche Code ist nicht wichtig. Wenn Sie also Verilog lernen, ist das in Ordnung! Für dieses Tutorial sind keine VHDL-Kenntnisse erforderlich. Der VHDL-Code erstellt ein einfaches Und-Gatter und stellt ihm über einen Prüfstand einige Eingaben bereit. Kopieren Sie den folgenden Code nach and_gate.vhd und die Testbench nach and_gate_tb.vhd.

and_gate.vhd:

library ieee;
use ieee.std_logic_1164.all;
entity and_gate is
 port (
 input_1 : in std_logic;
 input_2 : in std_logic;
 and_result : out std_logic
 );
end and_gate;
architecture rtl of and_gate is
 signal and_gate : std_logic;
begin
 and_gate <= input_1 and input_2;
 and_result <= and_gate;
end rtl;

and_gate_tb.vhd:

library ieee;
use ieee.std_logic_1164.all;
entity and_gate_tb is
end and_gate_tb;
architecture behave of and_gate_tb is
 signal r_SIG1 : std_logic := '0';
 signal r_SIG2 : std_logic := '0';
 signal w_RESULT : std_logic;
 
 component and_gate is
 port (
 input_1 : in std_logic;
 input_2 : in std_logic;
 and_result : out std_logic);
 end component and_gate;
 
begin
 
 and_gate_INST : and_gate
 port map (
 input_1 => r_SIG1,
 input_2 => r_SIG2,
 and_result => w_RESULT
 );
 process is
 begin
 r_SIG1 <= '0';
 r_SIG2 <= '0';
 wait for 10 ns;
 r_SIG1 <= '0';
 r_SIG2 <= '1';
 wait for 10 ns;
 r_SIG1 <= '1';
 r_SIG2 <= '0';
 wait for 10 ns;
 r_SIG1 <= '1';
 r_SIG2 <= '1';
 wait for 10 ns; 
 end process;
 
end behave;

Öffnen wir Modelsim. Sie werden mit einem Fenster begrüßt, das so aussieht

Modelsim-Hauptfenster

Um Ihre Simulation auszuführen, müssen Sie ein Projekt erstellen. Klicken Sie auf Datei -> Neu -> Projekt. Sie sehen das links dargestellte Fenster. Wählen Sie einen Standort für Ihr neues Projekt und geben Sie ihm den Namen and_gate. Projekte in Modelsim haben die Dateierweiterung .prj. Behalten Sie die Standardeinstellungen für die anderen Einstellungen bei. Dies besagt lediglich, dass der gesamte Code in die „Arbeit“ der Bibliothek kompiliert wird.

Klicken Sie auf „Vorhandene Datei hinzufügen“, wie im Bild rechts gezeigt. Navigieren Sie zu dem Speicherort, an dem Sie and_gate.vhd und and_gate_tb.vhd heruntergeladen haben, und fügen Sie beide Ihrem Projekt hinzu. Behalten Sie die Standardeinstellungen für andere Einstellungen bei. Klicken Sie auf OK, wenn Sie fertig sind.

Modelsim-Projektfenster – Zum Projekt hinzugefügte Dateien

Beachten Sie jetzt, dass die Dateien erfolgreich zu Ihrem Projekt hinzugefügt wurden. Sehen Sie diese beiden blauen Fragezeichen in der Abbildung des Modelsim-Projektfensters oben? Das bedeutet, dass Modelsim die Dateien noch nicht kompiliert hat. Sie müssen die Quelldateien kompilieren. Klicken Sie dazu mit der rechten Maustaste auf and_gate.vhd, klicken Sie auf „Kompilieren“ und dann auf „Alle kompilieren“. Im Konsolenfenster sollten grün erscheinende Meldungen angezeigt werden, die besagen, dass die Kompilierung erfolgreich war, wie im folgenden Screenshot dargestellt.

Ergebnisse einer erfolgreichen Kompilierung

Um Ihre Simulation zu starten, klicken Sie in der Menüleiste auf „Simulieren“ und dann auf „Simulation starten“. Dadurch wird das Fenster „Simulation starten“ geöffnet. Klicken Sie auf das Pluszeichen neben „Arbeit“ und dann auf das Pluszeichen neben „and_gate_tb“. Stellen Sie sicher, dass Sie and_gate_tb und nicht and_gate auswählen, da wir das Design auf Prüfstandsebene simulieren möchten. Sobald and_gate_tb markiert ist, klicken Sie auf OK.

Modelsim-Simulationsfenster – Simulation bereit

Fast geschafft! Die Simulation ist fertig und wartet auf Sie. Nun verbringen Sie die meiste Zeit, die Sie Modelsim verwenden, damit, sich die Wellenformansicht anzusehen. Die Wellenformansicht enthält Wellen (binäre Nullen und Einsen, Hexadezimalziffern, Binärziffern, Aufzählungstypen usw.) für alle Signale in Ihrem Design. Es zeigt, wie Ihr Modul auf verschiedene Reize reagiert. Die nächste Abbildung zeigt Ihnen, wie Ihre Wellenformansicht aussieht, aber zuerst müssen Sie einige Signale zur Überwachung hinzufügen. In diesem Beispiel überwachen wir alle Signale im Prüfstand. Klicken Sie dazu mit der rechten Maustaste auf and_gate_tb im Sim-Fenster und klicken Sie auf Wave hinzufügen . Sie können Signale auch aus anderen Fenstern in Modelsim anklicken und in das Wellenformfenster ziehen.

Hier ist Ihr Wellenformfenster. Alle Prüfstandssignale wurden als Signale hinzugefügt, die Sie überwachen können. Um die Simulation auszuführen, klicken Sie auf das Symbol mit einem kleinen Stück Papier und einem Abwärtspfeil neben der 100-ns-Zeit. Dadurch wird Ihre Simulation 100 Nanosekunden lang ausgeführt. Beobachten Sie, wie sich die Signale ändern! Glückwunsch! Sie haben Ihre erste Modelsim-Simulation erstellt!

Dieses Tutorial zeigte Ihnen, wie Sie Ihr eigenes Projekt in Modelsim erstellen, Dateien zu Ihrem Projekt hinzufügen, Ihre Quelldateien kompilieren, Ihre Simulation starten und Ihre Wellenformen anzeigen. Sie sind bereit, alle Beispiele auf dieser Webseite zu erkunden und die Simulationen selbst durchzuführen. Verwenden Sie zur Navigation die Seitenleiste oben auf der Seite.


VHDL

  1. So verzögern Sie die Zeit in VHDL:Wait For
  2. So verwenden Sie eine Prozedur in einem Prozess in VHDL
  3. So verwenden Sie eine unreine Funktion in VHDL
  4. So verwenden Sie bedingte Anweisungen in VHDL:If-Then-Elsif-Else
  5. FPGA-Kurs – Alles, was Sie über den Dot Matrix VHDL-Kurs wissen müssen
  6. Signiert vs. Unsigniert in VHDL
  7. So initialisieren Sie RAM aus einer Datei mit TEXTIO
  8. Wie sich ein Signal von einer Variable in VHDL unterscheidet
  9. So verwenden Sie eine Case-When-Anweisung in VHDL
  10. Lernprogramm - Einführung in VHDL