symulacja ukladow.pdf

(170 KB) Pobierz
Microsoft Word - VST-jak.doc
Politechnika Zielonogórska
w Zielonej Górze
Instytut Informatyki i Elektroniki
Laboratorium Podstaw Techniki Cyfrowej
OrCAD/VST
Symulacja układów-
podstawowe operacje
1. Co to jest symulacja komputerowa ?
W sytuacji, gdy projektowane są coraz bardziej złożone układy elektroniczne symulacja
komputerowa nabiera wciąż większego znaczenia. Pozwala przede wszystkim uniknąć
kłopotliwego i skomplikowanego montowania prototypów. Symulacja komputerowa jest
odpowiednikiem montowania układu prototypowego z tą różnicą, że całe testowanie układu
odbywa się w sposób symboliczny na modelu utworzonym ze schematu układu. Do
symulacji potrzebne są następujące elementy układu:
schemat układu (przetworzony w odpowiedni dla danego programu symulacyjnego
sposób),
wymuszenia, czyli wartości sygnałów wejściowych podawane w trakcie symulacji
w chwilach określonych przez projektującego układ.
W Laboratorium Podstaw Techniki Cyfrowej wykorzystywany jest program SIMULATE
wchodzący w skład pakietu OrCAD/VST.
2. Przygotowanie schematu do symulacji
Symulacja układu cyfrowego przedstawionego w postaci schematu utworzonego przy
użyciu programu DRAFT wymaga przeprowadzenia dodatkowych operacji. Związane są
one z zapewnieniem poprawności graficznej i elektrycznej układu, numeracją
poszczególnych elementów oraz koniecznością przedstawienia schematu w postaci
tekstowej. Operacje te wykonywane są poprzez wywołanie odpowiednich programów
należących do pakietu OrCAD/SDT.
2.1 ANNOTATE
Program ANNOTATE służy do numerowania wszystkich elementów katalogowych
znajdujących się na schemacie. Uruchomienie tego programu nie jest konieczne w
przypadku ponumerowania tychże elementów indywidualnie podczas tworzenia schematu.
Uruchomienie programu następuje przez wywołanie:
annotate przyklad.sch /m/o/q
W tym przypadku wszystkie elementy znajdujące się na schemacie przyklad.sch zostaną
ponumerowane w tej samej kolejności, w jakiej zostały umieszczone na schemacie.
Schemat ten zostanie potraktowany jako jednoarkuszowy (przełącznik /o), numery będą
wprowadzone na schemat (przełącznik /m) zaś sam program będzie wyświetlał jedynie
informacje niezbędne dla użytkownika (praca w trybie cichym - przełącznik /q).
2
2.2 CLEANUP
Przed rozpoczęciem symulacji niezbędne jest zagwarantowanie poprawności graficznej
i elektrycznej schematu. Pierwszy przypadek związany jest najczęściej z umieszczeniem
dwóch elementów w jednym miejscu na schemacie (co nie jest widoczne na schemacie,
amożeprowadzić do błędnego działania układu podczas symulacji). Zalecany sposób
wywołania:
cleanup przyklad.sch /o/q
Znaczenie przełączników jest takie samo, jak w przypadku ANNOTATE.
Jeżeli program nie wyświetli żadnych komunikatów schemat jest poprawny od strony
graficznej. Jakiekolwiek komunikaty oznaczają błędy, przy czym niektóre z nich (np.
podwójne połączenia przewodów) usuwane są automatycznie, a inne użytkownik musi
poprawić sam programem DRAFT. Ta druga sytuacja sygnalizowana jest komunikatem
<<Duplicates Found - needed to be corrected by DRAFT>>
na końcu działania programu. Oznacza to, żenależywywołać program DRAFT i poprawić
błędne miejsca (usunąć podwójne bramki itp.). O tym, gdzie takie sytuacje wystąpiły
informuje program CLEANUP w wyświetlanych komunikatach postaci
Duplicate found at X=... Y=...
XiYokreślają pozycję kursora na schemacie.
Uwaga: po poprawieniu schematu należy jeszcze raz ponumerować elementy (program
ANNOTATE) !
2.3 ERC
Schemat, który jest poprawny graficznie możezawierać błędy elektryczne, np. zwarte
wyjścia bramek TTL czy nie podłączone wejścia układów. Sprawdzenie poprawności
elektrycznej odbywa sie poprzez wywołanie programu ERC:
erc przyklad.sch /o/q
Nawet w trybie cichym program ERC wyświetla zawartość tabelki schematu. Jeżeli poniżej
tych danych nie pojawiły siężadne komunikaty oznacza to, że schemat jest poprawny
elektrycznie i można przejść do dalszych operacji. Jeśli jednak pojawiły się komunikaty,
najprawdopodobniej trzeba będzie poprawić schemat. Najczęściej występującym tu
komunikatem jest
<<Warning>> Input has no driving source - U2A, I1
Oznacza on ostrzeżenie, że na jednym z wejść podanego elementu (w tym przypadku U2A)
brak podłączonego sygnału. Przyczyna możebyć dwojaka - wejście umyślnie nie zostało
3
podłączone (np. wykorzystuje się tylko trzy wejścia w bramce czterowejściowej) i wówczas
nie wymaga to żadnych poprawek lub na wejście podłączono błędnie połączenie. Zwykle
jest to wynikiem nałożenia przewodu na końcówkę elementu (co nie jest dozwolone). W
takim przypadku niezbędne jest uruchomienie programu DRAFT, usunięcie błędnie
narysowanego przewodu i ponowne narysowanie go (tym razem bez nakładania na
wyprowadzenie elementu). Uwaga: możliwe jest także, że przewód nałożony jest nie na
podane wejścieelementu,alenakońcówkę poprzedzającego elementu.
W komuniaktach ERC wejścia układów numerowane są zwykle od góry, począwszy od
numeru I0 (czyli gdyby element U2A był trójwejściową bramką AND, to I1 oznaczałoby
środkowe wejście).
2.4 INET
Schemat w postaci graficznej - takiej jak zapisuje go DRAFT - nie jest zrozumiały dla
symulatora. Z tego też względu musi być przekształcony na postać tekstową (tzw. listę
połączeń), zgodną z ustalonym standardem. SłużydotegoprogramINET:
inet przyklad.sch przyklad.inf /o/p/q
Pierwszym z parametrów wywołania jest nazwa schematu, drugim zaś nazwa pliku, do
którego ma być zapisana lista połączeń.Przełącznik /p powoduje, żewliście używane są
numery wyprowadzeń elementów scalonych, a nie nazwy portów nadane przez
użytkownika (taki jest wymóg symulatora).
3. Uruchomienie symulacji
Uruchomienie symulatora odbywa się przez wywołanie
simulate
z katalogu roboczego. Program zgłasza się winietą tytułową taką samą,jakwprzypadku
programu DRAFT. Aby przejść do wykonywania symulacji należy dwukrotnie wcisnąć
dowolny klawisz (po pojawieniu się komunikatu :::press any key to continue::: u góry
ekranu).
Po zniknięciu winiety tytułowej i informacji o prawach autorskich pojawi się pusta tabela
symulacji oraz komunikat u góry ekranu:
Enter Netlist Input file name (NULL=exit Program) ?
Należy wprowadzić w tym miejscu nazwę pliku zawierającego listę połączeń (przyklad.inf).
Można podać samą nazwę pliku, bez rozszerzenia (program domyślnie przyjmie
rozszerzenie .inf). Jeżeli zostanie wciśnięty klawisz <Enter> bez podawania nazwy pliku,
program zakończy działanie i powróci do DOS.
4
Wprowadzenie nazwy listy połączeń program sygnalizuje pytaniem o potwierdzenie
podanej nazwy, np.
U:\15A\PRZYKLAD.INF ?
Potwierdzenie następuje po wciśnięciu klawisza <Y> (lub wybraniu opcji Yes z menu).
Wciśnięcie <N> lub wybranie opcji No umożliwia wprowadzenie nowej nazwy.
Program wprowadza wybraną listę połączeń,poczymwyświetla pytanie o nazwę pliku
z wymuszeniami:
Enter Stimulus file name ?
Standardowo plik ten ma rozszerzenie .STM i podobnie jak w przypadku listy połączeń
można podać samą nazwę pliku, np. przyklad. Pliku tego nie można stworzyć inaczej niż w
programie SIMULATE. Z tego też względu przy pierwszym wywołaniu symulatora dla
danego projektu plik wymuszeń nie zostanie wczytany (bo go po prostu nie ma), co
program zasygnalizuje komunikatem
Stimulus File Not Found. Type any key to continue
Po wciśnięciu dowolnego klawisza zostanie uruchomiony edytor wymuszeń (STIMULUS
EDITOR).
4. Wymuszenia
Oprócz samego schematu (podanego w postaci listy połączeń) do przeprowadzenia
symulacji niezbędne są jeszcze wymuszenia, czyli wartości sygnałów wejściowych
podawane w wybranych momentach czasu w celu obserwacji reakcji układu. Wymuszenia
mogą być podawane w dwojaki sposób - w postaci przebiegów czasowych poszczególnych
sygnałów wejściowych oraz w postaci wektorów testowych.
4.1 Przebiegi czasowe
Najczęściej wykorzystywanym sposobem zadawania wymuszeń dla układu są przebiegi
czasowe sygnałów wejściowych czyli specyfikacja zmian ich wartości wraz z określeniem
czasu, w którym zmiany te następują.Załóżmy na przykład, żejedną ze zmiennych
wejściowych jest ENABLE. Chcemy, aby początkowo miała ona wartość 0, po 150 ns
zmieniła wartość na 1, zaś w chwili 560 z powrotem na 0. W tym celu musimy dodać
sygnał ENABLE do listy wymuszeń wraz ze specyfikacją zmianjegowartości:
4.1.1 Dodanie sygnału do listy wymuszeń
Po uruchomieniu edytora wymuszeń (co następuje automatycznie po wprowadzeniu
nieistniejącej nazwy pliku z wymuszeniami lub wywołaniu opcji Edit Stimulus z menu
głównego) można dodać nowy sygnał do listy wymuszeń. W tym celu należywywołać
5
Zgłoś jeśli naruszono regulamin