Jegyzetek

A segédlet letölthető betömörített Winword formátumban.   


Segédlet
a

MicroSim DesignLab

tervezőrendszer használatához

digitális áramkörök működésének szimulációval történő vizsgálatára

Digitális technika tárgy
Informatika szak, I. Évfolyam

Első verzió

Készítette:

dr. Fehér Béla docens
Méréstechnika és Információs Rendszerek Tanszék
1998

Tartalomjegyzék:

  1. Bevezetés
  2. A digitális áramkörszimuláció alapjai
  3. A MicroSim DesignLab tervezői környezet főbb elemei és használatuk
    MicroSim Schematic
    MicroSim PSpice A/D
    MicroSim Probe
  4. Mintafeladat
  5. Referenciák

Bevezetés

A mindennapi mérnöki tervezői gyakorlat során rutinszerűen használunk számítógépes tervezői eszközöket. Ezek az eszközök a mindenki által ismert programfejlesztői vagy grafikai programokon túl a legtöbb esetben valamely specializált szakmai feladatkör igényeinek megfelelően lettek kialakítva, az adott területen felmerülő problémák elemzését, megoldását támogatják több-kevesebb sikerrel. Az eszközök sohasem oldják meg a feladatokat a tervező helyett, de nagyon hasznos segítséget nyújtanak a minél alaposabb elemzéshez, ellenőrzéshez és megfelelő dokumentáláshoz. Az elektronikai tervezésben ezeket a feladatokat a kapcsolási rajz szerkesztők, áramkör szimulátorok és jelfolyam megjelenítők, illetve az ezen funkciókat egyéb projektadminisztrációs (könyvtárkezelés, modellgenerálás, stb.) modulokkal kiegészített integrált tervezői környezetek biztosítják. A rendszerek komplexitása, szolgáltatásuk minősége és természetesen ára is széles skálán mozog. A néhány százezer forintos egyszerűbb programoktól (OrCAD, ICAP4) a több millió forintos teljes integrált rendszerekig (Mentor Graphics, Cadence) mindenki megtalálhatja az igényeinek és lehetőségeinek megfelelő ár/teljesítmény arányt mutató eszközöket. A Digitális Technika tárgy e félévi szimulációs gyakorlatához egyrészt a PCAD kapcsolási rajz szerkesztőnek a Digital Design Laboratory szimulátor programmal kiegészített verzióját, vagy a MicroSim Corporation DesignLab nevű tervezői környezetének demonstrációs verzióját használjuk. A két platform között lényeges különbség tapasztalható. Az első környezet DOS alapú eszközökből áll, amelyek lényegében egymástól független termékek. A PCAD rendszer egy teljes nyomtatott áramköri tervezői rendszer, amelyből csak az adatbeviteli modult, a kapcsolási rajz szerkesztőt használjuk. A szintén DOS alapú Digital Design Laboratory (DDL) szimulátor program egy egyszerű, de igen hatékony eszköz. A két modul között az információcsere (a vizsgált áramkör leírása) egy közbenső konverziós program segítségével történik. A DDL egy tisztán digitális szimulátor, analóg áramköri elemek (ellenállások, kondenzátorok, tranzisztorok) viselkedésének vizsgálatára nem alkalmas, ezen eszközökhöz természetesen modellekkel sem rendelkezik. A DDL interaktív üzemmódú szimulátor, a vizsgált rendszer állapota, a bemenő vezérlőjelek ill. belső állapotok a szimuláció során módosíthatók. Alkalmazása egyszerű, szolgáltatásai azonban ma már esetleg sok szempontból nem kielégítőek.

A MicroSim DesignLab egy korszerű integrált tervezői környezet. Windows alapú grafikus alkalmazás, az ebből következő összes szokásos kényelmi szolgáltatásokkal és következményekkel együtt. A rendszer magja a 70-es években a Kaliforniai Berkeley Egyetemen kifejlesztett SPICE szimulátor program. A SPICE első verziói FORTRAN nyelven írt, nagygépes környezetben batch módban futtatott programok voltak, elsősorban analóg hálózatok és félvezető mikroáramkörök (nemlineáris) viselkedésének modellezésére. Mivel az egyetem a forrásprogramot nyitottá tette, számos cég fejlesztette tovább az eredeti szimulátort, egészítette ki a használatot megkönnyítő adatbeviteli és utófeldolgozási modulokkal, továbbá transzportálta a rendszert PC-s környezetbe. Különböző kereskedelmi nevek születtek, PSpice, HPSIPCE, IsSpice, stb., amelyek megtartva C nyelven átírt legutolsó Berkeley G2 verzióval való kompatibilitást, természetesen egy-egy speciális alkalmazási irányba továbbfejlődtek. Megjelentek bizonyos interaktivitást jelentő szolgáltatások, digitális rendszerek beágyazhatósága, és így a kevert módú analóg-digitális szimuláció. Az integrált rendszerek külön modulokat tartalmaznak az új alkatelemek modelljeinek elkészítésére, hiszen a megbízható szimuláció alapja az egyszerű, ám az adott vizsgálat szempontjából az alkatelemek viselkedését minden tekintetben helyesen leíró modell. A rendszerek interfészeket tartalmaznak különböző nyomtatott áramkör tervező rendszerekhez, ami lehetővé teszi a gyártásra kerülő berendezés ellenőrzését a huzalozási késleltetések és szórt kapacitások figyelembevétele mellett.

A Digitális technika tárgy keretében ezeket a tulajdonságokat természetesen nem vizsgáljuk, a szimulátor szolgáltatásai közül csak egy szűk terület alkalmazására koncentrálunk. Röviden bemutatjuk a laboratóriumi gyakorlat során használatra kerülő szoftver eszközöket, kifejezetten a feladat megoldása szempontjából. Néhány szóban ismertetjük a digitális szimuláció alapjait, a szokásos modellezési módszereket. Nem foglalkozunk a SPICE szimulációs nyelv felépítésével, a nem használt rendszerelemek bemutatásával. A további részletek iránt érdeklődők a különböző formákban rendelkezésre álló irodalmi forrásokat tanulmányozhatják, elsősorban a MicroSim DesignLab online dokumentációját. A további leírásban is sok esetben felhasználjuk a dokumentációban bemutatott adatokat, példákat, támaszkodunk az ott fellelhető információkra.

A digitális áramkörszimuláció alapjai

Minden áramkör szimuláció alapja a terv leírásban, kapcsolási rajzban hivatkozott alkatrészek viselkedésének leírása, modellezése a program számára érthető formában és a vizsgálat szempontjából szükséges pontossággal. Az összetett áramkörök modellezésénél a legritkább esetben alkalmazzák a valódi fizikai felépítést követő, alkatrészekből történő építkezés módszerét, hacsak nem éppen a belső működés elemzése a cél. Az ilyen modellek azon túl, hogy jelentőse megnövelnék az adatbázisok méretét, a szimuláció futásidejét, semmi új, hasznos információt nem adnának a rendszer viselkedéséről, sőt néhány eseteben a számítási hibák, kerekítések miatt esetleg konvergencia problémákat is okozhatnának. Ezen okokból komplex alkatrészeket általában makromodellekkel írunk le, ahol az eszközök viselkedését főképpen idealizált eszközökkel modellezzük, elhanyagolva a másodlagos hatásokat. A digitális áramkörök megfelelő modellezéséhez általában három szintű leírást kell biztosítanunk:

  • Funkcionális viselkedést, amely a logikai kapu szintű vagy komplex viselkedési leírást foglalja magába
  • I/O interfész viselkedést, amely az alkatrész csatlakozólábain megjelenő feszültségek, áramok viszonyait modellezi (TTL, CMOS, stb.)
  • Időzítés viselkedést, amely a be- és kimeneti pontok közötti jelterjedési időket modellezi, adott esetben magába foglalva a tipikus és minimális/maximális (worst-case) értékeket is.

Funkcionális viselkedés

Az alkatelemek funkcionális viselkedését a szimulátor beépített digitális primitívek segítségével írja le. Ezek a digitális primitívek a következő csoportokba oszthatók:

  • Kapuk (BUF, INV, AND, OR, NAND, NOR, XOR, NXOR ill. ezek kompozíciói)
  • Háromállapotú kapuk, amelyek funkcionálisan azonosak az előzőekkel, de a kimeneteik az aktív logikai 1 és 0 mellett még a kikapcsolt, nagyimpedanciás Z állapotba is kapcsolhatók
  • Flip-flop és latch áramkörök (JKFF, DFF, SRFF, DLTCH)
  • Fel- és lehúzó ellenállások
  • Késleltető vonalak
  • Memóriák
  • Programozható Logikai Array-k (FPGA)
  • Memóriák és A/D ill. D/A áramkörök
  • Komplex viselkedést leíró elemek, mint logikai kifejezések, közvetlen I/O késleltetés

I/O interfész viselkedés

A SPICE szimulátoron belül (az analóg és kevert módú szimulációs képesség miatt) a digitális alkatelemek I/O viselkedési leírása a szokásosnál részletesebb. A mindenképpen szükséges kimeneti meghajtóképesség és terhelőkapacitás figyelembevételén kívül az interfész a logikai rendszerek tápfeszülségét, továbbá a tényleges be- és kimeneti szinteket is modellezi. Ezen utóbbiak egy tisztán digitális szimulátoron belül természetesen feleslegesek. Az egyes I/O interfész modellek az egyes logikai eszközcsaládokon belül egységesek, tehát azonosak a modellek például a 74LS vagy a 74HCT családok minden egyes elemére. Az egyes családokon belül azonban különböző I/O modellek találhatók a normál be- és kimenetek, a hiszterézissel rendelkező Scmitt-triggeres bemenetek, a szabad kollektoros kimenetek és a nagyimpedanciás, háromadik állapotba kapcsolható kimenetek leírására. A modellben használt legfontosabb paraméterek a következők:

  • INLD, OUTLD bemeneti és kimeneti terhelő kapacitások
  • DRVH, DRVL kimeneti magas és alacsony szintek meghajtás erőssége
  • INR, DRVZ, a bemenetek és a Z-állapotú kimenet szivárgási áramai

A terhelőkapacitások és szivárgási áramok a dinamikus működésű MOS áramkörök szimulációjánál használatosak, ahol a töltéstárolás jelenségét is modellezni kell.

A meghajtáserősségek az esetlegesen több kimenet által meghajtott kimenetek állapotának meghatározása szempontjából fontosak. A digitális modellek kimenetei feszültségszintekkel nem jellemezhetőek, tehát több kimenet jelenléte esetén az eredő nem számolható. Ezért a szimulátorok az egyes eltérő típusú kimenetekhez különböző meghajtáserősséget rendelnek. A digitális szimulátorok általában négyféle meghajtáserősséget alkalmaznak, ezek csökkenő sorrendben a kényszer (Force) erősség, a normál kimeneti meghajtó (Drive) erősség, a rezisztív (Resistance) erősség, a nagyimpedanciás (Z) erősség (gyengeség). A kényszer erősség a közvetlen tápfeszültség (=1) és föld (=0) kapcsolatot jelöli, illetve a szimuláció során a tervező által a tesztvektorokban előírt állapotok is ezzel az erősséggel jelennek meg. A normál erősség a digitális elemcsaládra jellemző meghajtóképesség, a rezisztív erősség a fel- és lehuzó ellenállások ereje.

A szimuláció során a logikai jelek 5 lehetséges állapotot vehetnek fel, amelyből három statikus (magas [1], alacsony [0] és ismeretlen [X]) és két dinamikus (felfutó él 0 --> 1 [Rising], lefutó él 1 --> 0 [Falling]). Az állapotok soha nem jelentenek konkrét feszültség értéket, csak azt jelzik, hogy a kimenet valahol, az adott logikai családra jellemző magas vagy alacsony tartományban van, illetve a az R és F állapotoknál ezen tartományok közötti átmeneti szinten. A statikus állapotok számát a meghajtáserősségekkel összevetve, egy logikai jel lehetséges állapotainak száma 12.

0 1 X
F F0 F1 FX
D D0 D1 DX
R R0 R1 RX
Z Z0 Z1 ZX

Az ismeretlen (X) állapot a kezdőérték nélküli bemenőjelet, flip-flop állapotot ill. a szimuláció során nem feloldható jelállapotot jelöl (egyidőben magas és alacsony meghajtás, azonos erősséggel), de nem azonos az R vagy F átmeneti álapotokkal, amelyeket a szimulátor egyértelműen azonosít. Tehát például egy nyitott kollektoros kimenettel rendelkező kapu D0 és Z1 meghajtáserősségekkel rendelkezik. Egy felhúzó ellenállás R1 erősséget jelent. Ezért egy huzalozott logikai kapcsolat esetén, ha a kapukimenetek mindegyike magas állapotban van, a jel R1 állapotban, logikai 1 értéket mutat. Amennyiben azonban bármelyik kapu átvált, a megjelenő D0 erősségő kimenet felülírja az összes többi, gyengébb R1 ill. Z1 kimeneteket. A leírt állapotok a digitális szimulátorokra jellemzőek, a SPICE analóg szimulátor a négy állapotnál (szükségtelenül) finomabb, 64 fokozatból álló skálán definiálja a meghajtáserősséget, amit a kimeneti ellenállás különböző értékein keresztül reprezentál. Az alapbeállítás szerint 3 különbségű erősségdifferencia szükséges egy bizonyos állapot érvényre jutásához a gyengébbel szemben.

Időzítés viselkedés

A digitális makromodellek időzítési viselkedése kétféle módon definiálható. Az egyik módszer a modell struturális felépítésén alapul és a digitális primitívek saját késleltetéseit összegezve határozza meg a kialakuló be/kimeneti terjedési időket, a másik módszer viszont közvetlen módon írja elő az időzítés adatokat a teljes modellre, miközben az esetleges belső digitális primitívek zero késleltetéssel rendelkeznek. Az időzítés modellek főbb paraméteri a következők:

  • TP Terjedési idők (0 --> 1, 1 --> 0)
  • TSU, TH Előkészítési és tartási idők
  • TW Impulzusszélesség
  • TSW Kapcsolási idők (0 --> Z, 1 --> Z, Z --> 0, Z --> 1)

Minden időzítési paraméter természetesen három értékkel rendelkezik, mint minimum (MN), tipikus (TY) és maximum (MX). Tehát a legegyszerűbb inverter 6 időzítés adattal jellemezhető, úgy mint TPLHTY, TPHLTY, TPLHMN, TPLHMX, TPHLMN, TPHLMX.

A szimuláció során a jelek terjedési idejére az időzítésadatokon kívül a kimeneti I/O meghajtóképességek és teljes terhelőkapacitások (INLD, OUTLD) is hatással vannak. A terhelőkapacitások jelkésleltetési hatása egyszerűen számolható a teljes terhelőkapacitás és a digitális kimeneti primitiv forrás ellenállása alapján a következő formulával:

Terhelési jelkésleltetés = RDRIVE * CTOTAL * ln(2) = RDRIVE * CTOTAL * 0.7

Digitális áramkörök szimulációja során a késleltetés modell megalkotásakor két alapvetően eltérő viselkedés közül lehet választani. Ezek a tehetetlenségi (inerciális ) és szállítási (transport) késleltetési modellek. A két modell közül a szállítási modell viselkedése egyszerű. A bemenetére kerülű bármilyen impulzust a kimenetre másol az eszközre jellemző terjedési idő múlva. Ez a modell kifejezetten késleltető vonalak viselkedésének leírásására szolgál. A digitális kapuk késleltetésének modellezéséhez figyelembe kell venni az átkapcsoláshoz szükséges energiát, ami a bemeneti jel amplitudójának és időtartamának függvénye. Ha egy impulzus hossza elegendően nagy (pl. TPW > TPLHMIN, TPHLMN), akkor a jelváltozás a terjedési idővel késleltetve stabilan megjelenik a kimeneten. Ha az impulzus hossza nem ér el egy adott minimális értéket, a kapu a jelre nem válaszol, a bemeneti tüskét figyelmen kívül hagyja. Néhány szimulátor (többek között a PSpice is) lehetőséget ad egy finomabb modell alkalmazására, vagyis egy impulzus elhanyagolási limit beállítására. Ezek a szimulátorok azokban az esetekben, amikor a bemeneti impulzus szélessége kisebb, mint a kapu terjedési ideje, de nagyobb mint az előírt elhanyagolási limit, akkor a kapu ennek jelzésére egy 0 --> R --> 0, ill. 1 --> F --> 1 tranziens, átmeneti állapot beállításával válaszol, amely átmeneti állapot időtartama a bemeneti impulzus szélességével azonos. Ez a viselkedési modell különösen alkalmas a hazárd jelenségek hatásának vizsgálatára.

3. A MicroSim DesignLab tervezői környezet főbb elemei és használatuk

A digitális szimulációhoz a programkörnyezet három modulját használjuk. Ezek a MicroSim Schematic kapcsolási rajz szerkesztő, a MicroSim PSpice A/D analóg/digitális szimulátor és a MicroSim Probe hullámforma megjelenítő. A laborgyakorlat során a programcsomag Evaluation verzióját használjuk, ami számos korlátozást jelent:

  • a kapcsolási rajz maximum egy A4 lap lehet
  • 50 szimbólum használható, maximum 10 könyvtárból
  • a szimuláció 65 digitális primitívre korlátozott
  • csak periódikus gerjesztőjelet generálhatunk
  • a minta könyvtár kb. 30 analóg és 130 digitális alkatrészt tartalmaz

A felsoroltak ellenére az Evaluation verzió a feladatmegoldások során jól használható, kényelmes környezet. A programcsomag természetesen lényegesen bővebb szolgáltatásokra képes, mint amit e rövid ismertetőben be tudunk mutatni, ezt az érdeklődők a program on-line dokmentációjából megismerhetik.

A legegyszerűbb szimuláció során a feladatmegoldás lépései a következők:

1. A kapcsolási rajz szerkesztő segítségével a terv előkészítése

  • az alkatrészek elhelyezése és az összekötések megrajzolása
  • az alkatrészek értékeinek, paramétereinek megadása

2. A kapcsolási rajz szerkesztő segítségével a szimuláció előkészítése

  • a bemeneti vezérlőjelek definiálása
  • a megfigyelendő jelek, jelcsoportok kijelölése
  • a szimuláció típusának, paramétereinek beállítása
  • a szimuláció lefuttatása, hiba esetén javítás és ismétlés

3. A hullámforma analizátor segítségével a szimuláció eredményének vizsgálata

  • a szimuláció eredményének vizsgálata, szükség esetén ujrafuttatás új paraméterekkel
  • dokumentáció készítése

A MicroSim DesignLab programkörnyezeten mindezek a lépések egyszerűen a Schematic kapcsolási rajz szerkesztőn belül elvégezhetők, az egyéb programmodulok hívása automatikusan történik. A kapcsolási rajzon elhelyezett vezérlőjelszimbólumok és megfigyelő markerek vezérlik a szimulációt és kijelölik a hullámforma analizátor modulnak a kirajzolandó jelalakokat. A továbbiakban a programkörnyezet használatát mutatjuk be. A leírás a MicroSim DesignLab Evaluation CD v8.0 (June 1997) alapján készült, Windows 95 operációs rendszer alatt futtatva. Mivel a HSZK-ban jelenleg csak a Windows 3.1 verzió hozzáférhető, ezért ott csak az Evaluation CD v7.3. futtatható. A két verzió között apróbb eltérések tapasztalhatók, de ezek és a két operációs rendszer alapvető kezelőpaneljeinek, továbbá ikonjainak különbsége a leírás használhatóságát nem befolyásolja.

A MicroSim Designlab használata

A kapcsolási rajzszerkesztő program használata a DesignLab Evalution programcsoport Schematic alkalmazásának közvetlen indításával is történhet. (A háttérben automatikusan elindul a Design Manager is, ennek használata azonban az egyszerű feladat során nem szükséges.) A kapcsolási rajz szerkesztő ablak a következő:

A képernyő a szokásos elrendezésben menüsort, eszközcsoportokat, státuszsort és szokásos ablakkezelő eszközöket tartalmaz.

A menüsor logikus elrendezésben tartalmazza az összes szükséges menüpontot, melyek a File, Edit, Draw, Navigate, View, Options, Analysis, Tools, Markers, Windows és végül a Help.

Az első eszközcsoport, a szabvány Windows ikonokat tartalmazza (New File, Open File, Save File, Print (azonnali !!!), Cut, Copy, Paste, Undo, Redo), kiegészítve a grafikus alkalmazáshoz szükséges tipikus parancsokkal (Redraw, Zoom In, Zoom Out, Zoom Area, Zoom to Fit page).

A második eszközcsoport a kapcsolási rajz elkészítéséhez szükséges parancsok csoportja (Draw Wire, Draw Bus, Draw Block, Get New Part, Get Recent Part, Edit Attributes, Edit Symbol).

A harmadik eszközcsoport (a második sorban) a szimulációs eszköztár elemeit tartalmazza (Analysis Setup, Simulation, Marker Color, Voltage/Level Marker, Current Marker, Enable Bias Voltage Display, Show/Hide Voltage on Selected Net(s), Enable Bias Current Display, Show/Hide Current on Selected Part(s)).

Az utolsó (függőleges) eszközcsoport a grafikai eszközcsoport nem elektromos jellegű információk feltüntetésére, mint például (Draw Arc, Draw Box, Draw Circle, Draw Polyline, Draw Text, Draw Text Box, Insert Picture).

A státuszsor a kurzor helyzetét, az aktuális végrehajtott funkciót és egyéb tájékoztató adatokat közöl.

A kapcsolási rajz

a. A rajzlap

A kapcsolási rajz elkészítéséhez válasszuk ki az A4 papírméretet (Options menü Paper Size). A program automatikusan egy keretet készít a lapra, és beállítja az alkatrészek és huzalozás elhelyezését pozicionáló rácsfelület paramétereit. Amennyiben ezt nem kérjük, vagy egyéb egyéni beállításokat szeretnénk az Options menü Editor Configurations párbeszédablakban a beállításokat módosíthatjuk (Library Settings, Page Settings, App Settings). Töltsük ki a lap jobb alsó sarkában megjelenő fejléc keretet az aktuális információkkal. A kursort a fejléc keret területére mozgatva válasszuk ki a keretet, mint módosítani kívánt objektumot. Ezután az Edit menü Attributes parancsa megnyitja a jellemzők módosítására szolgáló párbeszédablakot. Írjuk be a feladat készítőjének nevét, a feladat címét, a dátumot, és az egyéb szükséges adatokat, majd zárjuk be az ablakot.

Ezzel a kapcsolási rajz elkészítésének általános feltételei rendben vannak. A rendszer többi alapbeállításán nem kell módosítanunk. Mentsük el a megnyitott rajzot a megfelelő néven a Projects alkönyvtárba (File menü, Save as DigitFeladat.sch). Az új név megjelenik az ablak fejlécében. A későbbiekben, ha a legutolsó elmentett verzióhoz képest a forrásdokumentum módosul, a név előtt egy * karakter jelzi az aktuális és az elmentett verzió között meglévő differenciát.

b. Az alkatrészek

A kapcsolási rajz alapvetően elektromos jelentéssel bíró komponensekből épül fel. Ezek az alkatrészek, az alkatrészekhez tartozó paraméterek (azonosító, névleges érték, kivezetésszám stb.), az alkatrészek elektromos kapcsolatát megvalósító huzalok, buszok. A grafikus eszköztárban található vonalak nem használhatók összekötések kialakítására.

Az alkatrészeket a szimbólumkönyvtárakból választhatjuk ki. A szimbólumkönyvtárak grafikusan reprezentálják az alkatrész funkcióját, azonosítják a kivezetéseket. A digitális alkatrészek csak be- és kimeneti kivezetésekkel rendelkeznek, a tápfeszültség és földcsatlakozások nincsenek feltüntetve.

Az alkatrészeket felkínáló szimbólumkönyvtárat a kapcsolási rajz szerkesztő eszköztár Get New Part ikonjával, vagy a Draw menu Get New Part parancsával vagy a Ctrl-G gyorsbillentyővel hívhatjuk elő (lásd következő oldal).

Az alkatrész kiválasztó két párbeszédablakkal rendelkezik. A bővített (Advanced) változat megmutatja a kiválasztott szimbólum rajzát is, ezért javasoljuk ennek használatát. A keresett alkatrész név szerint közvetlenül (pl. 74193, R, C, stb.), vagy a felsorolásból kereséssel azonosítható. A Place parancs kiadásával a kurzort a rajzlapra mozgatva klikkeléssel elhelyezhetjük az alkatrészt. További példányokat is elhelyezhetünk, mindaddig, amíg a jobboldali klikkeléssel a parancsot le nem zárjuk. Minden kiválasztott alkatrész felkerül a már használt alkatrészek listájára és amennyiben újra szükséges az alkalmazása, akkor egyszerűen a legördülő Get Recent Part ablakból is kiválasztható. Az alkatrészek az elhelyezéskor tetszés szerint elforgathatók, tükrözhetők. A megfelelő parancsok a Ctrl-R (Rotate) ill. a Ctrl-F (Flipping) gyorsbillentyűkkel aktiválhatók. A forgatás vagy tükrözés parancsok természetesen már elhelyezett alkatrészekre is vagy akár a kapcsolási rajz részleteire is alkalmazhatók, miután az alkatrészt vagy rajzrészletet kiválasztottuk.

A digitális alkatrészkönyvtár elemeihez nem tartoznak beállítandó paraméterek. Az alkatrészazonosító módosításához az automatikusan kiadott Ux cimkét kiválasztva a Reference Designator párbeszéd ablak jelenik meg, ahol új azonosítót definiálhatunk. Több azonos funkciójú kaput tartalmazó áramkörnél az egyes kapuk azonosítása az A, B, C … nagybetűkkel történik. Például az U2 DIP14 tokozású 7400 típusú áramkörben a (4,5 --> 6) lábakhoz rendelt kétbemenetű NAND kapu azonosítója U2B. Az analóg alkatrészek (R, C, tápfeszültség források) az alkatrészazonosítón kívül egyéb módosítandó paraméterekkel is rendelkeznek (pl. a névleges érték), ezek módosításához szintén az adott jellemzőt kell kiválasztani a beállító párbeszédablak megjelentetéséhez.

c. Az összekötések

Elektromos huzalok, összekötések a Draw Wire vagy Draw Bus parancsokkal létesíthetők. Az huzalozás üzemmód érvényességét a ceruza alakú kurzor jelzi. Az összekötések a beállított rácspontoknak megfelelő felbontással horizontális és vertikális szegmensekből állhatnak. (Ez a megkötés kikapcsolható, de a ferde vagy görbe vonalú huzalozást alkalmazó kapcsolási rajzok nem tipikusak.) Egy huzal megrajzolásához a ceruza alakú kurzorral közelítsük meg a kezdeti pontot jelentő alkatrész kivezetést. Az egér baloldali gombjával klikkelve megkezdhető a huzal rajzolása, majd minden további klikkelés egy merőleges rajzolási irány váltást (vertex) okoz. A huzal rajzolása akkor fejeződik be, ha a klikkelés egy másik kivezetésen, egy másik huzalon vagy buszon történik. Ekkor a huzalozás üzemmód továbbra is érvényes marad, tehát egy új összekötés rajzolása azonnal elkezdhető. A huzalok rajzolása dupla klikkeléssel vagy a jobb oldali egér gomb megnyomásával is befejezhető bárhol a rajzlapon, ekkor azonban a huzalozási üzemmód is automatikusan befejeződik és a normál nyíl alakú kurzor áll vissza. Ha egy újonnan rajzolt szegmens vége egy már megrajzolt szegmens végéhez illeszkedik, a két szegmenst a rendszer egyesíti, tehát huzalok hosszabítása egyszerűen megoldható. Ha egy újonnan megrajzolt szegmens vége egy huzalra merőlegesen illeszkedik, akkor oda a rendszer egy csomópontot rajzol. A csomópontból induló mindhárom szegmens elektromosan ugyanannak a huzalnak része, tehát ekvipotenciális.

A kapcsolási rajzon a huzalokhoz jelnév, címke (Label) rendelhető. A címkézés nem kötelező, de a szimulációs eredmények értékelése szempontjából javasoljuk a működés szempontjából fontos összes jel felcímkézését. A fontos jelek a közvetlen bemeneti vezérlőjelek, az áramkörön belül előállított belső jelek és a megfigyelendő kimeneti jelek. A címkék elhelyezése a huzal kiválasztásával kezdeményezhető. A dupla klikkelés a huzalszegmensen a címke párbeszédablak megjelenését okozza. Egy már meglévő címke módósítása hasonlóan történhet, mert ekkor a párbeszédablak automatikusan a már meglévő címkét mutatja. A jelnevek a huzalokat egyértelműen azonosítják, tehát az azonos nevű, de grafikusan nem kapcsolódó huzalok elektromosan azonos összekötések. Ez a globális érvényű jelek (CLOCK, RESET, VCC, GND) használatakor előnyös, megőrizve a rajz olvashatóságát.

Az egyszerő összekötésekre elmondottak természetesen buszok rajzolása esetén is érvényesek. Az egyetlen igen fontos eltérés, hogy a buszokat mindig fel kell cimkézni. A busz a MicroSim PSpice Schematic kapcsolási rajz szerkesztő szabályai szerint a tetszőleges huzalok összessége. Tehát legális busznevek a következők: D[0-15], D[0:15], D[0..15], D[0-3,12-15], D[15-7], D[15:0], vagy akár a D1,D2,D3,Q1,Q2,Q3,Q4,R7,R8,R9 egyszerű felsorolás. Az utóbbi esetben a busz minden egyes jelét fel kell sorolni.

A buszokra vonatkozó csatlakoztatási szabályok a következők:

  • a busz címke definiálja a busz jeleit és sorrendjüket ( pl. a D[0:15] címke esetén a D0 a legnagyobb, D15 a legkisebb helyiértékű bit)
  • buszok akkor köthetők össze, ha egyik busz jelei részhalmaza a másik busz jeleinek (pl.a D[0:15] és D[4:7])
  • alkatrészek buszkivezetéséhez csak azonos méretű buszvezeték köthető, a jelek megfeleltetése a sorrendnek megfelelő (pl. a D[12:15] buszszegmens és a D[0:3] buszkivezetés között a D12 --> D0, D13 --> D1, D14 --> D2, D15 --> D3 kapcsolat létesül
  • huzal akkor kapcsolódhat egy buszhoz, ha a huzal jelneve azonos egy buszjel címkéjével (pl. a D5 jel csatlakozik a D[4:7] buszhoz)

Nyomtatás

A nyomtatást mindig a File menü Print Setup ill. Print parancsaival kezdeményezzünk. A Windows eszköztár Print ikonja AZONNALI!!! nyomtatást indít, anélkül, hogy az aktuális beállításokat ellenőrizhetnénk. A Print Setup ill. Print parancsok megengedik, hogy ellenőrizzük a nyomtató kiválasztást, a lapbeállítást, a nagyítási értéket, stb. Ellenőrizzük a beállított nyomtatót, ha kell módosítsuk a teremben található típusra (STAR LC 4511).

A HSZK hálózati nyomtatójának és a jobok kezelésének parancsai a HSZK Általános tájékoztató a HSZK termeiben lévő PC-k használatáról című segédletében tekinthetők át (http://www.hszk.bme.hu/tajekoztato.html). A papírtakarékosság érdekében javasoljuk, hogy csak a már szimulációval ellenőrzött kapcsolási rajzokat nyomtassuk ki. Ekkor egyúttal a szimuláció eredménye is kinyomtatható. A feladatbeadáshoz ez a két A4 formátumú dokumentum szükséges, a mefelelő kiegészítésekkel együtt.

FIGYELMEZTETÉS!!!!

A HSZK számítógépein adminisztrációs okokból napi törlés és rendszer újragenerálás van. Ezért a munkánk befejezésekor az értékes dokumentumokat floppy-ra vagy más hálózati területre mentsük el, mert az el nem mentett anyagok a legközelebbi alkalommal még véletlenül sem lesznek elérhetők.

A szimuláció előkészítése

A kapcsolási rajz az alkatrészek és az összekötések megrajzolása után elkészült. A szimuláció elvégzéséhez olyan kiegészítések szükségesek még, amelyek a vizsgálati feltételeket és a megfigyeléseket definiálják. Komplex szimulációs feladatok esetén ezeket a kiegészítő feltételeket a tesztelési környezet (test bench) tartalmazza és előfordulhat, hogy egy kimerítő tesztelési igény esetén a tesztelési környezet bonyolultsága lényegesen nagyobb lehet mint maga a vizsgált rendszer. A MicroSim DesignLab esetén a szimuláció előkészítése viszonylag egyszerű lépéseket igényel:

  1. Ellenőrizzük az összes alkatelem paramétereit, bekötéseit, a huzalozásokat, a címkék meglétét az összes, a szimuláció szempontjából fontos összekötésen
  2. Ellenőrizzük a tápfeszültség(ek) meglétét, értékét
  3. Definiáljuk a bemeneti jelek hullámformáit
  4. Válasszuk ki a hullámforma analízis szempontjából fontos, megjelenítendő jeleket
  5. Állítsuk be a digitális szimulációhoz a tranziens analízis időtartamát és időbeli felbontását
  6. Indítsuk el a szimulációt, az esetlegesen jelzett hibákat javítsuk ki
  7. Az alkatelem paramétereket valójában csak a kevert módú, együttes analóg/digitális szimuláció esetén szükséges beállítani. A tisztán digitális komponensek paramétereit (pl. késleltetés, vagy tápfeszültség) a jelen egyszerű szimuláció során nem kell módosítani, a rendszer alapbeállításai elfogadhatóak. Ha viszont az áramkör tartalmaz Scmitt-triggeres RC oszcillátort, vagy pl. LED diódás kijelzőt felhúzóellenállással, akkor ezekben az esetekben már az R és C komponensek névleges értékeit is definiálni kell, az adott tervnek megfelelően. A huzalozások címkézése azért fontos, hogy az összekötések, csomópontok jelentéssel bíró azonosítót kapjanak. Ez a későbbiekben a hullámforma analízis során segíthet.
  8. A tisztán digitális szimuláció során tulajdonképpen tápfeszültséget szolgáltató alkatrészt nem kell a kapcsolási rajzon megadni. A rendszer automatikusan az adott logikai elemcsaládra jellemző (tipikusan +5V) digitális tápfeszültséget tételezi fel és alkalmazza. Ilyenkor azonban figyelmeztetés (WARNING) üzenetet generál, mivel a szimulátor nem tud DC munkapontot számolni. Ezt figyelemen kívül hagyhatjuk. Ha vannak analóg komponenseink, pl. felhúzó ellenállások, akkor a VDC egyszerű egyenfeszültségforrást érdemes használni, a névleges feszültségérték megfelelő megadásával.
  9. A bemeneti jelek, hullámformák megadására több lehetőség közül választhatunk. A továbbiakban csak a digitális jeleket előállító stimulusgenerátorokat tárgyaljuk, ezek közül is csak az Evalutation rendszerben rendelkezésre álló lehetőségekre korlátozva az ismertetést.

A stimulusgenerátorok a kapcsolási rajzon, mint önálló szimbólumok jelennek meg, de természetesen fizikailag nem létező alkatrészek. A legegyszerűbb jelforrások a fix logikai értéket adó LO (low, "0") és HI (high, "1") jelgenerátorok. Fix bemeneti jelek beállításához használhatók, amely jelek a szimuláció teljes ideje alatt állandó értéket tartanak. Ugyanez a hatás érhető el a közvetlen földre (GND) vagy (ellenálláson keresztül) a tápfeszültségre (VDC, ha van) kötéssel is.

Az általános digitális bemenőjelek előállítására két különböző generátortípus áll rendelkezésre. Az egyik a periódikus, tipikusan órajel előállításra használt DIGCLK, a másik típus az 1, 4, 8 vagy 16 bites jelcsoportok vezérlését megadó STIM1, STIM4, STIM8 ill. STIM16 generátorok. A generátorok paramétereinek beállítása a szimbólum dupla klikkelésével megnyíló attribútum párbeszédablakokban lehetséges.

A DIGLCK stimulusgenerátor periódikus bemeneti jelek előállítására szolgál. A hullámforma beállítás szempontjából fontos paraméterei a következők:

  • DELAY, az első órajelváltás előtti késleltetési idő
  • ONTIME, az órajel magas értékének időtartama egy periódus alatt
  • OFFTIME, az órajel alacsony értékének időtartama egy periódus alatt
  • STARTVAL, az órajel kezdeti értéke (alapérték="0")
  • OPPVAL, az órajel másik állapotának értéke (alapérték="1")

A STIMn típusú generátorok által előállított jelek időfüggvényeinek beállítása a COMMANDk parancsokkal történik. A parancsok szigorúan az egymást követő időpontokra írhatnak elő új logikai értékeket. Az időpontok megadása abszolút értékben(8.5us), relatív értékben(+.3us) vagy az órajelciklusok számának (+15c) előírásával történhet. Ez utóbbi esetben kötelező a TIMESTEP paraméter definiálása is, amely az óraciklus vagy szimulációs lépés periódusideje, ami alapján a ciklusokban adott időtartam normál időre átszámítható.

Az új logikai érték megadása alapvetően bináris formátum szerint történik. Ha szükséges akkor a FORMAT paraméterrel előírhatjuk 3 vagy 4 jel összefogását egy oktális vagy hexadecimális értékké. Ekkor például egy STIM8 típusú, 8 bites busz jelgenerátor formátum beállítása a kezdeti 11111111, nyolc bináris értékről a FORMAT = 44 megadásával két hexadecimális digitre állítható. Érvényes pl. a következő beállítás is: 143, az egyetlen feltétel, hogy a FORMAT-ban hivatkozott bitek összegének meg kell egyeznie a WIDTH parancs által definiált adatmérettel. Minden stimulusgenerátorhoz maximum 16 parancsot definiálhatunk. Az egyszerő parancsok sima értékadások, esetleg használhatók az INCBY/DECBY kifejezések is. Az érdeklődők számára az on-line PSpice Reference Manual ismerteti a bonyolultabb parancsfromátumokat is, melyekkel összetett szimulációs jelalakok, ciklusok is generálhatók.

A MicroSim DesignLab rendszeren belül egy további lehetőség a bemeneti vizsgálójelek előállítására a Schematic modullal egybeintegrált Stimulus Editor használata. Ennek előnye, hogy a beállított jelek időzítése közvetlenül, grafikus formában ellenőrizhető. Mivel az Evaluation rendszer az editor szolgáltatásait korlátozva, csak a periódikus órajelgenerátor funkciót engedélyezi, használatát nem látjuk indokoltnak, ezért ismertetésétől eltekintünk.

  1. A megjelenítendő jelek kiválasztásására már a szimulációt megelőzően lehetőségünk van, a markerek segítségével. A sokféle marker közül a digitális jelek vizsgálatához a feszültség markereket (V marker) használhatjuk. Az üzemmód kiválasztása a kapcsolási rajz szerkesztő szimulációs eszköztár Voltage/Level Marker ikonjára klikkeléssel, a Markers menü Voltage/Level Marker menüpontjával, vagy a Ctrl-M gyorsbillentyűvel érhető el. Helyezzünk markereket az összes fontos jelre, mert a kiválasztott jeleket a szimuláció után a Probe megjelenítő automatikusan megjeleníti. A markerek elhelyezéséhez vigyük a marker nyílhegyét a kiválasztott huzalra, majd klikkeléssel helyezzük el. Az üzemmód a jobboldali egérgomb megnyomásával, vagy az Escape billentyű leütésével fejezhető be. (Megjegyzés: a szimuláció lefutása után a Probe megjelenítő adatbázisában az összes jel hozzáférhető és megjeleníthető az Add Trace parancs által felkínált listából történő választással.)
  2. A MicroSim DesigLab PSpice szimulátor a digitális szimulációt a Tranzient Analysis funkció alatt hajtja végre. Az Analysis Setup ablakban a Bias Point Detail automatikusan mindig kiválasztódik, ez a SPICE szimulátor működéséhez szükséges. A nemlineáris elemek munkaponti paraméterértékeit határozza meg. Az Options beállítási lehetőségek számos globális, rendszerszintű paraméter konfigurálhatóságát teszik lehetővé (pl. DIGDRVZ = 20k), nem kell módosítanunk az alapbeállításokat.

    A Digital Setup párbeszédablak biztosítja a szimulációs paraméterek beállíthatóságát. Ezek az időzítési modell típusa, a tárolók kezdőértékének beállítása és a analóg/digitális I/O interfész modell pontossága. Mindhárom paramétert hagyhatjuk a rendszer alapbeállításában, ez megfelel az legáltalánosabban használható feltételeknek.

    A Timing Mode (időzítési modell) választás a teljes áramkörre globálisan meghatározza a használandó minimum/tipikus/maximum vagy worst-case (min vagy max) adatok használatát. Ha egy-egy alkatésznél ezután el szeretnénk térni a globális beállítástól, akkor a kapcsolási rajzon az alkatrészt kiválasztva az egyedi paraméterek között kell a MNTYMXDLY paramétert az 1,2,3,4 értékre állítani, amely értékek sorendben a felsorolt késleltetéseknek felelnek meg. Az egyedi MNTYMXDLY paraméter 0 alapértéke engedélyezi a globális előírás érvényre jutását az adott modellre.

    A Flip-Flop Initialization a tárolóelemek kezdeti állapotát határozza meg. A pesszimista X (nem definiált) választás a legbiztonságosabb, hiszen így ellenőrizhető, hogy az áramkör bármely kezdeti érték fenállása esetén is a vezérlőjelek hatására a helyes állapotba kerül.

    A Default A/D Interface maradhat a Level 1 opcióban, ekkor az A/D interfész generálja az átmeneti (R, F,X) állapotokat is, amikor az analóg interfész jelek a VILMAX (a bemeneti alacsony szint maximális értéke) és VIHMIN (a bemeneti magas szint minimális értéke) átmeneti tartományban mozognak. A Level 2 opció ezt a finom felbontást nem alkalmazza, az átkapcsolás egy adott (eszközcsaládfüggő) komparálási szintnél következik be. A Level 3 és Level 4 opciók megegyeznek az 1 és 2 opciókkal, kivéve a HC és HCT eszközöket, ahol a változó tápfeszültségre alkalmas (jóval komplexebb és ezért jóval lassúbb) modelleket tartalmaznak.

    A Transient Analysis beállítása a szimulációs idők meghatározásából áll.

    Egyetlen paramétert kell beállítanunk, ez a Final Time, a tranziens analízis teljes szimulációs ideje. A többi paraméter a digitális szimuláció szempontjából nem fontos. A Print Step csak a PSpice által közvetlenül generált nyomtató lista file tartalmát befolyásolja, a Probe output ettől független. A No-Print Delay üresen hagyva a 0 értéket veszi fel, tehát a jelek megfigyelése a szimuláció elejétől kezdődik. A Step Ceiling a dinamikus szimulációs időlépés méretére adhat korlátot, jelen esetben nem szükséges állítani. Az analóg szimulátorok az áramkör aktivitásától függően, a szimulációs lépés méretét a számítási idő csökkentése érdekében változtatják, a pontosság fentartása mellett. A lépés méret korlátozás biztosíthatja, hogy szimulációs lépés a nyomtatási lépéshez képest nem lesz túl nagy.

    Az Analysis Setup ablak bezárásával a szimuláció összes kezdeti feltételét beállítottuk. Biztonsági okokból mentsük el a kapcsolási rajz jelenlegi állapotát. Ez egyúttal a projekthez tartozó összes beállított opciót is elmenti.

  3. A szimuláció a szimulációs eszköztár Simulation ikonjával, vagy az Analysis menü Simulate menüpontjával, vagy az F11 gyorsbillentyűvel indítható el. A PspiceAD szimulátor mint háttér alkalmazás fut. Az üzenetablakban jelzi a szimulált áramkör nevét, méretét, a felhasznált memóriát. Az eltelt idő és a teljes szimulációs idő is leolvasható. A szimuláció során generált esetleges hibajelzések, figyelmeztetések és megjegyzések a MicroSim Message Viewer ablakban olvashatók, a szimulátor csak jelzi ezek generálását. A Message Viewer ablak vagy automatikusan előre ugrik, vagy ikon állapotban marad, ekkor nekünk kell megnyitnunk az üzenetek olvasásához. Súlyosabb (FATAL) hibák esetén a szimuláció leáll, ekkor a hiba okának felderítésével és a hiba javításával léphetünk tovább. A hibajelzések az Analysis menü Examine Output menüpontjával ellenőrizhetők. Ekkor a tervezőrendszerhez tartozó egyszerő szövegszerkesztő automatikusan megnyíló ablakában megvizsgálhatjuk a generált output lista file-t. Ez tartalmazza a forrásprogram nevét, a hivatkozott segédfile-okat, könyvtárakat, szimulációs modelleket, a szimulációs vezérlőgenerátorok parancsait, a szimuláció során generált rendszer üzeneteket és a naplózást. Ugyanezen menü Examine Netlist menüpontjával a huzalozási lista ellenőrizhető, ha valamilyen kapcsolástechnikai probléma miatt szükséges lenne átolvasni. A hibajelzések elhárításához esetleg szükség lehet a részletes on-line dokumentációk, mint például PSpice A/D User"s Guide, PSpice A/D Reference Manual bizonyos részleteinek tanulmányozására. Ezeket a PDF formátumú dokumentációkat az Acrobat Reader programmal olvashatjuk. Az Acrobat Reader programot használatát ismertnek tételezzük fel, ebben a rövid leírásban erre nem térünk ki.

  4. A hibátlan szimuláció befejeződésekor a eredmények értékelését támogató Probe hullámforma analizátor alkalmazás automatikusan elindul és amennyiben voltak markerrel kiválasztott jelek, azokat felrajzolja. (A példa egy egyszerű 4 bites számláló szimulációs eredménye a statedemo és xxx nevű jelekkel kiegészítve.)

A Probe nevű hullámforma analizátor képes együttes analóg és digitális hullámforma megjelenítésre. A kevert üzemmódú kijelzés esetén az ablak két részre osztódik, az alsó része az analóg, míg felső része a digitális jeleket mutatja. Az időtengely természetesen közös. A szerteágazó szolgáltatások közül a digitális szimuláció szempontjából a legfontosabbak:

  • A digitális jelek állapotai egyértelműen és könnyen azonosíthatóak, külön grafikai és színkód a normál (0 és 1) logikai állapotoktól eltérő R, F, X és Z állapotoknak. Az ábrán a statedemo nevű jel állapota 10us-os lépésekkel változik a 0-R-1-F-0-X-0-Z-0 szekvencia szerint. Az xxx jel, amely a statedemo és RCO jelek NAND kapcsolata, a megfelelő helyeken ismeretlen, X állapotot vesz fel.
  • A digitális jelek összefoghatók, buszjelekként is megjeleníthetők abban az esetben is, ha eredetileg a szimuláció során nem buszjelként szerepeltek. A buszjelek kijelzési formátuma lehet bináris, decimális, hexadecimális és oktális. Egy jel szerepelhet önálló jelként és buszjelként is egyidejűleg.
  • A digitális jelekkel (és különböző konstansokkal) kifejezéseket alkothatunk, a kifejezések időfüggvényei is megjeleníthetők. A jelek megjelenítését, a kifejezések megszerkesztését az Add Traces parancs párbeszédablakának Trace Expression mezőjében adhatjuk meg.
  • A hullámformák időtengelymenti nyújtása (Zoom In) szinte tetszőleges lehet, ami által az egészen rövid idejő tranziens jelenségek (hazárdok), többszörös jelváltások könnyen azonosíthatóak. A rendelkezésre álló kurzorokkal a nagyítandó szakaszok kijelölhetők, az időtengelyen mérések végezhetők.
  • A megjelenített hullámalakok, grafikus ablakok nyomtathatók, vagy más Windows alkalmazásba másolhatók, különböző formátumban.

A szimuláció után (ha az alapbeállításon nem változtattunk), a Probe grafikus adatbázisában az összes jel megtalálható. A kiválasztott jelek automatikusan megjelennek, az egyéb jelek megjelenítéséhez az Add Trace ikonra klikkelve, a Trace menü Add menüpontját kiválasztva, vagy az Insert gyorsbillentyűt használva az Add Traces párbeszédablak jelenik meg. Az ablak baloldali listájában kikapcsolva a számunkra érdektelen Alias Names és Subcircuit Nodes csoportokat, az összes jelből kiválaszhatjuk az analízis szmpontjából fontos digitális és együttes analóg/digitális szimuláció esetén az analóg jeleket is. Bármely jelre klikkelve, az a Trace Expressison ablakba másolódik, majd az ablak bezárásával megjelenítődik a hullámforma analizátoron. Egyszerre több jelet is kiválaszthatunk. Az ablak jobboldali listájában található Digital Opeators and Constans műveleti jel halmazból operátorokat választhatunk ki kifejezések megadására. Buszokat a jelcsoportokból a {} zárójel segítségével formálhatunk.

Dokumentáció

A dokumentáció kb. 4-5 oldal terjedelemben, tartalmazzon egy címlapot, a feladat szöveges leírását, a specifikációt megvalósító logikai terv kapcsolási rajzát, rövid működési leírást és a szimuláció eredményét mutató hullámforma jelalakokat. A teljes dokumentációt nyomtatott formában kérjük beadni, a grafikus eredményeket külön mellékelve vagy a dokumentumba ágyazva.

Mintafeladat

A mintafeladat a 74161 típusú számláló viselkedésének ellenőrzése a katalógusban ismertetett vezérlési diagram alapján. A számláló vezérlő jeleinek beállításával a következő működési szekvenciát hajtjuk végre: A működés magas állapotú, inaktív órajellel és vezérlőjelekkel indul, a bemeneteken a 12 értéket állítjuk be. Először az aszinkron törlés jelet aktiváljuk, a számláló állapota 0 lesz. A törlés üzemmód alatt megindítjuk az órajelet, majd a törlés megszüntetése után töltést állítunk be, ami betölti a 12 értéket a számlálóba. A töltés mód után engedélyezzük a számlálást, a bemenetek értéke ezután közömbös, tehát X értékre állítjuk. Néhány órajel után először az egyik, majd a másik engedélyező jel kikapcsolásával letiltjuk a számlálást. Az órajel frekvenciát 10MHz-re állítjuk (Tc=100ns), így a kimeneti jelek várhatóan 10-20ns nagyságrendbe eső kapcsolási idejei már észrevehetők, ill. egy kinagyított diagramon jól kimutathatók lesznek. A bemeneti és kimeneti jeleket egyedi és buszjelekként is megfigyeljük, a buszokat hexadecimális formátumban jelenítve meg.

A mintafeladat kapcsolási rajza:

A kapcsolás egyetlen valódi alkatrészt, az IC1 azonosítójú 74161 típusú számlálót tartalmazza, ezenkívül csak a stimulus generátorok és a jelek megfigyelését kijelölő markerek láthatók. Minden jelet elneveztünk a funkciójának megfelelő címkével. A bemeneti jeleket előállító stimulusgenerátorok órajelet, egyedi és 4 bit szélességű buszjelet állítanak elő. Az ENP jel időfüggvényét generáló parancssorozat az alábbi, a többi jel hullámformája az idődiagramról leolvasható:

A szimuláció során egy figyelmeztetés generálódott, de tisztán digitális szimuláció esetén ez elhanyagolható.

Végül a szimuláció lefutása után automatikusan megnyíló Probe alkalmazás által mutatott hullámforma analízis eredményei láthatók a következő ábrán. A diagram jól tükrözi az előzetesen várt viselkedést. Megállapíthatjuk, hogy a szimulációs modell ezen a szinten jól modellezi az eszközt.

A valóságos időviszonyokról a diagram egy kinagyított részlete árul el több információt. A számláló kimenetein megfigyelhető C --> D --> E --> F --> 0 állapotátmenet sorozat részletesebb vizsgálata alapján a következők állapíthatók meg.

  • Az egyes kimenetek azonos értelmű jelváltási ideje az órajel felfutó éléhez képest azonos késleltetéssel történik. Ez elfogadható, hiszen az áramkörön belül fizikailag azonos típusú flip-flop-ok kimenetei. Az idődiagramon végzett mérések szerint tCP --> QLH=13.9ns, tCP --> QHL=16ns, a fel és lefutási idők nem azonosak, ez viszont arra hívja fel a figyelmet, hogy a kimeneti meghajtók nem szimmetrikusak. A két időtartam közötti különbség okozza, hogy a D --> E állapotváltásnál egy átmeneti állapot lép fel.
  • Láthatóan az RCO jel a kimeneti jelekből dekódolva, azok beállását tQ --> RCOLH=9.7ns, tQ --> RCOHL=7.5ns késleltetéssel követve. Ez az órajelhez képest természetesen további késleltetést jelent. Az RCO jel mellesleg függ az ENT engedélyező jeltől is, ennek a jelútnak a késleltetési viszonyai viszont ebből az egyszerű szimulációból nem derülnek ki. Az időzítés vizsgálata pedig fontos lenne, mert éppen ez okozza, hogy kaszkádosított, sok bites (pl. 12) szinkron számlálóláncoknál az (0000 1110 1110 --> 0000 1110 1111 --> 0000 1111 0000) átmenetsorozatnál a második helyiértékű digiten is generálódik egy rövid RCO pulzus, holott az csak 15 órajel múlva lenne esedékes. Az átmeneti pulzus a harmadik helyiértéken egy hibás 0000 --> 0001 váltást okozhat, ha az órajel következő felfutó éle előtt elegendő idővel nem múlik el. Tehát a pulzus a szinkron számláló miatt általában működési problémát nem okoz, de az elérhető maximális frekvenciát jelentősen korlátozza.

Időtartam mérések

A Probe mérőkurzorait a Toggle Cursors ikonnal, a Tools menü Cursors menüpontjával, vagy a Ctrl-Shft-C gyorsbillentyűvel kapcsolhatjuk be. A két mérőkurzor kiválasztása az egér jobb és baloldali gombjával történik. A mozgó grafikus kurzorral kijelölhetjük a mérőkuzor kívánt helyét, majd a megfelelő egérgombbal klikkelve a kiválasztott mérőkurzor az adott pozícióra ugrik. Ugyanezt a másik mérőkurzorral is elvégezve, a két kurzor közötti időtartam leolvasható. Ha az egérgombokkal a mérőkurzorokhoz jeleket is rendelünk, akkor a kurzor automatikusan az adott jelnek a grafikus kurzorhoz legközelebbi jelváltásához ugrik. A kis kurzor ablak a két mérőkurzor pozíciójában mért jel amplitudókat és a kettő közötti idődifferenciát mutatja.

Referenciák:

MicroSim Designlab Evaluation CD v.8.0 (July 1997) On-line documentation

http://www.microsim.com/

Texas Instruments TTL Data Book , SN74161 Data Sheet


Utolsó módosítás: 1998. március 23.

© 2010-2024 BME MIT | Hibajelentés | Használati útmutató