Pular para o conteúdo principal

Arquitetura de computadores

1.      Computador
Um computador é uma máquina composta de partes eletrônicas e eletromecânicas (hardware) capaz de coletar, manipular e fornecer os resultados de informações para um ou mais objetivos.
Para ser considerado um computador ele precisa ter processador, memória e dispositivos  de entrada e/ou saída, que podem ser utilizados de modo eficiente na solução de tipos de problemas os quais possuem uma grande complexidade ou grande volume de dados.
A arquitetura de computadores se refere ao comportamento de um sistema computacional visível para o programador, ou seja, aos aspectos relacionados com a execução lógica de um programa. A organização de computadores se refere às unidades estruturais e seus relacionamentos lógicos e eletrônicos.
Os sistemas digitais, em seu nível mais baixo (linguagem de máquina), representam as informações somente através de dígitos (obs.: 0 1). Num nível mais alto (linguagem que necessitam de interpretadores), estes dígitos codificados formam diferentes combinações capazes de representar qualquer tipo de informação.
As informações normalmente são representadas internamente por sinais binários que podem ser somente valores 0 ou 1, correspondendo a estar ligado ou desligado, ter energia ou não num circuito, onde 5 volts representam o dígito 1 e 0 volt representa o dígito 0.
Um computador é capaz de realizar basicamente 4 operações:
a.       Processamento de dados; (principal tarefa do computador)
b.      Armazenamento de dados;
c.       Movimentação de dados;
d.      Controle
A informação compreende os dados processados e organizados para atender um objetivo específico. Dessa forma:
Entrada: Dados                ->           Processamento                               ->           Saída: informação
O dado é a informação não tratada, como também o resultado do processamento. Para que este ocorra de forma adequada, é necessária uma unidade de controle que gerencie os recursos do computador e coordene o funcionamento de suas partes.
Também é necessário que o computador armazene os dados. Mesmo que computador esteja processando dados de forma dinâmica, de modo que os resultados sejam imediatos, o computador precisa armazenar temporariamente, pelo menos, alguma parte dos dados que estão sendo trabalhados. Esta é a capacidade da memória, armazenar as informações e fornecê-las quando necessário.
O computador precisa também ser capaz de movimentar os dados entre ele e o mundo exterior. Um sistema computacional contém dispositivos que são usados como origem ou destino dos dados, denominados periféricos. Quando os dados são recebidos ou enviados a esses periféricos o processo é conhecido como entrada/saída (E/S).
O computador é o responsável por processar os dados e transformá-los em informação, através da execução de instruções em linguagem de máquina (baixo nível) que o processador é capaz de executar.
Para que um problema possa ser resolvido pelo computador, é necessário criar um algoritmo computacional, composto por uma seqüência de passos ou ações que determinam a solução do problema e a respectiva codificação, usando uma linguagem de alto nível, que é mais fácil de ser escrita. Essa codificação transforma o algoritmo num programa (software).

2.       O modelo de Von Neumann

Os computadores digitais convencionais baseiam-se no modelo idealizado por Von Neumann que são baseados em cinco componentes principais:

a.       Unidade de entrada – provê instruções e dados ao sistema.
b.      Unidade de memória – armazena os dados do sistema.
c.       Unidade lógica e aritmética – processa os dados.
d.      Unidade de controle – controla a execução das instruções e o processamento
dos dados.
e.      Unidade de saída – apresenta os resultados dos dados processados.
Este modelo apresenta que após o programa ser armazenado na memória, em uma série de endereços consecutivos, o processador inicia a execução do programa. O primeiro endereço de um programa contém, necessariamente, uma instrução para o processador.
Para realizar o processamento, a unidade de controle busca a instrução que estiver armazenada no primeiro endereço de memória onde se encontra o programa. Em seguida, essa instrução é decodificada, ou seja, o processador define o código de operação daquela instrução em particular.
O passo seguinte é a execução da instrução, seguido de outro passo, o armazenamento do resultado, caso seja necessário. Nesse processo de busca, decodificação e execução, os dados e as instruções são armazenados dentro do processador em registradores. Este ciclo se repetirá até que a instrução a ser executada seja a de encerrar o programa.

3.       O modelo de barramento do sistema

Atualmente, o modelo de Von Neumann foi aperfeiçoado para outro tipo de barramento de sistema, formado por:

a.       CPU (Central Processing Unit) – é a Unidade Central de Processamento ou processador, composta pela unidade de controle, unidade lógica e aritmética e registradores.
b.      Memória – armazena os dados e as instruções.
c.       Entrada e Saída (E/S) – agrupa as unidades de entrada e saída numa única unidade.

Esses componentes se comunicam através de um barramento do sistema, composto por:

a.        Barramento de dados – transporta a informação, movendo dados entre os componentes do sistema.
b.      Barramento de endereços – identifica para onde a informação está sendo enviada.
c.        Barramento de controle – descreve a forma como a informação está sendo transmitida.

Os barramentos são um conjunto de fios agrupados por função. Um barramento de dados de 64 bits tem 64 fios individuais, onde cada fio transporta um bit da informação. Já um barramento de endereços de 32 bits, tem em cada fio o bit necessário para determinar o endereço onde vai ler ou escrever a informação e pode acessar qualquer endereço de 0 a 4 GB, pois 32 bits permitem acessar 4.294.967.296 endereços distintos. Já o barramento de controle possui informações que determinam se a operação será de leitura ou escrita e, se será na memória ou nos dispositivos de E/S.

4.      Níveis das máquinas

Um sistema computacional é um sistema complexo que pode ser visto sob diferentes perspectivas ou níveis, desde o nível mais alto (do usuário) até o nível mais baixo (dos transistores).
Um computador é projetado como uma série de níveis, e cada um deles é construído sobre seus antecessores. Nesse modelo, cada nível representa uma abstração do subseqüente. Ao utilizar um determinado nível não há a necessidade de saber como o nível abaixo funciona, apenas é necessário saber o que se pode fazer com as funcionalidades que o nível oferece.
Os computadores modernos são organizados normalmente em vários níveis.

a.       Nível do usuário ou programa aplicativo – nele o usuário interage com o computador usando programas como editores de texto, planilhas, jogos ou programas que acessam a internet.
b.       Nível da linguagem de alto nível – nesse nível o programador desenvolve os programas, aplicativos e sistemas através de uma linguagem de programação de alto nível como C, Java ou Pascal (Delphi).
c.        Nível da linguagem de montagem (de máquina) – esse é o nível onde as instruções são interpretadas e executadas pelo processador. Os programas desenvolvidos em linguagens de alto nível são traduzidos para uma linguagem de montagem ou Assembler, que apresenta um relacionamento direto com as instruções que o processador consegue executar.
d.       Nível de controle – aqui a unidade de controle, que está dentro do processador, efetua as devidas transferências de dados entre os registradores, memória e dispositivos de entrada e saída. Essa transferência é feita através de sinais de controle por um circuito lógico.

e.      Nível de unidades funcionais – nesse nível os registradores internos da CPU, a unidade lógica e aritmética e, a memória do computador é organizada sob a forma de unidades funcionais, de acordo com a função que desempenham para realizar as transferências de dados entre estas unidades funcionais.

Comentários

Postagens mais visitadas deste blog

Processadores CISC x RISC

Micro programação Máquinas antigas tinham poucas instruções, todas implementadas em hardware. Wilkes (1951) introduziu a microprogramação, que permite um conjunto grande de instruções de máquina (no nível convencional), usando um hardware simples capaz de executar apenas as chamadas microinstruções. Cada instrução de máquina no nível convencional é interpretada e pode dar origem à execução de muitas microinstruções. Exemplos de micro programação Os computadores que usam microprogramação são ditas CISC - Complex Instruction Set Computer. Exemplos: IBM 360, DEC VAX, Motorola 68030, família Intel como 8088, 80386, Pentium etc. Tanenbaum usa uma máquina fictícia chamada MAC para ilustrar o conceito de microprogramação. INTRODUÇÃO Um processador CISC (complex Instruction Set Computer, ou “computador com um conjunto complexo de instruções”), é capaz de executar várias centenas de instruções complexas diferentes, sendo extremamente versátil. Exemplos de processadores CISC sã...

Evolução dos processadores

O Pentium é o nome “comercial” dado a uma geração de processadores desenvolvida pela Intel. Assim como seu “irmão mais novo”, o Celeron, que também é do mesmo fabricante, é um processador que existe a um bom tempo, A Intel trouxe o PC para um nível de 64-bit com o processador Pentium em 1993. O processador tinha 3.3 milhões de transistores e executava 100 milhões de instruções por segundos. Pentium 1 P5 O primeiro Pentium veio ao mercado em 1993 para aposentar seu antecessor, o 80486, recebeu o codinome de “P5“, tecnologia de 800 nm (nanometros). Com a chegada desse processador houve uma grande mudança na parte de hardware e software, ele é a quinta geração de processadores de 32 bits criada pela Intel. P54 e P54C No final de 1993, a Intel lançou o Pentium de 600 nm com codinome de “P54”, sucessor do P5. P24T Em 1995, foi lançado o P24T, conhecido comercialmente como “Pentium Overdrive“. P55C Em 1996 foi lançado o P55C, comercialmente conhecido como Pentium MMX. Penti...