MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Opakování. České vysoké učení technické Fakulta elektrotechnická

Podobné dokumenty
MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Speciální obvody a jejich programování v C 1. díl. České vysoké učení technické Fakulta elektrotechnická

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Speciální obvody a jejich programování v C 2. díl

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systém přerušení. České vysoké učení technické Fakulta elektrotechnická

Struktura a architektura počítačů (BI-SAP) 4

Y36SAP 2007 Y36SAP-4. Logické obvody kombinační a sekvenční používané v číslicovém počítači Sčítačka, půlsčítačka, registr, čítač

Struktura a architektura počítačů (BI-SAP) 3

Přednáška - Čítače. 2013, kat. měření, ČVUT - FEL, Praha J. Fischer. A3B38MMP, 2013, J.Fischer, ČVUT - FEL, kat. měření 1

Struktura a architektura počítačů

Číslicové obvody základní pojmy

SEKVENČNÍ LOGICKÉ OBVODY

4. Elektronické logické členy. Elektronické obvody pro logické členy

Digital Control of Electric Drives. Vektorové řízení asynchronních motorů. České vysoké učení technické Fakulta elektrotechnická

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systémová struktura počítače

Struktura a architektura počítačů

ŘÍZENÍ ELEKTRICKÝCH POHONŮ. Systémová struktura počítače Řízení běhu programu. České vysoké učení technické Fakulta elektrotechnická

18A - PRINCIPY ČÍSLICOVÝCH MĚŘICÍCH PŘÍSTROJŮ Voltmetry, A/D převodníky - principy, vlastnosti, Kmitoměry, čítače, fázoměry, Q- metry

Architektura počítačů Logické obvody

Logické obvody 10. Neúplné čítače Asynchronní čítače Hazardy v kombinačních obvodech Metastabilita Logické obvody - 10 hazardy 1

Přerušovací systém s prioritním řetězem

Architektura počítačů Logické obvody

Sekvenční logické obvody

11. Logické analyzátory. 12. Metodika měření s logickým analyzátorem

Přednáška , kat. měření, ČVUT - FEL, Praha J. Fischer. A4B38NVS, 2012, J.Fischer, kat. měření,, ČVUT - FEL 1

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

Sylabus kurzu Elektronika

Obsah DÍL 1. Předmluva 11

SEP2 Sensor processor. Technická dokumentace

12. Booleova algebra, logická funkce určitá a neurčitá, realizace logických funkcí, binární kódy pro algebraické operace.

Y36SAP Y36SAP-2. Logické obvody kombinační Formy popisu Příklad návrhu Sčítačka Kubátová Y36SAP-Logické obvody 1.

Systém přerušení. Algoritmizace a programování. Struktura počítače - pokračování. Systémová struktura počítače pokrač.

Booleova algebra. ZákonyBooleovy algebry Vyjádření logických funkcí

Pohled do nitra mikroprocesoru Josef Horálek

OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ

2. LOGICKÉ OBVODY. Kombinační logické obvody

5. A/Č převodník s postupnou aproximací

Binární data. Číslicový systém. Binární data. Klávesnice Snímače polohy, dotykové displeje, myš Digitalizovaná data odvozená z analogového signálu

Struktura a architektura počítačů (BI-SAP) 10

Logické obvody - kombinační Booleova algebra, formy popisu Příklady návrhu

Logické funkce a obvody, zobrazení výstupů

3. Sekvenční logické obvody

KOMBINAČNÍ LOGICKÉ OBVODY

Přednáška A3B38MMP. Bloky mikropočítače vestavné aplikace, dohlížecí obvody. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer

Seznam témat z předmětu ELEKTRONIKA. povinná zkouška pro obor: L/01 Mechanik elektrotechnik. školní rok 2018/2019

Témata profilové maturitní zkoušky

Binární logika Osnova kurzu

Velmi zjednodušený úvod

LOGICKÉ SYSTÉMY PRO ŘÍZENÍ

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

PROGRAMOVATELNÉ LOGICKÉ OBVODY

Způsoby realizace této funkce:

Sekvenční logické obvody

5. Sekvenční logické obvody

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Mikrokontroléry. Doplňující text pro POS K. D. 2001

VY_32_INOVACE_OV_2.ME_CISLICOVA_TECHNIKA_19_SPOJENI KOMBINACNICH_A_SEKVENCNICH_OBVODU Střední odborná škola a Střední odborné učiliště, Dubno

Návrh ovládání zdroje ATX

P4 LOGICKÉ OBVODY. I. Kombinační Logické obvody

Algoritmizace a programování

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Technická kybernetika. Obsah. Klopné obvody: Použití klopných obvodů. Sekvenční funkční diagramy. Programovatelné logické automaty.

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Title: IX 6 11:27 (1 of 6)

Cíle. Teoretický úvod

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Návrh synchronního čítače

Strojový kód. Instrukce počítače

Témata profilové maturitní zkoušky

A/D převodníky, D/A převodníky, modulace

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu

FVZ K13138-TACR-V004-G-TRIGGER_BOX

Cíle. Teoretický úvod. BDIO - Digitální obvody Ústav mikroelektroniky Sekvenční logika - debouncer, čítače, měření doby stisknutí tlačítka Student

Principy komunikace s adaptéry periferních zařízení (PZ)

Analogově-číslicové převodníky ( A/D )

Obsluha periferních operací, přerušení a jeho obsluha, vybavení systémových sběrnic

Systém řízení sběrnice

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení. N Měřicí a řídicí technika 2012/2013. Logické proměnné

MĚŘENÍ HRADLA 1. ZADÁNÍ: 2. POPIS MĚŘENÉHO PŘEDMĚTU: 3. TEORETICKÝ ROZBOR. Poslední změna

ASYNCHRONNÍ ČÍTAČE Použité zdroje:

Logické řízení. Náplň výuky

Direct Digital Synthesis (DDS)

Architektura počítače

Rozšiřující desce s dalšími paralelními porty Rozšiřující desce s motorkem Elektrickém zapojení Principu činnosti Způsobu programování

Základy digitální techniky

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

LOGICKÉ OBVODY 2 kombinační obvody, minimalizace

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu

KOMBINAČNÍ LOGICKÉ OBVODY

evodníky Univerzita Tomáše Bati ve Zlíně Ústav elektrotechniky a měření Přednáška č. 14 Milan Adámek adamek@fai.utb.cz U5 A

3. D/A a A/D převodníky

mové techniky budov Osnova Základy logického Druhy signálů

Konfigurace portů u mikrokontrolérů

Návrh čítače jako automatu

Přerušení POT POT. Přerušovací systém. Přerušovací systém. skok do obslužného programu. vykonávaný program. asynchronní událost. obslužný.

Pulzní (diskrétní) modulace

2.9 Čítače Úkol měření:

Konečný automat. Studium chování dynam. Systémů s diskrétním parametrem číslic. Počítae, nervové sys, jazyky...

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Univerzita Tomáše Bati ve Zlíně

Transkript:

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY Opakování České vysoké učení technické Fakulta elektrotechnická AB4MIS Mikroprocesory pro výkonové systémy Ver..4 J. Zděnek, 27

MOS transistory jako elektrické spínače (Důležité) Pro zjednodušení označíme: V jako log symbolem +V jako log symbolem d g = d g = d nmos g OFF ON s s s d d d pmos g ON OFF s s s Literatura: [5] AB4MIS Mikroprocesory pro výkonové systémy 2

Napájecí napětí transistorů MOS (v digitálních obvodech) Důležité V značí se GND (zkratka z Ground) +V značí se V DD V DD = 5V u starších obvodů V DD = 3,3V nebo 2,5V nebo,8v nebo,5v,. Větší integrace (více transistorů na čipu) menší tranzistory nutno nižší napětí, aby nedocházelo k průrazu. AB4MIS Mikroprocesory pro výkonové systémy 3

CMOS invertor (funkce NOT) (Pro zájemce) V DD kladné napětí a f NOT a INV f V DD a f f NOT a zapisujeme: f a AB4MIS Mikroprocesory pro výkonové systémy 4

Digitální (číslicový) signál (Důležité) Idealizovaný tvar digitálního signálu (High) Náběžná hrana Sestupná hrana (High) Náběžná hrana Sestupná hrana (Low) (Low) t t t t Kladný impuls Záporný impuls AB4MIS Mikroprocesory pro výkonové systémy 5

Digitální (číslicový) signál (Důležité) Skutečný tvar digitálního signálu Překmit Zakmitání 9% Amplituda 5% t W Šířka pulsu V t r t f % Zakmitání Podkmit Náběžná hrana Sestupná hrana AB4MIS Mikroprocesory pro výkonové systémy 6

Výstupní a vstupní logické úrovně (Důležité) Výstupní a vstupní úrovně logických členů (zde příklad tzv. TTL úrovní) 5.V 5.V Bezpečnostní reserva pro 2.4V.4V.V Výstup logického členu 2.V.8V.V Vstup logického členu Zakázané pásmo (jen přechod - nebo -) Bezpečnostní reserva pro AB4MIS Mikroprocesory pro výkonové systémy 7

Typy výstupů logických členů (Důležité) Standardní výstup Totem-pole output (Push-Pull) Dvoustavový výstup Na výstupu vždy hodnota nebo Výstupy nelze navzájem spojovat Otevřený kolektor Open-collector output (OC) Na výstupu pouze spodní spínač Výstupy lze spojit, nutný upínací odpor na V cc Montážní součin Wired-AND Třístavový výstup Tri-state output (TS) Na výstupu hodnoty,, Z (Z = vysoká impedance-odpojeno) Výstupy lze spojovat Řízení výstupních členů musí zajistit, že pouze jeden vysílač není v Z AB4MIS Mikroprocesory pro výkonové systémy 4 8

Dvoustavový výstup (Totem-pole output) (Důležité) Totem-pole output v cc a Gate Logic y Nelze spojovat Totem-pole output v cc b Gate Logic z Spínače jsou nad sebou AB4MIS Mikroprocesory pro výkonové systémy 4 9

Otevřený kolektor (Open-collector output, OC) (Důležité) Open-collector output a Gate Logic y v cc R Wired and b Gate Logic z f y. z Common bus AB4MIS Mikroprocesory pro výkonové systémy 4

Třístavový výstup (Tri-state output, TS) (Důležité) v cc a Gate Logic y oe v cc b Gate Logic z oe Common bus AB4MIS Mikroprocesory pro výkonové systémy 4

Logický kombinační obvod Logický kombinační obvod (LKO) popsán logickou funkcí Vstupy a výstupy nabývají pouze hodnot nebo x y LKO x n y m Hodnoty všech výstupních proměnných jsou v každém časovém okamžiku určeny pouze hodnotami vstupních proměnných ve stejném okamžiku (LKO si nepamatuje své minulé stavy) AB4MIS Mikroprocesory pro výkonové systémy 2 2

Booleova algebra Booleova algebra konečná množina prvků obsahující: logické proměnné dvě binární operace AND (logický součin a logický součet) unární operaci negace a, b, c,....), NOT (, ( OR ( ) ) dva logické stavy (logické konstanty) konjunkce disjunkce Axiomy:.... (Axiom tvrzení, které se nedokazuje, pokládá se za platné) AB4MIS Mikroprocesory pro výkonové systémy 2 3

Zákony:. 2. 3. 4. 5. 6. 7. 8. 9.. Booleova algebra a b b a a. b b. a ( a b) c a ( b c) ( a. b). c a.( b. c) a.( b c) a. b a. c a ( b. c) ( a b)( a c) a a a a. a a a a a. a a. a a a.a a a ( a. b) a a.( a b) a a a. b a b a.( a b) a. b a a Komutativní Asociativní Distributivní Idempotentnost Komplementarita Agresivnost Neutrálnost Absorbce Absorbce negace Involuce AB4MIS Mikroprocesory pro výkonové systémy 2 4

Booleova algebra Zákony:. 2. a b a. b a. b a b a. b a. c b. c a. b a. c ( a b).( a c).( b c) ( a b).( a c) de Morganův Absorbce consensu 3. f ( a, b, c,...) a. f (, b, c,...) a. f (, b, c,...) a důsledek: f ( a, b, c,...) a. f ( b, c,...) a. f ( b, c,...) Shannonův o dekompozici Každou logickou funkci lze zapsat pomocí logického součinu, součtu a negace Princip duality: Každé rovnosti výrazů odpovídá rovnost duálních výrazů dle transformace:. ( OR AND) 4.. ( AND OR) AB4MIS Mikroprocesory pro výkonové systémy 2 5

Funkce hradel a b a f f 2 b a f 3 AND OR INV (Invertor) AND OR NOT a b f a b f 2 a f 3 f a AND b zapisujeme : f a. b f 2 a ORb zapisujeme : f 2 a b f 3 NOTa zapisujeme : f 3 a AB4MIS Mikroprocesory pro výkonové systémy 2 6

Funkce hradel a b a a f 4 f 5 f 6 b b NAND NOR XOR NAND a b f 4 NOR a b f 5 XOR a b f 6 f 4 a NAND zapisujeme : f 4 a. b b f 5 a NORb zapisujeme : f 5 a b f 6 a XOR b zapisujeme : f 6 a b AB4MIS Mikroprocesory pro výkonové systémy 2 7

Obecné kombinační hradlo, zpoždění Kombinační hradlo je určeno: Funkčním chováním Pravdivostní tabulka Logická rovnice Zatížením vstupů a výstupů Zpožděním signálu ze vstupu na výstup pro změnu na a na (Propagation Delay) Úrovněmi logické a na vstupu a výstupu Spotřebou VIH Nejrychlejší a nejmenší hradla (z nejméně transistorů) jsou: invertor (NOT)(v CMOS 2 transistory), NAND a NOR (4), AND a OR (6) Skutečné hodnoty zpoždění závisí na technologii (us az jednotky ns) VIL tilh tihl VOH VOL AB4MIS Mikroprocesory pro výkonové systémy 2 8

Hazardy (Důležité) Co je hazard v logických obvodech Příčiny vzniku hazardu Nalezení hazardu Kdy hazard ovlivní činnost logických obvodů? Poznámka: zde se zabýváme jen statickým hazardem. Existují ještě hazardy dynamické (souvisejí se statickými) AB4MIS Mikroprocesory pro výkonové systémy 4 9

Příčiny vzniku hazardu (Důležité) Hazard je krátká neočekávaná změna výstupního signálu (glitch), která není matematickým výstupem logické funkce Signál ze vstupu logického obvodu se šíří na výstup různými cestami, které se někdy rozdělí a pak zase spojí. Signál se různými cestami vlivem časového zpoždění na hradlech a vodičích šíří různou dobu. V místě opětovného spojení má signál z různých cest různý časový posun. Statický hazard výstup logického obvodu má být trvale v nebo (má být statický), místo toho se objeví krátký impuls do opačné úrovně. -- statický hazard v -- statický hazard v AB4MIS Mikroprocesory pro výkonové systémy 4 2

Statický hazard v úrovni (Důležité) x T 4ns a c y z T 2ns b T 4ns c 2 T 4ns f f x y y z T c 2 4 4 T c 4 4 8ns 2 ns TH Tc Tc 2 2ns AB4MIS Mikroprocesory pro výkonové systémy 4 2

Statický hazard v úrovni (Důležité) x x T 4ns a c y z y z T 2ns b T 4ns c 2 T 4ns f a b f 4 6 4 2 Pro : x, z f x y y z!! hazard Skutečnost Má být AB4MIS Mikroprocesory pro výkonové systémy 4 22

Kdy hazardy vadí? (Důležité) Hazardy v kombinačních obvodech nejsou kritické výstup kombinačního obvodu se po určité (krátké) době vždy ustálí ve správné hodnotě Hazardy v sekvenčních obvodech mohou uvést klopné obvody do nesprávného stavu a tím nastavit celý sekvenční obvod (konečný automat) do nevratného kritického stavu!!! Řešení: Hazard-free design Synchronní návrh a správný výpočet maximální povolené hodinové (synchronizační) frekvence AB4MIS Mikroprocesory pro výkonové systémy 4 23

Index, minterm, Maxterm Pravdivostní tabulka D f ( c, b, a) c, b, 2 3 4 5 6 7 a minterm (m) c. b. a c. b. a c. b. a c. b. a c. b. a c. b. a c. b. a c. b. a Maxterm (M) c b a c b a c b a c b a c b a c b a c b a c b a Index Nezávisle proměnné mintermy Funkční hodnoty Maxtermy D n d i i i 2 2... d2 2 d 2 d 2... d2 4 d 2 d AB4MIS Mikroprocesory pro výkonové systémy 2 24

SoP (ÚNDF), PoS (ÚNKF) ÚNDF Úplná normální disjunktivní forma (SoP Sum of Products) f m i( ) m (, 2, 3, 6) i f ( c, b, a) c. b. a c. b. a c. b. a c. b. a ÚNKF Úplná normální konjunktivní forma (PoS Product of Sums) f f Mj() M(, 4, 5, 7) j ( c, b, a) ( c b a).( c b a).( c b a ).( c b a ) AB4MIS Mikroprocesory pro výkonové systémy 2 25

AB4MIS Mikroprocesory pro výkonové systémy 2 26 Minimalizace logických funkcí Minimalizujte funkci zadanou pravdivostní tabulkou: ),, ( 2 x x x f 2 2 2 2 2 x x x x x x x x x x x x x x x f 7) m(,,3, 4, ) )( )( ( 2 2 2 2,5,6) ( x x x x x x x x x f M ÚNDF Products Sum of SoP 7) 4, 3,, (, m f ÚNKF Sums of Product PoS ) 6 5, M (2, f 7 6 5 4 3 2 D f x 2 x x 7 6 5 4 3 2 D f x 2 x x

AB4MIS Mikroprocesory pro výkonové systémy 2 27 K mapa (Karnaughova mapa) K mapa forma pravdivostní tabulky Používá se pro rychlou grafickou minimalizaci logických funkcí V sousedících polích K mapy se mění pouze jedna vstupní proměnná Čára nad příslušným polem značí, že proměnná má hodnotu "" Očíslování polí K mapy je vhodná pomůcka pro rychlý přenos hodnot logické funkce z běžné pravdivostní tabulky do K mapy K mapa je použitelná pro 2 5 (6) vstupních proměnných 7 6 5 4 3 2 D f x 2 x x 7 6 5 4 3 2 D f x 2 x x K - mapa Pravdivostní tabulka f f 4 5 6 7 3 2 x x x2 Označení polí indexem D vhodná pomůcka

AB4MIS Mikroprocesory pro výkonové systémy 2 28 Minimalizace logických funkcí 2) Minimalizace z K-mapy (Karnaughova mapa): 7) 4, m(,,3, f 4 5 6 7 3 2 x x x2 4 5 6 7 3 2 x x x2. řešení 2 x x x x x x f 2. řešení 2 2 x x x x x x f Porovnej s řešením dle ) 7 6 5 4 3 2 D f x 2 x x 7 6 5 4 3 2 D f x 2 x x

K mapa, postup minimalizace V K mapě označíme 2 n tice sousedících hodnot Volíme co největší oblasti a co nejmeně oblastí Vstupní proměnné, které se mění v označené oblasti vyloučíme Z proměnných, které se nemění v označené oblasti, zapíšeme minimalizovanou funkci ve tvaru SoP f (, x,...) x m (...,...,... ) x2 f 3 2 4 5 7 6 x 2 x x x 3 2 4 5 7 6 x x x x2 3 2 4 5 7 6 f x2 x 3 2 4 5 7 6 x x x2 f x2 x2 f x 2 x x x x2 x x AB4MIS Mikroprocesory pro výkonové systémy 2 29

K mapa šablony x x x 3 2 4 5 7 6 x 2 3 3 2 2 3 5 4 x 4 5 7 6 2 3 5 4 8 24 9 25 27 26 3 2 8 9 28 29 3 3 x2 4 5 7 6 x3 x2 2 2 23 22 x x 4x3 2 6 7 9 8 AB4MIS Mikroprocesory pro výkonové systémy 2 3

Prioritní enkodér (???) Kóduje stav n vstupů do určeného kódu (např. binárního) na výstupu Libovolný počet vstupů x i prioritního enkodéru může současně nabývat hodnoty. Prioritní enkodér na výstupech y k vyšle vždy pouze kód aktivního vstupu (tj. x i = ) s nejvyšší prioritou (zde nejvyšší prioritu má x ) Použití systém přerušení v počítačí (interrupt system), Prioritní enkodér x x x 2 Priority Encoder y y D i x 2 x x y y D o 2 2 3 4 3 5 6 2 7 AB4MIS Mikroprocesory pro výkonové systémy 4 3

Prioritní enkodér (???) Prioritní enkodér x x x 2 Priority Encoder y y D i x 2 x x y y D o 2 2 3 4 3 5 6 2 7 y y 3, 7) x x x x x x x x x x x x x x x m (,, 4, 5 2 4 ) x x x x x x x x x m (2,, 6 2 2 2 2 2 2 2 AB4MIS Mikroprocesory pro výkonové systémy 4 32

Prioritní enkodér (???) Prioritní enkodér x x x 2 Priority Encoder 3 2 4 5 7 6 y y y y x x D i x 2 x x y y D o 2 2 3 4 3 5 6 2 7 3 2 4 5 7 6 x x2 x2 y x x2 x y x2 x x x AB4MIS Mikroprocesory pro výkonové systémy 4 33

Prioritní enkodér (???) Realizace x x x 2 Priority Encoder y y y x x2 x y x2 x x x x y x y x 2 AB4MIS Mikroprocesory pro výkonové systémy 4 34

Dekodér/Demultiplexer (Důležité) Dekóduje kód na vstupu (např. binární) na kód z n na výstupu Typicky je výstupní kód aktivní v Použití dekodér adresových bloků v počítači, x x en Decoder Demultiplexer y y y y 2 3 Dekodér/Demultiplexer D i x x Y 3 y 2 y y 2 3 AB4MIS Mikroprocesory pro výkonové systémy 4 35

Dekodér/Demultiplexer (Důležité) x x en Decoder Demultiplexer y y y y 2 3 Dekodér/Demultiplexer D i x x Y 3 y 2 y y 2 3 y x x y x x y 2 x x y 3 x x AB4MIS Mikroprocesory pro výkonové systémy 4 36

Dekodér/Demultiplexer (Důležité) Realizace x x en Decoder Demultiplexer y y y y 2 3 y x x y x x x x y y y 2 x x y 3 x x y 2 en y 3 AB4MIS Mikroprocesory pro výkonové systémy 4 37

Logický sekvenční obvod Logický sekvenční obvod (LSO) popsán stavovým diagramem, rovnicemi, tabulkami, HDL jazykem Vstupní, výstupní i vniřní (q i ) proměnné nabývají pouze hodnot nebo Vstupní stav I O Výstupní stav x LSO S y q x n q k y m Vnitřní stav Hodnoty všech výstupních proměnných jsou v každém časovém okamžiku určeny hodnotami vstupních proměnných ve stejném okamžiku ale též hodnotami vstupních proměnných předcházejících (LSO má vnitřní paměť) A7B4SAP Struktura a architektura počítačů 38

Konečný automat (FSA), přechodová a výstupní funkce Abstraktní model sekvenčního obvodu konečný automat (FSA Finite State Automaton nebo také FSM Finite State Machine) Konečný automat konečný počet vstupních, vnitřních a výstupních stavů Danou kombinaci vstupních, vnitřních a výstupních proměnných nazveme vstupní, vnitřní a výstupní stav a označíme I, S, O i k j Přechodová funkce: S f ( S, I t t t ) t t S, S, I t vnitřní následující, vnitřní a vstupní současný stav Výstupní funkce: t O g( S t, I t ) t t O, S, I t výstupní, vnitřní a vstupní současný stav AB4MIS Mikroprocesory pro výkonové systémy 3 39

Obecný model logického sekvenčního obvodu (Huffmann) LSO - Logický sekvenční obvod t O g( S t, I t ) I x,,x i Logický kombinační obvod O y,,y j t t S f ( S, I t ) S Paměťová část q,,q k AB4MIS Mikroprocesory pro výkonové systémy 3 4

Rozdělení LSO Podle časové reakce na změnu vstupních proměnných Asynchronní změna stavu LSO po změně vstupních proměnných ihned (resp. s malým zpožděním v důsledku reakce vnitřních obvodů LSO). Synchronní změna stavu LSO synchronizována vnějšími synchronizačními impulsy (tzv. hodiny, clock). LSO jsou navrhovány většinou jako synchronní snadnější kontrola vnitřních signálů LSO. Podle způsobu výpočtu přechodové a výstupní funkce LKO Automat typu Mealy Automat typu Moore Autonomní automat (např. čítače, ) S S S f ( S, I t t t f ( S, I t t t f ( S t t ) ) ) t O g( S O t g( S t O t g( S t t, I ) ) t ) AB4MIS Mikroprocesory pro výkonové systémy 3 4

Synchronní FSA typu Mealy S f ( S, I t t t ) t O g( S t, I t ) Budicí funkce Stavový registr Logika výstupů D Q LKO LKO2 O C I clk AB4MIS Mikroprocesory pro výkonové systémy 3 42

Synchronní FSA typu Moore S f ( S, I t t t ) O t g( S t ) Budicí funkce Stavový registr Logika výstupů D Q LKO LKO2 O C I clk AB4MIS Mikroprocesory pro výkonové systémy 3 43

Synchronní FSA autonomní S f ( S t t ) O t g( S t ) Budicí funkce Stavový registr Logika výstupů D Q LKO LKO2 O C clk AB4MIS Mikroprocesory pro výkonové systémy 3 44

Formy popisu FSA typu Mealy Stavový diagram Tabulky přechodů a výstupů Přechod I / = / Tabulka přechodů S i I I I / = / S I / = / S S S S S S 2 I / = / S 2 S S 2 I / = / S 2 S Tabulka výstupů Stav Vstup I / = / Výstup (umístěn u hran) S i I I S O O S O O S 2 O O AB4MIS Mikroprocesory pro výkonové systémy 3 45

Formy popisu FSA typu Moore Stavový diagram Tabulky přechodů a výstupů I Tabulka přechodů S i I I I S I S S S S S S 2 S 3 I S S 2 S 3 S 2 I S 3 S S I S 2 I Tabulka výstupů S i O i Stav Vstup I Výstup (umístěn u uzlu) S O S O S 2 O S 3 O AB4MIS Mikroprocesory pro výkonové systémy 3 46

Detektor posloupnosti bitů (FSA typu Moore) Navrhněte synchronní konečný automat (FSA Finite State Automaton), který v proudu vstupních bitů detekuje posloupnost. Při detekci každé takové posloupnosti automat vyšle na výstupu impuls. Automat navrhněte s asynchronním nulováním. I (Inputs) x clk FSA S i (Moore) O (Outputs) y clk x y AB4MIS Mikroprocesory pro výkonové systémy 3 47

Detektor posloupnosti bitů (FSA typu Moore) Co máme navrhnout? Budicí funkce Stavový registr Logika výstupů D Q LKO LKO2 I C clk AB4MIS Mikroprocesory pro výkonové systémy 3 48

Detektor posloupnosti bitů (FSA typu Moore) Stavový diagram I Vstupy (Inputs) O Výstupy (Outputs) S i i-tý stav I I S clk x y I S 3 I S Tabulka přechodů I Tabulka výstupů S i I I S i O i S S S S S S 2 I S 2 I S O S O S 2 S 3 S 2 S 2 O S 3 S S I S 3 O AB4MIS Mikroprocesory pro výkonové systémy 3 49

Detektor posloupnosti bitů (FSA typu Moore) Tabulka přechodů S i I I S S S S S S 2 S 2 S 3 S 2 S 3 S S Kódování stavů S i I S i+ S i q q x d d S i+ S S S x Budicí funkce Stavový registr S S S 2 q q d D Q q d D Q q S 2 S 3 S 2 clk Zpětná vazba S 3 S S AB4MIS Mikroprocesory pro výkonové systémy 3 5

Detektor posloupnosti bitů (FSA typu Moore) Tabulka výstupů S i O I S O S O S 2 O S 3 O Kódování Výstupů S i y S S Stavový registr Logika výstupů S 2 q d D Q d D Q q y S 3 clk AB4MIS Mikroprocesory pro výkonové systémy 3 5

AB4MIS Mikroprocesory pro výkonové systémy 3 52 Detektor posloupnosti bitů (FSA typu Moore) 4 5 6 7 3 2 d x q q d 4 5 6 7 3 2 x q q x q q q q d y q q x q q q q q q x x q q x q q x q q d ) ( Minimalizace

Detektor posloupnosti bitů (FSA typu Moore) Realizace d D SET Q q CLR Q x d q SET D Q y CLR Q clk reset AB4MIS Mikroprocesory pro výkonové systémy 3 53

Detektor posloupnosti bitů (FSA typu Moore) Co jsme navrhli? Budicí funkce Stavový registr Logika výstupů D Q LKO LKO2 I C clk AB4MIS Mikroprocesory pro výkonové systémy 3 54

Časování klopného obvodu (Důležité) Clk D D SET Q Q Setup Hold Zde na hodnotě nezáleží Clk D CLR Q Clock-to-Q Q Předstih (Setup Time) Vstup D musí být stabilní (ustálený) před aktivní (zde náběžnou) hranou hodinového signálu Přesah (Hold Time) Vstup D musí zůstat stabilní (ustálený) po aktivní (zde náběžné) hraně hodinového signálu Zpoždění (Clock-to-Q Time) výstupu Q po aktivní (zde náběžné) hraně hodinového signálu AB4MIS Mikroprocesory pro výkonové systémy 4 55

Maximální hodinová frekvence (Důležité) Logický kombinační obvod... Registr...... Registr... Clk Clk Všechny klopné obvody jsou řízeny stejným hodinovým signálem Kombinační logické bloky: Vstupy jsou aktualizovány při každém taktu hodin Všechny výstupy musí být stabilní před dalším taktem AB4MIS Mikroprocesory pro výkonové systémy 4 56

Kritická cesta a perioda hodin (Důležité) Logický kombinační obvod... Registr... 7 7 7... Registr... 8 8 8 Clk Clk Zpoždění hradla Kritická cesta T c Perioda hodin Kritická cesta: nejpomalejší cesta mezi libovolným z registrů (klop.obvodů) Minimální perioda hodin je funkcí kritické cesty Perioda T cmin musí být větší než: T c min Clock to Q Nejpomalejsi cesta kombinacni casti Setup Musí být splněny požadavky na stabilitu vstupů a výstupů AB4MIS Mikroprocesory pro výkonové systémy 4 57

Kritická cesta (Kc) (Důležité) LSO - Logický sekvenční obvod Kc3 Kc2 I x,,x i Logický kombinační obvod Kc O y,,y j Kc4 S q,,q k Paměťová část Clk AB4MIS Mikroprocesory pro výkonové systémy 4 58

Kritická cesta (Kc) (Důležité) Kc4 Kc2 Budicí funkce Stavový registr Logika výstupů Kc D Q LKO LKO2 O C I clk Kc3 AB4MIS Mikroprocesory pro výkonové systémy 4 59

Hodinová frekvence = /Kc i max (Důležité) Kc ze vstupů I na vstup stavového registru Nestabilita vstupů + zpoždění v LKO + Setup (předstih) Kc2 z výstupu stavového registru na výstup O Clock-to-Q + zpoždění v LKO2 + požadavek na stabilitu výstupů Kc3 ze vstupů I na výstupy O Nestabilita vstupů + zpoždění v LKO2 + požadavek na stabilitu výstupů Kc4 z výstupu stavového registru na jeho vstupy Clock-to-Q + zpoždění v LKO + Setup (předstih) AB4MIS Mikroprocesory pro výkonové systémy 4 6

Detektor posloupnosti bitů (FSA typu Mealy) (Důležité) Kc 8 8 8 d D SET CLR Q 4 4 Q q Kc2 x 8 Kc4 d q SET D CLR Q 4 4 Q 8 y 6 clk reset Kc = 8 + 8 + 4 [ns] Kc2 = 4 + 8 [ns] Kc3 = 6 + 8 [ns] Kc4 = 4 + 8 + 8 + 4 [ns] Kc3 f max / Tc / 34ns 29, 4MHz min TClock to Q 4ns Setup 4ns AB4MIS Mikroprocesory pro výkonové systémy 4 6

Architektura typu von Neumann Common Bus CPU Program Memory Data Memory I/O Channels Output Input World AB4MIS Mikroprocesory pro výkonové systémy 5 62

Architektura typu Harvard Common Bus Program Memory 24 CPU Data Memory 6 Typ.různá šířka I/O Channels Output World Input AB4MIS Mikroprocesory pro výkonové systémy 5 63

Architektura typu Harvard další modifikace Paralelní čtení/zápis dat Program Memory 24 CPU Data Memory 24 Data Bridge 6 6 Output I/O Channels World Čtení konstant z Flash Input AB4MIS Mikroprocesory pro výkonové systémy 5 64

Architektura von Neumann versus Harvard von Neumann Harvard Jednodušší struktura Sdílená sběrnice nelze paralelně transportovat instrukce a data Společný paměťový prostor instrukcí a dat. Možno pružně rozdělit paměť pro instrukce data a zásobník (pokud vše v RAM) Prostor pro zásobník (Stack) bývá dostatečný. Složitější struktura Oddělené sběrnice možnost paralelního transportu instrukce a dat (rychlost větší) Oddělené prostory instrukcí a dat. Paměť programu (instrukcí) často širší slovo proti paměti dat kompaktnější jednocyklové instrukční kódy. Zásobník často mimo paměť dat (rozdílná šířka paměti programu a dat). Hloubka zásobníku omezená (pak nutno přemístit do paměti dat a to pomalé) AB4MIS Mikroprocesory pro výkonové systémy 5 65

Princip volání procedury (synchronní) Volání procedury - souhrn akcí Volání procedury je vyvolané programem (synchronní) ne vnější událostí (vnější událost viz. přerušení) Stejným mechanismem se řídí i vnořené volání (procedura volá proceduru) Další instrukce se vždy čte z adresy právě uložené v čítači instrukcí (PC) Čti instrukci Call Ulož návratovou adresu (tj. obsah čítače instrukcí) do zásobníku Vlož do čítače instrukcí počáteční adresu procedury Ulož kontext do zásobníku Proveď tělo procedury Vyzvedni kontext Proveď instrukci Return Ta vyzvedne Návratovou adresu ze zásobníku do čítače instrukcí (PC) Pokračuj v programu za místem volání Call na pozadí tj. čti instrukci z adresy uložené v PC AB4MIS Mikroprocesory pro výkonové systémy 5 66

Před čtením CALL 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 67

Po čtení CALL 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 68

Během provádění CALL 2 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 69

Po provedení CALL 3 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 7

Před čtením RETURN 4 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 7

Po čtení RETURN 5 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 72

Po čtení RETURN 7 6 2 3 4 5 6 7 AB4MIS Mikroprocesory pro výkonové systémy 5 73

Asynchronní akce hw volání procedury (ISR) AB4MIS Mikroprocesory pro výkonové systémy 5 74

Prostředky pro organizaci hw volání procedury (interrupt) AB4MIS Mikroprocesory pro výkonové systémy 5 75

Sdílené prostředky (sdílí je ISR a přerušený program) AB4MIS Mikroprocesory pro výkonové systémy 5 76

Žádost o obsluhu přerušení (hw volání procedury) AB4MIS Mikroprocesory pro výkonové systémy 5 77

Žádost o obsluhu aktivní - AB4MIS Mikroprocesory pro výkonové systémy 5 78

Dokončení aktivní instrukce - 2 AB4MIS Mikroprocesory pro výkonové systémy 5 79

Uložení (Push) návratové adresy do zásobníku (Stack) - 3 AB4MIS Mikroprocesory pro výkonové systémy 5 8

Vyzvednutí adresy obslužného programu (ISR) - 4 AB4MIS Mikroprocesory pro výkonové systémy 5 8

Spuštění obslužné procedury přerušení (ISR) - 5 AB4MIS Mikroprocesory pro výkonové systémy 5 82

Uložení kontextu do zásobníku - 6 AB4MIS Mikroprocesory pro výkonové systémy 5 83

Provedení těla obslužné procedury (ISR) - 7 AB4MIS Mikroprocesory pro výkonové systémy 5 84

Obnovení kontextu (ze zásobníku) - 8 AB4MIS Mikroprocesory pro výkonové systémy 5 85

Vyzvednutí návratové adresy (ze zásobníku) - 9 AB4MIS Mikroprocesory pro výkonové systémy 5 86

Obnovení běhu přerušeného programu - AB4MIS Mikroprocesory pro výkonové systémy 5 87

Princip programu řízeného událostmi - souhrn Obsluha žádosti o přerušení souhrn akcí Dokonči právě prováděnou instrukci (instrukce je nepřerušitelná) Ulož (Push) návratovou adresu do zásobníku (tj. adresu, která je právě v čítači instrukcí (PC)) Vyzvedni adresu ISR (tj. podprogramu obsluhy přerušení) z tabulky vektorů přerušení Spusť ISR Vynuluj Interrupt Request Flag (závisí na typu procesoru) Ulož kontext do zásobníku Proveď tělo ISR (vlastní obsluhu žádosti o přerušení) Obnov původní kontext (vyzvedni ho ze zásobníku) Proveď instrukci Return Ta vyzvedne Návratovou adresu ze zásobníku do čítače instrukcí (PC) Pokračuj v programu na pozadí tj. čti instrukci z adresy uložené v PC AB4MIS Mikroprocesory pro výkonové systémy 5 88

Typy systémů přerušení Jednohladinové neprioritní Single level - non-priority interrupt system Vícehladinové prioritní Nemaskovatelné Softwareové Trap Maskovatelné Multi level priority interrupt system Nonmaskable Trap Maskable S pevnou hw prioritou S dynamicky volitelnou prioritou Fixed priority system Flexible priority system AB4MIS Mikroprocesory pro výkonové systémy 5 89

Řadič přerušení princip (Interrupt Controller) TRAP DECODED INTRQ NMI Register (Active Interrupt) IR IR Event Detector Priority Encoder Comparator IR2 IF IE IF IE Driver IF2 GIE IE Control Interrupt Enable Interrupt Flag Žádost o přerušeni Povolení maskovatelných žádostí AB4MIS Mikroprocesory pro výkonové systémy 5 9

PIC8F Family Interrupt System High Priority Enable GIEH HIGH PRIORITY Priority Encoder INTRQ LOW PRIORITY xip yip GIEL IPEN xie yie Priority System On xif yif Low Priority Enable INPUT Event Detector........ Clk Timer Interrupt Priority INTERRUPT RESOURCES Interrupt Enable Interrupt Flag (Request) AB4MIS Mikroprocesory pro výkonové systémy 5 9

Zpracování analogových veličin počítačem Počítač (číslicový o tom je zde vždy řeč) přímo s analogovými veličinami zacházet neumí. Jediné co umí je zpracovat číselné hodnoty. Analogové veličiny je tedy nutné vyjádřit čísly. Pro číselné vyjádření (aproximaci) analogové veličiny se učiní dva kroky: () Vzorkování: Analogovou veličinu je nutné vzorkovat. Používá se vzorkování s konstantní periodou. Při vzorkování dochází ke ztrátě informace, neboť co se analogovou veličinou dělo mezi vzorky už není známo. Zde připomeňme Vzorkovací teorém, který říká jak nutno volit vzorkovací periody vzhledem k maximálním frekvenci obsažené v analogovém signálu, aby ze vzorků bylo lze signál opět rekonstruovat. (2) Kvantování: Odebrané vzorky nutno upravit podle počtu bitů převodu. Zde dochází k další ztrátě informace (vlivem počtu bitů převodu se zde nebudeme zabývat) Uvedené kroky demonstrují následující snímky. Pro jednoduchost zobrazení jsou použity 4 bity (tj. 6 možných hodnot). Ve skutečnosti se používá 8 nebo nebo 2 (někdy i 6 bitů) AB4MIS Mikroprocesory pro výkonové systémy 8 92

Analogový signál AB4MIS Mikroprocesory pro výkonové systémy 8 93

Vzorkovaný analogový signál AB4MIS Mikroprocesory pro výkonové systémy 8 94

Vzorkovaný a kvantovaný analogový signál AB4MIS Mikroprocesory pro výkonové systémy 8 95

Zpracování analogových veličin počítačem Typické systémové schéma analogově číslicového převodu je na následujícím snímku. Filtr: Připomeňme, že blok filtru omezující horní frekvenci signálu (antialiasingový filtr) je analogový a je mimo počítač. Filtr zajišťuje dodržení Vzorkovacího teorému společně se správnou volbou vzorkovací periody v počítači. Vzorkovací obvod: Pro měření vyšších frekvencí může být doba vlastního převodu analog-číslo příliš dlouhá (signál by se během převodu příliš změnil). Proto je na vstupu umístěn vzorkovací obvod, který rychle odebere z analogového signálu vzorek a drží jeho hodnotu během vlastního analogově-číslicového převodu. Analogově-číslicový převodník: Metod převodu je velké množství, v mikrokontroléru je typicky požitá metoda Postupných aproximaci viz dále. AB4MIS Mikroprocesory pro výkonové systémy 8 96

Zpracování analogových veličin počítačem AB4MIS Mikroprocesory pro výkonové systémy 8 97

Zpracování analogových veličin počítačem Skutečné zapojení analogově-číslicového převodu: Analogový přepínač (Analog Multiplexer): Aby bylo možné snadno měřit analogové veličiny z více vstupů, je typicky na začátku analogověčíslicového bloku umístěn analogový přepínač, který se ovládá z počítače (programu). Vzorkovací obvod: Pro rychlý odběr vzorku ADC: Analogově-číslicový převodník (Analog to Digital Converter) je mikrokontroléru jeden (někdy dva). Pokud je ADC v mikrokontroléru jen jeden, pak ovšem lze v daný okamžik převádět jen jeden analogový vstup a pak je možné přepnou analogový přepínač na jiný vstup a převádět ten. Blokové zapojení analogově-číslicového bloku je na následujícím snímku. Obsahuje časovač vzorkovače, časovač ADC převodníku, registru pro volbu analogového kanálu, registru pro ovládání (spuštění) ADC převodníku (často společný se stavovým registrem) a registr výsledku (číslo) převodu. Blok generuje též signál žádosti o přerušení na konci převodu. AB4MIS Mikroprocesory pro výkonové systémy 8 98

Analogově-číslicový blok Clock ADC Timer Sample&Hold Timer Multiplexer Analog Inputs ADC D Sample&Hold CH Channel AC ADC Command ADC Result AR Program Program Int Program AB4MIS Mikroprocesory pro výkonové systémy 8 99

Metoda postupných aproximací - princip V mikrokontroléru je typicky pro vlastní analogově-číslicový převod použita metoda Postupných aproximací (Successive Aproximation Method). Princip metody je znázorněn na následujícím snímku ADC obsahuje zpětný převodník číslo-analog (DAC Digital to Analog Converter) a komparátor. Při prvním kroku převodu DAC generuje napětí poloviny celkového rozsahu ADC převodníku. Toto napětí se porovná s převáděným napětím Ux. Pokud je menší než Ux v dalším kroku se zachová a přidá se polovina ze zbývajícího rozsahu a součet se opět porovná s Ux. Pokud je součet větší než Ux přidané napětí se v dalším kroku nepřidá jinak se ponechá. V další kroku se přidá polovina ze zbývajícího rozsahu atd. až do konce převodu. Doba převodu: Nezávisí na velikosti vstupního napětí Ux Závisí na počtu převáděných bitů Polarita vstupního napětí Ux: Převodník je jednopolaritní (pouze kladná napětí typicky v rozsahu napájecího napětí mikrokontroléru). Záporná napětí nutno posunout vnějším obvodem (Operační zesilovač) do rozsahu ADC převodníku. AB4MIS Mikroprocesory pro výkonové systémy 8

Metoda postupných aproximací - princip AB4MIS Mikroprocesory pro výkonové systémy 8

Metoda postupných aproximací - princip Na následujícím snímku je blokové zapojení převodníku s metodou postupných aproximací. Zpětný převodník číslo-analog (DAC) vyžaduje ke své činnosti referenční napětí. To lze připojit: Pro menší přesnost převodu z napájecího napětí mikrokontroléru Pro větší přesnost převodu z vnějšího přesného zdroje referenčního napětí (polovodičová součástka s kompenzací vlivu okolní teploty) U ADC převodníku nutno rozlišovat: Rozlišení převodníku (Resolution) tj. kolik bitů má výstupní převedené číslo (typicky 8 nebo nebo 2 někdy 6 bitů) Přesnost převodníku (Accuracy) tj. koli nejnižších bitů je stabilních při stabilním Ux. Přesnost převodníku silně závisí na návrhu vnějších obvodů (jak zapojením tak návrhem plošného spoje). V manuálu k mikrokontroléru jsou uvedeny vlastnosti vzorkovacího obvodu a některá doporučené pro návrh vnějších obvodů. AB4MIS Mikroprocesory pro výkonové systémy 8 2

Metoda postupných aproximací blokové schéma AB4MIS Mikroprocesory pro výkonové systémy 8 3

Generování přesných časových značek do programu V řadě programových řešení s požaduje generování přesných časových značek do programu (pomocí žádosti o přerušení). To lze realizovat několika způsoby. Jeden z nich je znázorněn na následujících snímcích. Generování přesných značek požaduje, aby žádost o obsluhu byla nastavena vždy po požadovaném intervalu a nedošlo ke zpoždění v čase. Nastavená žádost pak může být obsloužena v ISR s určitým zpožděním vlivem akci při přechodu do ISR a vlivem ostatních žádostí. Timer with Autoload (časovač s hw vyhodnocením periody): Na následujícím snímku je zobrazen princip vyhodnocení periody v hardware. Zde časovač krokuje nahoru a když dosáhne předvolené hodnoty (předvolené periody) automaticky se vynuluje a nastaví žádost o obsluhu (Int) V některých mikrokontrolérech časovač krokuje dolů, pak při dosažení nulové hodnoty hardware nastaví do časovače automaticky předvolenou periodu. AB4MIS Mikroprocesory pro výkonové systémy 8 4

Generování přesných časových značek do programu Clock (Takt) Frequency Prescaler (Dělič kmitočtu) Timer (Časovač) Overflow (Přetečení) CP Count Prescaler (Předvolba) Program Int Žádost o obsluhu AB4MIS Mikroprocesory pro výkonové systémy 8 5

Generování přesných časových značek do programu Následující snímek zobrazuje časové průběhy nastavení žádostí o obsluhu a vlastní obsluhu. Vlastní obsluha (volání ISR) může v čase kolísat vlivem akci při přechodu do ISR případně zpracování žádostí o obsluhu s vyšší prioritou Natavení žádostí o obsluhu pomocí časovače však je zcela pravidelné a nedochází k žádné časové ztrátě (prodloužení periody) AB4MIS Mikroprocesory pro výkonové systémy 8 6

Generování přesných časových značek do programu Ttimer Ttimer T Int T2 Int time INIT ISR Tactual ISR CP Ttimer Calculation Calculation RET RET RET ISR = Interrupt Service Routine (Obslužný program přerušení) Ttimer = čas měřený časovačem Tactual = čas volání ISR AB4MIS Mikroprocesory pro výkonové systémy 8 7

Capture Unit - Přesné měření periody Pro určení rychlosti otáčení motoru se často používá impulsní čidlo (inkrementální čidlo), které generuje impulsní signál s periodou závislou na rychlosti otáčení. Pomalé otáčky (dlouhou periodu) lze obvykle měřit čtením běžného portu (vzorkováním na základě žádosti o obsluhu od časovače). Vzniklá chyba je pro pomalé otáčky tolerovatelná. Rychlé otáčky už vyžadují podpůrný hardware, který se nazývá Záchytná jednotka (Capture Unit). Celkový pohled na princip a časování je na následujícím snímku. Další dva snímky pak ukazují situaci v detailu. AB4MIS Mikroprocesory pro výkonové systémy 8 8

Capture Unit - Přesné měření periody Capture unit obsahuje (viz následující tři snímky): Referenční časovač (Timer) Čítač předvolby (Prescaler) pro vhodné nastavení hodin pro Timer Detektor události (Event Detektor) měřený impulsní se přivádí právě do detektoru události. Detektor událostí umí detekovat hranu v signálu. V některých mikrokontrolérech lze požadovanou událost přednastavit na náběžnou, sestupnou nebo obě hrany (v registru Event Mode) Předdělička událostí (není na následujícím snímku zobrazena) je připojena na výstup Detektoru událostí a umožňuje snížit frekvenci detekovaných událostí pro velmi rychlé průběhy. Oddělovací obvod výstup detektoru událostí ovládá oddělovací obvod připojený mezi referenční čítač a záchytný registr (Capture Register). Při detekci událostí se oddělovací obvod otevře a stav čítače se sejme od záchytného registru. Zároveň se nastaví žádost o obsluhu (int) Záchytný registr (Capture Register) slouží k uložení stavu časovače (času) v okamžiku detekce události. V obsluze ISR se pak záchytný registr přečte a vyhodnotí vzhledem k minulému čtení a tím se přesně určí perioda i když ISR je voláno s určitým časovým zpožděním vlivem akci při přechodu do ISR případně obsluhou ISR s vyšší prioritou AB4MIS Mikroprocesory pro výkonové systémy 8 9

Capture Unit - princip Clock Prescaler Timer Input Event Detector EM Event Mode CR Capture Register Program Int Program T T Input T Int T2 Int time INIT EM T RET ISR X CR RET ISR Y X X CR T X - Y RET AB4MIS Mikroprocesory pro výkonové systémy 8

Capture Unit blokové schéma AB4MIS Mikroprocesory pro výkonové systémy 8

Capture Unit časové průběhy princip použití Capture unit princip použití (viz následující snímek): Po příchodu událostí na vstupu (zde nastaveno na sledování náběžných hran) se stav referenčního časovače (čas příchodu hrany) uloží do Capture Registru a nastaví se žádost o obsluhu (Int). Po zavolání ISR se záznam v Capture Registru přečte. V proměnné se pamatuje čas příchodu minulé události (hrany). Odečtením nového záznamu a minulého času dostaneme hodnotu měřené periody. Nový odečet se uloží do proměnné jako minulý a tím ISR končí. Uvedený časový sled předpokládá, že mezi dvěma hranami nepřeteče referenční časovač dvakrát, v takové případě by výpočet nebyl správný. Přetečení referenčního časovače jedenkrát nevadí a odečet minulé a nové hodnoty je platný pokud velikost proměnné pro minulý čas je shodná s velikostí Capture registru (obykle 6 bitů). Výpočet se v tomto případě provádí modulo 6 a rozdíl je platný (ověřte). Jak je patrné z časového průběhu pokud je žádost o obsluhu od Capture Unit v rámci běžné periody, časové zpoždění přechodu do ISR nevadí. AB4MIS Mikroprocesory pro výkonové systémy 8 2

Capture Unit princip použití (detail) AB4MIS Mikroprocesory pro výkonové systémy 8 3

Impulsní čidlo pro měření rychlosti otáčení, směru a polohy Měření rychlosti, směru otáčení a polohy hřídele: Jednokanálovým impulsním čidlem (viz předchozí výklad) lze měřit pouze rychlost otáčení. To mnoha případech stačín neboť směr otáčení je zřejmý z jiných údajů (např. nastavení měniče u lokomotivy pro jízdu vpřed nebo vzad). Pro měření i směru otáčení a polohy je určeno čidlo, které generuje tzv. kvadraturní signál (viz následující smímek) Kvadraturní inkrementální čidlo je tříkanálové. Dva kanály (A, B) pro měření perioda a směru otáčení a jeden kanál (tzv. Index) pro určení průchodu hřídele nulovou polohou. Kanály A a B jsou navzájem přesazeny o 9o, Při otáčení jedním směrem předchází hrany kanálu A hrany kanálu B. Pří otáčení opačným směrem se pořadí hran kanálů A a B prohodí (viz následující smímek) Některé mikrokontroléry mají záchytnou jednotku (Capture Unit) již modifikovanou v hardware a mohou přímo kvadraturní signál zpracovat. AB4MIS Mikroprocesory pro výkonové systémy 8 4

Impulsní čidlo pro měření rychlosti otáčení, směru a polohy AB4MIS Mikroprocesory pro výkonové systémy 8 5

Compare Unit - princip Compare Unit: je podpůrný hardware, který společně se software (to je hlavní část) vytvoří PWM modulátor. Systémové schéma a časové průběhy pro Compare Unit jsou na nasledujícím snímku. Další dva snímky zobrazují detail. Compare unit se skládá z: Časovače (Timer) s předděličkou (Prescaler) Číslicového komparátoru (Comparator) porovnává dvě čísla Registru času události (Compare Register) Generátoru událostí (Event Generator) generuje přednastavenou hranu na výstupu mikropočítače. Registru nastavení události (Event Register) Žádosti o přerušení (Int) Compare Register a Event Register jsou dostupné z programu Digitální komparátor před každou změnou hodnoty referenčního časovače (Timer) porovnává hodnotu časovače a Compare registru. Při shodě nastaví žádost o obsluhu (Int) a generuje přednastavenou událost na výstupu mikrokontroléru. AB4MIS Mikroprocesory pro výkonové systémy 8 6

Compare Unit systémové schéma Program TC Timer Count Clock Prescaler Timer Comparator Event Generator Output CR Compare Register Event Register ER Program Int Program T T T2 T3 Output T Int T2 Int T3 Int time INIT ISR ISR ISR ER ER ER ER CR TC+T CR X+T CR X+T2 CR X+T3 X TC+T X X+T X X+T2 X X+T3 RET RET RET RET AB4MIS Mikroprocesory pro výkonové systémy 8 7

Compare Unit schéma - detail AB4MIS Mikroprocesory pro výkonové systémy 8 8

Compare Unit princip použití se software Compare Unit princip: Jednotka umožňuje přednastavit ze software čas v budoucnosti, kdy se má na výstupu generovat událost (přednastavená hrana). Hardware pak v předem nastavený čas přesně vygeneruje hranu a požádá o obsluhu (Int). Přednastavený čas si software uloží do proměnné. V ISR od Compare Unit (když se vygeneruje událost) software vypočítá další požadovaný čas nové události (pomocí uloženého času a nové hodnoty např. z regulátoru) a čas uloží opět do Compare Unit (do Compare Register) a rovněž přednastaví novou požadovanou událost (Event Register). Novou vypočtenou hodnotu software uloží místo minulé již spotřebované. Časový diagram výše popsané činností je na následujícím snímku. Zpoždění přechodu do ISR nevadí pokud je v rámci přednastaveného času další události. Událost (hrana) je generována přesně pomocí hardware. Výpočet dalšího času se provádí modulo a pokud je proměnná s minulým časem stejné velikosti jako Compare Register výsledek je správný. AB4MIS Mikroprocesory pro výkonové systémy 8 9

Compare Unit princip použití se software AB4MIS Mikroprocesory pro výkonové systémy 8 2

Compare Unit jiné řešení Následující tři snímky zobrazuji jiné řešení Compare Unit, které se často používá např. pro generování PWM modulace pro třífázový asynchronní motor. Princip této jednotky (následující snímek): Obousměrný referenční čítač (Up-down Counter) čítá od nuly do průběžně nastavitelné maximální hodnoty a pak začne automaticky odčítač zpět do nuly. Generuje tzv. nosnou vlnu (Carrier Wave) Jednotka obsahuje dva číslicové komparátory, které porovnávají stav obousměrného čítač s obsahem programem nastavitelných komparačních registrů. V případě shody jednotka generuje úroveň logické, v případě, že čítač čítá nahoru nebo úroveň logická, pokud čítač čítá dolů (odčítá). Generuje se tzv. modulační vlna (Modulation Wave) Výstupní hodnota je dále upravena (zpožděna) tak, aby výstupní jednotka, která generuje komplementární signál pro tranzistory jedné větve výkonového měniče nebyly sepnuty zároveň (Dead Time) Při změně směru čítání čítače (nula, max) jednotka nastaví žádost o přerušení a program musí znovu nastavit obsah odpovídajícího komparačního registru. AB4MIS Mikroprocesory pro výkonové systémy 9 2

Compare Unit jiné řešení AB4MIS Mikroprocesory pro výkonové systémy 9 22

Compare Unit jiné řešení (pokračování) Následující snímek zobrazuje blokové schéma jedné větve Compare Unit. Komparační jednotka má takové větve tři pro generování celkem šesti výstupních impulsů pro tranzistory tří větví úplného můstku pro napájení třífázového asynchronního motoru (Induction Motor) Referenční obousměrný čítač je společný pro všechny tři větve. Fázový posun impulsů jednotlivých větví (pro napájení motoru) musí zajistit software správným plněním všech šesti komparačních registrů (generování modulační vlny. Celkové blokové schéma komparační jednotky pro generování šesti PWM výstupů s ochranou proti zkratu ve větvi výkonového tranzistorového měniče (Dead Time) je uvedeno na druhém následujícím snímku. Výstupní PWM signály z mikrokontroléru nemohou napájet přímo výkonové tranzistory (napěťové úrovně, potenciál impulsů, požadovaný proud). Mezi výstupy PWM modulátoru z mikrokontroléru a tranzistory je proto vložen transformační člen tzv. budič (Driver). AB4MIS Mikroprocesory pro výkonové systémy 9 23

Compare Unit jiné řešení jeden kanál AB4MIS Mikroprocesory pro výkonové systémy 9 24