Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
1
Az integrált áramkörök kimenetének kialakítása
• totem-pole • three-state • open-kollektor
Az áramkörök általános leegyszerűsített kimeneti fokozata:
V1
V2
kim enetK1
K2
R1
R2
+ tápfeszültség
Uki, Iki
ahol R1>>R2, és K1, K2 félvezető eszközökkel megvalósított kapcsoló (kapcsolóüzemű tranzisztorok), amelyeket belső V1 és V2 vezérlőjelek vezérelnek (nyit-zár)
Totem pole kimenet: K1,K2 ellenütemben vezérelve K1 K2 Kimenet nyit zár Logikai '0' zár nyit Logikai '1' A totem-pole kimenet "ellenállásai" olyanok, hogy a kimenetek közvetlen összekötését nem viselik el. Két, ellenkező értékre vezérelt kimenet összekötése esetén Imin áram folyik, amelyből Imin
2*R1 és Imin2*R1 teljesítményt el kell disszipálni. Ezt az áramkörök nem viselik
el.
2
Three-state kimenet: K1 és K2 külön vezérelhetők. K1 K2 Kimenet nyit zár Logikai '0' zár nyit Logikai '1' nyit nyit Nagyimpedanciás állapot
Nyitott kollektoros kimenet: Felépítésében a totem pole kimenettől annyiban tér el, hogy a K1 és R1 elemek elmaradnak A V vezérlőjel aktív állapota a kimenet '0' szintjét biztosítja, a logikai '1' szint külső un. felhúzó ellenállással (Rc) biztosítható. Az Rc külső csatlakoztatása lehetővé teszi az ellenállás egyedi méretezését. Így több open kollektoros kimenet közvetlen összekötésével huzalozott NOR kapcsolás hozható létre:
A B C X X = A B C = A + B + C⋅ ⋅1 - - 0 - 1 - 0 - - 1 0
U tá p
R c A
B
C
X
0 0 0 1
Flip-flopok alkalmazása Pergésmentesítés - aszinkron S-R flip-flop (A kapcsoló pergése esetén a kimenet csak egyszer vált)
Q K
k
k
S
2
1
R Q
k 1
S
R
k 2
3
Szinkron flip-flopok Alaphelyzetbe állító jelek:
• aszinkron működés • negált logikájú jelek
Preset: D=1 Clear: D=0 Működési módok:
• Élvezérelt • Master-slave • Data-lock-out
D Cp
Q Q
Pr
Cl
Bemenet mintavételezése Kimenet beállítása
Élvezérelt
Master-slave
Data-lock-out
Időzítések: Propagation Delay (késleltetési idő): Az órajel éléhez képest a kimenet előállása Setup time: Az az idő, amennyivel az órajel éle előtt a bemenetnek stabilnak kell lennie Hold time: Az az idő, amennyivel az órajel éle után a bemenetnek stabilnak kell lennie (Funkcionális hazárd!) Kettes osztó kialakítása JK flip-flop-ból:
J
KCp
Q
Q76
J
KCp
Q
Q76X X
YY
U
t
X
Y
2.4. ábra
Kettes osztó kialakítása D flip-flop-ból:
D Q
Q74
CpX
Y
U
t
X
Y
4
Kétfázisú órajel előállítása Hazárd léphet fel.
D Q
Q74
Cp
U
ClkF1
F2 F1
F2 t
Clk
Q
Helyes megoldás.
D Cp
Q1 Q
D Cp
Q2 Q
C1 C2
ClkQ1 Q2 C1 C2
Clk
Funkcionális elemek - kombinációs hálózatok
Multiplexer Y = A · v + B · v
A B
v
Y
N-ből 1 dekóder (demultiplexer)
E A B Y0 Y1 Y2 Y3 1 0 0 0 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 0
A B
E
Y0 Y1 Y2 Y3
0 - - 1 1 1 1
5
Komparátorok (bináris értékek összehasonlítása) A3
A2 A1 A0 A>B A=B A<B B3 B2 B1 B0
A>BA=BA<B
A7 : : A0 B7 : : B0
A>B
A=B
Bitszélesség növelése
• Kaszkád bemenetek felhasználásával
A0A1A2A3
B0B1B2B3
A = BA < B
A > BA = BA < B
A > B
7485
A0A1A2A3
B0B1B2B3
A = BA < B
A > BA = BA < B
A > B
7485
A0A1A2A3
B0B1B2B3
A = BA < B
A > BA = BA < B
A > B
7485
A0A1A2A3
B0B1B2B3
A = BA < B
A > BA = BA < B
A > B
7485
• Kiegészítő kombinációs hálózattal
Szinkron hálózatok
Számlálók Működés módja szerint:
• aszinkron • szinkron.
Számlálás iránya szerint: • egyirányú, • kétirányú (reverzibilis).
Kezdeti érték beállítása szerint: • nullázás (törlés/clear) Szinkron/aszinkron • induló érték megadása (töltés/load) Szinkron/aszinkron
Aszinkron számlálók
D Cp
Q1 Q
D Cp
Q2 Q
Clk Q1 Q2 Q3
Clk D Cp
Q3 Q
n. kimenet (n*∆tff) idő múlva érvényes Frekvenciaosztásra használjuk, aszinkron törlésnél a hazárdra ügyelni kell
6
Szinkron számlálók
T Cp
Q1 Q
T Cp
Q2 Q
Clk Q1 Q2 Q3
Clk T Cp
Q3 Q
párhuzamos kaszkádosítás: n. ff bemenetén n-1 bemenetű ÉS kapu késleltetés: ∆tff + ∆tkapu
soros kaszkádosítás: n. ff bemenetén is csak 2 bemenetű ÉS kapu késleltetés: ∆tff + (n-2)*∆tkapu RCO (Ripple Carry Output) a számláló a következő órajelre átfordul n bites bináris számláló: 2n-1 BCD számláló: 9 ENP: Számlálás engedélyezése ENT: Számlálás és RCO engedélyezése LOAD: A számláló kimenetei a következő órajelre az (A..D) bemenetein található értéket veszik fel CLEAR: A számláló kimenetei a következő órajelre 0 értéket vesznek fel
QA
QB
QC
QD
ENP
74160-163
A B C DENT
LOAD CLR
RCOCLK
RCO engedélyezés
ENP
ENT
Számlálás engedélyezés
QC
QB
QA
QD
RCO
7
Soros/párhuzamos kaszkádosítás
A B C D
74160-163A B C D
74160-163A B C D
74160-163Q Q Q Q
ENP A B C DENT
LOAD CLR
RCOCLK
CLK"H"
Q Q Q Q
ENP A B C DENT
LOAD CLR
RCOCLK
Q Q Q Q
ENP A B C DENT
LOAD CLR
RCOCLK
"H"
A B C D
74160-163
Q Q Q Q
ENP A B C DENT
LOAD CLR
RCOCLK
0...N 0...N (Aszinkron törlés)
Számláló Cl
A B
=
N Komp.
Számláló Ld
A B
=
N
0
Cl
Aszinkron reset
Komp.
0...N,M...K (N<M<K) 0...N,M...K (Aszinkron törlés)
Számláló Cl
A B
=
K A B
=
N
M
Ld
Komp. Komp.
Számláló Cl
A B
=
K A B
=
N
M 0
Ld
MPX A B
v Aszinkron RESET
Komp. Komp.
Számlálási ciklus rövidítése szinkron törléssel (0-12-ig számláló):
QA
QB
QC
QD
ENP
74163
A B C DENT
LOAD CLR
RCOCLK
ABCD
0 0 0 01 0 0 00 1 0 01 1 0 00 0 1 0
0 0 1 1:
ClearCount
Szinkron törlés
Számlálási ciklus rövidítése aszinkron törléssel(0-12-ig számláló):
QA
QB
QC
QD
ENP
74161
A B C DENT
LOAD CLR
RCOCLK
"H"
ABCD
0 0 0 01 0 0 00 1 0 01 1 0 00 0 1 0
1 0 1 1:
Clear
Count
Aszinkron törlés
Hazárd kialakulása lehetséges !
QA
QB
QC
QD
ENP
74161
A B C DENT
LOAD CLR
RCOCLK
"H" "L"
ABCD
0 0 0 01 0 0 00 1 0 01 1 0 00 0 1 0
0 0 1 1:
Load
Count
Szinkron beírásHazárdmentes megoldás !
8
Regiszterek Közös órajellel vezérelt D flip-flop csoport (Ha D-G flip-flop: LATCH)
D Q
Q74
Cp
X1 X1b
D Q
Q74
Cp
X2 X2b
D Q
Q74
Cp
X3 X3b
D Q
Q74
Cp
Xn Xnb
Cp Léptető regiszter
D Cp
Q1 Q
D Cp
Q2 Q
Clk SI Q1 Q2 Q3
Clk D Cp
Q3 Q
SI
Általános regiszter V0 V1 Funkció Egy cella 0 0 Tölt 0 1 Balra léptet 1 0 Jobbra léptet 1 1 Töröl
D Cp
Qi
Y
Cl
Aszinkron törlés
ABCD
XiQi-1Qi+1
0
ClkV1 V0
MPX
9
Memóriák ROM (Read Only Memory): Csak olvasható memória A kezdeti tartalom belekerülhet gyártáskor: maszk programozott ROM A felhasználó által egyszer írható: PROM (Programable .....) UV fénnyel a teljes tartalom törölhető majd újraírható: EPROM (Erasable ....) Elektronikusan törölhető és újraírható: EEPROM, E2PROM (Electrically ....) RAM (Random Access Memory): Írható - olvasható memória Induláskor a tartalom véletlenszerű statikus: Tárolás flip-flopban dinamikus: tárolás kondenzátorban - a tartalmat periodikusan újra kell írni - frissítés
An-1... A0
Dm-1... D0
Memória
OECE
R/W
An-1 ... A0: n db címvezeték Dm-1 ... D0: m db adatvezeték OE: kimenet engedélyezés CE: Chip engedélyezés R/W: művelet kijelölés 1: olvas / 0: ír
Kapacitás: kbit (1024 bit), Mbit (1024x1024 bit), kbyte (1024 x 8 bit) Szervezés Kapacitás adatvezetékek
száma címvezetékek
száma 1k x 1 bit 1 kbit (210) 1 (20) 10 2k x 8 bit 16 kbit (214) 8 (23) 11 4k x 8 bit 32 kbit (215) 8 (23) 12 1M x 1 bit 1 Mbit (220) 1 (20) 20 16k x 4 bit 64 kbit (216) 4 (22) 14 Belső felépítés : mátrix szervezés
Oszlop MPX
S O R
D E K
Adat
Cím
OE CE
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
Kapacitás növelése Bitszélesség 2n-1 x k → 2n-1 x m*k (pl: 2k x 2 bit → 2k x 8 bit : n=11, k=2, m=8)
n
.
.
.
.
n
n
n
n
cím
cím
cím
cím
CE
CE
CE
CE
E
cím
k
k
k
k m*k adat
adat
adat
adat
11
Címtartomány 2n-1 x k → 2m* 2n-1 x k (pl: 2k x 8 bit → 8k x 8 bit : n=11, k=8, m=4)
n
.
.
.
.
n
n
n
n
cím
cím
cím
cím
CE
CE
CE
CE
E
cím
k
k
k
k k adat
adat
adat
adat
m+n
.
.2m
.
.
m DE KÓDE R
12
Számítógépek felépítése
Neumann modell
BE ALU KI
Vezérlő egység
Operatív tár
Alapelvek
• belső programtárolás illetve programvezérlés • utasítás és adat azonos közegben és formában tárolva
• az utasításszámláló dönti el, hogy egy adott rekesz program vagy adat (vagyis értelmezésük az algoritmusban van kódolva)
• utasítások programmal módosíthatók • az adattípusok műveletekhez rendeltek
• szekvenciális utasítás végrehajtás • egydimenziós, lineáris címzésű memória • bináris ábrázolás
Fejlődés
• ALU + vezérlő egység ⇒ Processzor • Külső kapcsolatok, perifériák leválása (KI - BE összevonása) • tárcentrikus felépítés • I/O csatornák, SÍN kialakítása
13
Sínek egyszintű sín
Processzor Memória Periféria
Sín (busz) : jelek összessége Adat busz Cím busz Vezérlő jelek Időosztásos sínhasználat egyszerű, olcsó megvalósítás szűk keresztmetszet MASTER az az eszköz, amely az adatátvitelt vezényli SLAVE az adatátvitelben résztvevő eszköz (adat forrás, cél) A MASTER nem feltétlenül forrása vagy célja az adatátvitelnek Arbitráció
Több MASTER esetén dönteni kell, hogy ki jogosult a busz használatára A kommunikáció módszere szerint: Aszinkron busz
az adó és a vevő nem jár szinkronban, a kapcsolatfelvétel és a vétel visszaigazolása szükséges (handshake jelek)
Szinkron busz
az adatátvitel adott sebességen történik, meghatározott vezérlőjelek időzítésével. Az adó nem vár választ, a rendszer minden elemének bírnia kell a diktált sebességet
14
2. CPU funkcionális felépítése
ALU
RegiszterekVezérlő és
Busz interfész
cím
adat
vezérlő jelek
Belső busz
utasításdekódoló
Busz interfész
Kapcsolattartás a külvilággal Cím sín: a műveletben résztvevő külső eszköz azonosítása Adat sín: A művelet adata Vezérlő jelek: A művelet végrehajtásának ütemezése
ALU: Aritmetikai logikai egység • Aritmetikai műveletek megvalósítása
Összeadás/kivonás (kettes komplemens) cél: minél gyorsabb legyen (kombinációs hálózat) gond: átvitelképzés carry look ahead
Fixpontos szorzás/osztás Összeadásra és léptetésre vezethető vissza Sorrendi hálózatot igényel
Lebegőpontos műveletek Általában csak aritmetikai társprocesszorokban valósítják meg
• Léptetések Probléma: n bit léptetése egy ütemben
Speciális shift regiszterek alkalmazása
• Logika műveletek megvalósítása Általában AND, OR, XOR, NOT
15
Regiszterek Belső tároló elemek, tartalmuk a külső memóriánál sokkal gyorsabban hozzáférhető a műveletek számára Általános célú regiszterek: felhasználásuk módja nem kötött Speciális célú regiszterek: Felhasználásuk korlátozott Címregiszterek:
Általános célú címregiszter : Operandusok címét tárolják Program számláló (PC - program counter, IP - instruction pointer)
A következő utasítás címét tartalmazza. Saját inkrementáló egységgel rendelkezik
Verem mutató (SP - stack pointer) A verem legfelső elemének címét tárolja. A veremkezelő műveletek automatikusan hivatkoznak rá.
Adatregiszterek:
Műveletek operandusait tárolják Akkumulátor: egycímű gépeknél a műveletek egyik operandusa
Speciális regiszterek: Állapot regiszter (flagek)
A processzor aktuális állapotát, az utolsó műveletvégzés eredményének jellemzőit tárolja
CY – átvitel, Z – Zero, S – előjel, P – paritás, AC - segédátvitel
Vezérlő egység Feladata: Az utasítás-végrehajtás folyamatának levezénylése, a belső funkcionális elemek működésének összehangolása. Bemenet: Utasítás kód, állapotjelek Kimenet: belső/külső vezérlőjelek szekvenciái Megvalósítás: Huzalozott logika Gyors Bonyolult utasításkészlet esetén technológiai problémák lépnek fel Sorrendi hálózat Fázisregiszter Mikroprogramozott vezérlőegység Rögzített struktúra 1 gépi utasítás = mikroprogram szubrutin (a processzor mikroprogram szinten interpretálja az utasítást)
16
Gépi utasítás általános felépítése
Műveleti kód operandusok
Egycímű gép: Az egyik operandus kötelezően az akkumulátor Kétcímű gép: Az egyik operandus a művelet forrás operandusa, a másik forrás és cél
operandus is egyben Háromcímű gép: 2 forrás és egy cél operandus Négycímű gép: Az utasítás tartalmaz 2 forrás, 1 cél operandust és a következő utasítás címét
is Adattípusok Egyszerű Bit Byte (8 bit) Szó (word - 16 bit) Hosszú szó (long word, dword - 32 bit) Összetett Karakterlánc Bit string Lebegőpontos számok
17
Címzési módok Közvetlen címzés Az utasítás tartalmazza az operandust Direkt címzés Memória direkt címzés Az utasítás tartalmazza az operandus memóriacímét Regiszter direkt címzés Az operandus egy regiszter Indirekt címzés Memória indirekt címzés
Az utasítás tartalmazza az operandus memóriacímét tartalmazó memóriarekesz címét
Regiszter indirekt címzés Az operandus címét egy címregiszter tartalmazza
Pre-dekremens címzés Egy regiszter tartalmazza az operandus címét. A művelet elvégzése előtt a címregiszter értéke az operandus méretével csökken. Tipikusan veremkezelésre használják. A verembe adatot elhelyező művelet címzési módja
Post-inkremens címzés Egy regiszter tartalmazza az operandus címét. A művelet elvégzése után a címregiszter értéke az operandus méretével nő. Tipikusan veremkezelésre használják. A veremből adatot eltávolító művelet címzési módja
Indexelt címzés Az operandus címe egy bázisregiszter és egy operandusmérettel megszorzott indexregiszter összegéből képződik. A támogatott operandusméretek: 1, 2, 4, 8 byte
Indexelt címzés eltolással Az operandus címe egy bázisregiszter, egy operandusmérettel megszorzott indexregiszter és egy konstans eltolás összegéből képződik. Az eltolást közvetlen adatként az utasításkód tartalmazza.
18
8085 felépítése (HW modell)
Az utasítás-végrehajtás folyamata: fázis (1 órajelperiódus) – gépi ciklus (1 buszművelet) - utasítás gépi ciklus
(külső memória / IO hozzáférés) Utasítás felhozatal → olvasás
Belső munka ← értelmezés Paraméter felhozatal → olvasás
Belső munka ← művelet Eredmény tárolása → írás
19
8085 felépítése (SW modell) Regiszterek: A – Akkumulátor ( 8 bit) B,C,D,E, H,L – általános regiszterek (8 bit) BC,DE,HL – regiszterpárok (16 bit) SP – Verem mutató (16 bit) PC – utasítás számláló (16 bit) PSW – Program állapot szó : Akkumulátor + flag-ek (16 bit) Flag-ek: Z,S,P,CY,AC Címzési módok: adat:
közvetlen adat – az operandust az utasítás tartalmazza indirekt (közvetlen) adatcímzés – az utasítás tartalmazza az operandus címét regiszter címzés – az operandus egy regiszter indirekt regisztercímzés – az operandus címét egy regiszterpár tartalmazza
cím: közvetlen utasításcímzés – a következő utasítás címét az utasítás tartalmazza regiszter indirekt utasításcímzés - a következő utasítás címét regiszterpár tartalmazza Utasítástípusok: Adatmozgató MOV r1,r2 MOV r,M MOV M,r MVI r,adat8 MVI M,adat8 LXI rp,adat16 LDA cím16 STA cím16 LHLD cím16 SHLD cím16 LDAX rp STAX rp XCHG Aritmetikai ADD r ADD M ADI adat8 ADC r ADC M ACI adat8 SUB r SUB M SUI adat8 SBB r SBB M SBI adat8 INR r INR M DCR r DCR M INX rp DCX rp DAD rp DAA Logikai ANA r ANA M ANI adat8 ORA r ORA M ORI adat8 XRA r XRA M XRI adat8 CMP r CMP M CPI adat8 RLC (A7 › CY) RRC (A0 › CY) RAL (A7 › CY, CY › A0 ) RRC (A0 › CY, CY › A7 ) CMA CMC STC