Přednáška 5

Přednáška 5
2011, kat. měření, ČVUT - FEL, Praha
J. Fischer
Přednáška 4 , 5
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
1
Rekapitulace – log. obvody CMOS, závěry z měření,
výstupy CMOS
specifikace úlohy 4, bodovaná úloha (5 bodů)
komentované programy, zpráva,
příprava na cvičení – vývojový diagram, strategie programu
postup vývoje
rozložení vývoje programu, využití simulátoru
připojení 74164, případně 74HC595
Náplň přednášky 4
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
2
.LS3401
ldp
e
f
d
g
a
rdp
c
b
7- segmentový zobrazovač
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
3
.
QA
R
QB
A B CLK CLR
R
74LS164, 74HC164
nul.
s. data
posun
UCC
74LS164
SR1
QH
R
posun
s. data
Připojení zobrazovače pos. registrem
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
4
reset – aktivní v L, nastavit do H
A1 vstup s. dat, A2 na úroveň H ( nebo opačně)
plnění (posuv). dat reg. náběžnou hranou hod. sig.
.
74LS164, 74HC164 posuvný registr - funkce
posun
s. data
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
5
.
nul.
s. data
posun
UCC
QA
R
QB
nul.
s. data
posun
zatem.
displ.
R2
UCC
R1
T1
R
QA
R
QB
74LS164
SR1
QH
R
A B CLK CLR
A B CLK CLR
R
74LS164
SR1
QH
R
QA
R
QB
A B CLK CLR
R
posun
s. data
74LS164
SR2
QH
R
Zatemnění výstupu při plnění posuvného reg.
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
6
nul.
posun
s. data
přepis
SRCLK
SER
RCLK
QH´
QH
74HC595
SRR1
výst. reg.
pos. reg.
SRCLR
QA QB
výstupní obvody
Záchytný registr na výstupu
posuvný registr
výstupní záchytný
registr
Posuvný registr se záchytným registrem HC595
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
7
.struktura 595, vhodná pro výstupy
různé modifikace, např.
Texas Instruments
TPIC6C595
alternativy struktury ´595, TPIC6C595
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
8
.struktura 595, vhodná pro výstupy
různé modifikace, např.
Texas Instruments
TPIC6C595
alternativy struktury ´595, TPIC6C595
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
9
Příklad řešení ochrany tranzistoru před průrazem zvýšeným napětí při
vypínání indukční zátěže
Rozpínání – pokles proudu IDS – napěťová špička na elektrodě Drain,
ochranný mechanismus – proud Zener. diodou do Gate, zamezení příliš
rychlého zavření tranzistoru a rychlého poklesu proudu IDS,
důsledek snížení napěťové špičky,
Ovládání indukční zátěže pomocí TPIC6C595
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
10
T
Mproc.
výměnou obvodu 74164 v úloze za obvod 74HC595 doplněný spínacími
tranzistory a ochrannými diodami by bylo možno v této úloze programově
ovládat krokový motorek (místo 7- segmentového zobrazovače by byly
připojeny čtyři spínací tranzistory NMOS, příp. NPN s dalšími diodami)
U1
D
Unipolární krokový motorek - ovládání výstupem s posuvným registrem a
záchytným registrem vybaveným spínači
Použití budiče TPIC6C595 pro ovládání krok. motorku
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
11
tlač
.
RP
vst.
brána
+5V
(+ 3,3 V)
tlačítko, ošetření odskoků,
použití vnitřního pull up rezistoru v STM32 , vypuštění Rp
(obsluha – pozor na statickou elektřinu při stisku tlačítka prstem, vhodné
se dopředu „vybít“, jinak hrozí nebezpečí přeskoku napětí na vstup a
příp. poškození vstupu STM32).
Připojení tlačítek k STM32
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
12
Program ve smyčce, zpracování jednotlivých úkolů. ( analogie kuchař)
Příprava generátoru znaků, tabulka, převod číslo na znak (v simulátoru),
příprava programu pro naplnění posuvného registru
programy pro čítání a převod na dekadické číslo,
převod binární na dekadické číslo
převod číslice na znak
přidání – „ ubrání“ informace o desetinné tečce
uložení znakové informace do paměti SRAM ( příp. registru)
vyslání znakové informace s přepínáním
podprogram zobrazení
Je třeba naplánovat celkovou činnost programu, více procesů probíhajících
současně
Umístění tabulky generátoru znaků pomocí direktivy DCD (32 bitů), případně
DCW (16 bitů)
Postup řešení úlohy
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
13
funkce 1: - naplnění samé 1 a posláná do 74164 – vše musí zhasnout
naplnění samé 0 a poslání do 74164 vše se rozvítí
naplnění danou hodnotou – rozsvícení vybraných segmentů podle „0“
generátor znaků,
ochranné odpory 470 Ohmů do série mezi STM32 a 74164 (kontrola
korektnosti napěťových úrovní UILmax pro 74164 výpočtem)
výpočet proudu segmentem, použití resistorů 470 Ohmů
připravit kompletní schéma zapojení
připojení tlačítek, test
základní HW Test reset 74164 pomocí resetovacího vstupu – rozsvítí se
všechny segmenty
Program spolupráce STM32 s 74164
Postup řešení úlohy
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
14
Literatura:
ARM DUI 0489C (ID050311), ARM® Compiler toolchain, Version 4.1
Assembler Reference ,
Chapter 6, část 6.3 Data definition directives
www.ARM.COM
Umístění hodnot tabulky generátoru znaků pomocí direktivy DCW (16 bitů)
případně DCD (32 bitů),
Umístění tabulky generátoru znaků
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
15
binární čísla se zadávají ve formě 2_ a následuje binární číslo,
tedy např. 2_001011h
Umístění tabulky generátoru znaků
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
16
B
A
T1
1k6
T2
1k
4k
D
GND
T3
Y
T4
130
Ucc
Vstup na UIH - úroveň H, vtéká nulový nebo malý kladný proud do vstupu
UOH omezeno. Úbytek na UAK na diodě D a UCET4 (emitorový sledovač T4)
UOH < UCC - UCET4= 5 V - 0,7 V- 0,7 V= 3,6 V
- důsledek na výstupu Y hradla TTL není ve stavu H napětí 5 V ale nižší
omezení počtu vstupů, které může výstup ve stavu L budit; snaha snížit IIL
pro TTL logiku - kritický parametr-
Vstup na UIL - nízká úroveň,
vstupní proud IIL - záporný (= -1,6 mA) , vytéká
z emitoru T1 a vtéká do výstupu budicího obvodu
Logika TTL (nepoužívá se),
význam - definice standardu a úrovní
napájení Ucc = + 5V proti zemi - GND
příklad - obvod NAND 7400
vstupy A, B, výstup Y, Y = /(AxB)
Bipolární logické obvody
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
17
12k
1k5
4k
8k
3k
GND
Y
120
B
A
37k
2k8
50k
5k
5k6
14k
Y
GND
50
Ucc
ALS (Advanced Low Power Schottky)
IIL - záporný (= -0,4 mA)
IIL - záporný (= -0,1 mA)
Při definici parametrů CMOS log obvodů ( např. i mikroprocesorů) často
odkaz na parametry TTL, nebo TTL - LS, např. formou, že výstupu uP je
schopen budit vstup jednoho TTL hradla ( „to drive one TTL load“),
B
A
20k
Ucc
TTL - LS ( Low Power Schottky)
Snížení IIL i dalších proudů v obvodu, řady bipolárních log. obvodů
Bipolární logické obvody TTL -LS a TTL - ALS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
18
0,8
0,8
0,8
S TTL
FAST
ALS
- 0,1
- 0,6
-2
- 0,4
2
2
2
2
2
[V]
UIHmin
20
20
50
20
40
[uA]
IIH
8
20
20
8
16
[mA]
0,5
0,4
0,5
0,5
0,4
[V]
IOLmax UOLmax
- 0,4
-2
-1
- 0,4
- 0,4
[mA]
IOH
3
3
2,4
2,7
2,4
[V]
UOHmin
pro TTL: UILmax = 0,8 V, UIHmin= 2 V, IILmax = - 1,6mA,
zpoždění tpd - jednotky ns, a více podle typu obvodu.
0,8
LS - TTL
- 1,6
[mA]
[V]
0,8
IILmax
UILmax
TTL
řada
Důležité údaje:
UILmax max. napětí pro úroveň L (nízká úroveň na vstupu)
UIHmin min. napětí pro úroveň H (vysoká úroveň na vstupu)
IILmax - vstupní proud pro UIL - nízkou úroveň na vstupu
Ut - rozhodovací napěťová úroveň na vstupu
UCC - napájecí napětí – typicky + 5 V ( + 4,75 až + 5,25 V)
Parametry řad bipolárních log. obvodů
6
3,3
4,7
10
10
[ns]
tPD
1,4
1,5
1,3
1,1
1,3
[V]
Ut
0,4
1,4
5
0,6
3
[mA]
ICCL
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
19
„Stopa“ obvodů TTL, nebo TTL LS v katalogových údajích obvodů CMOS:
obvod CMOS, příp. procesor je chopen budit (údaj v katalogu)
1 ( případně 2, a více) TTL LS loads
znamená to, že při UO = L může do výstupu obvodu vtékat proud 1 x 0,4 mA
( příp. 2 x 0,4 mA = 0, 8 mA)
Nezapojený vstup TTL, TTL – LS, TTL – ALS se chová jako by byl připojen na
úroveň H – ale není to korektní stav
Pro stav H připojit na výstup hradla s definovanou úrovní H
(invertor se vstupem na GND) nebo na UCC ( i přes odpor 2 - 5 kOhmů)
Nevyužité vstupy – u TTL, TTL – LS, TTL – ALS
Pro stav L – připojit na zem - GND,
Bipolární log. obvody
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
20
15
40
Sn
Dn
Dp
Řada CD 4000 - mnoho typů, široce rozšířené, nejsou kompatibilní s řadou TTL
(jiné rozložení vývodů, jiné funkce)
CD 4011 hradlo NAND rozložení vývodů jiné než u NAND TTL 7400
obecné vlastnosti řady CD4000 viz. dokument family.hef4000.specification.pdf
UCC
[V]
5
10
tPD
[ns]
125
50
Obvody pro „pomalé aplikace“
UiHmin = 0,7 x Ucc,
UiLmax = 0,3 x Ucc
Technologie CMOS s hliníkovým hradlem - elektroda Gate - hliníková
logické obvody řady CD4000 (někdy označované jako high voltage CMOS)
viz WWW.TI.COM
v klidu Icc= 0, proudový odběr především při změnách stavu
napájecí napětí Ucc = 3 až 15 V
+ Ucc
zpoždění invertoru - tpd roste s klesajícím napájecím napětím
Sp
Logické obvody v technologii CMOS, řada CD4000
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
21
Nevyužité vstupy – připojit !!! na správnou log. úroveň, L, nebo H, svorka GND
nebo Ucc,
Nezapojený vstup – plovoucí – nepředvídatelné chování,
výskyt napětí v zakázané oblasti – zvýšení klidového proudového odběru,
částečně vedou oba tranzistory,
Logické obvody v technologii CMOS, řada CD4000
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
22
vstupní klidové proudy IIH, IIL velmi malé, typ. 100 nA, zaručováno- menší 1 uA
UiHmin = 0,7 x Ucc, 3,5 V !!! (při UCC = 5V)
UiLmax = 0,3 x Ucc 1,5 V
(při UCC = 5V)
Výstup TTL není možno připojit na vstup HC (UCC = +5 V)
UOH TTL obvodu není kompatibilní s UIH min u HC obvodu !
Napájecí napětí UCC = + 2 až + 6V, typicky UCC = + 5V
74HC – odlišné vstupní úrovně od TTL
74HCxxx Um (Ut) = 0,5 Ucc rozhodovací úroveň polovina napájecího napětí
Rychlé logické obvody CMOS - High Speed CMOS 74HCxx
Technologie CMOS s křemíkovým hradlem (Poly Si Gate)
náhrada za TTL, obdobné označení, funkce i rozložení vývodů
TTL 7400, 74LC00, 74 ALS 00 funkční náhrada 74HC00, atd.
Logické obvody HC MOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
23
Sn
Dn
Dp
Sp
74HC
+ Ucc
RP = RN
stejná vodivost
symetrické
Ui =0,5 Ucc
vstup HC
74HCT
Sn
Dn
Dp
Sp
+ Ucc
vstup HCT
Úprava vstupu HCT obvodu - posun, zpětná vazba,.. , úprava velikosti vstup.
tranzistorů - posun rozhodovací úrovně k nižší hodnotě
(úprava pouze ve vstup. obvodu, ostatní je jako u HC, žádné další diody)
Logické obvody HCT MOS 74HCTxx
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
24
74HCTxx
Napájení standardně UCC = +5V, rozmezí + 4,5 V až +5,5 V
Výstupní obvod HCT – vlastnosti stejné - jako výstup HC
74HCTxxx Um (Ut) = 1,3 V rozhodovací úroveň na vstupu
UiLmax = 0,8 V
UiHmin = 2 V !!!
Rychlé logické obvody CMOS High Speed CMOS TTL compatible
Logické obvody HCT MOS 74HCT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
25
Sn
Dn
Dp
Sp
Pro bateriové napájení – vstupy - úroveň 0, nebo UCC, jinak zvýšení odběru.
Nevyužité vstupy – připojit na GND nebo UCC,( přímo nebo přes rezistor)
Vysokoimpedanční vstup - elektrostatická indukce, úroveň H nebo L.
Nepředvídatelné chování obvodu CMOS - !!!! kontrola vstupů
Požadavek strmosti hran vstupního signálu – (stejný důvod) zamezit
výskytu napětí na vstupu v oblasti rozhodovací úrovně, požadavek doba
hran kratší než 500 ns - jinak – nárůst ICC
Pozor, na vstupu 74HCT může být UiH = 2,4 V, ale roste ICC,
Příčný proud- NMOS – již vede, PMOS – ještě není zcela vypnut
∆ICC – změna napáj. proudu ICC,
pokud bude jeden vstup na UiH = 2,4 V
u SN74HCT00 Texas Instruments ∆ICC = typ. 1,4 mA,
NXP 0,4 mA, odlišné podle výrobce)
Logické obvody HCT MOS 74HCT
+ Ucc
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
26
Sn
Dn
Dp
Sp
+ Ucc
Nesymetrická vstupní struktura u HCT , větší příčné proudy vstupní dvojicí
tranzistorů
Logické obvody HCT MOS 74HCT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
27
Ui
Ii
Ucc
Io
CMOS - prakticky nulový statický vstupní proud (zásad. rozdíl oproti TTL)
(typicky i menší - řádu nA, svodové proudy ochranných diod) (vstup připojen
na Ucc, nebo GND)
Vstupní kapacity Ci = typ. řádově 5 - 10 pF
Klidový napájecí proud, (finp = 0 Hz)
74HCTxxx při Ucc= 5 V
Um (Ut) = 1,4 V
UiHmin = 2 V !!! pamatovat
iLmax = 0,8 V !!! pamatovat
Ii zbytkový vstupní proud (Input Leakage Current) typ. do 0,1 uA,
74HCxxx Um (Ut) = 0,5 Ucc rozhodovací úroveň
UiHmin = 0,7 x Ucc, 3,5 V !!! (při UCC = 5V)
UiLmax = 0,3 x Ucc 1,5 V
Typické vstupní parametry obvodů HC, HCT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
28
Uo
šumová imunita:
rozdíl mezi „nejnepříznivějším“ stavem napětí výstupu
a požadavkem na velikost napětí na vstupu
UoHmin - UiHmin
UiLmax - UoLmax
Šumová imunita obvodů HC, HCT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
29
Ui
Ii
výpočet – znát!
UOL = IO . RN
UOH = UCC – (IO . RP)
Náhradní schéma výstupu
RN
RP
a vnitřním odporem RN
napětí naprázdno – přibližně UOL = 0 V (GND)
Vnitřní odpory , pro odhad napětí - přibližně 100 Ohmů a méně
(R - pro NMOS tranzistor typ 50 Ohmů a méně)
UOL určeno velikostí výstupního proudu
vnitřním odporem RP
napětí naprázdno – přibližně UOH = UCC
UOH - určen UCC a velikostí výstupního proudu,
Typické výstupní parametry obvodů HC, HCT
GND
UO
+UCC
Ucc
Io
Uo
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
30
Ii
Ucc
U1
D2
CMOS
obvod
UCC
D4
D3
±20 mA (input diode current)
Ui
IOK output diode current (UO < −0.5 V to UO > UCC + 0.5 V)
proud výstupními (parazitními) diodami (D3, D4) − ±20 mA
D1
proud „vnucený“ do výstupu
IIK proud vstupními záchyt. diodami (D1, D2)
při (UOi < −0.5 V nebo UOi > UCC + 0.5 V)
ICC , IGND , IO , IiK , IOK (maximum)
ICC, IGND - proud svorkou UCC nebo GND
= 50 mA (70mA – budiče sběrnic, např. 74HC244,…) !!!
IO – výstup. proud = ± 25 mA (±
± 35 mA bus typy)
(output source or sink current)
Mezní parametry obvodů HC, HCT
Io
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
31
U2
Uo
Ui
Ii
Ucc
Io
Uo
Příklad - posuvný registr 74HCT595 , (74HC_HCT595_4.pdf, hc595.pdf
vysvětlení mezních parametrů absol, maximum ratings, vysvětlení klíč. slov na
dokumentech)
použit pro buzení 7- segment LED, výstupy buzení LED proti UCC (úloha cvič.)
jak volit proud? IO ?? 10mA, katalog IOmax = 25 mA, ANO - OK
10 mA méně než povolená mez 25 mA,
ale !!!
7x 10 mA = 70 mA = IGND max .absolutní pro 74HCT595 je právě 70 mA NE!!!
volit nižší proud, např. 5 mA (7x 5 mA = celkem 35 mA)
analogické – úvahy u jednočipových mikropočítačů
pro zvýšení hodnoty ICCmax , IGNDmax více vývodů UCC a GND na pouzdře uProc.
Dom. úkol. - nalézt příslušné parametry a omezení pro STM32F103.
Jak by bylo možno budit připojené LED (max. velikost proudů)?
ICCmax , IGNDmax , IOmax , IiK , IOK
Mezní parametry obvodů HC, HCT, důsledky
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
32
STM32F100,
hesla: „Absolute maximum ratings“,
General input/output characteristics
Vysvětlení způsobu specifikace parametrů obvodu a jak je nalézt v
katalogovém listu viz vysvětlení na přednášce a příslušné katalogové listy.
prezentováno pomocí katalogových listů vybraných obvodů na přednášce
Demonstrace typických a mezních parametrů Ui, Iik, IOk, ICCmax, IGND max, IOmax
Způsob orientace v katalogovém listu obvodu – přednáška s využitím
katalogového listu HC00, 74HCT00, 74HCT595, STM32F103
viz. katalog - PDF
Mezní parametry konkrétních obvodů
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
33
UCC
příp. omezení velikosti vstup. proudu rezistorem
Ui
Rs
D1
ochrana vstupů,
CMOS
obvod
- záporně polarizované PN přechody D1, D2
U1 D2
Ideové schéma ochrany - obecně
důsledky 0 <Ui < Ucc ;
vstupní napětí nesmí být záporné, ani větší, než napájecí
UCC
1
CMOS log obvody, průrazné napětí izolantu MOS tranzistorů - desítky V,
působení statické elektřiny 10 -ky kV, vstupy bez ochrany - průraz
poškození struktury
Ochrana vstupů
U2
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
34
U1
D1
D2
170 Ω
HC MOS
obvod
UCC
U1
D4
D3
D6
D5
CMOS
obvod
UCC
D7
difundovaný didový rezistor
100 Ω
poly- Si
rezistor
Obecně – model s diodami proti GND a UCC.
zjednodušený model (pro zapamatování)
obvodu CMOS z hlediska diod na vstupech a výstupech
Ochrany vstupů, různé řešení,
ochrany vstupu 74HCxx
Ochranné diody - model
U2
U2
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
35
R1
UCC2
1
1
UCC1
D
R
UCC2
1
Využívat na cvičení, zamezení poškození procesoru !!!
Volba velikosti ochranného odporu - omezení velikosti vstupního proudu na
bezpečnou velikost, např. 5 mA,
detaily- hledání v katalogu, absolute, max. ratings
výpočet časové konstanty ochranného obvodu, parazitní kapacity vstupu
obvodu a spojů
RS zahrnuje vnitřní odpor výstup a a vnější odpor R1,
τ = RS ⋅ Cin
Cin zahrnuje vstupní kapacitu a parazitní kapacity
1
UCC1
Pokud není možno zajistit správnou sekvenci náběhu napájení - v nouzi
možno použít ochranné rezistory,
Řešení ochrany vstupů
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
36
R1
UCC2
1
1
D
UCC1
R2
UCC2
1
Ochranný rezistor R1 (470 Ohmů, - 1 kOhm) kompromis mezi ochranou a
dynamikou, limitně R = 270 ( příp. 220) Ohmů
(5V /270 Ohmů = méně než 20 mA)
Zhoršení dynamiky pro výpočet. čas. konstanty C = 20 - 30 pF
kapacita vstupu obvodu ( až 10 pF) + parazitní kapacity krátkého spoje
čas. konstanta (tau) τ = 470 Ohmů x 20 pF = přibl. 10-8 s
doba náběžné hrany tnab = 2,2 x τ = přibl. 2 x 10-8 s = 20 ns
1
UCC1
Situace s částmi obvodu s různými napájecími zdroji – nebezpečí
částečného výpadku napájení nebo různě rychlého náběhu napájení.
Nebezpečí poškození budicího i buzeného obvodu
Přídavná ochrana vstupů s rezistorem
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
37
zdroj
signálu
UCC1 = 5V
C +
Un
iv
D
CMOS
log. obv.
UCC2 < 5V
In
CMOS
log. obv.
Pozor na připojení zdroje signálu na vstup procesoru bez napájení
( !!! cvičení, připojení vstupů obvodu 74HC595 bez napájení na výstupy
STM32F103, použít ochranné rezistory)
parazitní napájení obvodu ze zdroje signálu , (příklad , čítač CMOS, viz. výklad)
Zdroj signálu funguje (nechtěně)
jako napáječ obvodu
zatěžování zdroje signálu
jednocestný usměrňovač s D a C
Působení diod ve vstupu obvodu CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
38
D6
budič B
budič A
iv
UCC2 < 5V
D
D4
D5
CMOS
obvod
D
UCC1 = 5V
U1
D3
UCC
U2
přijímač
UCC3
D7
Řešení: použít obvody 74FCTxxx T, které mají koncový stupeň (analogicky
jako TTL ) pouze s MOS tranzistory jednoho druhu vodivosti NMOS
Nelze paralelně spojit třístavové
výstupy budičů (CMOS) s různým
napájecím napětí, např. 5 V a 3,3V
Obvod s UCC2 by působil jako parazitní
napěťový omezovač.
Působení diody D5 ve výstupní struktuře
(důsledek přítomnosti tranzistoru PMOS ve
výstupní struktuře)
Výpadek napájení UCC2 nebo snížení
napájecího napětí CMOS obvodu (např.
s třístavovým výstupem) – kolize
sběrnice
Působení diod na výstupu obvodu CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
39
výstup – nízká impedance – úroveň L, nebo H, podle sepnutí tranzistoru
NMOS, či PMOS
výstup ve stavu vysoké impedance nevedou oba tranzistory
realizace třístav. výstupu v 74HCxxx, 74HCTxxx
D= 1 aktivní, D= 0 stav vysoké impedance
impedance řádu Giga - Ohmů (pokojová teplota)
Maximální napětí na výstupu
parazitní diody jsou stále přítomné ve struktuře
napětí přivedené na výstup nesmí
napájecí napětí
Obvody s třístavovým výstupem
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
40
Konec prezentace - přednáška 4
U1
S
D
U2
+ Ucc
Pokud ve výstupu jen NMOS, není dioda mezi výstupem a napájením
(„true open drain“)
Pozor v STM32, naprogramováním výstupu do režimu „ open drain“ se pouze
deaktivuje tranzistor s PMOS ve výstupní struktuře ( nemá buzení – stále
nevede), ale jeho parazitní dioda zůstává !!!
Nepřekročit povolené napětí na výstupu
funkční náhrada otevřeného kolektoru obozsměrným pinem – např. pro IIC
bus (příklad ADSP BF533)
výklad na tabuli – náhrada výstupu typu OPEN drain vstupně výstupním
pinem
Obvody s výstupem typu otevřený kolektor
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
41
Náplň přednášky
poznámky k použití assembleru – úloha 4,
použití operátorů assembleru
informace – úloha 5
logické obvody CMOS – řady pro napájení 5 V a nízkonapěťové řady
5 V – tolerantní vstupy
logika CBT
Přednáška 5 – náplň
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
42
ldp
e
f
d
g
a
rdp
c
b
Ovládání výstupu zobrazovače – optimální přiřazení výstupů brány,
posuvného registru segmentům
jak zapojit z hlediska optimálního řešení plošného spoje, příp. drátových
propojek
Poznámky k úloze 4
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
43
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
2_00000001 ; 1 zde značí připojení seg. k výst. bitu 0
2_00000010 ;
2_00000100 ;
2_00001000
2_00010000
2_00100000
2_01000000
2_10000000
forma zápisu binárního čísla např. 2_0011001
SEG_A
SEG_B
SEG_C
SEG_D
SEG_E
SEG_F
SEG_G
SEG_DP
jednoduchý zápis, přiřazení vývodů zobrazovače výstupům posuvného registru
způsobem – „aby to dobře vycházelo“ programově,
horší zapojení na kontaktním poli nebo plošném spoji
Tabulka přiřazení segmentů bitům výstupu
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
44
; generator znaku
nula
EQU
2_00111111
jednicka EQU
2_00000110
dvojka
EQU
2_00000011
trojka
EQU
2_01001111
ctyrka
EQU
2_01100110
petka
EQU
2_01101101
sestka
EQU
2_01111101
sedmicka EQU
2_00000111
osmicka EQU
2_00111111
devitka EQU
2_00101111
tecka
EQU
2_10000000
při změně zapojení – nutná změna generátoru znaků
e
f
ldp
přímý zápis hodnot generátoru znaků ( jednoduché řešení)
Generátor znaků – jednoduchá forma
d
g
a
rdp
c
b
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
45
změna generátoru znaků ???
změna zobrazovače ??
změna programu ??
Zapojení bez křížení vodičů
minimalizace složitosti připojení i na plošném spoji
i za cenu „přeházení“ přiřazení
segmentů jednotlivým bitům
Výhodnější zapojení zobrazovače
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
46
2_00001000 ;
2_00010000
2_01000000
2_10000000
2_00000010
2_00000100
2_01000000
2_00000001
hgfedcba
kontrola zápisu - v každém řádku je právě jediná „1“
v každém sloupci je právě jediná „1“ – pak jednoznačné přiřazení
výskyt jedničky ve více řádcích téhož sloupce- chyba
výskyt jedničky ve více sloupcích jediného řádku téhož sloupce- chyba
SEG_A EQU
SEG_B EQU
SEG_C EQU
SEG_D EQU
SEG_E EQU
SEG_F EQU
SEG_G EQU
SEG_DP EQU
; výstup Qx
toto se musí změnit podle realizace HW
(způsobu připojení)
Úprava tabulky přiřazení pro zjednodušení zapojení
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
47
Aby se při každé změně zapojení nemusel znovu vytvářet nový generátor
znaků, využije se funkčních možností překladače – jeho operátorů
Operátory: bitové operace, posuny, aritmetické operace
Pro generátor znaků – využití operátorů logického součtu po jednotlivých
bitech, případně i posunů nebo rotací.
Využití operátorů překladače – assembleru
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
48
A :ROL: B
A :ROR: B
A :SHL: B
A :SHR: B
Rotate A left by B bits
Rotate A right by B bits
Shift A left by B bits
Shift A right by B bits
to jsou operátory assembleru, překladače, netýká se to vlastního procesoru,
pomocný nástroj pro zjednodušení zápisu programu a konstant
operátory rotace
:ROL:
:ROR:
:SHL:
<<
:SHR: >>
Using the assembler str. 8.21
Operátory lit. DUI 0473C
Operátory assembleru
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
49
použití
A+B
A-B
A :AND: B
A :EOR: B
A :OR: B
:NOT: A
str. 8- 26 Using the assembler
operator , alt. zápis.
+
…….
……
:AND: &
……
:EOR: ^
……
:OR:
……
:NOT: ~
Operátory assembleru
Add A to B
Subtract B from A
Bitwise AND of A and B
Bitwise Exclusive OR of A and B
Bitwise OR of A and B
Bitwise complement of A
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
50
možná i kombinace
vybrané bity negovat, jiné ponechat
A:EOR: 2_1000000
např. některé výstupy připojené na zobrazovač přes další invertor,….
zůstává stejný zápis počáteční tabulky generátoru znaků
. jak zápis negace ??
buď ~ :NOT:A
nebo
A:EOR: 2_1111111
negace jednotlivých bitů
nutný shodný počet bitů v čísle A (nul nebo jednotek)
A:EOR: 2_0000000 ponechání jednotlivých bitů
Operátor negace
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
51
ldp
e
f
d
g
a
rdp
c
b
to se nemění při změně zapojení, ale pouze při požadavku na změnu tvaru znaků
nula
EQU SEG_A :OR: SEG_B :OR: SEG_C :OR: SEG_D :OR: SEG_E :OR: SEG_F
jednicka EQU SEG_B :OR: SEG_C
dvojka
EQU SEG_A :OR: SEG_B :OR: SEG_G :OR: SEG_D :OR: SEG_E
trojka
EQU SEG_A :OR: SEG_B :OR: SEG_C :OR: SEG_D :OR: SEG_G
sedmicka EQU SEG_A :OR: SEG_B :OR: SEG_C
ctyrka
EQU SEG_B :OR: SEG_C :OR: SEG_G :OR: SEG_F
; ………………….. a tak dále ( aby zbyl prostor pro samostatnou činnost čtenáře)
tecka
EQU SEG_DP
definice hodnoty znaku pro generátor znaků
Reprezentace jedné hodnoty generátoru znaků
jako logický součet hodnot odpovídajícím symbolů
jednotlivých segmentů ( SEG_A,…)
Tabulka přiřazení segmentů , využití operátorů
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
52
(zatím se neřeší ovládání desetinné tečky)
; vlastní generator znaku se zohledněním vlastností obvodu
; umistení hodnot jednotlivých bajtu do pameti
generator_znaku;
DCB nula
:EOR: maska ; zde je kód pro zobrazení znaku 0
DCB jednicka :EOR: maska ;
1
DCB dvojka :EOR: maska ;
2
; a tak dále
zápis generátoru znaků s možností modifikace (potřebná inverze všech nebo
vybraných bitů)
primo EQU
2_0000000 ; konstanta pro přímá data, svítí při 1
neguj
EQU
2_1111111 ; konstanta pro negaci , svítí při 0
jiné
EQU
2_0000011
maska EQU
neguj
; konkrétní volba formy generace ( nebo primo,
nebo jiné)
Definice generátoru znaků
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
53
Plnění posuvného registru je optimální s využitím rozhraní SPI , které je na
čipu STM32F1xxx k dispozici.
Pro jednoduchost se však využijí dva zvolené programově ovládaní piny
výstupní brány. Označí se jako D – datový a C – jako hodinový.
Piny D a C se mohou uvést do výchozího stavu, 0,0 (kontrolní bod programu).
Na pin D se přivede informace, která se má dostat až na výstup QH, následně
na pin C se přivede 1 a v dalším zápisu pak 0. První hodnota by se měla
dostat do posuvného registru.
Pro test správnosti funkce obvodu ´164 a jeho oživení je možno do posuvného registru v nekonečném cyklu signálem C zapisovat střídavě data D=1
a následně D = 0.
Pokud se použije frekvence zápisu C v řádu jednotek Hz, měly by se na
výstupu QH a i dalších (QHA až QF) objevovat střídavě hodnoty 0 a 1, které
se projeví jako okem pozorovatelné změny svitu ( svítí – nesvítí)
jednotlivých segmentů zobrazovače LED.
Programové ovládání posuvného registru - test
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
54
Návěští generator_znaku bude v programu pro překladu představovat adresu
začátku tabulky znaků.
Rychlé zopakování:
zápis hodnoty 1 do bitů 15 až 0 registru nastavuje příslušný výstupní bit do 0
zápis hodnoty 1 do bitů 31 až 16 registru nastavuje příslušný výstupní bit do 1
(celý 32 – bitový registr tak slouží pro ovládání 16-ti pinů příslušné brány)
Selektivní nastavování hodnoty na vybraný pin je možno pomocí zápisu s
využitím funkce „bit banding“, nebo s využitím funkce „port bit set/reset“
u STM32.
Port bit set/reset register (GPIx_BSSRR), např na bráně C (GPIC_BSSRR), je
ve výkladu z přednášky 2.
Programové ovládání posuvného registru - test
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
55
Pro odladění je velmi výhodné použití simulátoru
v projekt, „options for target“, „debug“, se místo („Use ST link debugger“)
nastaví „Use simulator“
dále použití instrukcí Logical Shift Left, nebo Logical Shift Left, které
posouvají registr pře příznak Carry,
možné využití příznaku Carry a podle jeho stavu nastavovat výstup D
je nutno ve znaku následně nastavit, nebo nulovat bit příslušející desetinné
tečce
MOV
R1, #1 ; ale zde by se jinak predavala hodnota (0 az 9 cislice)
LDR.W R2, =Generator_znaku ; R2 ukazuje na zac. gen. znaku
ADDS
R2, R2, R1 ; pricteni posunu o hodnotu cislice
LDRB
R3, [R2] ; nacteni znaku jako bajt, horni 3 bajty jsou 0
Čtení znaku z generátoru
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
56
EQU
0x20001000
R4, =moje_RAM ; R4 jako ukazatel do RAM
R3, =0x11223344
R3, [R4] ; uložení dat z R3 do RAM
; uloží obsah R3 (0x11223344) do pameti ,
; na adrese 0x2000 1000 je Byte 0x44
; na
0x2000 1001 je Byte 0x33
; na
0x2000 1002 je Byte 0x22
; na
0x2000 1003 je Byte 0x11
moje_RAM
LDR.W
LDR.W
STR
Je potřeba zvolit úsek RAM mimo zásobník
STM32F100RBT6B (v STM32VL Discov.) - 128 kByte FLASH a 8kByte RAM.
Inicializace zásobníku ve vzorovém projektu je na 0x20 00 02 00,,
Zásobník se při použití plní (instrukcí PUSH) směrem k nižším adresám
Adresa 0x20 00 10 00 – daleko od zásobníku, právě uprostřed paměti RAM
Adresace RAM
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
57
EQU
0x20001000
R4, =moje_RAM ; R4 jako ukazatel do RAM
R3, =0x11
R3, [R4] ; uložení dat z R3 do RAM
R3, R3, #1 inkrementace R3
R3, [R4, #4]
R3, R3, #1 inkrementace R3
R3, [R4, #8]
R3, R3, #1 inkrementace R3
R3, [R4, #0xC]
obsah R4 jako ukazatele zůstává zachován
moje_RAM
LDR.W
LDR.W
STR
ADDS
STR
ADDS
STR
ADDS
STR
Adresace RAM
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
58
moje_RAM
LDR.W
LDR.W
STRB
ADDS
STRB
ADDS
STRB
ADDS
STRB
EQU
0x20001000
R4, =moje_RAM
R3, =0x00
R3, [R4]
R3, R3,#1
R3, [R4, #1]
R3, R3,#1
R3, [R4, #2]
R3, R3,#1
R3, [R4, #3]
Program uloží ( instrukce store Byte) na adresu 0x20001000 adresované
pomocí R4 nejnižší Byte z registru R3, inkrementuje obsah R3 a a uloží jej
na adresu z R4 +1, příp. R4 +2, R4 +3
Adresace RAM
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
59
moje_RAM
LDR.W
LDR.W
STRB
ADDS
STRB
ADDS
STRB
ADDS
STRB
ADDS
STRB
EQU
0x20001000
R4, =moje_RAM
R3, =0x00
R3, [R4], #1
R3, R3,#1
R3, [R4], #1
R3, R3,#1
R3, [R4], #1
R3, R3,#1
R3, [R4], #1
R3, R3,#1
R3, [R4], #1
Program uloží Byte na adresu 0x20001000 adresované pomocí R4 nejnižší
Byte z registru R3, následně zvýší obsah R4 o 1
zápis [R4], #1 značí tzv. post index, jedná se o ukládání a
autoinkrementací
Adresace RAM s autoinkrementací po Byte
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
60
Paměť RAM je možno v úloze využít:
- pro ukládání připravených zpráv, která se budou vysílat na zobrazovač
- ukládání mezivýsledků
Obdobně je možno využít instrukcí LDRB a LDR – načtení byte a načtení
slova (4 byte) do registru
STR
R3, [R4], #4 uloží celý registr R3 (4 byte) a inkrementuje ukazatel
adresy v R4 o potřebný inkremet 4
Adresace RAM s autoinkrementací po slovech
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
61
„123 Ahoj. start programu“ ; ulozeni ASCII znaků
„321 tak to je jiz definitivni konec“
využití v samostatném projektu, výpisy hlášení
Pozor taková dat ukládat až za program, případně do míst programu, kde se
nemohou data špatně vykládat jako programový kód.
hlaseni DCB
hlaseni2 DCB
;
;
;
LDR.W R4, =hlaseni
LDRB R2, [R4], #1 ; postindex – inkrementace ukazatele v R4
……………………………. další program posílá někam znak
LDRB R2, [R4], #1 ;
…………………………….
LDRB R2, [R4], #1
…………………………….
LDRB R2, [R4], #1
Uložení a čtení ACSII znaků jako textových hlášení
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
62
…..
32- bitové hodnoty odpovidajíci brana1, lokace,… překladač ukládá do tzv.
„literal pool“ na konci úseku programu ,
LDR
R0, =GPIOC_CRH
přeloží do THUMB 16- bitová instrukce
LDR R0, [PC, #84] hodnota je uložena relativně vůči akt. adresovému čítač
omezený rozsah
možnost v některých případech přetečení
LDR.W R0, =GPIOC_CRH;
.W zadání požadavku na překlad do THUMB-2
32- bitové instrukce, větší rozsah hodnoty posunu
jiná alternativa - použití pseudoinstrukce MOV32 R0, #0xABCDEF12
překlad pomocí dvou instrukcí MOV a MOVT (mov top) (32- bitové inst. zápis
16 bitů dat))
direktiva LTORG – výklad tabule, pokyn k umístění literal pool v daném místě
LDR R2, =brana1
LDR R2, =lokace,
Poznámka k použítí pseudoinstrukce LDR x, =
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
63
vstup dat z RS232
SW zobrazení času a hodnot na LCD ( návaznost na předchozí úlohu)
, výpis informací a hodnot pomocí RS232
převod hodnot na ASCII znaky
HW
Připojení semigrafického LCD s řadičem HD44780
( standardně používáno)
připojení UART na RS232, obvod MAX23
Informace – příští úloha
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
64
Vnucení nadměrného proudu do vstupu nebo
výstupu a tekoucího PN přechody nebezpečí sepnutí parazit. tyristoru mezi UCC
a GND. Tyristor - zůstává sepnutý i po
odeznění spínacího impulsu.
Omezení proudu tyristoru - pouze odporem
přívodů a zdrojem (spálení obvodu).
Vypnutí tyristoru, pouze vypnutím napájení
Latch UP free - struktura odolná Latch UPefektu, omezení proudu ochranným
odporem. u HC - dřívejší zničení vstupní
struktury.
Pozor CMOS - převodníky, progr. obvody,...
Přítomnost ochranných diod na vstupu
i parazitních diod na výstupu ve struktuře
CMOS, parazitní tyristor mezi UCC a GND
U1
P - gate
R - P obl.
T1
UCC
T2
N - gate
R - N sub.
Latch - UP efekt, parazitní tyristor ve struktuře CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
65
Chránit obvody CMOS před výbojem statické elektřiny a před napěťovými
špičkami , možnost částečného poškození vstup/výst bloku, zvýšení
proudového odběru (ilustrační příklad se STM32F103 ---m.t. )
Proudová injektáž – možná i výbojem statické elektřiny do vstupu – u jistých
konstrukcí – možné vyvolání Latch UP a a zničení obvodu (zmínit přiklad
obvodu ….7).
Latch - UP efekt -
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
66
UCC
Problém pro vstupní napětí U1 = Ui > Ucc
řešení v některých obvodech
100 Ω
CMOS
náhrada diody MOS tranzistorem
obvod
U
T1
1
vyšší napětí - otevření tranzistoru T1
D1
Uimax = 5 V (5,5 V)
(využití u „5V tolerantních“ obvodů)
pokud není explicitně uvedeno- počítat s diodou mezi vstupem a UCC
CMOS obvody - paměti, mikroprocesory,
jednočip. mikropočítače, převodníky A/D v CMOS technologii,...
přivedení měřeného napětí ( ze zdroje s malým vnitřním odporem) na vstup A/D
převodníku bez napájení - poškození obvodu nadměrným proudem
nutné omezení vstupního proudu II na 10 ( příp. 20 mA), ( proudová injektáž,
„injected current“ u STM32F10x do 5 mA)
řešení - použití vnějšího rezistoru R = cca 1 kOhm (pozor, dynamika)
Pamatovat pojem „5V tolerantní vstup“ , kdy má tento výraz smysl - pouze u
obvodu s napájecím napětím nižším než 5 V.
Umět nalézt tuto informaci v katalogu
Ochrana vstupů 2
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
67
U2
Maxima
Ochrana vstupů – max. proudová injektáž u STM32F10x
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
68
ACT, AHCT, VHCT, FCT typické napájení má Ucc = + 5 V
T značí - obvod je na vstupu kompatibilní s výstupními úrovněmi TTL
UiHmin = 2 V; UiLmax = 0,8 V
Doporučení – řada AHC, kompromis vyšší rychlost než HC, menší rušení a
proudové impulsy než AC.
AHC – má již specifikovány dyn. parametry i pro UCC = +3,3 V
AHCT – vyšší rychlost oproti HCT, avšak ještě únosné proudové špičky
AC, AHC, VHC napájení Ucc = +2 až +5,5 V (příp +6 V)
UiLmax = 0,3 x Ucc ; UiHmin = 0,7 x Ucc,
Vývoj log. obvodů řady pro zvýšení rychlosti
AC - Advanced CMOS,
ACT - Advanced CMOS, TTL compatible
Logické obvody CMOS- „advanced“ varianty
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
69
2 - 5,5
4,5-5,5
2 - 5,5
AHC
AHCT
VHC
≈ 1,4
0,5 .UCC
[V]
Ut
≈ 1,4
≈ 1,4
5
5
2-6
4,5 - 5,5
ACT
FCT 4,75 -5,25
≈ 1,4
≈ 1,4
3,3; 5 0,5 .UCC
5
3,3; 5 0,5.UCC
5
3,3; 5 0,5. UCC
5
AC
VHCT 4,5 - 5,5
4,5 - 5,5
HCT
5
[V]
[V]
2-6
UCCsp
UCC
HC
řada
2
2
3,5
2
3,5
2
3,5
2
3,5
[V]
0,8
0,8
1,5
0,8
1,5
0,8
1,5
0,8
1,5
[V]
+64
+24
+24
+8
+8
+8
+8
+4
+4
-15
-24
-24
-8
-8
-8
-8
-4
-4
-
-
ne
-
ano
-
ano
-
ne
[mA] [mA] toler.
UIHmin UILmax IOLmax IOHmax 5 V
UCCsp – napájecí nap. ,při kterém jsou specifikovány dynamické parametry
Parametry log. obvodů CMOS s napájením + 5 V
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
70
Snižování dynamické výkonové ztráty – snižování napájecího napětí
L – Low Voltage, nízkonapěťová logika.
Významná hodnota napájení UCC = + 3,3 V
Např. signálové procesory, …jádro 1,2V, interface obvody 3,3 V
otázka + 5 V tolerance vstupů
existují řady i s nižším napájecím napětím
Řada 74LVC – výhodná pro aplikace, rychlost, schopnost budit,
+ 5 V tolerance vstupů
LV řady – velmi často pouze v pouzdrech pro povrchovou montáž
Nízkonapěťová logika CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
71
1,4 - 3,6
2 -3,6
2 - 3,6
2- 3,6
1,4 - 3,6
1,1 - 2,7
AVC
LVX
LVQ
LCX
VCX
AUC
1,8
2,5
3,3
3,3
3,3
2,5
3,3
2,7 - 3,6
3,3
FCT3
2 -3,6
LVC
3,3; 2,5
1,65 - 3,6 3,3; 2,5
2,3 - 3,6
ALVT
3,3
ALVC
2,7 - 3,6
LVT
3,3
[V]
[V]
2 - 5,5
UCCopt
UCC
LV
řada
0,5*UCC
0,5*UCC
0,5*UCC
0,5*UCC
0,5*UCC
0,5*UCC
≈1,4
0,5*UCC
0,5*UCC
≈1,4
≈1,4
0,5*UCC
[V]
Ut
-8
-24
+24
+8
-24
-12
-4
-8
-8
+24
+12
+4
+8
+24
-24
-24
+24
+24
-32
-32
-8
[mA]
IOHmax
+64
+64
+8
[mA]
IOLmax
ne
ne
ano
ne
ano
ne
ano
ne
ano
ano
ano
ne
vstup
5V tol
CMOS
CMOS
CMOS
CMOS
CMOS
CMOS
CMOS
CMOS
CMOS
BiCMOS
BiCMOS
CMOS
techn.
Nízkonapěťová logika CMOS – přehled vybraných řad
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
72
• Max. napětí na vstupu UImax = UCC (s výjimkou 5 V, příp. 3,6 V toler. vstupů)
• Část obvodů má na vstupech clamp-diody proti svorce UCC (jako D1, D3).
• Na vstupech jsou clamp-diody proti svorce GND (D2, D4 dle ).
• Klidový napájecí proud ICC0 - je řádu jednotek, maximálně stovek
mikroampér ( při mezních kladných teplotách +1250 C).
• Vstupní klidové proudy jsou velmi malé II < 1 µA.
• Výstup ve stavu L se chová jako zdroj napětí Uout = 0 V s RV = 15 Ω až 70 Ω.
• Výstup ve stavu H se chová jako zdroj napětí Uout = UCC s vnitřním odporem
25 Ω - 100 Ω (neplatí pro řady 74FCTxxxT se dvěma tranz. NMOS na výst.).
• Ut ≈ 1,4 V , UIH min = 0,8 V, UILmax = 2 V, pro CMOS TTL komp. ( 74**Txxx)
• Ut = 0,5.UCC, UIH min = 0,7.UCC, UILmax = 0,3.UCC (mimo 74**Txx s UCC =5 V)
Společné rysy logických obvodů CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
73
Spínače sběrnic, převodníky napěťových úrovní
podmínka sepnutí UGS větší než prahové napětí UT
S
G
B- sub.
D
Tranzistor NMOS (induk. kanál N) symetrická struktura, funkce elektrody
Drain, Source podle orientace napětí,
„Crossbar Switches“, lit. Texas Instruments scdd001b_CBT_Log_Fam.pdf
Obvody CBT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
74
sběrnic 74 HCT245, a dalšími ´245
pinově kompatibilní se obousměrným budičem
(„obousměrný“) spínač sběrnic SN74CBT3245A
použitelné i jako rychlý „analogový“ spínač, videosignál,…
10 Ohmů v sepnutém stavu, pro napěťové úrovně L (2,4 V)
5 Ohmů v sepnutém stavu, pro napěťové úrovně L (0 V)
UCC= 5 V
Elementární spínač SN74CBT1G125, SINGLE FET BUS SWITCH
Obvody CBT
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
75
a)
b)
- na výstupu může být max. napětí UG - UT
UG= 4,3 V
U1= 5 V
U1= 3,3 V
UG= 4,3 V
T1
UT= 1 V
T1
U2= 3,3 V
U2= 3,3 V
- vstupní napětí 5 V – tranzistor „ reguluje (analogie emitorového sledovače)
vstupní napětí do 3 V – tranzistor vede („symetrická funkce“ – obr. a)
„Podmínka sepnutí tranzistoru UGS >UT (napětí na gate 4,3 V)
CBT jako spínač sběrnice a převodník úrovní
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
76
logická úroveň na sběrnici při použití
viz. cvičení - chování nezapojeného
vstupu CMOS- „floating. input“
obsažen v řadě obvodů obousměrných budičů sběrnic (řada obvodů ABT,
LVT, ALVC, LVC,..)
obvodem Bus – Hold, ekvivalent odporu 1 kOhm ve zpětné vazbě
při změně úrovně je nutno budit ( překonat působení)
Přepnutí budiče z režimu výstup do vstupního režimu, sběrnice je „plovoucí“
– „floating“
zachovává poslední definovanou
obousměrných budičů sběrnic.
podstata – bistabilní klopný obvod s invertory CMOS,
Definice logické úrovně na sběrnici při odpojení všech budičů, zamezení
výskytu nežádoucí napěťové úrovně a případného vzniku kmitů
Obvod Bus - Hold
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
77
v okolí rozhodovací úrovně
je třeba zamezit dlouhodobému výskytu napětí na vstupu
vstup L do H, zvýšení proudu do GND, zvýšení úbytku na LGND, pokles
napětí na vstupu (proti GND vývodu obvodu)
(vysvětlení působení imp. zemního vodiče,….tabule)
změna napětí na vstupu – změna proudu svorkou UCC nebo GND, úbytky na
parazitních indukčnostech přívodů (problém „ground bounce“)
Vstup obvodu na napětí v okolí rozhodovací úrovně – částečně vedou oba
tranzistory elementárního invertoru, zvýšení proudového odběru,
Důvod použití obvodu Bus hold
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
78
Dynamický proudový odběr - přebíjení kapacit
Bipolární log. obvody – statický proudový odběr a jeho růst s frekvencí
Logické obvody CMOS – v klidu
• buzení odporových zátěží – proud zátěží
• zbytkové závěrné proudy přechodů PN, zbytkový proud tepelně
generovanými nosiči, roste s teplotou
Proudový odběr logických obvodů
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
79
2
CC
CPD
P = fU
U1
Ci
CL
GND
U2
+UCC
2
P = f U CC
∑C
CL
RN
RP
U2
GND
+UCC
CL
Přebíjení kapacity CL frekvencí f
Dynamická výkonová ztráta nezávislá na velikosti odporů RP, RN (ovlivňují
pouze dynamiku)
Dynamická výkonová ztráta obvodů CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
80
PD
(C
+ CL ) + I CC0U CC
SN74HC164 (posuvný registr)
SN74HC04 (jediný invertor z obvodu)
2
PD = ( f i CPD + f O CL ) U CC
+ I CC0U CC
PD = f i U
2
CC
2
P = f U CC
∑C
U1
Ci
GND
2
P = f U CC
CL
U2
+UCC
Ekvivalentní ztrátová kapacita CPD (power dissipation capacitace),
Cpd vyjadřuje parazitní vnitřní kapacity i ztráty proudovým impulsem mezi svorkami
+UCC a GND (pomalé hrany na vstupu – růst Cpd)
Dynamická výkonová ztráta obvodů CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
81
CL
Snížení odběru mikroprocesorů a mikrořadičů:
Rozdělení – napájení jádra procesoru 2,5 V, 1,8 V, 1,2V ..
napájení budičů výstupů – často stále 3,3 V – kvůli kompatibilitě s další
logikou, ale možno i nižší napětí – viz STM32F103
napájení jádra – nižší napětí, vnější vstup napájecího napětí, někdy vnitřní
regulátor sníženého napětí
Snížení taktovací frekvence jádra (PLL) na nutnou hodnotu, aktivace pouze
periferií a sběrnic potřebných pro činnost (viz STM32F103)
Volba dvou procesorů –výkonný (hlavní) a monitorovací (zap.) viz. výklad
Problematika bateriového napájení, především snížení odběru
2
P = f U CC
∑C
Snižování proudového odběru:
• snižování napájecího napětí UCC
• snižování pracovní frekvence f (viz. dig. hodinky, 1,5 V, XTAL -32768 Hz)
• zkracování doby aktivní funkce obvodu toper přechod „operace“ – „spánek“
analogie – zimní spánek živočichů, snížení tepové frekvence srdce,…
Použití obvodů nízkonapětové logiky,
Snižování dynamického odběru obvodů CMOS
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL
82
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement