trabalho 02

Upload: matinsemit89

Post on 18-Oct-2015

42 views

Category:

Documents


0 download

TRANSCRIPT

  • Instituto Federal Sul-rio-grandense

    Campus Pelotas - Curso de Engenharia Eltrica

    Disciplina de Microeletrnica Digital

    Cesar de Souza Dias

    Implementao de uma Unidade

    Lgica e Aritmtica a nvel de

    transistores MOSFET

    Pelotas

    2011

  • 1. Introduo

    A Unidade Lgica e Aritmtica (ULA), como o prprio nome sugere, um circuito digital que realiza operaes lgicas e aritmticas. A tecnologia inicial de implementao desse dispositivo se baseava na utilizao de rels, herana da telefonia, os quais foram substitudos posteriormente pelas vlvulas, herana da radiofonia. Com o aparecimento dos transistores, e depois dos circuitos integrados, os circuitos da unidade lgica e aritmtica passaram a ser implementados com a tecnologia de semicondutores. Na figura 1 mostrado um esquema simplificado de uma ULA.

    Figura 1- Esquema Simplificado de uma ULA.

    Na figura, a seleo da operao que deve ser executada com os dados de entrada em A e B determinada pelos sinais de controle em S e o resultado obtido na sada F. A complexidade da ULA proporcional complexidade do sistema em que ser utilizada: sistemas simples permitem o uso de ULAs simples e sistemas sofisticados exigem ULAs sofisticadas.

  • 2. Objetivos

    Este trabalho objetiva o a implementao de uma Unidade Lgica e Aritmtica (ULA) de quatro bits, que realize as operaes de soma, subtrao, and e or, conforme ilustrado na figura 2.

    Figura 2 Unidade Lgica e Aritmtica de quatro operaes: soma, subtrao, and e or

    Os blocos dos circuitos somador, and, or e inversor sero implementados utilizando a tecnologia CMOS, enquanto os multiplexadores sero desenvolvidos a partir de transistores de passagem.

    O desenho do circuito ser realizado utilizando o software DSCH, o qual produzir um arquivo Verilog a partir do esquemtico desenhado. Posteriormente, o arquivo Verilog ser compilado no software Microwind, no qual ser feita a gerao do layout do circuito e a simulao do mesmo.

  • 3. Desenvolvimento

    O desenvolvimento da ULA foi dividido em vrias etapas, atravs da construo e validao individual de cada um dos blocos componentes da estrutura.

    3.1 Inversor

    Utilizando a tecnologia padro do software DSCH de 0,12 m de comprimento do canal dos transistores, foi desenhado o circuito inversor seguindo a estrutura de blocos Pull up e Pull Down, caracterstica da tecnologia CMOS.

    Figura 3 Circuito de um inversor lgico, utilizando a tecnologia CMOS

    A partir desse circuito elementar, pode-se criar um bloco elementar e expandir o circuito para um nmero maior de bits, conforme se pode verificar pela figura abaixo, onde feita a implementao de um inversor de quatro bits.

  • Figura 4 Circuito de um inversor lgico de quatro bits, utilizando a tecnologia CMOS

    O bloco inversor composto internamente pelo circuito da figura 3. Dessa forma possvel criar um bloco inversor de quatro bits, o qual tambm poder ser utilizado como parte de um circuito lgico expandido para quantidades maiores de bits.

    Figura 5 Bloco representativo do circuito mostrado na figura 4

    Essa metodologia de criao de blocos maiores a partir de blocos elementares tambm ser utilizada na implementao dos demais circuitos que compem a ULA.

  • 3.2 Operao And

    Utilizando a tecnologia CMOS foi desenvolvido o circuito elementar de uma porta lgica and, ilustrada na figura 6. Ressalta-se a utilizao do bloco inversor, mostrado no item anterior.

    Figura 6 - Circuito de uma porta And, utilizando a tecnologia CMOS

    O procedimento adotado para a expanso desse circuito foi o mesmo adotado para o inversor, com a criao de blocos mais complexos a partir de blocos simples.

  • 3.3 Operao Or

    Utilizando a tecnologia CMOS foi desenvolvido o circuito elementar de uma porta lgica or, ilustrada na figura 7.

    Figura 7 - Circuito de uma porta Or, utilizando a tecnologia CMOS

    O procedimento adotado para a expanso desse circuito foi o mesmo adotado para os circuitos anteriores.

  • 3.4 Porta lgica Ex-Or

    Embora a operao Ex-Or no seja uma das operaes propostas nesse projeto de ULA, se faz necessria a implementao dessa operao, j que a mesma ser utilizada no desenvolvimento do circuito somador.

    Figura 8 - Circuito de uma porta lgica Ex-Or, utilizando a tecnologia CMOS

  • 3.5 Somador Completo (

    O circuito lgico do somador completo mostrado na figura abaixo.

    Figura 9 - Circuito lgico de um somador completo

    O circuito constitudo de trs tipos diferentes de portas lgicas, todas elas jimplementadas anteriormente. Dessa forma, a construo do somador consiste basicamente na interligao dos blocos previamente construdos.

    Figura 10 Implementao de um somador completo

    Somador Completo (Full Adder)

    O circuito lgico do somador completo mostrado na figura abaixo.

    Circuito lgico de um somador completo

    O circuito constitudo de trs tipos diferentes de portas lgicas, todas elas jimplementadas anteriormente. Dessa forma, a construo do somador consiste basicamente na interligao dos blocos previamente construdos.

    Implementao de um somador completo no DSCH

    O circuito constitudo de trs tipos diferentes de portas lgicas, todas elas j implementadas anteriormente. Dessa forma, a construo do somador consiste

  • 3.6 Multiplexador

    O circuito multiplexador foi construdo utilizando transistores de passagem, como mostra a figura abaixo.

    Figura 11 - Circuito de um multiplexador de um bit, utilizando transistores de passagem

    De posse dos circuitos descritos acima e de suas expanses, possvel agora implementar a ULA.

  • 4. Implementao da ULA

    A partir da ligao dos blocos criados separadamente, obtm-se o circuito de uma ULA de quatro bits.

    Figura 12 - Circuito de uma ULA de quatro bits

    O funcionamento da ULA bastante simples: aplica-se os dois nmeros compostos de quatro bits cada um nas entradas a(a a a e b(b a b. A escolha de qual operao ser realizada feita atravs dos bits de seleo Select1 e Select2. A subtrao escolhida selecionando-se a operao de soma e colocando as entradas Carry In e Inverte Bit em nvel lgico alto. A sada Carry Out equivale ao dgito de vai um.

    As operaes realizveis pela ULA e o modo de seleo so resumidos na tabela abaixo:

    Tabela 1 Seleo das operaes da ULA

    O mesmo conceito de criao de blocos pode ser usado aqui: todo o circuito da ULA de quatro bits pode ser comprimido em um nico bloco, o que torna funcional a expanso da ULA para tamanhos maiores.

    Select 2 Select 1 Operao 0 0 And 0 1 Soma/Subtrao 1 0 Or 1 1 Soma/Subtrao

  • 5. Expanso da ULA

    A expanso do circuito da unidade lgica e aritmtica consiste em interligar os sinais de controle de cada bloco (Select2, Select1 e Inverte Bit) e conectar o sinal Carry Out de um bloco menos significativo entrada Carry In do bloco subsequente mais significativo. Por exemplo, uma ULA de quatro bits poderia ser expandida para oito bits com as ligaes mostradas na figura 13.

    Figura 13 Expanso de uma ULA de quatro bits para oito bits

    6. Layout do circuito

    A partir do circuito desenhado no DSCH, o prprio software capaz de gerar um arquivo do tipo Verilog, que uma linguagem de descrio de hardware usada para modelar sistemas eletrnicos. O arquivo Verilog gerado ser importado no software Microwind, que originar ento o layout do circuito. Utilizando uma tecnologia de 0,12 m de comprimento de canal, foram feitos testes para ULAs de diferentes quantidades de bits e foi verificado o tamanho do layout resultante para cada caso, ilustrado no grfico abaixo.

  • Figura 14 Dimenses dos layouts de ULAS de diferentes tamanhos

    Fazendo a anlise do grfico nota-se uma variao de largura muito superior variao de altura do layout. As medidas foram as seguintes:

    ULA de 1 bit: 142 x 16 m

    ULA de 4 bits: 551 x 24 m

    ULA de 8 bits: 1100 x 28 m

    ULA de 12 bits: 1648 x 38 m

    Fazendo a comparao das ULAs de 1 e 12 bits, esta ltima apresenta uma largura quase seis vezes maior, enquanto que o aumento da altura no chega a trs vezes.

    Para a obteno de dados relativos potncia consumida pelos circuitos, foi feito o teste com a ULA de 1 bit e com a ULA de 4 bits. Foi feita a variao das entradas de modo a cobrir todas as possibilidades da tabela verdade dos circuitos, utilizando uma tenso de 5 Volts e um tempo de simulao de 100 nanossegundos. A ULA de 1 bit teve um consumo de 2,349 mW, enquanto que a ULA de 4 bits teve consumo de 7,469 mW, ou seja, um aumento de 3,18 vezes no gasto de energia para um aumento de rea de 3,37 vezes.

    0

    200

    400

    600

    800

    1000

    1200

    1400

    1600

    1800

    1 bit 4 bits 8 bits 12 bits

    Largura do layout [m]

    Altura do layout [m]

  • 7. Aprimoramento do circuito

    Embora a ULA apresentada neste trabalho seja capaz de realizar apenas quatro operaes bsicas, podem ser feitos melhoramentos no circuito visando aumentar a sua diversidade de procedimentos. Inicialmente, pode-se pensar na implementao das demais funes lgicas no compreendidas no escopo deste trabalho. Posteriormente, elementos sequenciais (como latches, flip-flops, registradores, contadores, etc) podem agregar funcionalidades mais complexas ao circuito proposto inicialmente, esse puramente combinacional. Dessa forma, algoritmos conhecidos podem ser utilizados como ferramenta auxiliar no desenvolvimento de novos circuitos. Por exemplo, a operao de multiplicao pode ser feita baseada no algoritmo de somas sucessivas, enquanto que a diviso pode ser feita atravs de um algoritmo desloca-soma.

  • 8. Referncias Bibliogrficas

    Sedra, K. Smith. Microeletrnica. Pearson Prentice Hall, 5 edio, 2007.