Buscar

7-processadores-vetoriais-matriciais-arq-risc-cisc

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Processadores Vetoriais/
Matriciais e Arquiteturas 
RISC e CISC
 
SST
Moreira, Marcelo dos Santos
Processadores Vetoriais/Matriciais Arquiteturas RISC e 
CISC / Marcelo dos Santos Moreira 
Ano: 2020
nº de p. : 11
Copyright © 2020. Delinea Tecnologia Educacional. Todos os direitos reservados.
Processadores Vetoriais/ 
Matriciais e Arquiteturas 
RISC e CISC
3
Apresentação
Em nosso estudo, veremos os processadores vetoriais/matriciais que realizam 
operações aritméticas vetoriais e matriciais de números pontos flutuantes. Em 
um segundo momento, estudaremos a arquitetura de processadores RISC e CISC, 
relacionando as suas instruções, cada um com suas características específicas. E, 
na sequência, faremos um comparativo entre essas duas arquiteturas.
Processadores Vetoriais/Matriciais
Para Stallings (2008), a principal característica do projeto de um processador 
vetorial reside no fato de que a sua principal tarefa é executar operações 
aritméticas de vetores ou matrizes de números de ponto lutuante, pois isso requer, 
necessariamente, uma interação por meio de cada elemento da matriz. 
Como exemplo, o autor cita dois vetores de números A e B – matrizes 
unidimensionais. Daí a necessidade de somá-los e os respectivos resultados devem 
ser registrados em C. 
Na tabela a seguir, veja a soma de vetores com seis operações separadas.
Soma de vetores com operações separadas.
1,5
+
2,0
=
3,5
7,1 39,7 46,8
6,9 1000,003 1006,093
100,5 11 111,5
0 21,1 21,1
59,7 19,7 79,4
A + B = C
Fonte: Stallings (2008, p. 542).
4
Uma alternativa proposta pelo mesmo autor na busca da melhoria de desempenho 
é a aplicação do processamento vetorial, por meio do qual é possível operar em um 
vetor de dados unidimensional. 
A mesma operação, que se utiliza de seis operações, pode ser adaptada com o 
processamento vetorial, expresso em código da linguagem Fortran, o qual passa a 
ter uma única operação, conforme ilustra a figura a seguir.
Soma de vetores com o processamento vetorial.
DO 100 I = 1,N
C(I,J) = 0,0 (J = 1,N)
DO 100 K = 1,N
C(I,J) = C(I,J) + A(I,K) + B(K,J) (J = 1,N)
100 CONTINUE
Fonte: Stallings (2008, p. 543).
No código da figura apresentada, podemos notar que todos os elementos da 
i-ésima linha serão calculados de forma paralela, ou seja, cada elemento da linha
é um somatório, e os somatórios – K – serão processados de forma serial em
vez de paralelo.
Já Tanenbaum (2013) cita a similaridade de um processador vetorial com um 
processador SIMD – Single Instruction, Multiple Data, o qual se caracteriza pelo 
único fluxo de instrução, porém com múltiplos fluxos de dados. 
Um processador vetorial tem como característica principal a sua eficiência na 
execução de uma sequência de operações em pares de elementos de dados. O 
autor destaca a diferença entre um processador vetorial e um SIMD, quando no 
primeiro as operações de adição são efetuadas em uma única unidade funcional, 
de alto grau de paralelismo.
Em sistemas vetoriais, o acesso à memória deve ser rápido e 
uniforme, ou seja, o mesmo tempo de acesso para todos os 
elementos de um vetor. Diante disso, sistemas computacionais 
com arquitetura vetorial não necessitam de memória cache e nem 
de memória virtual.
Atenção
5
A concepção dos processadores vetoriais está baseada em matrizes de dados, 
instruções únicas e um registrador vetorial, o qual é carregado com base na memória 
em uma única instrução. 
Em seguida, uma instrução de adição vetorial efetua as adições a partir dos 
elementos de dois desses vetores, alimentando-os em um somador com 
paralelismos (pipelined) com base em dois registradores vetoriais. 
O resultado do somador é outro vetor, o qual pode ser armazenado em um registrador 
vetorial e usado diretamente como um operando para outra operação vetorial.
Arquiteturas RISC e CISC
Vale aqui descrever um pouco da história das tecnologias dos processadores.
A tecnologia de processadores RISC (Reduced Instruction Set Computing ou 
Computador com um Conjunto Reduzido de Instruções) foi desenvolvida pela IBM 
em 1980, com a proposta de um conjunto reduzido de instruções, definidas apenas 
às mais frequentemente utilizadas, evitando o uso de microcódigos (MONTEIRO, 
2007). O seu projeto previa instruções simplificadas, utilizando apenas um único 
operando.
A ênfase dos processadores RISC estava no uso de registradores, limitando o acesso 
à memória a instruções load/store. Como resultado, o processador necessitaria de 
apenas um ciclo para cada instrução. 
Diante da dificuldade de se escrever programas complexos, utilizando um conjunto 
muito reduzido de instruções, tal conjunto foi incrementado com novas instruções, 
propícias para trabalharem com memória virtual e multiprocessamento. Assim, a 
tecnologia RISC teve forte predominância em estações de trabalho científicas.
Quanto aos processadores CISC (Complex Instrution Set Computing ou Computador 
com um Conjunto Complexo de Instruções), foi dada uma ênfase mais geral a eles. 
A sua predominância foi em ambientes comerciais, haja vista não apresentarem 
velocidade necessária aos trabalhos com extensas manipulações de números e alta 
resolução gráfica. 
Para esses ambientes, faz-se necessário contemplar todo o sistema: CPU, memória, 
velocidade de discos, sistema operacional e software.
6
Destacamos como vantagem de uma arquitetura CISC apresentar grande parte 
das instruções armazenadas no próprio processador. Assim, o trabalho dos 
programadores é facilitado, pois acessam rapidamente todas as instruções que 
serão usadas em seus programas. 
Outra vantagem dos processadores CISC é a redução do tamanho do código 
executável, haja vista já disporem de muito do código comum em vários programas 
na forma de uma única instrução.
Os processadores CISC utilizam um conjunto de códigos de instruções que são 
gravados no processador, permitindo a eles receber as instruções dos programas 
e executá-las. Esse conjunto de códigos são chamados de microprogramação. 
Tais instruções, já em baixo nível, são subdivididas em diversas instruções mais 
próximas do hardware. 
Elas são implementadas e guardadas na forma microcódigo no processador, 
dificultando a modificação da sua lógica de tratamento. O resultado disso é que 
CISC suporta apenas operações similares a [a=a+b], as quais podem ser descritas 
por [adda,b]. 
Podemos notar que tais operações conseguem manipular somente dois operandos 
para uma única instrução. Um deles, fonte; o outro, destino (acumulador). Elas 
permitem um ou mais operadores em memória para a realização das instruções. 
Isso reforça a necessidade de um leque de modelos de endereçamento, com acesso 
direto à memória e com apontadores para as variáveis de memória, armazenados 
em células de memória.
Em se tratando de um processador genuinamente RISC, exige-se do programador 
outra estratégia, haja vista que os processadores dessa tecnologia não têm 
microprogramação e, consequentemente, as instruções são executadas diretamente 
pelo hardware. Ou seja, além de não ter microcódigo, RISC tem o conjunto de 
instruções reduzido e um baixo nível de complexidade.
Uma aplicação prática e muito comum é o uso da tecnologia RISC pelos modernos 
videogames, pois exigem hardware dedicado para o seu processamento, resultando 
em dispositivos muito mais rápidos se comparados aos microcomputadores que 
geralmente contam com mais recursos computacionais.
7
Videogame.
Fonte: Plataforma Deduca (2020).
Algumas características destacam a tecnologia RISC. Chamamos a atenção ao fato 
de o RISC apresentar um conjunto menor de instruções, todas de largura fixa, se 
comparado à CISC, e a vantagem de ter a mesma capacidade de processamento.
Outro destaque da tecnologia RISC frente à CISC diz respeito à chamada de rotinas 
e à passagem de parâmetros. Fato é que as chamadas de funções consomem muito 
tempo de processador, apesar de requererem poucos dados. 
Porém, demandam mais tempo para os acessos à memória. Daí o motivo de a 
tecnologia RISC utilizar maisregistradores. O mesmo acontece com as chamadas de 
função, as quais são processadas com acessos à memória na tecnologia CISC; e em 
RISC isso ocorre internamente ao processador.
Como já discutido, pipeline traz a ideia de estágios de uma linha de produção e 
se espera que dois estágios terminem de forma simultânea. O objetivo de cada 
instrução é completar um estágio de pipeline dentro de um ciclo de clock, entretanto 
isso nem sempre é o que acontece.
8
Comparativo das arquiteturas RISC e 
CISC
No intuito de uma melhor compreensão sobre esse assunto, elaboramos o quadro 
abaixo, que apresenta uma comparação entre as arquiteturas RISC e CISC. 
Comparativo das Arquiteturas RISC e CISC
Características RISC CISC
Tipo de Arquitetura Registrador-registrador Registrador-memória
Tipo de Dados Pouca variedade de dados Muita variedade de dados
Modo de Acesso aos Dados Acesso à memória Acesso aos dados pela memória
Modo de Acesso à Memória
Acesso à memória 
somente pelas instruções 
load/store
Acesso à memória por 
várias instruções
Quantidade de Conjuntos 
Registradores
Múltiplos conjuntos Um único conjunto
Quantidade de Operandos 
de Registradores por Instrução
Três operandos de 
registradores
Até dois operandos por 
instrução
Tipos de Instruções Instruções simples em número reduzido
Instruções complexas e 
em grande quantidade
Formato das Instruções Instruções contendo poucos endereços
Instruções contendo 
muitos endereços
Tamanho das Instruções Instruções de tamanho fixo Instruções de tamanho variável
Número de Instruções por Ciclo Instruções de um único ciclo (load/store)
Instruções de múltiplos 
ciclos
Modos de Endereçamento Poucos modos de endereçamento
Muitos modos de 
endereçamento
Características de Paralelismo Altamente paralelizado (uso de pipeline) Muito pouco paraliezado
9
Número de estágios de 
pipeline
Entre 4 e 10 Entre 20 e 30
Foco da complexidade Complexidade no compilador Complexidade no código
Fonte: Adaptado de Tanenbaum (2013, p.47-48).
Stallings (2003) ressalta que em RISC são produzidos programas menores e, 
consequentemente, executados mais rapidamente. Daí a vantagem de ocuparem 
menos memória e ter um melhor desempenho. Menos instruções equivalem a um 
menor número de bytes de instrução para ser obtido. Além disso, considerando um 
ambiente de paginação, programas menores ocuparão menos páginas, diminuindo a 
probabilidade de falhas de páginas. 
Assim, podemos concluir que, para instruções complexas, os processadores CISC 
têm um melhor desempenho. No entanto, o que se tem visto atualmente é uma 
forte tendência de utilização de processadores híbridos, os quais, na sua essência, 
são processadores CISC, que também incorporam recursos encontrados nos 
processadores RISC.
Internamente, o processador híbrido processa apenas instruções simples. Aliado às 
instruções internas, um circuito decodificador será o responsável por converter as 
instruções complexas utilizadas pelos programas em várias instruções simples que 
podem ser entendidas pelo processador.
Por questões de marketing, ainda hoje os fabricantes de 
processadores divulgam a sua linha de produtos como sendo de 
RISC, porém não há mais quase nenhum processador com essa 
tecnologia. O mercado de processadores vê a adoção híbrida das 
tecnologias CISC e RISC por simples questão de desempenho. Por 
que nos restringir a uma ou outra tecnologia se podemos usufruir 
do melhor das duas?
Reflita
10
Fechamento
Chegamos ao final do estudo sobre os processadores vetoriais/matriciais e 
arquitetura RISC e CISC. Compreendemos que os processadores vetoriais/matriciais 
têm o objetivo de processar dados aritméticos de vetores ou matrizes de números de 
ponto flutuante. Vimos que as arquiteturas RISC e CISC apresentam características 
específicas, em que o processador trabalha com ciclos diferentes para cada 
instrução. Por fim, realizamos um comparativo entre essas arquiteturas, mostrando 
a diferença entre as várias características como modos de acesso, tipos e formados 
de instruções, modos de endereçamento e outras.
11
Referências
MONTEIRO, M. A. Introdução à organização de computadores. Rio de Janeiro: LTC, 
2007. 
STALLINGS, W. Arquitetura e organização de computadores. 8. ed. São Paulo: 
Pearson, 2008. 
TANENBAUM, A. S. Organização estruturada de computadores. 6. ed. São Paulo: 
Pearson, 2013.

Outros materiais