Рецептите: от диоди до CMOS
Логическият елемент е няколко транзистора, които работят като ключове: или отпушени докрай (насищане), или запушени. Начинът, по който са свързани, се казва логическа фамилия. Фамилиите са се сменяли с годините, докато се стигне до тази в днешните процесори:
| Фамилия | Как е направена | С какво е известна |
|---|---|---|
| Диодна | диоди + резистор: И и ИЛИ | нивата се „разтягат“ след ~3 стъпала, малка товароспособност |
| DTL | диодна логика + транзисторен ключ → И-НЕ | бавна |
| RTL | транзистори през резистори; успоредно → ИЛИ-НЕ | бавна: базата трудно излиза от насищане |
| TTL | многоемитерен входен транзистор, двутактен изход → И-НЕ | класическата серия 74xx, 5 V |
| CMOS | P- и N-канален MOSFET един срещу друг | почти не харчи в покой – днешните чипове |
| ECL | диференциален усилвател, без насищане | най-бързата (< 1 ns), но „гореща“, шумоустойчивост ~150 mV |
| BiCMOS, I²L | CMOS вход + биполярен изход; инжекционна логика | хибриди: голямо Rвх и силен изход |
Тук сглобяваме TTL и CMOS от транзисторите на симулатора и ги мерим.
TTL: четирите области на характеристиката
TTL И-НЕ (чипът 7400) има на входа многоемитерен транзистор T1: всеки емитер е един вход. Ако някой вход е в 0, токът на базата на T1 изтича през него и T2 е запушен. Тогава горният изходен транзистор T3 дърпа изхода нагоре. Ако всички входове са 1, токът отива в базата на T2, T2 отпушва долния T4 и изходът пада. Изходът е двутактен (тотемен): винаги единият от T3 и T4 е отпушен.
Бавно въртим входа и гледаме изхода. Това е статичната предавателна характеристика и в нея има четири области:
- Uвх < 0,55 V – T2 е запушен, изходът е 1 (≈ 3,7 V без товар);
- до ~1,1 V – T2 започва да провежда и изходът пада линейно;
- праг ≈ 1,2 V – отпушва T4 и изходът пада рязко;
- над 1,3 V – изходът е 0.
Входът е на 1,2 V. TTL дава 2,53 V и тегли 3,99 mA. CMOS дава 4,99 V и тегли 0,044 mA.
Изходът срещу входа
TTL CMOS
Токът от захранването
TTL CMOS
TTL (жълто) пада около 1,2 V – далеч под средата на 5 V – и тегли ток от захранването винаги: 1,46 mA при изход 1 и 3,43 mA при изход 0. Средно това е 12,2 mW на елемент, дори когато нищо не се случва. CMOS (зелено) обръща точно при 2,5 V и тегли ток само в самия преход, когато за миг и двата транзистора са отпушени.
CMOS: врата с две крила
CMOS инверторът е два MOSFET-а един над друг: P-канален от +5 V до изхода и N-канален от изхода до масата. Гейтовете им са свързани заедно. При вход 0 P-каналният е отпушен, а N-каналният е запушен, затова изходът е 1. При вход 1 е обратното. Винаги единият е запушен, затова ток от захранването до масата не тече. Тече само докато изходът се сменя.
И-НЕ се прави със същата идея. P-каналните са успоредно: всеки от тях стига, за да дръпне изхода в 1. N-каналните са последователно: и двата трябва да са отпушени, за да падне изходът в 0. За ИЛИ-НЕ е обратно: N-каналните успоредно, P-каналните последователно.
Тук A = 1 и B = 0. Отпушени са горният B – изходът е свързан с +5 V, изходът е 5 V.
Горе са P-каналните транзистори, долу – N-каналните. Зелените жици са 1. Изходът пада в 0 само при A = 1 и B = 1, когато двата долни са отпушени, а двата горни – запушени. Входовете на MOSFET са гейтове – изолирани, затова в тях не тече ток и един изход може да кара 30–40 входа.
Мощността идва от превключването
Щом CMOS не харчи в покой, откъде тогава процесорът грее? Всеки изход кара капацитет: жиците и гейтовете след него. При всяко вдигане кондензаторът се пълни от захранването, а при всяко сваляне се изпразва в масата. Енергията за един цикъл е C·E², затова мощността е P = C·E²·f. Расте с честотата и с квадрата на захранването.
Тук CMOS инверторът превключва с f = 5 MHz товар C = 50 pF. По формулата P = 6,25 mW, а симулацията мери 6,25 mW от захранването. За сравнение, TTL елементът харчи около 12,2 mW и без да превключва.
вход изход
Токът от захранването
ток от захранването
Ток тече само в иглите при всеки фронт нагоре: тогава кондензаторът се пълни. Между тях е нула. Удвои f и иглите стават двойно повече, а мощността се удвоява. При 100 pF и 10 MHz или повече кондензаторът вече не успява да се напълни докрай за полупериода, затова симулацията мери по-малко от формулата: при 20 MHz – около 60 % от нея.
Процесорът има милиарди транзистори. Ако всеки превключва капацитет от около 1 fF при 1 V и 3 GHz, един транзистор харчи само 3 μW. По милиард това са 3 kW. Затова не превключват всички наведнъж: части от чипа се спират, когато не трябват.
Изходи за обща шина: три състояния
Обикновеният изход винаги дърпа нанякъде – към 1 или към 0. Ако два такива изхода се вържат на една жица и единият дърпа нагоре, а другият надолу, тече голям ток. Затова изходите, които делят обща шина (паметта и процесорът на една шина за данни), имат трето състояние: високоимпедансно (Z). Входът E (разрешение) запушва и двата изходни транзистора и изходът е „изключен“ от шината. Като ръка, вдигната от масата, за да говори друг.
Самопроверка
1. Защо CMOS почти не харчи в покой?
P- и N-каналният транзистор са последователно между захранването и масата, а при всеки устойчив вход единият е запушен. Ток тече само при превключване.
2. CMOS изход кара 20 pF при 5 V и 10 MHz. Колко е мощността?
P = C·E²·f = 20 pF · 25 V² · 10 MHz = 5 mW.
3. Колко пъти намалява мощността, ако захранването падне от 5 V на 2,5 V?
4 пъти – мощността е пропорционална на E².
4. Как са свързани транзисторите в CMOS ИЛИ-НЕ?
N-каналните – успоредно (всеки вход 1 сваля изхода), P-каналните – последователно (само при всички входове 0 изходът е 1).
5. Каква е ролята на многоемитерния транзистор в TTL?
Всеки емитер е един вход: ако някой е 0, токът на базата изтича през него и T2 е запушен (изходът е 1); само когато всички са 1, токът отива към T2 и изходът пада – функция И-НЕ.
6. Защо ECL е най-бързата фамилия?
Транзисторите ѝ работят като диференциален усилвател и не влизат в насищане – няма време за разсейване на заряда в базата. Цената е постоянен голям ток (гореща логика) и малка шумоустойчивост.