Ćwiczenie nr 3. Symulacja analogowa w środowisku CADENCE z wykorzystaniem Analog Artist

Przedmiotem tego ćwiczenia będzie przeprowadzenie elementarnych analiz (stałoprądowej, przejściowej i częstotliwościowej) prostego wzmacniacza operacyjnego w pętli otwartej (rys. 1).

rys. 1

Do przeprowadzania symulacji analogowych służy zintegrowane środowisko o nazwie Analog Artist, wywoływane z Design Framework II, które integruje narzędzia takie jak:

W niniejszym ćwiczeniu symulacje będą przeprowadzane w oparciu o symulator Spectre. Jest to program działający na podobnej zasadzie co Spice, ale różniący się od niego zastosowanymi modelami elementów oraz składnią plików wejściowych.

Laboratorium nr 1. Przygotowanie i przeprowadzenie symulacji w Analog Artist

  1. Z poziomu interpretera poleceń UNIX’a, przejść do podkatalogu analog w swoim katalogu domowym i uruchomić DF II poleceniem startcds &
  2. Korzystając z programu Library Manager odszukać bibliotekę AnalogSim, a w niej celkę ampTop i otworzyć widok schematic
  3. Obejrzeć schemat obwodu, w którym wzmacniacz jest symulowany oraz schemat samego wzmacniacza
    1. Zaznaczyć na schemacie symbol wzmacniacza i wybrać polecenie Hierarchy -> Descend Read... (e) aby zobaczyć schemat samego wzmacniacza operacyjnego
    2. Wybrać polecenie Hierarchy -> Return (Ctrl+e) aby powrócić do schematu nadrzędnego
    3. Zaznaczyć źródło napięcia VIN dołączone do jednego z wejść wzmacniacza i wybrać polecenie Edit -> Properties (q) aby obejrzeć parametry tego źródła

  4. Uruchomić środowisko Analog Artist poleceniem Tools -> Analog Artist
  5. Ustawić środowisko symulacji
    1. Z menu okna Analog Artist wybrać polecenie Setup -> Environment...
    2. Wypełnić formularz w sposób pokazany na rys. 2 i kliknąć OK

    rys. 2

  6. Wygenerować wstępną listę połączeń elementów
    1. Z menu okna Analog Artist wybrać polecenie Simulation -> Netlist -> Create Final
    2. Zapisać wygenerowaną listę połączeń do pliku o nazwie ampTop.cir wywołując polecenie File -> Save As w oknie, w którym lista została wyświetlona
    3. Zamknąć okno i powrócić do Analog Artist

  7. Ustawić wartości napięć zasilających wzmacniacz operacyjny
    1. Z menu okna Analog Artist wybrać polecenie Setup -> Stimulus -> Edit Analog...
    2. W formularzu, który się pojawił, w polu wyboru zaznaczyć opcję graphical i kliknąć OK. Otworzy się wtedy formularz pokazany na rys. 3
    3. rys. 3

    4. W polu wyboru zaznaczyć Global Sources
    5. W polu listy zaznaczyć źródło o nazwie vvdd
    6. Zaznaczyć opcję Enabled (tzn. że jest aktywne)
    7. W polu Function wybrać dc (źródło o stałej wartości)
    8. W polu Type wybrać Voltage (źródło napięcia)
    9. W polu DC voltage wpisać wartość 5 (tj. 5 V)
    10. Kliknąć Apply aby zapamiętać zmiany
    11. Zaznaczyć źródło o nazwie vvss i powtórzyć powyższe kroki, z tym że w polu DC voltage wpisać wartość –5 (tj. –5 V)
    12. Kliknąć OK aby powrócić do okna Analog Artist

  8. Ustawić parametry przeprowadzanych analiz
    1. Z menu okna Analog Artist wybrać polecenie Analyses -> Choose...
    2. W polu wyboru Analysis zaznaczyć tran
    3. Wypełnić formularz w sposób pokazany na rys. 4
    4. rys. 4

    5. W polu wyboru Analysis zaznaczyć dc
    6. W polu wyboru Sweep Variable wybrać Component Parameter
    7. Kliknąć przycisk Select Component i przejść do okna Composer zawierającego schemat obwodu
    8. Kliknąć w źródło napięcia VIN. Pojawi się wtedy formularz pokazany na rys. 5
    9. rys. 5

    10. Wybrać parametr dc i kliknąć OK aby powrócić do poprzedniego formularza
    11. W polu Sweep Type wybrać Linear
    12. Wypełnić resztę formularza w sposób pokazany na rys. 6
    13. rys. 6

    14. W polu wyboru Analysis wybrać ac
    15. W polu Sweep Type wybrać Logarithmic
    16. Wypełnić resztę formularza tak jak pokazano na rys. 7
    17. rys. 7

    18. Kliknąć OK aby zapisać zmiany i powrócić do okna Analog Artist

  9. Określić zestaw wyników wyświetlanych dla poszczególnych analiz
    1. Z menu okna Analog Artist wybrać polecenie Outputs -> Setup... Pojawi się wtedy okno o nazwie Setting Outputs
    2. Dodać napięcie wyjściowe VOUT dla analizy DC
    3. Dodać napięcie wejściowe VIN dla analizy TRANSIENT
    4. Dodać napięcie wyjściowe VOUT dla analizy TRANSIENT w sposób analogiczny jak w poprzednim punkcie. Wyrażeniu temu nadać nazwę transient output
    5. Dodać amplitudową charakterystykę częstotliwościową (analiza AC)
    6. Dodać fazową charakterystykę częstotliwościową (analiza AC)
    7. W rezultacie powyższych czynności okno Setup Outputs powinno wyglądać mniej więcej tak jak na rys. 8

      rys. 8

        1. Kliknąć OK aby powrócić do okna Analog Artist, które powinno wyglądać mniej więcej tak jak pokazano na rys. 9

      rys. 9

      1. Zapisać bieżącą sesję
        1. Z menu okna Analog Artist wybrać polecenie Session -> Save State...
        2. Wypełnić formularz tak jak pokazano na rys. 10 i kliknąć OK

        rys. 10

      2. Na wszelki wypadek zapisać do pliku aktualną pamięć kalkulatora
        1. Przejść do kalkulatora i z jego menu wybrać polecenie Memories -> Save...
        2. Kliknąć OK aby zapisać pamięć kalkulatora do pliku o proponowanej nazwie

      3. Przeprowadzić symulacje
        1. Przejść do okna Analog Artist i z menu wybrać polecenie Simulation -> Run
        2. Obserwować postęp symulacji (i ewentualne błędy) w głównym oknie icfb
        3. W razie błędów z menu okna Analog Artist wybrać polecenie Simulation -> Output Log... aby wyświetlić bardziej szczegółowe informacje o błędach
        4. Jeżeli symulacje zakończyły się pomyślnie to automatycznie zostanie wyświetlone okno Waveform Window z wynikami symulacji

      Uwaga:

      Nie zamykać żadnych otwartych okien.

      Laboratorium nr 2. Obróbka i prezentacja wyników symulacji w oknie Waveform Window

      1. Rozciągnąć okno Waveform Window na cały ekran aby uzyskać możliwie najlepszą rozdzielczość
      2. Zmienić tytuły wszystkich trzech części okien
        1. Zaznaczyć skrajną lewą część okna, dwukrotnie kliknąć w jej tytuł ("Expressions1") i zmienić go na "DC Characteristics"
        2. Zaznaczyć środkową część okna, dwukrotnie kliknąć w jej tytuł ("Expressions2") i zmienić go na "Transient Response"
        3. Zaznaczyć skrajną prawą część okna, dwukrotnie kliknąć w jej tytuł ("Expressions3") i zmienić go na "AC Characteristics"

      3. Wyłączyć skrajną prawą część okna wyświetlającą charakterystyki częstotliwościowe
        1. Z menu wybrać polecenie Window -> Subwindows... Pojawi się wtedy formularz pokazany na rys. 11
        2. rys. 11

        3. W polu listy zaznaczyć okno nr 3, kliknąć przycisk Off a następnie OK

      4. Zaznaczyć okno Transient Response i kliknąć przycisk Switch Axis Mode znajdujący się po lewej stronie okna, aby rozdzielić obydwa przebiegi czasowe na osobne wykresy
      5. Zamienić miejscami wykresy VIN(t) i VOUT(t)
        1. Z menu wybrać polecenie Edit -> Swap Strips
        2. Kolejno kliknąć w obydwa wykresy. W wyniku tego zostaną zamienione miejscami

      6. Włączyć wyświetlanie siatki w oknie Transient Response
        1. Z menu wybrać polecenie Axes -> Options...
        2. W polu wyboru Display zaznaczyć opcję grids (rys. 12) i kliknąć OK

        rys. 12

      7. Wykreślić pochodną charakterystyki stałoprądowej po napięciu wejściowym
        1. Zaznaczyć okno DC Characteristics
        2. Z menu wybrać polecenie Tools -> Calculator aby przejść do kalkulatora
        3. W oknie kalkulatora kliknąć przycisk wave
        4. Przejść z powrotem do okna Waveform Window i kliknąć w charakterystykę DC
        5. Powrócić do kalkulatora. Powinno się w nim wyświetlać wyrażenie VS("/OUT")
        6. W oknie kalkulatora kliknąć przycisk Special Functions i wybrać funkcję deriv. Wyświetlane wyrażenie powinno zmienić się na deriv( VS("/OUT") )
        7. Kliknąć przycisk plot aby wyświetlić pochodną na wykresie

      8. W oknie Waveform Window zaznaczyć podokno DC Characteristics i kliknąć w przycisk Switch Axis Mode aby rozdzielić obydwa wykresy
      9. Włączyć wyświetlanie siatki w podoknie DC Characteristics (Axis -> Options...)
      10. Zapisać bieżące ustawienia wykresu do pliku o nazwie dc+tran wywołując z menu polecenie Window -> Save i podając nazwę pliku
      11. Włączyć część okna wyświetlające charakterystyki częstotliwościowe, a wyłączyć częsci okien wyświetlające charakterystyki DC i odpowiedź przejściową
        1. Z menu wybrać polecenie Window -> Subwindows...
        2. Korzystając z przycisków On i Off włączyć wyświetlanie okna nr 3, a wyłączyć wyświetlanie okien 1 i 2 (rys. 13) i kliknąć OK aby powrócić do okna wykresów

        rys. 13

      12. Rozdzielić od siebie charakterystykę amplitudową i fazową na osobne wykresy i zamienić je miejscami oraz włączyć wyświetlanie siatki
      13. Zmienić skalę osi wartości (Y) wykresu charakterystyki amplitudowej z liniowej na logarytmiczną wyskalowaną w dB
        1. Z menu wybrać polecenie Curves -> Edit...
        2. W formularzu (rys. 14) zaznaczyć krzywą nr 1 ( magnitude(gain) )
        3. rys. 14

        4. W polu wyboru Scale wybrać db20 i kliknąć OK

      14. Wykreślić charakterystykę Nyquista
        1. Z menu okna Waveform Window wybrać polecenie Window -> Subwindows...
        2. W formularzu kliknąć przycisk Add aby dodać nowe okno, a następnie OK aby powrócić do wykresów
        3. Zaznaczyć nowe okno i z menu wybrać polecenie Annotation -> Edit -> Subtitle...
        4. Wpisać nową nazwę okna: "Nyquist Characteristics" i kliknąć OK
        5. Przejść do kalkulatora (poleceniem Tools -> Calculator)
        6. Z menu kalkulatora wybrać polecenie Memories -> Recall...
        7. W polu listy formularza (rys. 15) wybrać parametr gain i kliknąć OK. Kalkulator powinien wyświetlić wyrażenie mag( VF("/OUT") / VF("/IN") )
        8. rys. 15

        9. Kliknąć przycisk enter aby zapamiętać powyższe wyrażenie na stosie
        10. Kliknąć przycisk real (część rzeczywista). Kalkulator powinien wyświetlić wyrażenie real( VF("/OUT") / VF("/IN") )
        11. Kliknąć przycisk plot aby wyświetlić krzywą odpowiadającą części rzeczywistej na wykresie
        12. Zaznaczyć wyświetlony wykres i z menu okna Waveform Window wybrać polecenie Axes -> X Axis... Pojawi się wtedy formularz pokazany na rys. 16
        13. rys. 16

        14. W polu wyboru Plot vs. wybrać część rzeczywistą VOUT / VIN (rys. 16) i kliknąć OK
        15. Powrócić do kalkulatora i kolejno kliknąć przyciski: down i enter. Kalkulator znowu powinien wyświetlać wyrażenie VF("/OUT") / VF("/IN")
        16. Kliknąć przycisk imag (część urojona). Kalkulator powinien wyświetlić wyrażenie imag( VF("/OUT") / VF("/IN") )
        17. Kliknąć przycisk plot aby zakończyć wyświetlanie charakterystyki Nyquista

      15. Zapisać ustawienia wykresów do pliku o nazwie ac (polecenie Window -> Save...)
      16. Odczytać z wykresów najważniejsze parametry częstotliwościowe wzmacniacza w pętli otwartej
        1. Odczytać maksymalne wzmocnienie w paśmie (w dB)
          • Zaznaczyć część okna wyświetlającą charakterystykę amplitudową i fazową
          • Uaktywnić jeden z celowników: A (polecenie Chrosshair -> Marker A (a)) lub B (polecenie Chrosshair -> Marker B (b))
          • Najechać celownikiem na płaski fragment wykresu charakterystyki amplitudowej i kliknąć lewym przyciskiem myszy
          • Odczytać i zanotować wartość wzmocnienia (w dB) wyświetloną pod wykresami (współrzędną Y celownika)

        2. Odczytać szerokość pasma 3-decybelowego
          • Uaktywnić jeden z celowników i obserwować jego współrzędne wyświetlane pod wykresami
          • Najechać na fragment charakterystyki, w którym wartość wzmocnienia (współrzędna Y celownika) jest mniejsza od maksymalnej o 3 dB i kliknąć lewym przyciskiem myszy w to miejsce
          • Odczytać i zanotować wartość pasma wyrażoną w Hz (współrzędna X celownika)

        3. Wykorzystując obydwa celowniki naraz odczytać z charakterystyki amplitudowej i fazowej margines amplitudy i margines fazy
          • Margines amplitudy to wartość charakterystyki amplitudowej dla częstotliwości, przy której charakterystyka fazowa przecina oś odpowiadającą -180°
          • Margines fazy to 180° minus wartość charakterystyki fazowej dla częstotliwości, przy której charakterystyka amplitudowa przecina oś odpowiadającą 0 dB

        4. Wykorzystując program Waveform Calculator zweryfikować wartości parametrów odczytane z wykresów
          1. Przejść do kalkulatora i kliknąć przycisk down. Kalkulator powinien wyświetlić wyrażenie VF("/OUT") / VF("/IN")
          2. W polu wyboru Special Functions wybrać funkcję bandwith. Pojawi się wtedy formularz pokazany na rys. 17
          3. rys. 17

          4. W polu wyboru Type wybrać low (tzn. że dotyczy pasma dolnoprzepustowego)
          5. W polu Db wpisać 3 (tzn. że ma być obliczone pasmo 3-decybelowe)
          6. Kliknąć OK aby powrócić do okna kalkulatora. Kalkulator powinien wyświetlić wyrażenie bandwidth( VF("/OUT") / VF("/IN"), 3, "low" )
          7. Kliknąć przycisk print aby odczytać szerokość pasma 3dB. Porównać otrzymaną wartość z wartością odczytaną poprzednio z wykresu
          8. Kliknąć przycisk down. Kalkulator powinien ponownie wyświetlić wyrażenie VF("/OUT") / VF("/IN")
          9. W polu wyboru Special Functions wybrać funkcję gainMargin. Kalkulator powinien wyświetlić wyrażenie gainMargin( VF("/OUT") / VF("/IN") )
          10. Kliknąć przycisk print aby odczytać szerokość margines amplitudy. Porównać otrzymaną wartość z wartością odczytaną poprzednio z wykresów
          11. W analogiczny sposób odczytać margines fazy powtarzając kroki g-i z zastosowaniem funkcji phaseMargin i porównać go z wartością odczytaną z wykresów