Přednáška 11 Sběrnice

Přednáška 11 Sběrnice
Přednáška 11 – v1
X38MIP -2009, kat. měření, ČVUT - FEL, Praha
J. Fischer
Sběrnice mikroprocesorů a přenos dat
X38MIP - 2009, kat. měření, ČVUT - FEL
1
adresová sběrnice
mikroprocesor
CPU
požadavky
činností
progr.
řadiče
vst.- výst.
V/V
vnější zařízení
paměť dat
paměť
programu
Mikropočítač - funkční bloky
datová
sběrnice
řídicí
sběrnice
komunikační řadiče rozhraní
- UART, SPI, IIC, CAN,
Ethernet
řadič přerušení, řadič DMA
prog. řadiče:
Vstup. / výstup. zařízenípředávání dat s okolím vstupně - výstupní brány
čítače, časovače
• řídící
• datová - obousměrná
• adresová
sběrnice:
Mikroprocesore CPU
(central processor unit)
X38MIP - 2009, kat. měření, ČVUT - FEL
2
vstup. říd. sig.
přerušení, /INT,..
požadavek čekání na procesoru / WAIT
/ BREQ - bus request -požadavek na uvolnění
sběrnic ( pro DMA- Direct Memory Accesspřímý přístup do paměti )
Signály sběrnic:
adresové signály - výstup, A15 -A0 (A0 - LSB)
datové sig. obousměrné D7 - D0 (D0 - LSB)
řídicí signály (obvykle akt. v L - negativní.
logika - spádová hrana „rychlejší“ :
výstup. říd. sig.
zápis / WR aktivní. v L („ nule“)
čtení / RD aktivní. v L („ nule“)
(„ /“ - lomítko - zde v textu - symbol negace)
Sběrnice procesoru- signály
říd. sig.
dat. sběr.
adr. sběr.
WR
D7 - D0, a více
A15 - A0 , a více
RD
X38MIP - 2009, kat. měření, ČVUT - FEL
3
Signály procesoru AT89S8252 ( procesory řady ´51)
A15 - A0 adresové signály (A7 - A0 multiplexovány s D7 - D0 )
D7 - D0 datové signály
ALE - Address Latch Enable- signál v H určuje možnost zachycení A7 - A0 )
signály čtení
/PSEN program store enable - čtení dat - instrukčního kódu z vnější paměti
programu - prostor „Code“
/ RD read , čtení - vnější paměť typu „XDATA“
/ WR zápis vnější paměť typu „XDATA“
Signály procesoru AT89S8252
X38MIP - 2009, kat. měření, ČVUT - FEL
4
RD
PSEN
1
MR
RD
PSEN
&
&
MR
/EA – External Address – vstup testovaný po reset, podle jeho stavu
/EA= L, čte program od 0000 externě
/EA= H, čte program od 0000 z interní Flash (0000 -1FFF), od adr 2000 z ext.
paměti
Pro další odvození a přednášky – mikroprocesor se signály –
spolupráce s pamětí /MR memory read, /MW memory write ,
nebo obecně / RD, read /WR write
Připojení na /PSEN, /RD, /WR analogicky
Jiná forma signálů ( /MREQ, / IORQ, /RD, /WR ) a jejich překódování
Sloučení signálů /PSEN a /RD ve vývojové desce:
Vývojová deska s AT89S8252- obvodově změnit na von Neumann
architekturu - společná sběrnice pro program a data,
nové signály /MR ( / WR) a / MR , sloučení signálů / RD a / PSEN
8051- architekt. (log.) Harward - oddělený prostor - paměť programu a dat
Signály procesoru AT89S8252
X38MIP - 2009, kat. měření, ČVUT - FEL
5
Čtení dat procesorem
přivedení platné adresy na sběrnice
aktivace signálu / RD
Cyklus čtení
data z pam.
/RD
ADR
D7
D0
A15
A0
MPR
tDV
C
platná data
platná data
platná adresa
RD
WR
D7 - D0
A15 - A0
A15
A0
pam.
blok
D7
D0
WR RD
X38MIP - 2009, kat. měření, ČVUT - FEL
6
Cyklus zápisu
přivedení platné adresy a dat na
sběrnici
zápis signálem / WR
Cyklus čtení a zápisu
WR
data z MPR
ADR
data z pam.
/RD
ADR
WP
platná data
t
C
Z
tDWH
platná data
platná adresa
tDV
platná data
platná adresa
A15 - A0
D8 - D0
X38MIP - 2009, kat. měření, ČVUT - FEL
7
WR
ALE
AD7 - AD0
A15 - A8
RD
WR
A7 - A0
A15
A8
pam.
blok
A7
D7
A0
D0
WR RD
adr.
D7 - D 0
A15 - A8
A15
A15 - A8
A8
AD7-AD0
MPR
´573
AD7
adr. A7 - A0
AD0
reg.
C OC
ALE
zap.
D7 - D 0
RD
ALE
AD7 - AD0
A15 - A8
adr
data z pam.
A7 - A0
A15 - A 8
D7 - D 0
D7 - D 0
další stejně jako u nemux. sb.
Oproti normální
(nemultiplexované) sběrnici
navíc - cyklus přivedení adresy
na multiplexovanou sběrnici a
její zachyceni v registru
pomocí sig. ALE
Čtení a zápis na multiplexované sběrnici
X38MIP - 2009, kat. měření, ČVUT - FEL
8
A7 - A0
t
Z
tDWH
D7 - D0
A15 - A8
WP
platná data
platná adresa
zap.
A15 - A0
D7 - D0
- viz. dekodér adresy
a ukládání dolní části
adresy do registru adr.
současné dekódování
horní části v dekodéru
do dekodéru adresyúspora času odezvy
Mux. sběrnice horní
adresové signály-
Druhá část cyklu zápisu
na mux. sb. shodná s
nemux. sběrnicí
Pro další využití – podobné mikroproc. s mux i nemux sběrnicí
WR
ALE
AD7 - AD0
A15 - A8
WR
data z MPR
ADR
Srovnání multiplex. a nemultiplex. sběrnice při zápisu
X38MIP - 2009, kat. měření, ČVUT - FEL
9
sběrnice pro připojení vnějších pamětí programu a dat
( ARM9, -- PXA255, PXA 270 – PDA,.. SDRAM, Flas, oper. systém
Win CE, Symbian, - potřeba velké paměti, připojena externě
-
-
Sběrnice pouze pro přenos dat z - a do vnějšího zařízení
připojení vnějších komunikačních řadičů…
mikrořadiče s vyvedenou sběrnicí: AT89S8252,…
mikrořadiče STR911, STR912 www.st.com
varianty podle pouzdra s EMI (external memory interface)
konfigurovatelné rozhraní šíře ( 8,16, 32 bitů, mux, nemux)
-
Jednočipové mikropočítače a mikrořadiče – varianty:
- Kompaktní provedení - bez vyvedené sběrnice
AT89C2051,…ATmega8, 16,32 , STM32F103,..
- datová sběrnice ATmega 162, 64 ( program pouze interně)
Využití sběrnic mikroprocesorů a mikrořadičů
10
X38MIP - 2009, kat. měření, ČVUT - FEL
10 uF
+5V 10k
33pF
33pF
RST
EA
AD0
A8
AD7
I8031 ALE
XTAL1
PSEN
XTAL2 A15
8k
test funkčnosti
procesoru bez
programu
„ pull – down“
generace 00- NOP
rezistory
8051 - mux. bus
„Jedno bajtová paměť“ , obsah 00h, mikroproc. čte kód NOP,
inkrementace adresy, adresové signály - jako signály čítače
n+1
An
A n-1
A
Q7 D7 "NOP"
74HCT573
MPR
Q0 D0
/MR OC C +5V
A D R
Test adr. sběrnice mikropočítače
Test funkce mikroprocesoru podle signálů sběrnic
11
X38MIP - 2009, kat. měření, ČVUT - FEL
V dalším odvození jsou použity relativně zastaralé paměti s malou kapacitou ( 2, 8,
32 kByte). Je to pouze pro demonstraci řešení.
Na základě seznámení s problematikou na uvedených příkadech je možno
analogicky navrhovat sestavu mikropočítače a dekodéry adres i pro sytémy s
podstatně větším adresovým prostorem a s pamětmi s větší kapacitou.
Do daných příkladů je tedy možno si doplnit i procesor STM32 s vyvedenou
adresovou sběrnicí a připojovat paměti EPROM a RAM s kapacitou řádu MByte.
Poznámka:
12
X38MIP - 2009, kat. měření, ČVUT - FEL
„zrcadlení“
výběr paměti podle
adresy A11 - neúplné
dekódování adresy
Min. varianta pokud /CE
na GND, paměť vybraná
stále
propojení adr, dat
A
D
A11
MR
D7- D0
A10 - A0
říd.
data
R adr.
OE
CE
2716
A
D
MPR
0000
FFFFh
1FFFh
2000h
17FFh
1800h
0FFFh
1000h
07FFh
0800h
Připojení paměti programu k mikroprocesoru
volno
zrcadlení
volno
2716
13
X38MIP - 2009, kat. měření, ČVUT - FEL
Několik výstupů výběru adresy /AS z vnitřní jednotky dekodéru adr., adresu
bývá možno nastavit programově
Některé procesory – interní dekodér adresy – (chip select unit), pro vyšší
rychlost- snížení vlivu zpoždění vnějšího dekodéru adresy
sloučit / AS a /WR pro zápis
sloučit /AS a /RD pro čtení (sloučit funkcí – hradlem OR)
Obvody s jediným výběrovým sig. čtení,či zápisu (např. FIFO pam.)-
výběr od adresy / AS přip. na /CS (chip select), / CE (chip enable) paměti
signál zápisu /WR připojit na /WE ( write enable) paměti
signál čtení / RD připojit na - /OE ( output enable) paměti
do obou ( to je do dekodéru i paměti) NE!!! ( při stand. řešení 99 %)
do paměti nebo dekodéru, případně nikam
Pravidlo: Standardní situace: adresový signál připojen
Pravidla připojení pamětí k mikroprocesoru
14
X38MIP - 2009, kat. měření, ČVUT - FEL
? Jak se změní situace,
pokud se využije pro
rozlišení signál A15 ?
neúplné dekódování
adresy
zrcadlení
rozlišení výběru paměti
podle stavu A11
Pam. A a pam. B
Připojení
A
D
Mikroprocesor + dvě paměti
MPR
A11
1
A11
A10 - A0 2716
D7- D0 A
B
D
MR
OE
CE
A10 - A0 2716
D7 - D0 A A
D
MR
OE
CE
A11
říd.
data
R adr.
FFFFh
2000h
1FFFh
17FFh
1800h
0FFFh
1000h
07FFh
0800h
0000
zrcadlení
2716 - A
2716 - B
zrcadlení
2716 - A
zrcadlení
2716 - B
2716 - A
15
X38MIP - 2009, kat. měření, ČVUT - FEL
A14
A15
MR
MW
D7 - D0
A12 - A0
MR
D7 - D0
A12 - A0
říd. sig.
D7 - D0
A D R A -A
15
0
R1
6264
CE
E1
WE CS2
CS1
A
D
OE
OE
A
D
27C64
MPR
FFFF H
7FFF H
8000 H
9FFF H
zrcadlení
RAM
C000 H
zrcadlení
EPROM
0000
1FFF H
2000 H
volný
prostor
(RAM)
RAM
(EPROM)
(EPROM)
(EPROM)
EPROM
EPROM 2764 8 kx 8 interně 0000 – 1FFFh
SRAM 6264 8 k x 8 interně 0000 – 1FFFh ( /CS1, CS2 ) uP vidí na 8000 -9FFF
A15 rozlišení EPROM nebo RAM A15 = 0 0000 – 7FFF
A15 = 1 8000 – FFFF
Připojení EPROM a SRAM
16
X38MIP - 2009, kat. měření, ČVUT - FEL
G1 O7
G2
D
G3
A O0
B
C
AS7
AS0
A15
20 k?
+ 5V
S7
A8
/G1, /G2, G3 povolovací vstupy- nutná podmínka aktivace Ox do L
Možnost využití vstupů /G1, /G2, G3 pro dekódování adresy - 6 bitů
Komparátor- jediný výstup, možnost měnit adresu podle vstupu
+ 5V
A13
A14
A15
74LS138
Q0
Q7
P0
P7
G
P=Q
K
AS
Dekódování adres- dekodér adres 1 z 8, komparátor, programovatelná logika
/ AS address select výběr adresy o obvodu
dekodér 1 z 8, typu 74 HC138, 74HCT 138 , vybraný výstup Ox má úroveň L
/AS0 výběr pro A15 =0, A14 = 0, A13 = 0 adr. 0000 h - 1FFF h
/AS1 výběr pro A15 =0, A14 = 0, A13 = 1 adr. 2000 h - 3FFF h
vstupy C - MSB, A - LSB,
74LS 688
Obvody pro dekódování adresy
17
X38MIP - 2009, kat. měření, ČVUT - FEL
Dekódování adres se děje často jednoduchými obvody pro co nejkratší
rychlost odezvy.
Např. výběr stavu A15 = 1, A14 = 1 je možno zařídit pomocí hradla NAND
74HCT00, pro rychlé obvody v nízkonapěťové logice např. 74LVC00
Využívají se také obvody programovatelné logiky ( CPLD, FPGA)
Jiná řešení obvodů pro dekódování adresy
18
X38MIP - 2009, kat. měření, ČVUT - FEL
1
Z
AS
výběr adresy z dek. adr.
MW
D7 - D0
74HCT573
D Q
R1 výst.
C OC
Základní atribut výstupní brány - paměť (registr)
zápis úrovní nebo hranou
„paměťově mapovaná“ výstupní brána – procesoru přístupná v adresovém
prostoru paměti
obvykle není úplně dekódovaná adresa, zrcadlení výstupní brány
Výstupní brány jiné - čítač - přednastavovací vstupy čítače,
paralelní vstup do posuvného registru ( typu paralelně - sériový) a další
obvody s registrem na vstupu
Jako výstupní brána může být připojena i paměť FIFO IDT 7202
(řízení vstupu /W)
Výstupní brána
19
X38MIP - 2009, kat. měření, ČVUT - FEL
1
V
D
R2
vstup
OC C
+ 5V
Q
74HCT573
MR
AS
D7 - D 0
1
V
R2
D
OC C
Q
vstup
strobe
74HCT574
Strobovaná vstupní brána, vyrovnávací paměť - registr,
zápis dat do paměti brány - náběžnou hranou do 74 HCT 574 - strobe
okamžiky zápisu dat do registru a čtení dat na sběrnici mohou být jiné
Ekvidistatntní vzorkování log. signálů - řízení odběru čítačem- časovačem
Následně čtení do procesoru - ve volném čase
využití také u převodníků A/D
MR
AS
D7 - D0
Základní atribut vstupní brány - třístavový budič sběrnice
vstupní brána nemusí mít paměť
čtení úrovní
paměťově mapovaná vstupní brána - čtení z prostoru paměti
obvykle není úplně dekódovaná adresa, zrcadlení vstupní brány
Vstupní brána
20
X38MIP - 2009, kat. měření, ČVUT - FEL
MR
AS
D7 - D0
MW
1
1
Z
V
D
R2
vstup
OC C
+ 5V
Q
74HCT573
74HCT573
D Q
R1 výst.
C OC
Vstupní a výstupní brána na stejné adrese
rozlišení zápis / MW , nebo čtení / MR
Kombinovaná vstupně výstupní brána- vstupy a výstupy spolu spojeny
Pro vstup musí výstup být ve třetím stavu (obvykle u jednočip. mikrop.)
nebo výstupní brána typu otevřený kolektor spojená se vstupní branoujako u AT89S8252, otevřený kolektor
Proc. STM32 - konfigurace pinů - výst, brána, vstupní brána , otevřený kolektor
Kombinovaná vstupní a výstupní brána
21
X38MIP - 2009, kat. měření, ČVUT - FEL
000
001
010
011
100
101
110
111
O0
O1
O2
O3
O4
O5
O6
O7
0000h
2000h
4000h
6000h
8000 h
A000h
C000h
E000h
A15,14, 13 poč. adr.
A
D
A 15
A 14
MR
G3
G2
G1
C
B
A
říd.
data
adr.
A 13
MW
R
+ 5V
D
O7
O0
MPR
O6
Připojení brány do prostoru C000h - DFFFh
1
1
OC
Q
OC
Q
C
D
74HCT573
C
D
74HCT573
+5 V
VSTUP
22
VÝSTUP
X38MIP - 2009, kat. měření, ČVUT - FEL
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