Simulimi i softuerit RENESAS ForgeFPGA

Simulimi i softuerit RENESAS ForgeFPGA

Informacion i rëndësishëm

Simulimi është një teknikë e aplikimit të stimulimeve të ndryshme hyrëse në dizajn në kohë të ndryshme për të kontrolluar nëse kodi RTL sillet në mënyrën e synuar. Përdoret për të verifikuar qëndrueshmërinë e dizajnit. Simulimi i lejon përdoruesit të view Diagrami i kohës së sinjaleve të lidhura për të kuptuar se si përshkrimi i projektimit në dizajn file sillet.

Tabelat e testimit janë pjesë kodi që përdoren për simulim. Një panel i thjeshtë testimi do të instantojë Unit Under Test (UUT) dhe do të drejtojë hyrjen. Softueri Go Configure përdor Icarus Verilog (iVerilog) dhe GTKWave për të vëzhguar format e valëve të simulimit me stimulin e dhënë në panelin e testimit.

Ky dokument përshkruan hapat që duhet të ndërmerren gjatë instalimit të Icarus në sistemin tuaj dhe si të ekzekutoni një simulim të suksesshëm.

Instalimi i Icarus Verilog

a. Instaloni versionin më të fundit të Icarus Verilog (IVerilog) nga https://bleyer.org/icarus/
b. Sigurohuni që të shtoni IVerilog në PATH dhe ta lini të instalojë GTKWave (Shih Figurën 1)
Instalimi i Icarus Verilog

c. Hapni softuerin Go Configure dhe zgjidhni pjesën: SLG47910 (Rev BB) për të hapur Forge Workshop (shih Figurën 2).
Instalimi i Icarus Verilog

d. Klikoni në Redaktuesin FPGA në mes të shiritit të veglave në krye ose përdoruesi gjithashtu mund të klikojë dy herë në strukturën Bërthamë FPGA në mes të dritares.
Instalimi i Icarus Verilog

e. Hapet një dritare e re e quajtur Forge Workshop. Në shiritin e veglave të menusë në krye, klikoni në Opsionet → Cilësimet. Në kutinë e dialogut Cilësimet, shkoni te Veglat nën skedën Cilësimet e përdoruesit. Hiq përzgjedhjen e "Përdor kutinë e mjedisit të sistemit" si për Icarus Verilog ashtu edhe për GTKWave. Shtoni shtegun te Iverilog dhe GTKWave të ruajtura në sistemin tuaj në hapësirën e dhënë (shih Figurën 4).
Instalimi i Icarus Verilog

Jeni gati të simuloni një panel testimi dhe hapat e mësipërm sigurojnë që GTKWave të lansohet automatikisht kur simulon një panel testimi në softuerin Go Configure.

Stol provë

Hapi më i rëndësishëm në zbatimin e suksesshëm të çdo sistemi është verifikimi i dizajnit dhe funksionalitetit të tij. Verifikimi i një sistemi kompleks pas implementimit të harduerit nuk është një zgjedhje e mençur. Është i paefektshëm për sa i përket parave, kohës dhe burimeve. Prandaj, në rastin e FPGA, një grup testimi përdoret për të testuar kodin burimor Verilog.

Supozoni se kemi një hyrje prej 11 bitësh dhe duam të testojmë pajisjen për të gjitha vlerat e mundshme të kombinimit të hyrjes, p.sh. (211). Duke qenë se ky është një numër shumë i madh kombinimesh, është e pamundur të testohet me dorë. Në raste të tilla, tavolinat e provës janë shumë të dobishme pasi mund ta testoni dizajnin automatikisht për të gjitha vlerat e mundshme dhe kështu të konfirmoni besueshmërinë e modelit të provës. Verilog Testbenches përdoren për të simuluar dhe analizuar dizajne pa pasur nevojë për ndonjë pajisje fizike harduerike.

Një dizajn në provë, i shkurtuar si DUT, është një modul i sintetizueshëm i funksionalitetit që duam të testojmë. Me fjalë të tjera, është dizajni i qarkut që ne do të donim të testonim. Ne mund ta përshkruajmë DUT-në tonë duke përdorur një nga tre stilet e modelimit në Verilog - Gate-level, Dataflow ose Behavioral.

Një panel testimi nuk është i sintetizueshëm, prandaj përdoret vetëm për qëllime simulimi. Kjo i lejon përdoruesit të përdorë një gamë të plotë konstruksionesh Verilog, p.sh., fjalë kyçe të tilla si "for", "$display" dhe "$monitor" etj. për të shkruar grupe testimi. Një tavolinë e thjeshtë testimi do të instantojë njësinë nën testim (UUT) ose pajisjen nën test (DUT) dhe do të nxisë hyrjet.

Kuptimi i një paneli testimi

Kuptimi i një paneli testimi

Përkufizimi i afatit kohor në Testbench

Kur simulon, softueri duhet të dijë se si është përcaktuar koha. Njësia e vonesës specifikohet duke përdorur 'direktivën e shkallës kohore, e cila specifikon njësinë e kohës dhe saktësinë për modulet që e ndjekin atë. Shkalla kohore ndihmon në përcaktimin se çfarë do të thotë #1 për sa i përket kohës. # përdoret për të përcaktuar vonesën që do të futet në sistem në përputhje me njësinë kohore të specifikuar në shkallën kohore. Pra, #1 do të thotë 1 ns vonesë nëse njësia_kohore është në ns.

Sintaksa:
`shkalla kohore / /

Njësia_kohë është sasia e kohës që përfaqëson një vonesë prej #1. Baza time_precision përfaqëson sa pika dhjetore të saktësisë duhet përdorur në raport me njësitë e kohës. (Shih rreshtin 23 në Figurën 5)

Ne mund të përdorim konstruktet e shkallës kohore për të përdorur njësi të ndryshme kohore në të njëjtin dizajn. Përdoruesi duhet të kujtojë se specifikimet e vonesës nuk janë të sintetizueshme dhe nuk mund të konvertohen në logjikë harduerike. Funksionet e vonesës janë tërësisht për qëllime simulimi. $koha dhe $në kohë reale funksionet e sistemit kthejnë kohën aktuale dhe formati i paracaktuar i raportimit mund të ndryshohet me një detyrë tjetër të sistemit $timeformat .

Exampe: 

`shkalla kohore 10 us/100 ns
`shkalla kohore 1ns/1ps
#10 rivendosja = 1; // vonon sinjalin me 10 ns
#0.49 $shfaqje( "T = %0t në Kohën #0.49", $në kohë reale) ;

Vonesa e specifikuar është #0.49 që është më pak se gjysma e njësisë së kohës. Megjithatë, saktësia e kohës është specifikuar të jetë 1 ps dhe për këtë arsye simulatori nuk mund të shkojë më i vogël se 1 ns, gjë që e bën atë të rrumbullakos deklaratën e dhënë të vonesës dhe të japë 0 ns. Pra, kjo deklaratë nuk jep ndonjë vonesë.

Regjistri i simulimit: 

T = 1 në kohën #0.49

Deklarata e modulit

Deklarimi i modulit në çdo grup testimi është ndryshe nga kodi kryesor Verilog. Në një panel testimi, moduli deklarohet pa asnjë portë terminali së bashku me të. (Shih rreshtin 25 në Figurën 5)

Sintaksa: 

modul ;

Deklarata e modulit pasohet nga përcaktimi i sinjaleve hyrëse dhe dalëse të përcaktuara më herët në dizajnin kryesor file.
Ne përdorim dy lloje sinjalesh për drejtimin dhe monitorimin e sinjaleve gjatë simulimit. Lloji i të dhënave reg do ta mbajë vlerën derisa t'i caktohet një vlerë e re. Këtij lloji të dhënash mund t'i caktohet një vlerë vetëm në bllokun gjithmonë ose fillestar.
Lloji i të dhënave të telit është si ai i një lidhjeje fizike. Ai do të mbajë vlerën që drejtohet nga një port, deklaratë caktimi ose reg. Ky lloj i të dhënave nuk mund të përdoret në bllok fillestar ose gjithmonë. Çdo parametër dhe deklarim i numrave të plotë bëhen gjithashtu në këtë seksion.

Exampe:
Reg a,b; // hyrja në kodin HDL përcaktohet si reg në testbench
Teli y; // Sinjali i daljes në HDL përcaktohet si tel në panelin e testimit

Instantacioni DUT

Qëllimi i një paneli testimi është të verifikojë nëse moduli ynë DUT po funksionon. Prandaj, ne duhet të instantojmë modulin tonë të projektimit në modulin e testimit.

Sintaksa: 

(. (sinjali 1), . sinjal1>(sinjal2));

Exampe:

ALU d0 (.a(a), // sinjali "a" në ALU duhet të lidhet me "a" në modulin ALU_tb
.b(b), // sinjali "b" në ALU duhet të lidhet me "b" në modulin ALU_tb
.c(c)) ;// sinjali "c" në ALU duhet të lidhet me "c" në modulin ALU_tb

Ne kemi instancuar modulin DUT ALU në modulin e testimit. Emri i shembullit (d0) është zgjedhja e përdoruesit. Sinjalet me një pikë "." përballë tyre janë emrat e sinjaleve brenda modulit ALU, ndërsa teli ose reg me të cilin lidhen në bankën e provës është pranë sinjalit në kllapa (). Rekomandohet të kodoni çdo lidhje porti në një rresht të veçantë, në mënyrë që çdo mesazh gabimi i përpilimit të tregojë saktë numrin e linjës ku ka ndodhur gabimi. Për shkak se këto lidhje bëhen me emër, radha në të cilën ato shfaqen është e parëndësishme.

Instantimi i DUT mund të bëhet edhe për modulet ku moduli testbench ka emra të ndryshëm sinjalesh. Harta e saktë e sinjaleve është ajo që është e rëndësishme gjatë instancimit.

Example: 

ALU d0 (.a(A), // sinjali "a" në ALU duhet të lidhet me "A" në modulin ALU_tb
.clk(clock), // sinjali "clk" në ALU duhet të lidhet me modulin "clock" ALU_tb
.jashtë(JASHTË)); // sinjali "out" në ALU duhet të lidhet me "OUT" në modulin ALU_tb

Blloku gjithmonë dhe fillestar në një panel testimi

Ekzistojnë dy blloqe të njëpasnjëshme në Verilog, fillestar dhe gjithmonë. Pikërisht në këto blloqe ne aplikojmë stimulin.

Blloku fillestar

Blloku fillestar i cili ekzekutohet vetëm një herë dhe përfundon kur ekzekutohet rreshti i fundit i bllokut. Stimuli shkruhet në bllokun fillestar. (Shih rreshtin 54-72 në Figurën 5)

Sintaksë:
..
fillimi fillestar
$dempfile();
$dumpvars();
..(fut stimul)
fund

blloku fillestar fillon ekzekutimin e tij në fillimin e simulimit në kohën t = 0. Duke filluar me rreshtin e parë midis fillimit dhe fundit, çdo rresht ekzekutohet nga lart poshtë derisa të arrihet një vonesë. Kur të arrihet vonesa, ekzekutimi i këtij blloku pret derisa koha e vonesës (njësi 10-kohore) të kalojë dhe më pas rifillon ekzekutimin.
Përdoruesi mund të përcaktojë stimujt duke përdorur sythe (for, while, if-else) si dhe brenda këtij blloku fillestar në vend që të futë manualisht të gjitha kombinimet.
Blloku fillestar

 

Example:
Fillimi fillestar
A = 0; b = 0; // fillimi i ekzekutimit
#10 a = 0; b = 1; // ekzekutimi është në t = 10-njësi kohë
#10 a = 1; b = 0; // ekzekutimi është në t = 20-njësi kohë
fund

Deponia Files

Një tjetër gjë që duhet mbajtur parasysh është deklarimi i $halefiles dhe $dumpvars brenda bllokut fillestar (shih rreshtin 55-56 në figurën 5). $halefile përdoret për të hedhur ndryshimet në vlerat e rrjetave dhe regjistrave në a file që emërtohet si argument i saj.

Për shembullampe:

$halefile(“alu_tb.vcd”);

do të hedhin ndryshimet në a file me emrin alu_tb.vcd. Ndryshimet regjistrohen në a file i quajtur VCD file që qëndron për ndryshimin e vlerës hale. Një VCD (value change dump) ruan të gjithë informacionin rreth ndryshimeve të vlerës. Nuk mund të kemi më shumë se një $dumpfile deklarata në simulimin e Verilog.

$dumpvars përdoret për të specifikuar se cilat variabla do të hidhen (në file përmendur nga $dumpfile). Mënyra më e thjeshtë për ta përdorur është pa asnjë argument. Sintaksa e përgjithshme e $dumpvars është

$dumpvars ( <, >);

Ne në thelb mund të specifikojmë se cilat module dhe cilat variabla në module do të hidhen. Mënyra më e thjeshtë për ta përdorur këtë është vendosja e nivelit në 0 dhe emri i modulit si moduli i lartë (zakonisht moduli më i lartë i testit).

$dumpvars(0, alu_tb);

Kur niveli vendoset në 0 dhe specifikohet vetëm emri i modulit, ai hedh TË GJITHA variablat e atij moduli dhe të gjitha variablat në TË GJITHA modulet e nivelit më të ulët të instancuar nga ky modul kryesor. Nëse ndonjë modul nuk është instancuar nga ky modul kryesor, atëherë ndryshorja e tij nuk do të mbulohet. Edhe një gjë, deklarimi i $halefile duhet të vijë përpara $dumpvars ose çdo detyrë tjetër të sistemit që specifikon dump. Këto hale files duhet të deklarohen përpara inputeve të stimulit tjetër, asnjë vlerë nuk do të ruhet në këto hale files.

Blloko gjithmonë

Ndryshe nga deklaratat fillestare, një bllok gjithmonë ekzekutohet në mënyrë të përsëritur, megjithëse ekzekutimi fillon në kohën t = 0. Për shembullampMegjithatë, sinjali i orës është thelbësor për funksionimin e qarqeve sekuenciale si Flip-flops. Duhet të furnizohet vazhdimisht. Prandaj, ne mund të shkruajmë kodin për funksionimin e orës në një panel testimi si (shih rreshtin 52 në Figurën 5):

gjithmonë
#10 clk = ~kliko;
modul fundor

Deklarata e mësipërme ekzekutohet pas 10 ns duke filluar nga t = 0. Vlera e clk do të përmbyset pas 10 ns nga vlera e mëparshme. Kështu, gjenerohet një sinjal i orës me gjerësi pulsi 20 ns. Prandaj, kjo deklaratë gjeneron një sinjal me frekuencë 50 MHz. Është e rëndësishme të theksohet se, inicializimi i sinjalit bëhet para bllokut gjithmonë. Nëse nuk e bëjmë pjesën e inicializimit, sinjali clk do të jetë x nga t – 0, dhe pas 10 ns, do të përmbyset në një x tjetër.

Tabela e provës vetëkontrolluese

Një panel testimi vetëkontrollues përfshin një deklaratë për të kontrolluar gjendjen aktuale.

  • $shfaqja detyrat e sistemit përdoren kryesisht për të shfaqur mesazhet e korrigjimit për të gjurmuar rrjedhën e simulimit

fillimi fillestar
A = 0; b = 0; c = 0; #10; // aplikoni hyrjen, prisni
nëse ( y ! == 1) fillojnë
$display( "000 dështuan"); //kontrolloni
c = 1; #10; //aplikoni hyrjen, prisni
fund
ndryshe nëse ( y ! == 0) fillojnë
$display ("001 dështoi") // kontrolloni
b = 1; c = 0; #10; fund
ndryshe nëse (y!==0)
$display (" 010 dështoi"); //kontrolloni
fund
modul fundor

$shfaqja përdoret për të shfaqur vlerat e variablave, vargjeve ose shprehjeve. Nga shembulli i mësipërmample, sa herë që ndonjë prej ciklit if-else është i kënaqur, atëherë regjistri i simulatorit do të shfaqë $ e tij përkatësshfaqja deklaratë. Ekziston një linjë e re si parazgjedhje në fund të vargjeve.

$shfaqja (“koha = %t , A = %b, B = %b, C = % b”, $koha, A, B, C);

Personazhet e përmendur në thonjëza do të printohen ashtu siç janë. Shkronja së bashku me % tregon formatin e vargut. Ne përdorim %b për të paraqitur të dhëna binare. Ne mund të përdorim %d, %h, %o për të paraqitur përkatësisht dhjetore, heksadecimal dhe oktal. %g përdoret për të shprehur numrat realë. Këto do të zëvendësohen me vlerat jashtë kuotës në rendin e përmendur. Për shembullample, deklarata e mësipërme do të shfaqet në regjistrin e simulimit si: koha = 20, A = 0, B = 1, C = 0

Tabela 1. Formatet e tabelave Verilog

Argumenti Përshkrimi
%h, %H Shfaq në format heksadecimal
%d, %D Shfaq në formë dhjetore
%b, %B Shfaq në format binar
%m, %M Shfaq emrin hierarkik
%s, %S Shfaq si varg
%t, %T Shfaq në formatin e kohës
%f, %F Shfaqni 'real' në format dhjetor
%e, %E Shfaqni 'reale' në një format eksponencial

$shfaqja kryesisht printon të dhënat ose variablin siç është në atë moment të asaj kohe si printf në C. Duhet të përmendim $shfaqja për çfarëdo teksti që duhet view në regjistrin e simulimit.

  • $koha

$koha është një detyrë e sistemit që do të kthejë kohën aktuale të simulimit.

  • $monitoruar

$monitoruar do të monitorojë të dhënat ose variablin për të cilin është shkruar dhe sa herë që ndryshon ndryshorja, ai do të printojë
vlerën e ndryshuar. Ai arrin një efekt të ngjashëm të thirrjes së $display pas çdo herë që merr ndonjë nga argumentet e tij
përditësuar. $monitoruar është si një detyrë që krijohet për të ekzekutuar në sfondin e fillit kryesor që monitoron dhe
shfaq ndryshimet e vlerës së variablave të tij të argumentit. $monitoruar ka të njëjtën sintaksë si $shfaqja.

$monitoruar(“ koha = %t, A = %b, B = %b, C = % b”, $koha, A, B, C);
Tabela e provës vetëkontrolluese

Nga Figura 7 mund të vëreni se linja të reja kodesh janë shtuar për të vetëvlerësuar panelin e testimit. Vendosja e $shfaqja dhe $monitoruar deklaratat në seksione të ndryshme të panelit të testimit do të japin rezultate të ndryshme (shih Figurën 8). $koha përmendur në këto deklarata printon kohën në të cilën është shtypur vlera. Në të njëjtën kohë njësia të themi 170000, ne mund të shohim se si ka një ndryshim në vlerën për A dhe B për shkak të $shfaqja dhe $monitoruar deklaratat.
Tabela e provës vetëkontrolluese

Softueri GTKWave

GTKWave është një valë GTK+ e plotësuar viewer për Unix, Win32 dhe Mac OSX që lexon LXT, LXT2, VZT, FST dhe GHW files si dhe VCD/EVCD standarde files dhe lejon tyre viewing. Zyrtar i saj webfaqja është në http://gtkwave.sourceforge.net/ . GTKWave rekomandohet viewer nga mjeti simulues Icarus Verilog.

Pasi përdoruesi të krijohet me sukses një panel testimi për të testuar funksionalitetin e dizajnit, përdoruesi tani mund të përdorë softuerin GTKWave për të view format valore.

Për të nisur softuerin GTKWave në view në format e valës, përdoruesi duhet të klikojë në butonin Simulate Testbench në krye të shiritit të veglave ose nga menyja kryesore Tools→ Simulation→ Simulate Testbench. Nëse nuk ka gabime sintaksore, atëherë në varësi të dizajnit, GTKWave duhet të lansohet automatikisht ose rezultatet e stimujve në testbench do të shfaqen në seksionin Logger të dritares.

Softueri GTKWave hap skedarin e formatit .vcdfile automatikisht. Dritarja GTKWave nuk shfaq formën e valës kur hapet. Kjo i jep përdoruesit një mundësi për të zgjedhur se cilat sinjale dëshiron view dhe vëzhgoni. Për të zgjedhur sinjalin, përdoruesi duhet të shfaqë, përdoruesi duhet të klikojë në emrin e modulit / shembullit të tij në anën e majtë të dritares nën skedën SST. Duke klikuar + të çdo shembulli, mund të shihni sinjalet që lidhen me atë shembull në pjesën e poshtme. Më pas mund të tërhiqni dhe lëshoni sinjalin e dëshiruar ose t'i klikoni dy herë për t'u shfaqur në dritaren "Signals". Ju gjithashtu mund të zgjidhni të gjitha (CTRL + A) dhe t'i futni ato në dritaren e sinjaleve (shih Figurën 9).
Softueri GTKWave

Sinjalet janë shtuar tani në dritaren e sinjalit, por ende nuk është simuluar. Pasi të keni shtuar sinjalet e dëshiruara në dritaren e sinjalit, klikoni mbiSimboli për të përshtatur sinjalet në gjerësinë aktuale të dritares dhe më pas ringarkoni sinjalet nga ringarkimiSimboli simbol i pranishëm në shiritin e veglave. Tani mund t'i shihni sinjalet me vlerat e tyre përkatëse.

Vlerat e sinjalit

Si parazgjedhje, vlerat e sinjaleve janë në format heksadecimal dhe të gjitha valët janë me ngjyrë të gjelbër (nëse funksionojnë siç duhet).

Përdoruesi mund të ndryshojë vetitë e këtyre sinjaleve duke klikuar me të djathtën mbi sinjalin dhe duke zgjedhur Formatin e të Dhënave ose Formatin e Ngjyrave. Përdoruesi mund të fusë gjithashtu një sinjal bosh për të bërë seksione midis grupit të sinjaleve. Kur të keni rezultatin e dëshiruar optik, mund t'i ruani konfigurimet tuaja duke shkuar File → Shkruani Ruaj File.

Shiriti i veglave GTKWave

Shiriti i veglave (shih Figurën 10) lejon përdoruesin të kryejë funksionet bazë për sinjalin. Le të diskutojmë çdo opsion në shiritin e veglave nga e majta në të djathtë.
Shiriti i veglave GTKWave

  1. Opsionet e menysë: Sipas këtij opsioni ne mundemi view të gjitha veçoritë e ndryshme të softuerit që mund të përdoren për të luajtur me softuerin. Detajet nën këtë opsion të menysë mbulohen në seksionin 8 të këtij udhëzuesi të përdorimit.
  2. Gjurmët e prera: Përdoret për të fshirë/prerë sinjalin e përzgjedhjes nga dritarja e sinjalit
  3. Kopjoni gjurmët: Përdoret për të kopjuar sinjalin e zgjedhur nga dritarja e sinjalit
  4. Ngjit Gjurmët: Gjurma e kopjuar/prerë mund të ngjitet në një vend tjetër në dritaren e sinjalit
  5. Zoom Fit: Përdoret për të përshtatur sinjalet sipas madhësisë së dritares që përdoruesi zgjedh të shfaqë
  6. Zmadhoni: Përdoret për të zmadhuar dritaren e sinjalit
  7. Zmadhoni: Përdoret për të zmadhuar dritaren e sinjalit
  8. Zhbërje zmadhimi: përdoret për të zhbërë zmadhimin/zvogëlimin në dritaren e sinjalit
  9. Zmadhoni për të filluar: kjo do të zmadhojë dritaren e sinjalit, duke shfaqur kohën e fillimit të sinjaleve.
  10. Zmadhoni deri në fund: kjo do të zmadhojë dritaren e sinjalit duke shfaqur kohën e përfundimit të sinjaleve
  11. Gjeni skajin e mëparshëm: Kjo e zhvendos shënuesin në anën e majtë duke treguar skajin e mëparshëm
  12. Gjeni skajin tjetër: Kjo e zhvendos shënuesin në të djathtë duke treguar skajin tjetër
  13. Lëvizni lidhjen e poshtme/sipërme: duke përdorur këtë ne mund të vendosim kornizën kohore në të cilën përdoruesi dëshiron të shfaqë. Për shembullampLe, ne mund të vendosim kornizën kohore në 0 sec deri në 500 ns, ajo do të shfaqë sinjalet vetëm nën atë kohëzgjatje.
  14. Ringarkoj: Ringarkimi shtypet sa herë që ka një ndryshim në sinjalin e shfaqur. Do të ringarkojë dhe do të shfaqë sinjalin sipas parametrave të rinj. Për shembullample, pas ndryshimit të kornizës kohore të sinjalit, duhet të ringarkojmë sinjalin për të shfaqur sinjalin në kornizën e re kohore të caktuar.

Opsionet e menysë

Nga këndi i sipërm i majtë i softuerit GTKWave, përdoruesi mund të hyjë në opsionet e menysë duke klikuar tre linjat vertikale (shih Figurën 11). Përdoruesi mund të gjejë opsionet e mëposhtme nën opsionet e menysë:
Opsionet e menysë

File

Të File nënmenyja përmban artikuj të ndryshëm që lidhen me aksesin files, VCD import-eksportuese files, printimi dhe leximi/shkrimi files dhe në dalje.

Redakto

Nënmenyja Edit përdoret për të kryer funksione të ndryshme të shërbimeve të tilla si ndryshimi i paraqitjes së të dhënave të vlerave në nëndritaren e valëve. Duke përdorur opsionet në nënmenynë Edit, përdoruesi mund të ndryshojë formatin e të dhënave të sinjaleve, t'i riorganizojë ato, t'i zhvendosë, t'i shkurtojë, ta nxjerrë në pah, të grupojë sinjalet, të komentojë sinjalet, të ndryshojë ngjyrën e sinjaleve, etj.

Kërko

Nënmenyja Search përdoret për të kryer kërkime në emrat dhe vlerat e rrjetit. Ndihmon për të kryer funksione në nivele të ndryshme hierarkie të sinjaleve dhe instancave në VCD file.

Koha

Nënmenyja e kohës përmban një superbashkësi të funksioneve të kryera nga butonat Navigations dhe Status Panel.
Ai mundëson funksione të thjeshta, të lidhura me kohën, si zmadhimi, lëvizja në një pikë të caktuar kohore, zhvendosja e sinjalit në një drejtim të caktuar, etj.

Shënues

Nënmenyja e shënuesit përdoret për të kryer manipulime të ndryshme në shënues, si dhe për të kontrolluar lëvizjen jashtë ekranit.
Ai mundëson funksionalitetin e shtimit të shënuesve të shumtë në dritaren e sinjalit. Lejohen maksimumi 26 shënues emrash dhe oraret për të gjithë duhet të jenë të ndryshme.

a. Për të shtuar Shënues në dritaren e sinjalit
Klikoni majtas në pikën e kërkuar ku dëshironi të vendoset Shënuesi dhe shtypni ALT + N. Kjo do të vendosë një shënues të emërtuar (A,B,C, etj.) në pikën e kërkuar. Përdoruesi mund të vazhdojë ta bëjë këtë për 26 vende të ndryshme kohore.
Për të krahasuar vlerën e kohës në të gjithë shënuesit e vendeve, Menuja → Shenjat → Shfaqi Ndrysho të dhënat e shënuesit.
Kjo do të hapë një dritare me vlerën e kohës në çdo Shënues. Përdoruesi mund të shënojë manualisht vlerën e kohës në çdo shënues të vendosur dhe t'i zbresë ato për të llogaritur diferencën kohore midis 2 shënuesve.
b. Për të hequr Shënuesin në dritaren e sinjalit

Përdoruesi mund të shkojë te Menyja → Shënuesit → Mblidh shënuesin me emër. Kjo do të heqë Shënuesin e mbiemrit të vendosur në dritaren e sinjalit. Përdoruesi mund t'i heqë të gjithë shënuesit e emërtuar duke shkuar te Menuja → Shënuesit → Mblidhni të gjithë shënuesit me emër (Figura 12).
Opsionet e menysë

Në figurën 13, ne mund të shohim se si janë ndryshuar ngjyrat e sinjalit. Ju mund të vëzhgoni një sinjal bosh të shtuar në dritaren e sinjalit gjithashtu me një koment - Sinjali bosh.
Vini re gjithashtu praninë e 6 Markuesve të Emërtuar (A – E) dhe llogaritjen e vlerës së kohës ndërmjet këtyre Shënuesve në ps.
Opsionet e menysë

View

Të View nënmenyja përdoret për të kontrolluar atribute të ndryshme që kanë të bëjnë me paraqitjen grafike të artikujve të statusit si dhe me vlerat në nëndritaren e sinjalit. Nga kjo meny, ju mund të konvertoni dritaren e sinjalit në Bardh e Zi ose me ngjyrë gjithashtu. Të View nënmenyja ju mundëson gjithashtu të ndryshoni Dimensionin e kohës duke filluar nga sekonda (seks) në fikosekonda (fs). Përdoruesi mund ta gjejë këtë opsion View → Dimensioni i shkallës në kohë → fs.

Ndihmë

Nënmenyja e ndihmës përmban opsione për aktivizimin e ndihmës në linjë, si dhe shfaqjen e informacionit të versionit të programit.

konkluzioni

Ky dokument u krijua për të ndihmuar përdoruesin të simulojë me sukses dizajnin e tyre dhe të verifikojë funksionalitetin duke korrigjuar hartimin e panelit të nevojshëm të testit dhe duke përdorur Icarus Verilog së bashku me GTKWave për të shfaqur format e valëve dhe për të vëzhguar rezultatet.

Historia e rishikimit

Rishikim Data Përshkrimi
1.00 20 maj 2024 Lëshimi fillestar.

R19US0011EU0100 Rev.1.0
20 maj 2024
© 2024 Renesas Electronics
Logo

Dokumentet / Burimet

Simulimi i softuerit RENESAS ForgeFPGA [pdfUdhëzuesi i përdoruesit
REN_r19us0011eu0100, Simulimi i softuerit ForgeFPGA, Softueri ForgeFPGA, ForgeFPGA, Simulimi ForgeFPGA, Simulimi i softuerit, Simulimi, softueri

Referencat

Lini një koment

Adresa juaj e emailit nuk do të publikohet. Fushat e kërkuara janë shënuar *