CMOS - A lógica complementar de oxidação em metais semicondutores

Entenda o que é a lógica CMOS (Complementary Metal-Oxide semiconductor) e porque ela foi disruptiva na elaboração dos processadores modernos

CMOS é uma tecnologia de construção de circuitos integrados como processadores, memórias RAM, Flip-Flops e portas lógicas. É uma tecnologia baseada em oxidação em metal semicondutor. No caso dos circuitos citados, o semicondutor é o silício

Da esquerda para a direita,iImagem com um desenho de um processaodor em 8-bits, o circuito do inversor CMOS e um layout de processador utilizando CMOS.

Quando ficamos impressionados com a quantidade de transistores que conseguimos colocar atualmente nos processadores modernos, o grande responsável por isso é o CMOS. Inventado em 1963, essa tecnologia trouxe como diferencial o baixo custo de produção e baixo consumo elétrico. Para chegar nessa invenção precisamos caminhar um pouco em sua cronologia. 

CMOS - Field-Effect Transistor

O sufixo MOS é uma abreviação de MOSFET. FET por sua vez significa field-effect transistor cuja melhor tradução seria transistores sensíveis à campo elétrico. Existem diversas implementações de FETs. O CMOS é apenas mais uma delas. Quando dizemos que ele é sensível à campo elétrico estamos falando da corrente elétrica fluir de um ponto a outro por indução, por exemplo. 

CMOS - Transistores

Vamos rever rapidamente o funcionamento de um transistor. Ele é formado por três partes: emissor, coletor e base. Em inglês esses nomes são source, drain e gate, respectivamente. A corrente elétrica flui entre os dois terminais Emissor e Coletor. E quem decide quando essa corrente acontece é o terminal Base

Imagem da esquerda para a direita apresentando uma foto de um componente transistor real, o símbolo utilizado em circuitos ao centro e à direita uma torneira como analogia ao seu funcionamento.

A imagem acima mostra à sua direita uma analogia ao funcionamento de um transistor na forma de uma torneira. Para que a água flua do emissor para o coletor é necessário "abrir" a base. Da mesma forma, quando injetamos corrente na base, por indução, a corrente flui do emissor para o coletor. Existem diversas variações nesse comportamento em diferentes tipos de transistores, mas isso não é foco do presente artigo.

CMOS - Metal Oxide Semiconductor

Vimos o funcionamento de um transistor simples. Entendemos que FET é uma implementação de transistor baseada em sensibilidade a campo elétrico. A parte MOS de CMOS e de MOSFET vem de Oxidação em Metais Semicondutores, ou Oxidação em Metais-óxidos, que seria a tradução mais literal.

O metal semicondutor em questão é o silício. Material abundante no planeta Terra. Imagine então uma pastilha, conforme a imagem abaixo em que oxidamos/corroemos duas partes: o emissor e o coletor (em verde) de um transistor. Entre essas duas estruturas oxidadas, colocamos a base.

Animação mostrando um transistor feito em pastilha de silício utilizando a tecnologia MOSFET em que ao injetar corrente na base a eletricidade flui, por indução, do emissor à esquerda para o coletor à direita

Quando injetamos corrente elétrica na base, os elétrons fluem do emissor para o coletor. Lembra da analogia com a torneira? Ao abrirmos o registro Base, a água flui do Emissor para o Coletor. É importante ressaltar que a distância física entre o emissor e o coletor é muito importante. Quanto mais distantes maior a corrente necessária na base para que a indução elétrica aconteça no semicondutor silício

Essa relação com a distância pode ser compreendida através da animação abaixo. Note que quando a corrente à esquerda aumenta, ao chegar em um limiar a indução elétrica à direita acontece. À medida que aumentamos a distância entre as partes oxidadas precisamos aumentar a corrente que possibilitará a indução.

Animação mostrando a relação entre o aumento da corrente e a indução elétrica. À esquerda um gráfico aumentando a corrente e à direita dois fluxos elétricos se encontrando somente quando a corrente está alta.

Pela mesma lógica, se a distância sempre for a mesma e aumentarmos a corrente na base a indução elétrica ocorrerá mais rápida. A animação acima foi retirada da página da Wikipedia sobre Limite de tensão. Chegamos ao ponto que compreendemos cronologicamente as implementações de transistores até a invenção do CMOS

CMOS - Complementary Metal Oxide Semiconductor

A tradução mais direta para essa sigla seria Lógica Complementar de Oxidação em Metais Semicondutores. Já entendemos a parte de oxidação em semicondutores. O que seria então a Lógica Complementar? É porque ele utiliza dois transistores: um do tipo PNP e outro NPN de modo que um complementa o outro para construir portas lógicas ao elaborar circuitos digitais.

Circuito de um inversor lógico utilizando CMOS através de dois transistores: um PNP acima e outro NPN abaixo.

A imagem acima mostra o circuito inversor CMOS. Temos a entrada A e saída Q. Sendo um simples inversor, esse circuito quando recebe o valor 0 na entrada A tem como saída Q o valor 1. E quando a entrada é 1 a saída é 0. O transistor PNP tem como característica o fluxo de corrente do emissor para o coletor quando a entrada é 0. Já o transistor NPN tem o fluxo de corrente no sentido inverso: do coletor para o emissor quando a entrada é 1.

Note que em cada um dos transistores do circuito acima. os coletores estão diretamente ligados à saída Q. Da mesma forma, os emissores estão ligados ao terminais Vdd e Vss, tensão e aterramento, respectivamente.

Um transistor quando trabalha na forma de comutador (switch), ou seja, ligado ou desligado é exatamente sua aplicação nos circuitos digitais. Vamos descrever o que acontece no circuito do Inversor CMOS ao ter os valores 0 e 1 como entrada.

Quando o valor na entrada A é 0, o transistor de cima (PNP) fluir a corrente do emissor para o coletor. Como o emissor está ligado no Vdd (tensão) a corrente do Vdd irá fluir para a saída Q. De modo inverso, com a entrada A também igual a 0 o transistor de baixo (NPN) não permite passar nenhuma corrente, ou seja, ele fica no estado desligado. 

Animação mostrando a execução do circuito Inversor CMOS com a entrada A=0 resultando na saída Q=1

Já quando a entrada A é 1 o transistor de cima (PNP) se mantém no estado desligado. Com essa mesma entrada A igual a 1, o transistor de baixo (NPN) é ligado/acionado de modo que a corrente irá fluir do coletor para o emissor. Como nesse caso o coletor está ligado diretamente à saída Q, TODA e qualquer corrente em Q será induzida para o emissor que está ligado ao aterramento (Vss). Logo, a saída Q termina com valor 0.

Animação mostrando a execução do circuito Inversor CMOS com a entrada A=1 resultando na saída Q=0

Esse circuito tão simples foi inventado em 1963. A partir dele, foi possível construir todas as demais portas lógicas utilizadas na construção de circuitos digitais utilizando esse mesmo princípio: Complementando transistores PNP e NPN.

Caso queira aprofundar no assunto, assista essa playlist de vídeos no Youtube e o documentário abaixo sobre a história, fundamentos e uso de CMOS na computação:

Conclusão

O circuito CMOS é uma tecnologia inventada em 1963 e que permitiu a construção de processadores, memórias e registradores de forma barata e em pequena escala geométrica. 

Vimos nesse artigo a cronologia dos circuitos que precederam o CMOS. Entendemos o que são os transistores construídos através de sensibilidade a campo elétrico e como eles se comportam ao fazer a corrente fluir por indução. Vimos que o silício é o semicondutor que a computação adotou como padrão de mercado e que permitiu que os circuitos integrados sejam construídos através do CMOS.

A consequência foi que com a evolução das tecnologias para produção de circuitos CMOS conseguimos construir o que chamamos de VLSI (Very-Large Scale Integration) ou Integração de escala enorme. A imagem abaixo exemplifica o que seria um Circuito Integrado VLSI com milhares de centenas de transistores. Nos tempos atuais chegamos à casa de trilhões de transistores:

Imagem de um layout de VLSI com milhares de centenas de transistores construídos dentro da tecnologia CMOS

Posts em português para fortalecer a comunidade brasileira de Ciência da computação. Caso tenha dúvidas, críticas ou sugestões de temas ou para o blog deixe nos comentários :)