Piszemy moduł testbench i uruchamiamy symulację w środowisku ModelSim firmy Altera.

Niezbędny
- - komputer;
- - zainstalowane środowisko programistyczne Quartus II + ModelSim.
Instrukcje
Krok 1
Pierwszym krokiem jest upewnienie się, że ścieżka do narzędzia ModelSim jest określona w środowisku programistycznym Quartus II. Aby to zrobić, otwórz menu Narzędzia -> Opcje. W opcjach przejdź do Ogólne -> Opcje narzędzia EDA. Znajdujemy pole ModelSim-Altera i wpisujemy do niego C:\altera\13.0sp1\modelim_ase\win32aloem lub klikając na przycisk z trzema kropkami szukamy tego katalogu na naszym komputerze. Oczywiście dla wersji Quartusa innej niż moja, będziesz miał własną ścieżkę do katalogu „win32aloem”.

Krok 2
Masz projekt FPGA w Quartus II. Jak pisać testy, czyli testbenchy (testbench) – to temat na osobny artykuł. Na razie załóżmy, że Twój testbench został już napisany. Teraz musisz powiedzieć środowisku programistycznemu, którego testu chcesz użyć podczas symulacji. W tym celu otwórz ustawienia poprzez menu Zadania -> Ustawienia… W oknie, które się otworzy, w sekcji Ustawienia narzędzia EDA -> Symulacja kliknij przycisk Stanowiska testowe… Tutaj przy okazji możesz ustawić kilka testów i przejść do wymaganego podczas kompilacji projektu.

Krok 3
Otworzyło się okno do edycji testów. Nie stworzyliśmy jeszcze żadnych stanowisk testowych, więc lista jest pusta. Kliknij przycisk Nowy … W oknie, które się otworzy, musisz ustawić ustawienia testu.
Po lewej stronie pola kliknij przycisk z trzema kropkami. Wybierz plik z kodem testbench i kliknij Otwórz. Teraz kliknij przycisk Dodaj. Test pojawił się na liście testów.
Następnie w polu ustaw nazwę modułu najwyższego poziomu, który jest zdefiniowany w twoim testbench. W polu można wpisać dowolną nazwę, domyślnie zostanie ona automatycznie utworzona taka sama jak nazwa modułu.
To wszystko, ustawiliśmy podstawowe ustawienia testu. Kliknij dwukrotnie OK. Teraz nasz test pojawił się w rozwijanej liście stanowisk testowych. Ponownie kliknij OK.

Krok 4
Jeśli jeszcze nie zrobiłeś syntezy projektu, to czas to zrobić. Wybierz z menu Processing -> Start -> Start Analysis & Synthesis lub naciśnij kombinację klawiszy Ctrl + K lub po prostu kliknij odpowiednią ikonę w górnym panelu.

Krok 5
Symulację można rozpocząć. Wybierz z menu Narzędzia -> Uruchom Simulation Tool -> RTL Simulation lub kliknij ikonę RTL Simulation w górnym panelu (2).

Krok 6
Uruchomi się narzędzie ModelSim, które wykona wszystkie instrukcje zapisane w testbench i zatrzyma się (jeśli wyraźnie zaznaczyłeś to za pomocą dyrektywy $ stop w kodzie testu). Na ekranie zostaną wyświetlone wykresy poziomów sygnałów wejściowych i wyjściowych FPGA, które opisałeś w swoim projekcie.