W
wangjill
Guest
Produkt Zmiany 5.5bW FLI funkcji mti_GetSignalType () został zmieniony tak, że dla
uchwyt do portu sygnał, że zostało przesunięte zwraca typ ID
od formalnego portu, a nie typu ID rzeczywisty sygnał do których
zostało przesunięte.
(Ten typ zachowuje ID zgodna z nazwą
że pojawi się ten sam sygnał z obsługi).
W FLI funkcji mti_SetSignalValue () nie granulaty atomowej
tablica sygnałów.
Określa ona cały wachlarz wartości bezpośrednio na górę
poziom sygnału atomowej tablicy zamiast iterację poprzez subelements.
(Należy pamiętać, że za brak tablic atomowa nadal iterates poprzez
subelements).
Optymalizacja zostało zrobione do kilku FLI kierowcy funkcji
celu umożliwienia prowadzenia atomowej tablic (które jest szybsze niż
normalnej metody prowadzenia tablic na poziomie subelement).
Tablice są atomowej, jeśli ich subelements są wyliczenie typu, jeżeli są one
nie mają więcej niż jeden kierowca, jeśli są one oparte wyłącznie na zero zwłoki,
jeśli nie są one podłączone do portów lub Inout, a jeśli nie mają one
wszelkie związane z kompozytu uchwały lub konwersji typu funkcji.
Następujące funkcje zostały zmienione, jak stwierdzono:mti_CreateDriver () tworzy się atomowej kierowców atomowej na tablicy sygnałów.
Będzie granulatu atomowej tablicy sygnał tylko wówczas, gdy więcej niż jeden kierowca
tworzona jest na nim.mti_FindDriver () nie granulaty atomowej tablicy sygnałów.mti_GetDriverSubelements () będzie teraz granulatu atomowej tablicy sygnału
w celu uzyskania sterownika subelements.mti_ScheduleDriver () będzie teraz napędu atomowego tablicy sygnałów z zerową zwłoki.
Planowanie z zera opóźnienie spowoduje atomowej tablicy sygnał do
granulowany.Należy pamiętać, że mti_GetDriverNames () i mti_GetDriverValues ()
nie zwróci żadnych informacji na tablicy atomowej sygnałów.
Należy również pamiętać, że mti_GetSignalSubelements () sił o granulacji
atomowej tablicy sygnału.
W VHDL i Verilog kompilatory zostały zmienione, aby nie wyświetlać pełnego wykorzystania
informacji w przypadku, gdy korzystanie błąd.
Pełne wykorzystanie zostanie wyświetlony komunikat
tylko wtedy, gdy pomoże-przełącznik jest używany.A ekranie pojawi się w wersji OEM ModelSim identyfikacji
to jak różni się od zwykłego ModelSim PE produktu.
OEM (tylko)Dodano nowe funkcje do 5.5bA funkcja została dodana w celu umożliwienia Solaris z pamięci współdzielonej.
Funkcja ta może zwiększyć
wykonywaniu dużych symulacje.
Poniżej podajemy więcej szczegółów.Dwa programy w celu ułatwienia Solaris pamięci funkcja ma
zostały dodane do "sunos5" i "sunos5v9" platform.
W wykonywalne są
znajduje się w "sunos5" i "sunos5v9" katalogi w drzewie modeltech
i są nazywane vshminit i vshminf.Aby dowiedzieć się, jak korzystać z tej funkcji, wywołaj vsim i kliknij menu Pomoc
Pomoc> Technotes> Solaris_Shared_Memory
Kursor czas w oknie Okno Wave została wzmocniona.Kursor czasu przycisku wartość czasu jest wyświetlany w kolumnie i wartości
kursora wiersz fali okno.Kliknięciem prawego przycisku myszki (RMB) na przycisk zamieni go na pole
gdzie można wprowadzić nową wartość czasu.
Następnie kursor (i zobaczyć)
będzie przenieść do nowego czasu.
Istnieje FLI nowych funkcji, mti_CreateTimeType (), która jest używana do
uchwyt do typu Hasło dla VHDL czasu typu.
Jednym z przydatnych aplikacji
do drukowania w chwili obecnej.
Na przykład,curr_time_str = mti_Image (mti_NowIndirect (& curr_time),
mti_CreateTimeType ());
mti_PrintFormatted ( "Time% s% d delta: sygnału% s /% s jest% dn",
curr_time_str, mti_Delta (),
region_name, mti_GetSignalName (sigid), sigval);
Ustawianie preferencji nowych zmiennych PrefMain (stallKernel) do 1 spowoduje, że
symulacji jądra wstrzymać podczas Wave okno aktualizacji wystąpić.
Jeśli symulator
nie jest uruchomiony lub zmienna jest ustawiona na 0, nie będzie skuteczna.
Wartość domyślna to 0.
W runStatus posiada nową opcję o nazwie, która pełni
zwróci państwa i powód (stan).
VSIM 5> when clk {stop}
VSIM 6> run
# Simulation stop requested
VSIM 7> runStatus
# break
VSIM 8> runStatus -full
# break user_stop
Możliwe przyczyny są wartości:bkpt
bkpt_builtin
koniec
fatal_error
iteration_limit
silent_halt
krok
step_builtin
step_wait_suspend
user_break
user_halt
user_stop
nieznany
Powodem wartości ma sens tylko po kroku lub uruchomić polecenie
zwrotów.
Rozmowy runStatus podczas gdy jest on nadal w prowadzeniu
państwo (tj. gdy wewnątrz ciała) zwróci poprzednią wartość powodu.W tym momencie użytkownik jest ostrzegany, że może uzyskać wyniki, które nie
spodziewać się.
W sposób złamać klucz działa, to można uzyskać powodu
kod ponownie, że może być user_break lub user_stop.
Dzieje się tak, ponieważ
przerwy mogą występować w różnych momentach w cyklu symulacji.
Jeśli
Symulator jest ocena procesu w czasie przerwy, a user_break
zostaną zwrócone, jeśli jednak symulator zakończył procesy i
aktualizuje wartości sygnału, a następnie user_stop zostaną zwrócone.
Subtelnego
sposób widać to w obecnym systemie jest z Źródło okno.
W
pierwszym przypadku Źródło Window wskazuje plik numer linii z
niebieską strzałkę, natomiast w drugim przypadku nie jest źródłem linii.
Nowy zestaw kompilator przełączniki zostały dodane w celu umożliwienia dalszego
brama poziomu optymalizacji wystąpić w Verilog komórek bibliotek.W początkowych wersjach 5.5, te były bardzo konserwatywne optymalizacji
w odniesieniu do optymalizacji, czy też nie było dozwolone.
Z 5.5b,
kilka przełączniki zostały dodane, aby wyłączyć niektóre z tych kontroli.
Przełączniki są określone w vlog kompilator w wierszu polecenia.
Oni tylko w momencie kompilowania bramy poziomie komórek bibliotek, za pomocą
na szybki przełącznik.
Można również określić-debugCellOpt
przełączyć się do sprawdzenia, czy są występujące optymalizacji.nocheckCLUP
Ten przełącznik umożliwia połączenie pętli w komórce być optymalizowana.
nocheckOPRD
Ten przełącznik pozwala na wyjście z portu należy rozumieć wewnętrznie przez komórkę.
Uwaga, jeśli wartość
przeczytaj jest jedynie do wartości wyjściowej przez komórkę i czy istnieje
kierowca w sieci poza komórkę, wartość odczytu nie odzwierciedlają
rozwiązany na wartości.
nocheckDNET
Ten przełącznik pozwalają zarówno portem i opóźnione portu (utworzonego na negatywne setup / hold)
które mają być wykorzystywane w funkcjonalnej części komórki.
nocheckSUDP
Ten przełącznik pozwala kolejny UDP do prowadzenia innej sekwencyjnych UDP.
Jeśli określisz nocheckALL wszystkie te flagi będą aktywne.
Uwaga również
funkcje komórki powinny być weryfikowane po użyciu jednego z tych
przełączniki.
W vlog-szybko przełączać się uchwyty z komórek $ setuphold
i $ recrem timingchecks, które używają tstamp_cond lub
tcheck_cond argumenty.Dodano ostrzeżenie przy opracowywaniu generycznych / parametrów określonych w poleceniu
z-g-G lub nie występują w projekcie.VHDL wydajności zostały dodane do Std_Developerskit std_mempak
pakiet.
W Mem_Load i Mem_Dump procedury są już przeciążone domyślnie z
przyspieszone wersje tych procedur.
A ponowna dowolnego kodu przy użyciu VHDL
tych procedur, w wyniku korzystania z wbudowanego w przypadku procedury przyspieszonej.
Kompilacja z-NoAccel std_mempak vcom opcji w wyniku
wykorzystanie oryginalnego VHDL kod z opakowania.Możliwość została dodana do ModelSim PE i produkty OEM (ModelSim SE już
ma tę funkcję) do płytek i kaskady z okna wiersza poleceń.
To
funkcjonalności była możliwa wyłącznie z GUI wcześniej.Verilog 2001 wsparcie dla wzajemnych opóźnień.
Funkcja ta jest aktywna w v2k_intr_delay-switch.
Przełącznik
powoduje opóźnienia być widoczne na obciążenia portu (wcześniej, użytkownik musiał
podłączenia bufora ładunku wewnątrz modułu, aby zobaczyć zwłoki).
Jeśli masz
$sdf_annotate() zwraca w swoim projekcie, które nie są wykonywane coraz
Następnie należy dodać Verilog zadanie $sdf_done() po ostatniej
$sdf_annotate() aby usunąć wszelkie zero opóźnienia MIPDs które mogły być
utworzony.
[Ta wiadomość była edytowana przez: ssyang dniu 2001-06-02 22:00]
uchwyt do portu sygnał, że zostało przesunięte zwraca typ ID
od formalnego portu, a nie typu ID rzeczywisty sygnał do których
zostało przesunięte.
(Ten typ zachowuje ID zgodna z nazwą
że pojawi się ten sam sygnał z obsługi).
W FLI funkcji mti_SetSignalValue () nie granulaty atomowej
tablica sygnałów.
Określa ona cały wachlarz wartości bezpośrednio na górę
poziom sygnału atomowej tablicy zamiast iterację poprzez subelements.
(Należy pamiętać, że za brak tablic atomowa nadal iterates poprzez
subelements).
Optymalizacja zostało zrobione do kilku FLI kierowcy funkcji
celu umożliwienia prowadzenia atomowej tablic (które jest szybsze niż
normalnej metody prowadzenia tablic na poziomie subelement).
Tablice są atomowej, jeśli ich subelements są wyliczenie typu, jeżeli są one
nie mają więcej niż jeden kierowca, jeśli są one oparte wyłącznie na zero zwłoki,
jeśli nie są one podłączone do portów lub Inout, a jeśli nie mają one
wszelkie związane z kompozytu uchwały lub konwersji typu funkcji.
Następujące funkcje zostały zmienione, jak stwierdzono:mti_CreateDriver () tworzy się atomowej kierowców atomowej na tablicy sygnałów.
Będzie granulatu atomowej tablicy sygnał tylko wówczas, gdy więcej niż jeden kierowca
tworzona jest na nim.mti_FindDriver () nie granulaty atomowej tablicy sygnałów.mti_GetDriverSubelements () będzie teraz granulatu atomowej tablicy sygnału
w celu uzyskania sterownika subelements.mti_ScheduleDriver () będzie teraz napędu atomowego tablicy sygnałów z zerową zwłoki.
Planowanie z zera opóźnienie spowoduje atomowej tablicy sygnał do
granulowany.Należy pamiętać, że mti_GetDriverNames () i mti_GetDriverValues ()
nie zwróci żadnych informacji na tablicy atomowej sygnałów.
Należy również pamiętać, że mti_GetSignalSubelements () sił o granulacji
atomowej tablicy sygnału.
W VHDL i Verilog kompilatory zostały zmienione, aby nie wyświetlać pełnego wykorzystania
informacji w przypadku, gdy korzystanie błąd.
Pełne wykorzystanie zostanie wyświetlony komunikat
tylko wtedy, gdy pomoże-przełącznik jest używany.A ekranie pojawi się w wersji OEM ModelSim identyfikacji
to jak różni się od zwykłego ModelSim PE produktu.
OEM (tylko)Dodano nowe funkcje do 5.5bA funkcja została dodana w celu umożliwienia Solaris z pamięci współdzielonej.
Funkcja ta może zwiększyć
wykonywaniu dużych symulacje.
Poniżej podajemy więcej szczegółów.Dwa programy w celu ułatwienia Solaris pamięci funkcja ma
zostały dodane do "sunos5" i "sunos5v9" platform.
W wykonywalne są
znajduje się w "sunos5" i "sunos5v9" katalogi w drzewie modeltech
i są nazywane vshminit i vshminf.Aby dowiedzieć się, jak korzystać z tej funkcji, wywołaj vsim i kliknij menu Pomoc
Pomoc> Technotes> Solaris_Shared_Memory
Kursor czas w oknie Okno Wave została wzmocniona.Kursor czasu przycisku wartość czasu jest wyświetlany w kolumnie i wartości
kursora wiersz fali okno.Kliknięciem prawego przycisku myszki (RMB) na przycisk zamieni go na pole
gdzie można wprowadzić nową wartość czasu.
Następnie kursor (i zobaczyć)
będzie przenieść do nowego czasu.
Istnieje FLI nowych funkcji, mti_CreateTimeType (), która jest używana do
uchwyt do typu Hasło dla VHDL czasu typu.
Jednym z przydatnych aplikacji
do drukowania w chwili obecnej.
Na przykład,curr_time_str = mti_Image (mti_NowIndirect (& curr_time),
mti_CreateTimeType ());
mti_PrintFormatted ( "Time% s% d delta: sygnału% s /% s jest% dn",
curr_time_str, mti_Delta (),
region_name, mti_GetSignalName (sigid), sigval);
Ustawianie preferencji nowych zmiennych PrefMain (stallKernel) do 1 spowoduje, że
symulacji jądra wstrzymać podczas Wave okno aktualizacji wystąpić.
Jeśli symulator
nie jest uruchomiony lub zmienna jest ustawiona na 0, nie będzie skuteczna.
Wartość domyślna to 0.
W runStatus posiada nową opcję o nazwie, która pełni
zwróci państwa i powód (stan).
VSIM 5> when clk {stop}
VSIM 6> run
# Simulation stop requested
VSIM 7> runStatus
# break
VSIM 8> runStatus -full
# break user_stop
Możliwe przyczyny są wartości:bkpt
bkpt_builtin
koniec
fatal_error
iteration_limit
silent_halt
krok
step_builtin
step_wait_suspend
user_break
user_halt
user_stop
nieznany
Powodem wartości ma sens tylko po kroku lub uruchomić polecenie
zwrotów.
Rozmowy runStatus podczas gdy jest on nadal w prowadzeniu
państwo (tj. gdy wewnątrz ciała) zwróci poprzednią wartość powodu.W tym momencie użytkownik jest ostrzegany, że może uzyskać wyniki, które nie
spodziewać się.
W sposób złamać klucz działa, to można uzyskać powodu
kod ponownie, że może być user_break lub user_stop.
Dzieje się tak, ponieważ
przerwy mogą występować w różnych momentach w cyklu symulacji.
Jeśli
Symulator jest ocena procesu w czasie przerwy, a user_break
zostaną zwrócone, jeśli jednak symulator zakończył procesy i
aktualizuje wartości sygnału, a następnie user_stop zostaną zwrócone.
Subtelnego
sposób widać to w obecnym systemie jest z Źródło okno.
W
pierwszym przypadku Źródło Window wskazuje plik numer linii z
niebieską strzałkę, natomiast w drugim przypadku nie jest źródłem linii.
Nowy zestaw kompilator przełączniki zostały dodane w celu umożliwienia dalszego
brama poziomu optymalizacji wystąpić w Verilog komórek bibliotek.W początkowych wersjach 5.5, te były bardzo konserwatywne optymalizacji
w odniesieniu do optymalizacji, czy też nie było dozwolone.
Z 5.5b,
kilka przełączniki zostały dodane, aby wyłączyć niektóre z tych kontroli.
Przełączniki są określone w vlog kompilator w wierszu polecenia.
Oni tylko w momencie kompilowania bramy poziomie komórek bibliotek, za pomocą
na szybki przełącznik.
Można również określić-debugCellOpt
przełączyć się do sprawdzenia, czy są występujące optymalizacji.nocheckCLUP
Ten przełącznik umożliwia połączenie pętli w komórce być optymalizowana.
nocheckOPRD
Ten przełącznik pozwala na wyjście z portu należy rozumieć wewnętrznie przez komórkę.
Uwaga, jeśli wartość
przeczytaj jest jedynie do wartości wyjściowej przez komórkę i czy istnieje
kierowca w sieci poza komórkę, wartość odczytu nie odzwierciedlają
rozwiązany na wartości.
nocheckDNET
Ten przełącznik pozwalają zarówno portem i opóźnione portu (utworzonego na negatywne setup / hold)
które mają być wykorzystywane w funkcjonalnej części komórki.
nocheckSUDP
Ten przełącznik pozwala kolejny UDP do prowadzenia innej sekwencyjnych UDP.
Jeśli określisz nocheckALL wszystkie te flagi będą aktywne.
Uwaga również
funkcje komórki powinny być weryfikowane po użyciu jednego z tych
przełączniki.
W vlog-szybko przełączać się uchwyty z komórek $ setuphold
i $ recrem timingchecks, które używają tstamp_cond lub
tcheck_cond argumenty.Dodano ostrzeżenie przy opracowywaniu generycznych / parametrów określonych w poleceniu
z-g-G lub nie występują w projekcie.VHDL wydajności zostały dodane do Std_Developerskit std_mempak
pakiet.
W Mem_Load i Mem_Dump procedury są już przeciążone domyślnie z
przyspieszone wersje tych procedur.
A ponowna dowolnego kodu przy użyciu VHDL
tych procedur, w wyniku korzystania z wbudowanego w przypadku procedury przyspieszonej.
Kompilacja z-NoAccel std_mempak vcom opcji w wyniku
wykorzystanie oryginalnego VHDL kod z opakowania.Możliwość została dodana do ModelSim PE i produkty OEM (ModelSim SE już
ma tę funkcję) do płytek i kaskady z okna wiersza poleceń.
To
funkcjonalności była możliwa wyłącznie z GUI wcześniej.Verilog 2001 wsparcie dla wzajemnych opóźnień.
Funkcja ta jest aktywna w v2k_intr_delay-switch.
Przełącznik
powoduje opóźnienia być widoczne na obciążenia portu (wcześniej, użytkownik musiał
podłączenia bufora ładunku wewnątrz modułu, aby zobaczyć zwłoki).
Jeśli masz
$sdf_annotate() zwraca w swoim projekcie, które nie są wykonywane coraz
Następnie należy dodać Verilog zadanie $sdf_done() po ostatniej
$sdf_annotate() aby usunąć wszelkie zero opóźnienia MIPDs które mogły być
utworzony.
[Ta wiadomość była edytowana przez: ssyang dniu 2001-06-02 22:00]