Programowalne uklady logiczne.pdf

(291 KB) Pobierz
Programowalne układy logiczne
Programowalne uk þ ady logiczne
Termin logiczne uk þ ady programowalne PLD ( Programmable Logic Devices ) odnosi si ħ do
ka Ň dego cyfrowego uk þ adu scalonego, którego w þ a Ļ ciwo Ļ ci funkcjonalne mog Ģ by ę
zdefiniowane (ustalane) przez ko ı cowego u Ň ytkownika, który mo Ň e zaimplementowa ę w jego
strukturze opracowany przez siebie projekt jakiego Ļ wyspecjalizowanego uk þ adu cyfrowego.
Najwa Ň niejsz Ģ cech Ģ tych uk þ adów jest wi ħ c ich konfigurowalno Ļę przez u Ň ytkownika w jego
w þ asnym laboratorium.
Wspó þ czesne uk þ ady programowalne klasyfikuje si ħ najcz ħĻ ciej w trzech grupach, przy czym
kryterium klasyfikacji s Ģ g þ ównie cechy ich architektury. Najcz ħĻ ciej przyjmuje si ħ , Ň e uk þ ady
PLD dzieli si ħ na:
SPLD ( Simple Programmable Logic Device ) – proste uk þ ady programowalne,
CPLD ( Complex Programmable Logic Devices ) – z þ o Ň one uk þ ady programowalne,
FPGA ( Field Programmable Gate Array ) – programowalne matryce bramkowe.
Do uk þ adów SPLD zalicza si ħ uk þ ady programowalne o architekturach PLA ( Programmable
Logic Array ), PAL ( Programmable Array Logic ) i GAL ( Generic Array Logic ). S Ģ to uk þ ady o
najskromniejszych mo Ň liwo Ļ ciach logicznych, a wi ħ c i najta ı sze ze wszystkich uk þ adów
programowalnych. Niemniej jednak ich zasoby logiczne s Ģ spore, zawieraj Ģ bowiem typowo od
4 do 22 makrokomórek logicznych o dwupoziomowej strukturze logicznej i mog Ģ zwykle
zast Ģ pi ę kilka standardowych uk þ adów scalonych rodziny 74xx. Ka Ň da z komórek jest zwykle w
pe þ ni po þĢ czona z innymi komórkami w danym uk þ adzie scalonym. Do okre Ļ lenia funkcji
realizowanych przez makrokomórki (ich skonfigurowania) stosowane s Ģ þĢ czniki (klucze),
którymi s Ģ w wi ħ kszo Ļ ci przypadków przepalane fragmenty Ļ cie Ň ek ( þĢ czniki rozwarciowe – dla
uk þ adów PLA i PAL) lub tranzystory MOS (dla uk þ adów GAL).
Uk þ ady CPLD s Ģ koncepcyjnie podobne do uk þ adów SPLD, lecz s Ģ bardziej z þ o Ň one: maj Ģ
wi ħ ksze zasoby logiczne i mo Ň liwo Ļ ci funkcjonalne. Ich architektura ma struktur ħ hierarchiczn Ģ
opart Ģ na makrokomórkach logicznych, których zawieraj Ģ od kilkudziesi ħ ciu do kilkuset.
Typowo od czterech do szesnastu makrokomórek jest po þĢ czonych w wi ħ kszy blok
funkcjonalny. Jedn Ģ z wa Ň niejszych cech architektury uk þ adów CPLD jest liczba termów
przypadaj Ģ cych na pojedyncz Ģ makrokomórk ħ oraz mo Ň liwo Ļę po Ň yczki termów z s Ģ siednich
makrokomórek. Je Ļ li uk þ ad zawiera wiele bloków funkcjonalnych, s Ģ one þĢ czone mi ħ dzy sob Ģ
za pomoc Ģ matrycy po þĢ czeniowej kluczy, której zdolno Ļę þĢ czeniowa jest wa Ň n Ģ cech Ģ
uk þ adów CPLD. Ta liczba po þĢ cze ı wewn Ģ trz matrycy okre Ļ la bowiem, jak þ atwo jest
„wpasowa ę ” jaki Ļ projekt w dany uk þ ad programowalny.
Architektura uk þ adów FPGA ró Ň ni si ħ od architektury uk þ adów CPLD. Na ogó þ uk þ ady FPGA
zawieraj Ģ rozmieszczone matrycowo boki logiczne CLB (rys. 4. 1 ). Poszczególne bloki s Ģ
þĢ czone ze sob Ģ za po Ļ rednictwem linii traktów po þĢ czeniowych ( Routing Channels ) oraz
programowalnych matryc kluczy po þĢ czeniowych umieszczonych w miejscu krzy Ň owania si ħ
traktów poziomych i pionowych. Na obrze Ň ach matrycy bloków logicznych znajduj Ģ si ħ
programowalne bloki IOB (wej Ļ ciowo-wyj Ļ ciowe). Struktury FPGA zawieraj Ģ od 64 do
dziesi Ģ tków tysi ħ cy bloków logicznych o bardzo zró Ň nicowanej budowie. Bloki logiczne mog Ģ
by ę bardzo z þ o Ň one, jest ich wówczas mniej w uk þ adzie, lub wzgl ħ dnie proste i jest ich wówczas
wi ħ cej. Zazwyczaj z þ o Ň one bloki logiczne zawieraj Ģ dwie lub wi ħ cej pami ħ ci RAM
umo Ň liwiaj Ģ cych tworzenie tablic warto Ļ ci funkcji LUT ( Look-up Table ) i dwa lub wi ħ cej
przerzutników. W wi ħ kszo Ļ ci uk þ adów s Ģ to tablice czterowej Ļ ciowe (pami ħę RAM o
pojemno Ļ ci 1 6 bitów). W uk þ adach o prostszej budowie, bloki logiczne zawieraj Ģ zwykle
dwuwej Ļ ciowe uk þ ady generacji funkcji kombinacyjnych lub multipleksery czterowej Ļ ciowe i
ewentualnie przerzutniki.
Schemat blokowy uk þ adu FPGA
Do grupy najwi ħ kszych producentów uk þ adów programowalnych i narz ħ dzi komputerowych do
ich syntezy nale ŇĢ nast ħ puj Ģ ce firmy: Altera ( www.altera.com ), Lattice ( www.latticesemi.com ),
Xilinx ( www.xilinx.com ), Cypress ( www.cypress.com ), Atmel ( www.atmel.com ) i QuickLogic
( www.quicklogic.com ).
70378883.112.png
Uk þ ady logiczne SPLD na przyk þ adzie uk þ adu GAL 1 6V8
Obecnie najpopularniejsz Ģ grup Ģ uk þ adów SPLD s Ģ uk þ ady GAL, w których wykorzystano
architektur ħ PAL wzbogacon Ģ o konfigurowalne makrokomórki wyj Ļ ciowe zawieraj Ģ ce
przerzutniki typu D. Przerzutniki te spe þ niaj Ģ rol ħ wyj Ļ ciowych elementów pami ħ ciowych
umo Ň liwiaj Ģ cych budowanie uk þ adów synchronicznych.
Uk þ ady programowalne GAL zostan Ģ przedstawione na przyk þ adzie uk þ adu GAL 1 6V8 firmy
Lattice. Jest on wykonany w technologii CMOS i zawiera elektrycznie reprogramowalne
komórki pami ħ ci typu E 2 CMOS. Uk þ ad ten charakteryzuje si ħ nast ħ puj Ģ cymi cechami:
Wysoko wydajna technologia E 2 CMOS (3,5ns maksymalny czas propagacji, F max =
250MHz, 3ns od wej Ļ cia zegara do wyj Ļ cia danych).
Rezystory podwieszone na ka Ň dej ko ı cówce ( active pull-up ).
Technologia E 2 CELL (rekonfigurowalna logika, reprogramowalne komórki, bardzo
szybkie elektrycznie kasowanie (poni Ň ej 1 00ms), czas podtrzymywania danych 20 lat).
Osiem wyj Ļ ciowych makrokomórek (programowalna polaryzacja wyj Ļę , emulacja 20-
pinowych uk þ adów PAL).
Wst ħ pny zapis ( preload ) i reset po w þĢ czeniu zasilania ( power-on reset ) wszystkich
rejestrów .
Identyfikacyjny „elektroniczny podpis” zawarty w uk þ adzie.
Uk þ ad sk þ ada si ħ z nast ħ puj Ģ cych bloków:
z 9 buforów wej Ļ ciowych ,
matrycy po þĢ cze ı logicznych PROGRAMMABLE AND-ARRAY,
z 8 programowalnych logicznych wyj Ļ ciowych makrokomórek OLMC ( Output Logic
MacroCell ),
8 trójstanowych buforów wyj Ļ ciowych konfigurowanych przez u Ň ytkownika,
uk þ adu ochrony danych przed odczytem.
m
a
r
a
i
c
i
o
8
6
L1
B
B
B
B
S
d
e
a
c
c
r
s
7
E
Y
6
E
Y
E5
B
E4
B
E3
B
E2
Y
B
E1
Y
B
E0
Y
B
9
1
2
2
4
0
2
6
0
8
0
2
4
6
D
0
1
r
e
b
m
N
e
L
t
p
I
+
e
m
N
l
C
t
s
r
F
e
n
L
t
c
d
P
=
r
e
b
u
lN
e
yC
a
r
A
r
c
g
L
C
E
D
E
J
1
9
2
7
2
5
3
1
2
9
1
7
5
3
1
1
9
7
5
3
1
80
6
4
2
0
68
4
2
0
8
6
4
2
0
s
i
c
Pe
m-
a
r
a
i
k
c
L8l
1
9
4
6
1
4
9
7
C
A
2
5
2
5
5
0
=
2
R
O
8
8
0
9
6
8
I
,
/
1
0
D 1
4
2
1
C
2
7
3
8
6
0
6
O
/
2
C
9
I
6
C
A
8
7
6
9
3
4
1
4
5
0
2
=
R
O
2
3
0
6
C
L
8
6
1
8
6
5
C
5
7
O
/
3
8
I
8
4
0
1
2
7
5
C
A
0
4
8
3
5
0
2
=
R
O
6
8
0
1
4
4
2
1
1
C
L
0
8
O
/
4
C
7
I
7
6
0
8
8
2
6
2
4
C
A
4
1
5
1
2
5
0
2
=
R
O
2
1
0
1
O
/
5
C
6
I
8
0
6
0
C
L
4
0
8
Y
9
5
D
2
D
T
P
2
9
3
C
A
8
2
0
O
/
6
C
5
I
6
6
8
4
8
1
0
5
2
=
R
O
2
0
0
C
8
8
1
4
O
/
7
C
4
I
4
6
4
2
A
C
2
7
1
0
5
0
2
=
R
O
8
6
0
6
8
6
5
4
5
C
2
O
/
8
C
3
I
3
3
6
0
4
8
4
8
1
A
C
6
1
8
9
4
0
2
=
R
O
2
5
4
8
0
3
8
2
C
O
/
9
2
I
C
6
5
8
5
2
8
4
2
2
9
0
C
A
0
6
c
c
0
1
I
,
9
8
4
0
2
=
R
O
8
1
6
9
4
6
2
3
C
0
1
9
2
7
2
5
3
1
2
9
1
7
5
3
1
1
9
7
5
3
1
80
6
4
2
0
68
4
2
0
8
6
4
2
0
0
c
c
1
s
r
e
N
e
L
t
r
e
N
t
s
F
e
L
t
c
r
P
r
e
r
r
70378883.123.png 70378883.134.png 70378883.145.png 70378883.001.png 70378883.012.png 70378883.023.png 70378883.034.png 70378883.045.png 70378883.056.png 70378883.067.png 70378883.069.png 70378883.070.png 70378883.071.png 70378883.072.png 70378883.073.png 70378883.074.png 70378883.075.png 70378883.076.png 70378883.077.png 70378883.078.png 70378883.079.png 70378883.080.png 70378883.081.png 70378883.082.png 70378883.083.png 70378883.084.png 70378883.085.png 70378883.086.png 70378883.087.png 70378883.088.png 70378883.089.png 70378883.090.png 70378883.091.png 70378883.092.png 70378883.093.png 70378883.094.png 70378883.095.png 70378883.096.png 70378883.097.png 70378883.098.png 70378883.099.png 70378883.100.png 70378883.101.png 70378883.102.png 70378883.103.png 70378883.104.png 70378883.105.png 70378883.106.png 70378883.107.png 70378883.108.png 70378883.109.png 70378883.110.png 70378883.111.png 70378883.113.png 70378883.114.png 70378883.115.png 70378883.116.png 70378883.117.png 70378883.118.png 70378883.119.png 70378883.120.png 70378883.121.png 70378883.122.png 70378883.124.png 70378883.125.png 70378883.126.png 70378883.127.png 70378883.128.png 70378883.129.png 70378883.130.png 70378883.131.png 70378883.132.png 70378883.133.png 70378883.135.png 70378883.136.png 70378883.137.png 70378883.138.png 70378883.139.png 70378883.140.png 70378883.141.png 70378883.142.png 70378883.143.png 70378883.144.png 70378883.146.png 70378883.147.png 70378883.148.png 70378883.149.png 70378883.150.png 70378883.151.png 70378883.152.png 70378883.153.png 70378883.154.png 70378883.155.png 70378883.002.png 70378883.003.png 70378883.004.png 70378883.005.png 70378883.006.png 70378883.007.png 70378883.008.png 70378883.009.png 70378883.010.png 70378883.011.png 70378883.013.png 70378883.014.png 70378883.015.png 70378883.016.png 70378883.017.png 70378883.018.png 70378883.019.png 70378883.020.png 70378883.021.png 70378883.022.png 70378883.024.png 70378883.025.png 70378883.026.png 70378883.027.png 70378883.028.png 70378883.029.png 70378883.030.png 70378883.031.png 70378883.032.png 70378883.033.png 70378883.035.png 70378883.036.png 70378883.037.png 70378883.038.png 70378883.039.png 70378883.040.png 70378883.041.png 70378883.042.png 70378883.043.png 70378883.044.png 70378883.046.png 70378883.047.png 70378883.048.png 70378883.049.png 70378883.050.png 70378883.051.png 70378883.052.png 70378883.053.png 70378883.054.png 70378883.055.png 70378883.057.png 70378883.058.png 70378883.059.png 70378883.060.png 70378883.061.png 70378883.062.png 70378883.063.png 70378883.064.png 70378883.065.png 70378883.066.png 70378883.068.png
 
Zgłoś jeśli naruszono regulamin