Projekt 7: Simulera tekniskt fel och dröjsmål i minnen kretsar (2 / 3 steg)
Steg 2: Skapa provbänken och simulera kretsen
Eftersom syftet med denna testbänk är att demonstrera glitch, istället för att simulera alla möjliga input övergångarna, kommer vi utforma en inmatningssekvensen som kan utlösa glitch i produktionen av kretsen. Genom att observera kretsen, finns det en obalanserad vägen mellan ingång B och utgång X (dvs, det finns två vägar att sprida ändringarna av B utdata med olika förseningar). Så händer glitch när A och C är konstant och B växlar. Här är beskrivningen vi skapa i Verilog provbänk första kvarteret:
1 heltal k = 0;
2
3 första börja
4 / / initiera ingångar
5 A = 0;
6 B = 0;
7 C = 0;
8
9 / / vänta 100 ns för globala reset till slut
10 / / Lägg till stimulans här
11
12 för (k = 0, k < 4, k = k + 1)
13 börjar
14 {a, C} = k;
15 #5 B = 1;
16 #5 B = 0;
17 #5.
18 slutet
19 slutet
Simulera bänken i Vivado Simulator, och du kommer få vågformen displayen, som visas i figur 2 ovan. Den röda cirkeln vågformen anger glitch. Så glitch som egentligen händer när A är 1, är C 1 och B växlar från 1 till 0. Glitch varar 1ns.