Simulace chování obvodu
Nakreslené schéma čtyřbitové sčítačky nyní budeme simulovat – tzn. přiložíme na vstupy posloupnosti logických hodnot 0 a 1, budeme pozorovat výstupy a srovnáme výsledky se zadáním. K simulaci slouží testovací soubor tzv. testbench, který definuje testovací sadu pomocí jazyka pro popis hardware – v našem případě VHDL.
1. Příprava simulace
Pro simulaci schématu je nejprve třeba jej převést na VHDL soubor pomocí skriptu bd2vhd. Převod je totožný pro simulaci i syntézu (pokud jste soubor už převedli, pak tento krok vynechejte).
Varování:
Každý testbench je připraven na konkrétní testovaný obvod. Pokud zvolíte jiné jméno návrhu než to, které je uvedené v souboru s testbenchem, nebo nedodržíte jména vstupů a výstupů, pak testbench nebude fungovat.
2. Import testovacího souboru
2.1. Stáhněte si testovací soubor
Stáhněte si soubor l1_adder4_test.vhd – testbench na čtyřbitovou sčítačku.
2.2. Spusťte průvodce přidáním testovacího souboru do projektu
V levé části (Flow Navigator) v sekci Project Manager vyberte položku Add Sources.
2.2.1. Vyberte přidání zdrojového souboru pro simulaci
V otevřeném okně vyberte položku Add or create simulation sources a okno potvrďte.
2.2.2. Vyberte testovací soubor
Klikněte na Add Files a najděte stažený soubor l1_adder4_test.vhd. Pokud už není zaškrtnuta, vyberte volbu Copy sources into project, aby se vytvořila kopie souboru přímo v adresáři projektu. Okno potvrďte.
V části Sources → Simulation Sources by se soubor l1_adder4_test měl objevit na nejvyšší úrovni.
3. Spuštění simulace
Nyní můžete spustit simulaci – v levé části (Flow Navigator) v sekci Simulation vyberte Run Simulation a poté Run Behavioral Simulation.
4. Okno simulace
V okně simulace nyní můžete sledovat časové průběhy vstupních i výstupních portů vašeho návrhu.
Důležité:
Ve výchozím zobrazení vidíte jen posledních několik pikosekund simulace, ve kterých se už neděje nic zajímavého. Oddalte si tedy průběhy pomocí ikony
nebo ještě lépe zobrazte celý průběh pomocí
.
5. Kontrola správnosti návrhu
V souboru l1_adder4_test je pouze malý zlomek možných kombinací vstupních hodnot. V čase 200 ns jsou nastaveny vstupy A a B na hodnotu 1 a obvod na to zareagoval změnou výstupu S na hodnotu 2. Což odpovídá tomu, že sčítačka sčítala 1+1 a vrátila binárně 10, tj. dekadicky 2.
V čase 401 ns je navíc nastaven na hodnotu logické 1 i vstup CIN a obvod na to opět zareagoval změnou výstupu S na hodnotu 3. Což odpovídá tomu, že sčítačka sčítala 1+1+1 a vrátila binárně 11, tj. dekadicky 3.
Simulace k předmětu BI-SAP také vypisují hlášení do konzole Tcl Console. Výpis vždy obsahuje začátek simulace, počet chyb (nebo hlášku, že chyby nejsou kontrolovány automaticky) a konec simulace. Ve výjimečných případech se může objevit i zpráva, že simulace byla pozastavena a že je třeba ji dokončit.
Pokud jste s výsledkem simulace spokojeni, pak ji zavřete pomocí křížku v modrém pruhu nad oknem s průběhy. Vyhnete se tak problémům s neaktuálními simulacemi v případě, že byste ji později chtěli spustit znovu.
6. Import jiného testovacího souboru
Pokud by vás zajímal pokročilý test pro všechny možné kombinace, pak si můžete stáhnout soubor l1_adder4_full_test.vhd, naimportovat jej do projektu (stejným způsobem jako u prvního souboru), nastavit jako hlavní simulační testbench (viz následující obrázek) a spustit simulaci.
Testbench l1_adder4_full_test.vhd postupně vyzkouší všechny možné kombinace bez vstupního přenosu (2^(4+4+1) = 512) a poté všechny možné kombinace se vstupním přenosem. Upravte si přiblížení simulace pomocí
,
a
tak, abyste viděli jednotlivé změny.







