Hvordan lage Modelsim dumpe dataene umiddelbart?

M

machael

Guest
Hei, folkens!
Jeg bruker Modelsim å kjøre en sdf timing simulering.I testbench, gjør jeg flere viktige signaler å sende ut verdiene i noen tekstfiler ved hjelp av $ fdisplay systemet oppgave funksjon.Så jeg kan sammenligne utdatafilen med en "ideell output"-fil laget av Matlab simulering til å vurdere om designen er riktig.Fordi simulatoren er temmelig treg, vil jeg først kjøre simulering for flere mikrosekunder og bryte den, og sammenligne resultatene først, dersom produksjonen har ble feil, jeg trenger ikke å fortsette og vil slutte å finne feil i mitt design.Dersom produksjonen er riktig, kan jeg gjenoppta simulering for lengre tid.

Nå er jeg møter et problem: Modelsim ikke output resultatet av signalet umiddelbart, ellers holde det data i minnet.Inntil dataene er "nok" eller simuleringen er stoppet, simulatoren vil ikke dumpe det i tekstfiler.Så jeg fant Jeg kan ikke forhåndsvise simuleringen rusult akkurat som jeg ønsker, er det virkelig plager meg.Kan noen fortelle meg hvor å dumpe "dataene til fdisplay" umiddelbart eller når jeg vil?Kanskje det må en kommando eller en spesiell kode i testbench?Jeg vil være veldig takknemlig!

 
Jeg ser ikke dette Verilog kommandoen i ModelSim's Commad Reference Manual, men det fungerer!

Ifølge IEEE Std 1364-2001:

17.2.6 Flushing output
$ fflush (MCD);
$ fflush (FD);
$ fflush ();
Skriver noen bufret utdata til filen (e) angitt av mcd, filen angitt av FD eller hvis $ fflush startes med noen argumenter, skriver noen buffered output til alle åpne filer.

 
echo47, Tusen takk for ditt store løse metoden!

Faktisk har jeg tenkt en annen metode for å løse dette problemet i går.Det er at hver gang når data har blitt skrevet inn i filen ved $ fdisplay, er filen i nærheten av $ fclose, og når neste gang det skal skrives på nytt, er at filen åpnes ved $ fopen med tilføyer alternativ, f.eks

$ file = fopen ( "test.txt", "a");

så vil filen bli wroten hver gang og lukket, når filen er lukket, blir dataene skylles inn i den.
Denne metoden har et annet problem: å unngå filen blir større og større med gjentatt simulering.Det bør være åpne med en "w" i den innledende prosessen med simulering og stengt umiddelbart, så den vil bli slettet.

Selvfølgelig er min metode mer trivielle og metoden er mer effektiv.Så jeg vil gjerne si takk igjen!

Hilsen!

 

Welcome to EDABoard.com

Sponsor

Back
Top