Technika Cyfrowa 1 Wykład 8: Cyfrowe układy scalone

Transkrypt

Technika Cyfrowa 1 Wykład 8: Cyfrowe układy scalone
JS TC 1
V CYFROWE UKŁADY SCALONE
JS TC 1
1 Parametry
Technika Cyfrowa 1
1.1 Parametry statyczne
‰ Przyjmujemy logikę dodatnią
– napięcie zasilające Ucc > 0
– 0 log. ~ 0 V, 1 log. ~ Ucc
Wykład 8:
Cyfrowe układy scalone
‰ Rodzina charakterystyk przejściowych dla układów odwracających i
nieodwracających
UO
UO
dr inż. Jarosław Sugier
[email protected]
IIAR, pok. 227 C-3
UI
0
UI
0
8-1
NMH
UOLmax
‰ Obciążalność stałoprądowa (fan-out)
NL = IOLmax / IILmax
– NH = IOHmax / IIHmax
– Nmax = min{ NH, NL }
UI
UIHmin
1.2 Parametry dynamiczne
UILmax
NML
UOLmax
UILmax UIHmin
JS TC 1
‰ Parametry prądowe: IOHmax , IOLmax , IIHmax , IILmax
UOHmin
UOHmin
0
JS TC 1
UCC
UO
8-2
UI
Out
In
UO
‰ Zakres poziomów log. na WE (UILmax, UIHmin) oraz WY (UOLmax, UOHmin)
tpLH
‰ Odporność na zakłócenia stałoprądowe (noise margin)
– NML = UILmax – UOLmax
– NMH = UOHmin – UIHmin
– NM = min( NML, NMH )
‰ Czas propagacji układu kombinacyjnego
– tpHL, tpLH
– tp = ( tpHL + tpLH ) / 2
‰ Odporność na zakłócenia impulsowe
8-3
‰ Parametry przełączania się układu synchronicznego / przerzutnika
– czas ustawienia (set-up), podtrzymania (hold) oraz przełączania
tpHL
⇒ Dla układów CMOS tp zależy od pojemności obciążenia i ono decyduje o
praktycznej obciążalności Nmax
JS TC 1
8-4
JS TC 1
1.3 Straty mocy
‰ Moc rozpraszana
Clk
Pd = (CL + CPD) · UCC · US · f + UCC · ICC
CL – pojemność obciążenia
CPD – pojemność wewnętrzna
US – amplituda zmian UWE
f – częstotliwość przełączania
ICC – prąd spoczynkowy
IN
tS
tH
Q
tpCQ
‰ Współczynnik dobroci
A = Pd · tp [pJ]
‰ Parametry okresowego przebiegu prostokątnego
– szerokość stanu 0 / 1: twL, twH
– współczynnik wypełnienia: twH / ( twL + twH ) [%]
– czas narastania / opadania zbocza: ttLH, ttHL (albo: tR, tF)
8-5
8-6
1
JS TC 1
Przykład (bramkowany licznik modulo 5)
2 Klasyfikacje cyfrowych układów scalonych
Na podstawie podanych parametrów oszacuj maksymalną częstotliwość pracy
układu.
Przerzutniki:
tpCQ = 3.5 ns
tH = 1.0 ns
tS = 2.0 ns
G
J
Q
K
Q2
Q
J
Q
Dwa podstawowe kryteria
¾ ilość bramek w układzie (złożoność układu, tzw. stopień integracji),
Q2
¾ technologia wykonania.
2.1 Stopień integracji
Clk
Bramki:
tpLH = 2.0 ns
tpHL = 1.5 ns
JS TC 1
¾ SSI (Small Scale Integration)
4 × NAND
4 × OR...
– proste układy rodziny TTL
Q0
¾ MSI (Medium Scale Inetgration)
przerzutniki (np. SN7474: 2 × D = 2 × 6 NAND)
rejestry, liczniki
proste układy arytmetyczne...
– bardziej złożone układy rodziny TTL
Q1
K
Q
J
Q
Q0
K
Q
– liczba bramek logicznych w układzie
Q1
< 10
10 ÷ 100
8-7
8-8
JS TC 1
¾ LSI (Large Scale Inetgration)
proste mikroprocesory (liczba tranzystorów):
– 4004
(1971)
2.550
– 8008
(1972)
2.500
– 8080
(1974)
5.000
układy WE /WY,
zegary, kalkulatory...
100 ÷ 10.000
JS TC 1
UWAGI:
‰ Klasyfikacja utworzona na początku lat 80. ...
‰ Miarą złożoności układu jest liczba tranzystorów a nie bramek;
CMOS: 1 bramka ~ 4 tranzystory.
‰ Gordon Moore (współzałożyciel firmy Intel w 1968 r), 1965: liczba
tranzystorów w układzie scalonym rośnie wraz z czasem w tempie
wykładniczym.
¾ VLSI (Very Large Scale Inetgration)
> 10.000
mikroprocesory (liczba tranzystorów):
– 8086
– i386DX
– i486DX
– Pentium
– Pentium II
– Pentium III
– Pentium IV
pamięci, ...
(1978)
(1985)
(1989)
(1993)
(1997)
(1999)
(2000)
29.000
275.000
1.200.000
3.100.000
7.500.000
24.000.000
42.000.000
www.intel.com
8-9
8-10
A·B
A
B
+UCC
A·B
B
JS TC 1
– Połączenie
– Idea pracy logiki diodowo-rezystorowej
A
+UCC
+UCC
JS TC 1
2.2 Technologie
––– UKŁADY BIPOLARNE –––––––––––––––––––––––––––––––
2.2.1 Rodzina TTL (Transistor-Transistor Logic)
A
B
1965 r, Texas Instruments, układy SN74xx
A+B
– Bramka TTL rodziny podstawowej
+UCC
– Inwerter na stopniu tranzystorowym
130
4k
1k6
+5V
T3
A
B
A
T2
A·B
1k
A
T1
8-11
T4
8-12
2
JS TC 1
– Parametry rodzin TTL
JS TC 1
2.2.2 Rodzina ECL (Emiter Coupled Logic)
Standardowa
S
Schottky
LS
Low
pow. S
(1976)
F
Fast
(1979)
AS
Adv. S
(1980)
ALS
Adv. LS
(1980)
TP (Nmax=10)
[ns]
10
3
9
3.5
1.7
5
Pd
[mW/bramka]
10
19
2
5.5
8
1
A [pJ]
100
57
18
19
14
5
1962, Motorola;
– Wzmacniacz różnicowy ze sprzężeniem emiterowym jako bramka logiczna
+UCC
A+B
A+B
+UREF
fmax [MHz] (‘00)
25
125
33
150
200
50
fmax [MHz] (‘74)
20
100
25
100
105
34
IOHmax [mA]
0.4
1
0.4
1
2
0.4
IOLmax [mA]
16
20
8
20
20
8
IILmax [mA]
1.6
2
0.4
0.6
0.5
0.2
Nmax
10
10
20
33
40
40
VCC [V]
5±0.25
5±0.25
5±0.25
5±0.25
5±0.5
5±0.5
A
B
– Podstawowe parametry (rodzina standardowa 10K):
8-13
JS TC 1
tp = 1 ns
Pd = 60 mW (1 bramka)
A = 60 pJ
Nmax ≈ 70
NM = 0.2 V (TTL ≈ 1V)
8-14
2.2.3 Układy MOS
– pMOS: chronologicznie pierwsze
– nMOS: szybsze (większa ruchliwość nośników n); symbole tranzystorów:
Cechy układów ECL (jako porównanie z TTL):
(+) szybkość (bo w TTL: tranzystory nasycone / odcięte)
(–) duży pobór mocy (bo w TTL: tranzystory nasycone / odcięte)
D
G
(+) względnie stały pobór mocy (TTL: impulsy Icc podczas przełączania, tzw.
power noise)
(+) WY komplementarne
S
NEMOS
(z kanałem wzbogacanym,
Enhanced, norm. OFF)
D
G
S
NDMOS
(z kanałem zubożanym,
Depleted, norm. ON)
–
Technologia HMOS: downsizing, zmniejszanie długości kanału tranzystora
zwiększa gęstość upakowania oraz szybkość.
–
Idea realizacji funkcji podstawowych:
(–) mała amplituda logiczna
+VDD
+VDD
+VDD
RL
A·B
RL
A
RL
A+B
A
A
A
B
B
8-15
8-16
JS TC 1
–
+VDD
– Para tranzystorów komplementarnych:
I”RL”
P(E)MOS – otwierany przy UG = L
(B)
(A)
JS TC 1
2.2.4 Układy CMOS
Różna realizacja rezystancji obciążającej „R L”:
+VDD
JS TC 1
–– UKŁADY UNIPOLARNE ––––––––––––––––––––––––––––––––
(B)
(A)
(A) NEMOS: UGS = U”RL” = VDD – UO
– Prostsza technologia, chronologicznie pierwsze
– UT = napięcie progowe otwierające tranzystor Enhanced
– Schematy bramek podstawowych
UO
UT VDD
–
UOH = VDD – UT, mniejsza ampl. log. (mniejszy margines zakłóceń)
–
Gorsza wydajność prądowa, dłuższe czasy przełączania
N(E)MOS – otwierany przy UG = H
+VDD
A
+VDD
A
A
A
(B) NDMOS: UGS = 0 (const)
–
–
UOH ≈ VDD, większa ampl. log. (większy margines zakłóceń)
Lepsza wydajność prądowa, krótsze czasy przełączania
–
Trudniejsza technologia; z czasem wyparły całkowicie (A)
8-17
8-18
3
+VDD
JS TC 1
+VDD
A
A·B
FUP = f = (a + b)c = a + b + c = a b + c = F (a, b, c )
B
A+B
A
JS TC 1
– Projektowanie bramek typu AOI (And–Or–Invert) / OAI (Or–And–Invert)
Np. f = /[(a + b)c]
FDN = f = ( a + b)c = F ( a, b, c )
B
+VDD
– Tranzystory nMOS = sekcja pull-down (zwarcie WY z GND ⇒ UO ≈ 0V),
Tranzystory pMOS = sekcja pull-up (zwarcie WY z +VDD ⇒ UO ≈ +VDD)
C
A
B
– Równoległe lub szeregowe konfiguracje tranzystorów w sekcjach
(A+B)·C
A
– Dla każdej konfiguracji sygnałów WE dokładnie jedna z sekcji (pull-up lub
pull-down) otwarta, druga zamknięta ⇒ statyczny prąd zasilania IDD ≈ 0
B
C
– Praktycznie zerowy statyczny pobór mocy:
Pd = Pd( f ), Pd( 0 ) ≈ 0
8-19
8-20
JS TC 1
3 Układy scalone ASIC
Application Specific Integrated Circuits
JS TC 1
3.1 Rodzaje układów ASIC
• Dwie pierwsze klasy układów ASIC (Full Custom, Semi Custom) –
programowalne w procesie produkcji, programowalne maską
(użytkownik przekazuje projekt producentowi u.s., układy po
wyprodukowaniu mają architekturę niemodyfiukowalną).
Dwie pozostałe klasy układów (PLD, FPGA): wszystkie układy
określonego typu opuszczają producenta identyczne (produkcja
wielkoseryjna, niskie koszty), programowanie układu po jego
wykonaniu poprzez utworzenie połączeń w istniejącej sieci ścieżek
sygnałowych / skonfigurowanie elementów logicznych.
Podstawowy rozdział cyfrowych u.s.:
‰ Wielkie standardy: standardowe, uniwersalne elementy o strukturze
niemodyfikowalnej po wyprodukowaniu; np. bramki i układy
funkcjonalne rodzin TTL, ECL, MOS, mikroprocesory, pamięci...
‰ Układy ASIC: użytkownik ma w pewien sposób wpływ na strukturę
logiczną układu
¾ Full-Custom
¾ Semi-Custom
• Standard Cells
• Gate Arrays
¾ Field Programmable Gate Arrays (FPGA)
¾ Programmable Logic Devices: układy PLD, Complex PLD
(CPLD)
• Zalety ASIC: niższe koszty zaprojektowania, wykonania i
uruchomienia systemu cyfrowego; możliwość reprogramowania
układu ⇒ ułatwione testowanie, wprowadzanie zmian w projekcie...
8-21
JS TC 1
8-22
JS TC 1
3.1.1 Full-Custom ASIC (układy z pełnym cyklem projektowym)
3.1.3 Gate-Array ASIC
• Użytkownik sam projektuje wszystkie lub wybrane komórki logiczne układu,
rozmieszczenie oraz połączenia.
• Regularna, niezmienna struktura elementów układu (matryca elementarnych
bloków logicznych), użytkownik projektuje sieć połączeń (warstwy
metalizacji).
• Stosowane przeważnie w układach nowych lub wysoce specjalizowanych,
gdy brak gotowych projektów wymaganych komórek.
• Standardowe układy produkowane seryjnie i „magazynowane”, po
otrzymaniu projektu dodawane tylko warstwy metalizacji.
• Produkcja we wsadach po 5 ÷ 30 wafli (wafer), każdy wafel zawiera 10 ÷
100 układów.
• Taniej i szybciej niż standard-cell.
3.1.2 Standard-Cell ASIC (komórki standardowe)
• Standardowe, produkowane masowo układy scalone opuszczają producenta
w identycznej postaci.
3.1.4 Układy PLD (Programmable Logic Devices)
• Układ projektowany z predefiniowanych standardowych komórek (standard
cells), zaprojektowanych w trybie full-custom; dostępne komercyjne
biblioteki standardowych komórek.
• Jedna duża matryca programowanych połączeń – programowanie wyłącznie
po stronie użytkownika.
• Duże komórki, realizujące złożone bloki funkcjonalne (np. mikroprocesory) –
tzw. mega cells, cores.
• Przykłady:
- programowalne pamięci tylko do odczytu (PROM)
- układy PAL, PLA: dwupoziomowa struktura sumy iloczynów, realizująca
zaprogramowaną funkcję boolowską.
• Regularny rozkład komórek w układzie, zwykle rzędy (wiersze) komórek o
stałej wysokości i zmiennej długości ⇒ uporządkowana struktura połączeń.
8-23
8-24
4
JS TC 1
JS TC 1
3.2 Rachunek ekonomiczny układów ASIC
Układy CPLD
„Koszt całkowity projektu i produkcji” =
• W jednej strukturze wiele modułów PAL + jedna globalna matryca połączeń.
koszt stały ( ≈ przygotowanie projektu) +
koszt jednostkowy (koszt u.s., montażu itp.) × liczba egzemplarzy
3.1.5 Układy FPGA
Przykład:
Porównanie trzech technologii
• Nazywane także FPLD (Field Programmable Logic Devices).
• Zasada programowania podobna do PLD, ale bardziej złożona struktura:
dwuwymiarowa matryca programowalnych bloków logicznych w miejsce
prostej dwupoziomowej struktury logicznej typu suma iloczynów.
CBIC (cell-based IC = standard cell ASIC)
MGA (mask programmable gate array)
FPGA
• Programowanie nie tylko sieci połączeń (jak w PLD), ale także pewien
sposób konfigurowania funkcji komórek logicznych:
- struktura układu: regularny układ komórek logicznych, które zawierają
pewną (programowalną) logikę kombinacyjną oraz przerzutnik(i);
- komórki logiczne otoczone siecią (programowalnych) linii sygnałowych.
Koszty:
CBIC:
(stały)
146.000$
(jednostkowy)
8$
MGA
86.000$
10$
FPGA
21.800$
39$
(From: Application–Specific Integrated Circuits, Smith, Addison-Wesley, 1997)
• Liderzy architektur FPGA: firmy Xilinx oraz Altera.
8-25
8-26
JS TC 1
JS TC 1
3.3 Technologie programowania układów PLD
• „Programowanie układu”: utworzenie (lub nie) połączeń w określonych
punktach linii sygnałowych, tzw. punktach programowalnych ⇒ określenie
dróg przesyłania sygnałów pomiędzy elementami układu (bramkami,
przerzutnikami, blokami funkcjonalnymi) i uzyskanie w ten sposób układu
kombinacyjnego lub sekwencyjnego o żądanej funkcji.
• Ogólna struktura nie zaprogramowanego układu wyznacza nieprzekraczalne
ramy projektu (programowaniu podlega sieć połączeń między elementami
zawartymi w układzie, nie rodzaj i liczba owych elementów).
• Trzy główne technologie programowania – analogiczne do realizacji
programowalnych pamięci tylko do odczytu (ROM):
Wyrównanie kosztów:
FPGA vs. Gate Array
Gate Array vs. Standard Cells
- programowanie jednokrotne (Programmable ROM, PROM)
- programowanie kasowalne przez naświetlenie promieniami UV
(Erasable Programmable ROM, EPROM)
- programowanie kasowalne elektrycznie
(Electrically Erasable PROM, EEPROM, E2PROM)
2.000 szt.
20.000 szt.
(From: Application–Specific Integrated Circuits, Smith, Addison-Wesley, 1997)
8-27
8-28
JS TC 1
3.3.1 Programowanie nieodwracalne (One-Time Programming, OTP)
JS TC 1
3.3.2 Programowanie kasowalne (Erasable Programming)
A. Bezpieczniki (Fuses)
• Technologia chronologicznie pierwsza, związana z układami bipolarnymi.
• Technologia MOS, jako programowane połączenie tranzystor
• EPROM i EEPROM: tranzystor nMOS normalnie otwarty z bramka
swobodną (floating gate)
• Metoda: przepalenie bezpiecznika – fragmentu odpowiednio przygotowanej
ścieżki metalizacji.
• Programowanie EPROM - hot electron tunneling:
Napięcie programowania VPP >> +5V (+15÷20V), lawinowe wstrzykniecie
elektronów na bramkę swobodną ⇒ przesunięcie napięcia progowego
tranzystora powyżej +5V (tranzystor stale odcięty)
VPP
access gate
floating gate
VD < VPP
Photo AMD
B. Antybezpieczniki (Antifuses)
n+ Source
• Antybezpiecznik jest normalnie rozwarty (off); przepuszczenie
odpowiednio dużego prądu (5 ÷ 15 mA) stapia izolujący dielektryk i
powoduje stałe zwarcie (on).
• Mniejsza zajętość miejsca => technologia stosowana w układach CMOS o
dużym stopniu scalenia.
n+ Drain
thin gate oxide
P-Type Silicon
Fig. Altera
8-29
FAMOS = Floating – gate Avalanche – injection MOS
8-30
5
JS TC 1
Kasowanie:
JS TC 1
3.3.3 Programowanie kasowalne elektrycznie (Electrically Erasable
Programming)
• Inna metoda wprowadzania elektronów na bramkę swobodną: efekt tunelowy
Fowlera – Nordheima, wstrzyknięcie elektronów wprost z drenu.
• Cieńsza warstwa dielektryka (10 vs. 100 nm), niższe napięcie programowania
(VGD ~ +12V):
• Naświetlenie promieniowaniem jonizującym (UV 2537 Å), jonizacja
dielektryka umożliwia wzbudzonym elektronom spłynięcie z bramki
swobodnej.
• Obudowy ceramiczne z oknem ze szkła kwarcowego.
• Powolne; trwa od kilku sekund do kilkunastu minut.
• Jeśli trwa za długo niebezpieczeństwo nieodwracalnego pozbawienia bramki
swobodnej możliwości uwięzienia elektronów (over-erasure).
n+ Source
n+ Drain
• Samoczynne kasowanie pod wpływem promieniowania słonecznego,
promieniowania tła (trwałość zapisu ograniczona).
Tranz. FLOTOX = FLOating – gate Thin OXide
• Ograniczona ilość cykli programowanie – kasowanie; rzędu 1000.
• Niższe natężenie prądu ⇒ dłuższy czas programowania, zwykle rzędu ~ms.
• Kasowanie: ten sam efekt przy odwróconej polaryzacji napięć =
odprowadzenie elektronów z bramki swobodnej.
W sumie:
• Czas programowania dość długi (~µs), ale najkrótszy wśród metod
programowania odwracalnego.
• Bardzo dobre możliwości scalania (pojedynczy tranzystor jako jednocześnie
urządzenie programujące i odczytujące).
8-31
• Podczas kasowania niebezpieczeństwo silnego dodatniego naładowania
bramki swobodnej (tranzystor stale otwarty) ⇒ specjalne układy kontrolujące
rozładowanie.
8-32
JS TC 1
Różne technologie programowania wielokrotnego – podsumowanie:
EPROM
EEPROM
Vcc [V]
5, 12
Program/erase cycles
Program method
Flash
NOR
NAND
5
5, 3.3, 2.5
5, 3.3
~103
~105
~105
~106
Hot electron
FN tunneling
Hot electron
FN tunneling
Erase method
UV light
FN tunneling
FN tunneling
FN tunneling
Program time
10 µs / Byte
5 ms / Byte
10 µs / Byte
300 µs / 512 Byte
Erase time
~30 min
10 ms / chip
1 s / 64 kByte
5 ms / 16 kByte
• Pamięci Flash = technologia E2PROM + odpowiednia organizacja matrycy
pamięciowej oraz możliwość jednoczesnego kasowania wszystkich lub grupy
komórek.
8-33
6