Wyklad-4 - usz.edu.pl

advertisement
Wykład 4
Realizacja logicznych bramek za pomocą tranzystorów
W konwencjonalnych komputerach, jako klucze wykorzystują się tranzystory.
Tranzystory są zbudowany na podstawie półprzewodników, zwykle to jest krzem, z małą
ilością domieszek. Jeżeli domieszka dodaje elektrony (półprzewodnik typu), mamy
dodatkowe swobodne elektrony w paśmie przewodnictwa (obszar dozwolonych energii dla
elektronów, w którym możliwy jest strumień prądu). Jeżeli wprowadza deficyt elektronów
(półprzewodnik typu
p ), mamy dodatkowe „dziury” w paśmie walencyjnym, które
zachowują się jak dodatkowe ładunki. Po złączeniu półprzewodników typu n i p , elektrony
mogą przeciekać tylko z półprzewodnika n do półprzewodnika p . A zatem przez złącze
dwóch półprzewodników będzie płynął prąd tylko wtedy, kiedy ujemny kontakt baterii będzie
podłączony do półprzewodnika typu n (rys.4.1).
Krzem
jest
klasycznym
przykładem
półprzewodnika. On ma cztery elektrony
walencyjne. Załóżmy, dodajemy do krzemu
małą ilość fosforu, który ma pięć elektronów
walencyjnych. W sieci krystalicznej krzemu z
tych elektronów, cztery elektrony utrzymują
atom w sieci krystalicznej: każdy atom
domieszki
i cztery atomy krzemu są
związane między sobą. Piąty elektron fosforu
jest swobodny dla ruchu. A zatem mamy
Rys.4.1. Złącze dwóch półprzewodników nadmiar swobodnych elektronów. To jest
typu n i p
półprzewodnik typu n .
Jeżeli dodajemy bor, który ma trzy elektrony walencyjne, to on „chwyta” dodatkowy
elektron. Taki atom domieszkowy związuje cztery atomy krzemu, jednak teraz mamy deficyt
elektronów. To jest półprzewodnik typu p . W samoistnym krzemie, gęstość elektronów w
paśmie przewodnictwa, ne , jest równa gęstości dziur w paśmie walencyjnym, n p . Obie
gęstości zależą od temperatury. Jednak iloczyn ne n p pozostaje stały nawet wtedy, kiedy
domieszkujemy półprzewodnik.
3
Załóżmy, że mamy półprzewodnik typu p i warstwę przewodzącą, która jest
odseparowana od p - półprzewodnika cienką warstwą dielektryka. Na rys.4.2 „p” oznacza
krem typu p , „c” – przewodnik. „n” oznacza półprzewodniki typu n .
Jeżeli przyłożymy dodatni potencjał do
warstwy przewodzącej „c”, elektrony z
półprzewodników typu n zaczną przyciągać
się ku dnu dielektryka i stworzą około dna
dielektryka cienką warstwę elektronową.
Jeżeli przyłożymy teraz napięcie między
półprzewodnikami typu
prąd,
który
płynie
n , otrzymujemy
przez
tą
warstwę
elektronową. A zatem, mamy klucz, który jest
Rys.4.2.
Metal-oxide-semiconductor-fieldeffect-transistor
(MOSFET);
p
jest
p,
typu
n
–
magnetycznego, działającego w związanej półprzewodnikiem
typu
c
–
n,
cewce. Półprzewodniki typu n w tym półprzewodnikiem
przewodnikiem.
Symbol
⊥ oznacza
tranzystorze noszą nazwę „źródła” i „drenu” połączenie z ziemią.
sterowany potencjałem +V zamiast pola
(zlewu), a przewodnik nazywa się „bramką”. Cały układ nosi nazwę MOSFET (metal-oxidesemiconductor-field-effect-transistor). Prąd będzie płynął od źródła do drenu, jeżeli różnica
potencjałów między źródłem i bramką przewyższy krytyczną wielkość. Umowny symbol
MOSFETu jest pokazany na rys.4.3. Różnica potencjałów między drenem i źródłem jest
dodatnia ( Vd > Vs ).
Rys.4.4. Tranzystorowa NOT-bramka
Rys.4.3. Symbol MOSFETa
Różnica potencjałów między bramką i źródłem, Vg Vs , jaki było powiedziane wyżej
musi przewyższać wartość krytyczną, dla tego żeby otworzyć bramkę. Zwykle, Vd
a krytyczna wartość Vg Vs jest w przybliżeniu 0.2(Vd Vs ) .
4
Vs ~ 5V ,
Prosty schemat tranzystorowej NOT-bramki jest pokazany na rys.4.4. Tutaj + Vds napięcie między drenem i źródłem, R - rezystor. Zakładamy, że opór tranzystora jest
znacznie mniejszy od oporu rezystora. Jeżeli napięcie między bramką i źródłem, Vgs ,
przewyższa wartość krytyczną, ( ai = 1), prąd płynie przez tranzystor, a napięcie na wyjściu
(tj. różnica potencjałów między punktem „output” i ziemią) jest w przybliżeniu równe zeru
( b f = 0 ). W przeciwnym przypadku ( ai = 0 ), tranzystor nie przewodzi prąd i różnica
potencjałów między output i ziemia jest równa w przybliżeniu Vds ( b f = 1 ).
Tabela.4.1. Tabela prawdy dla NAND-bramki
Tabela4.2. Tabela prawdy dla NOR-bramki
Zamiast AND i OR-bramek, można łatwo skonstruować tranzystorowe NOT AND
(NAND) i NOT OR (NOR) bramki. Tablica prawdy dla bramki NAND jest przedstawiona w
tabele 4.1. Realizacja tranzystorowa bramki NAND jest pokazana na rys.4.5. Jak było wyżej,
ai = 1 oznacza, że potencjał bramki ( Vgs ) przewyższa wartość krytyczną i tranzystor
przewodzi prąd.
Rys.4.6. Tranzystorowa NOR-bramka
Rys.4.5. Tranzystorowa NAND-bramka
5
Jeżeli ai = 1 i bi = 1 obaj tranzystory są otwarte, a zatem c f = 0 (różnica potencjałów
między punktami c f i ziemią jest bardzo mały). Dla pozostałych przypadków, albo obaj
tranzystory są zamknięty, albo jeden z nich jest zamknięty, a więc c f = 1 .
Tablica prawdy dla NOR-bramki jest przedstawiona w tabeli 4.2. Realizacja
tranzystorowa NOR-bramki jest pokazana na rys.4.6. Jeżeli ai = bi = 0 na rys.4.6, tj. różnica
potencjałów między punktami ai i bi jest mniejsza od krytycznej wartości, wtedy obaj
tranzystory są zamknięte i c f = 1 , tj. różnica potencjałów między punktem c f i źródłem
(ziemią) jest równa w przybliżeniu Vds . W innych przypadkach, albo obaj tranzystory albo
jeden z nich są otwarte i c f = 0 .
Dotychczas rozważaliśmy realizację logicznych bramek, które stosują różne bity dla
początkowych i końcowych wartości. Na przykład, gdy rozważaliśmy N-bramku (rys.3.1),
mieliśmy dwa bity, „a” i „b”. N-bramka transformuje wartość „a” (którą nazwaliśmy
początkową wartością ai ) w wartość bitu „b” (którą nazwaliśmy końcową wartością b f ). Na
rys.3.1 jeden obwód elektryczny odpowiada bitowi „a”, a drugi – bitowi „b”. Dalej rozważmy
logiczne bramki dla których ten sam obwód odpowiada „a” i „b”, a „b” transformuje się w
„a”. Te bramki są szeroko stosowane i są ważne w teorii obliczeń kwantowych. Na przykład,
N-bramka może operować tylko z jednym bitem „a”. A zatem końcowa wartość tego bitu,
a f , jest równa dopełnieniu do początkowej wartości a f = ai .
Rewersyjne logiczne bramki
Bramki logiczne nazywają rewersyjnymi (odwracalnymi), jeżeli wejście i wyjście
mogą być zamienione miejscami. Na przykład, N-bramka jest odwracalna. Istotnie, jeżeli
mamy na wyjściu a f = 0 , to wiemy, że na wejściu a f = 1 i odwrotnie. AND – bramka jest
oczywiście nieodwracalną. Istotnie, jeżeli mamy na wyjściu a f = 0 nie możemy powiedzieć,
czy para (ai , bi ) jest równa (0,0), (0,1) albo (1,0). To same jest słuszne dla OR, XOR i NOR
bramek. W formalizmie Hamiltona mechanika klasyczna i kwantowa opisują tylko procesy
odwracalne. A zatem komputer zbudowany na logice kwantowo-mechanicznej musi zawierać
tylko odwracalne logiczne bramki. W tabeli 4.3 jest pokazana tablica prawdy dwukubitowej
CONTROL-NOT (CN) odwracalnej bramki. Pierwszy bit a nazywa się bitem kontrolnym.
Drugi bit b nosi nazwę bitu celowego (target bit). CN-bramka zmienia wartość celowego
bitu jeżeli wartość bitu kontrolnego jest równa jeden. Dla CN-bramki możemy zapisać
6
a f = ai ,
bf =
bi , gdy ai = 0,
bi , gdy
ai = 1,
(4.1)
albo
b f = ai  bi .
Tablica.4.3. Tablica prawdy dla rewersyjnej
CN-bramki
(4.2)
Ry s.4.7. Konwencjonalny graf CN-bramki
Oczywiście, że informacja nie zostaje stracona po zastosowaniu CN-bramki: jeżeli wiemy
wyjściowe a f i b f , to możemy znaleźć wejściowe ai i bi . Konwencjonalny graf bramki CN
jest przedstawiony na rys.4.7. Strzałka z kółkiem na rys.4.7 wskazuje na to, że wartość b f
zależy od ai = a f . W tabeli 4.4 jest pokazana tablica prawdy dla trzechbitowej odwracalnej
bramki – CONTROL-CONTROL-NOT (CCN) –bramki.
Tablica 4.4. Tablica prawdy dla CCN-bramki
Rys.4.8. Graf CCN-bramki
CCN-bramka zawiera dwa kontrolne bity a i b , które nie zmieniają swoich wartości i celowy
bit c , który zmienia swoją wartość tylko, jeżeli ai = bi = 1 . Graf dla CCN-bramki jest
przedstawiony na rys.4.8. CCN-bramka jest uniwersalną bramką. Jeżeli załóżmy, że
7
ai = bi = 1 , to c f = ci i mamy N-bramkę. Jeżeli załóżmy, że ai = 1, to otrzymujemy tablicę
prawdy przedstawioną w tabeli 4.5.
Tablica 4.5. Tablica prawdy dla CCNbramki, jeżeli ai = 1
Tablica 4.6. Tablica prawdy dla CCN-bramki,
jeżeli ci = 0
Można widzieć, że b f = bi i c f = bi  ci . A zatem mamy CN-bramkę. Jeżeli ci = 0 ,
otrzymujemy tablicę prawdy 4.6. Z tablicy 4.6 widzimy, że
c f = ai bi ,
(4.3)
a zatem otrzymaliśmy AND-bramkę.
Korzystając z dwóch CCN-bramek i dwóch CN-bramek można stworzyć sumator.
Istotnie, że a i b są bitami do sumowania, a c - przenoszenie (carry-over). Wykorzystując
dodatkowy bit d , możemy stosując cztery operacji do stworzenia sumatora
d = 0,
CCN(abd ),
CN (ab),
CCN(bcd ),
CN (bc) .
(4.4)
Na pierwszym etapie, ustawiamy wartość
d = 0 . Na drugim, stosujemy CCN-bramkę
do bitów a, b i d ( a i b - kontrolne bity, d
- wynikowa (target) jednostka). Zatem,
stosujemy CN-bramkę do bitów a i b ( a kontrolna jednostka, b - wynikowa (target)
jednostka). Dalej, stosujemy CCN-bramkę do
Tabela. 4.7. Kolejne wartości bitów dla
sekwencji (4.4)
b, c i d .
8
Ostatecznie, stosujemy CN-bramkę do b i c . Jako wynik, wartość bitu c jest równa sumie
bitów, a wartość bitu d jest nowym przenośnikiem (carry-over).
Sprawdzimy sekwencję bramek (4.4) jako sumatora na przykładzie początkowych
wartości: a = b = c = 1 . Kolejne wartości bitów są przedstawione w tabeli 4.7. W tabeli 4.7
druga linia przedstawia początkowe wartości bitów. Po działaniu CCN(abd) –bramki, wartość
wyjściowa bitu d zmieni się, ponieważ a = b = 1 . CN-bramka CN(ab) zmieni wartość b ,
ponieważ a = 1. CCN(bcd) – bramka nie zmieni wartości bitów, ponieważ jeden z
kontrolnych bitów b = 0 . CN(bc) – bramka nie wpływa na wartości bitów, ponieważ wartość
bitu kontrolnego b = 0 . A zatem mamy prawidłową wartość sumy i przełącznik: c = 1, d = 1 .
Można przedstawić działanie sekwencji (4.4) stosując graf przedstawiony na rys. 4.9. Cztery
strzałki na rysunku oznaczają działanie CN i CCN – bramek.
Rys.4.10. Graf F-bramki
Rys.4.9. Graf sekwencji operacji (4.9)
Ostatecznie w tabeli 4.8 i rys.4.10 są przedstawione tabela i graf dla dobrze wiadomej
trójbitowej odwracalnej FREDKIN (F) – bramki. F-bramka może być nazwana CONTROLEXCHANGE – bramką.
Tabela 4.9. Tablica prawdy dla F-bramki, w
przypadku ci = 0
Tabela 4.8. Tablica prawdy F-bramki
Kontrolny bit ai nie zmienia jej wartości a celowe bity bi i ci wymieniają swoje wartości
jeżeli ai = 1. F-bramka też jest uniwersalną bramką i może być zastosowana do wykonania
9
dowolnej operacji logicznej. Na przykład, zakładając ci = 0 , otrzymujemy tablicę prawdy
pokazana w tabeli 4.8. Z tej tabeli widać, że wartość c f jest równa
c f = ai bi ,
a zatem mamy AND-bramkę.
10
(4.5)
Download