PROJETO CONCEITUAL DE UM ASIP PARA PROCESSAMENTO DIGITAL DE ÁUDIO

Tamanho: px
Começar a partir da página:

Download "PROJETO CONCEITUAL DE UM ASIP PARA PROCESSAMENTO DIGITAL DE ÁUDIO"

Transcrição

1 UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA Eduardo D avila Koerich Vinicius Almeida Carlos PROJETO CONCEITUAL DE UM ASIP PARA PROCESSAMENTO DIGITAL DE ÁUDIO Florianópolis, 2004

2 Eduardo D avila Koerich Vinciius Almeida Carlos PROJETO CONCEITUAL DE UM ASIP PARA PROCESSAMENTO DIGITAL DE ÁUDIO Rascunho de relatório submetido à Universidade Federal de Santa Catarina como parte dos requisitos para obtenção da nota final da disciplina de Projetos I. Luiz Cláudio Villar dos Santos Florianópolis, 2004

3 Sumário 1 INTRODUÇÃO 3 2 MOTIVAÇÃO 4 3 ArchC - LINGUAGEM DE DESCRIÇÃO DE ARQUITETURAS 5 4 APLICAÇÃO Efeitos de Áudio METODOLOGIA 8 6 ARQUITETURA 10 7 ORGANIZAÇÃO 13 8 ESTADO ATUAL 14 Lista de Figuras 1 Fluxo de Projeto Precisão de cada algoritmo de ganho Tamanho estimado de cada componente em FPGA Atraso estimado de cada componente no FPGA Desempenho de cada algoritmo na execução do efeito Delay Conjunto de Instruções Organização do processador

4 1 INTRODUÇÃO Projetos de hardware têm oferecido cada vez mais desafios no que diz respeito a sua complexidade e tempo de desenvolvimento. O trabalho em questão visa aplicar uma metodologia de projeto baseada em uma Linguagem de Descrição de Arquitetura, doravante denominada como ADL, no projeto de um Application-Specific Instruction-Set Processor (ASIP) e a criação de seu conjunto de ferramentas (assembler, cross-compiler e simuladores). A aplicação alvo é um processador digital para geração de efeitos de áudio. A motivação para o trabalho, a metodologia empregada, as principais características do processador e o estado atual do projeto são descritos nos capítulos a seguir. 3

5 2 MOTIVAÇÃO Projetos de hardware baseados estritamente em HDL possuem metodologias de projeto consolidadas e existem inúmeras ferramentas de apoio a projetos seguindo essas metodologias. Porém, projetos em HDL levam muito mais tempo para se chegar a uma versão simulada, validada e testada, e são mais sensíveis a mudanças no projeto pois se trabalha em um nível de abstração menor. Nesse contexto, projetos no nível de sistema (system-level design) são interessantes pois permitem criar versões do projeto em alto nível, testá-la mais facilmente, refiná-la, alem de facilitar a criação de ferramentas que automatizem certos passos do projeto. Por isso, uma metodologia de projeto moderna deve estar de acordo com fluxo de projeto no nível de sistema e SystemC[1][2] vai de encontro a essa questão, pois SystemC é uma biblioteca de classes C++ e uma metodologia que se pode usar para criar efetivamente um modelo com precisão de ciclos de algoritmos de software, arquitetura de hardware, e interfaces para SoC (System On a Chip) and projetos no nível de sistema (SystemC Version 2.0 Users Guide 2.0, 2002, p.1). O fato de se iniciar o projeto com o uso de uma ADL facilita a criação de um toolkit de programação e testes do projeto, e a escolha pelo ArchC[3][4], que é uma linguagem de descrição de arquiteturas, se deu basicamente pelo fato dela gerar um modelo em SystemC[1][2]. Descrever o projeto em uma ADL permite iniciar o projeto em um nível alto de abstração. A descrição do processador pode então ser feita simplesmente baseada no conjunto de instruções definidas previamente. É possível então descrever o ASIP em vários níveis, dentro da própria ADL (funcional, precisão de ciclos, uso de memória cache etc). O toolkit é composto pelo simulador, gerador de montadores e cross-compiler. O gerador de montadores é uma ferramenta que permite, a partir de descrições em ArchC, gerar um montador para a arquitetura desejada. A ferramenta gerador de montadores pode ser tão complexa quanto se queira, e criar essa ferramenta de forma a ser genérica foge ao escopo do trabalho em questão. O gerador de montadores a ser implementado visa possibilitar pequenas modificações na arquitetura pré-definida, como por exemplo adições de novas instruções, ou mudanças nos campos das mesmas. O cross-compiler permitirá a geração de código de máquina, a partir de código em alto nível, para a arquitetura alvo. No caso de uma modificação na arquitetura, o código em alto nível seria recompilado para gerar código para a arquitetura modificada. O simulador é gerado automaticamente pela ferramenta ArchC[1]. 4

6 3 ArchC - LINGUAGEM DE DESCRIÇÃO DE ARQUITE- TURAS O ArchC é uma linguagem de descrição de arquitetura que está sendo desenvolvida no LSC (Laboratório de Sistemas de Computadores) no IC-UNICAMP (Instituto da Computação da Universidade de Campinas). Ele tem como base o SystemC, uma linguagem de descrição de hardware. O ArchC é composto de duas partes. Uma delas é a descrição da arquitetura do conjunto de instruções (AC ISA) que contém a declaração de todas a instruções e seus formatos. A outra parte é a descrição dos elementos da arquitetura (AC ARCH) onde é feito a declaração do tamanho da palavra que será utilizada na arquitetura, número de registradores, pipeline, etc. A partir das duas descrições acima, o ArchC Pre-Processor (ACPP) gera um template comportamental, que deverá ser preenchido com o comportamento de cada instrução. Com a descrição comportamental completa, o modelo é compilado gerando um simulador executável da arquietura modelada. O simulador executável pode então utilizar um código binário ou hexadecimal para fazer a simulação da arquitetura. Maiores informações podem ser encontradas em [3][4]. 5

7 4 APLICAÇÃO A aplicação em questão é um processador digital de audio, mais especificamente gerador de efeitos de áudio, com várias funcões implementadas, validado, testado e em condicões de ser construído fisicamente em FPGA. Os efeitos selecionados para rodarem no processador são: Delay, Distorção, Flanger, Phaser e Trêmolo. Porém, futuramente deseja-se expandir o repertório de efeitos a serem programados. A seleção dos efeitos teve como critérios básicos: - simplicidade (algoritmos com funções matemáticas complexas não foram inclusos pois dificultariam o projeto da arquitetura e implementação dos algoritmos de efeito) - resultado sonoro (efeitos com grande apelo auditivo, ou seja, as diferenças entre o som original e o modificado são facilmente percebidas, mesmos por leigos no assunto). O resultado final é um processador de efeitos de áudio, rodando efeitos em Real-Time, que seja configurável externamente na setagem de quais efeitos devem ser aplicados e os parâmetros a serem utilizados por cada efeito. Porém, são previstas implementações intermediárias mais simples, com parâmetros carregados diretamente da memória, execução de um único efeito por vez e aplicação dos efeitos a amostras de audio previamente carregadas em memória. 4.1 Efeitos de Áudio Os efeitos citados acima foram previamente programados em linguagem de alto nível. Segue abaixo uma pequena explanação sobre cada efeito implementado: Distorção: A distorção basicamente satura a onda sonora dando ao som um aspecto meio distorcido ou sujo. O algoritmo de distorção recebe como entrada a onda sonora, um ganho e um valor de saturação. Quando a onda é processada, primeiramente aplica-se a ela o ganho e em seguida ela é saturada com o valor de saturação. Tremolo: O tremolo é simplesmente a variação constante de volume de forma linear. É passado como parâmetros o volume máximo e mínimo, assim como a velocidade de variação do volume. A onda vai aumentando sua amplitude de acordo com a velocidade de variação. Quando esta atinge o volume máximo desejado, ela começa a diminuir sua amplitude até atingir o volume mínimo e voltar a aumentar a amplitude novamente, ficando assim até que se pare a execução do efeito. Delay: O delay simplesmente adiciona à onda uma ou mais amostras atrasadas, mas não chega a dar uma sensação de eco. O algoritmo de delay recebe como entrada a onda sonora, um ganho para a onda original, um ganho para as amostras atrasadas, a 6

8 quantidade de feedback e o tempo de atraso. No processamento da onda, aplica-se a ela um ganho (ganho da onda original) e depois pega-se uma amostra atrasada em t (tempo de atraso) segundos e aplica-se a ela um outro ganho (ganho para amostras atrasadas). No caso de haver feedback, a onda processada nesta etapa será adicionada a amostra t segundos seguinte, porém a ela será aplicado um ganho menor que um para diminuir sua intensidade. A intenção é que a amostra atrasada vá se repetindo seguidas vezes, cada vez mais baixo, até que não mais se possa ouví-la. Flanger: O flanger utiliza da técnica do delay para sua execução. No entanto ele não faz uso de feedback e seu tempo de atraso fica entre X e Y milisegundos. Um diferencial no algoritmo do flanger, é que o tempo de atraso fica constantemente variando para maior e menor atraso. Um dos parâmetros do algoritmo é justamente o menor e o maior atraso desejado. Phaser: O phaser tem um comportamento exatamente igual ao flanger, sendo a única diferença que a amostra atrasada, antes de ser adicionada a onde original, é invertida para dar um outro aspecto sonoro. 7

9 5 METODOLOGIA O objeto de estudo do trabalho é justamente a busca de novas maneiras de se realizar o projeto de hardware, usando novas ferramentas como ArchC[3][4] e SystemC[1][2] e criando uma metodologia que permita a execução do fluxo de projeto de forma sutil e recorrente. A metodologia do trabalho, capturada no plano de trabalho, pode ser vista na figura abaixo. Figura 1: Fluxo de Projeto Na figura vemos quatro cadeias de ferramentas interligadas entre si em pontos-chave. A cadeia de ferramenta de síntese de software compreende basicamente as ferramentas do tool kit. Essas ferramentas visam a programação em alto nível, com facilidade, do ASIP. Em um primeiro momento, para permitir a simulação dos códigos de aplicação (efeitos) é criado um montador manualmente e os efeitos são codificados em assembly. Na versão final o código é escrito em alto nível, compilado pelo cross-compiler e montado pelo montador gerado automaticamente. Ele então é carregado no simulador, gerando assim o ISS (Instruction Set Simulator). 8

10 Na cadeia de ferramenta de co-simulação de HW/SW tem-se como entrada as descrições do ASIP, em ArchC, nos níveis funcional e com precisão de ciclos. A simulação é feita primeiramente sobre o modelo funcional, sem precisão de ciclos, para assegurar que o conjunto de instruções é capaz de realizar as operações necessárias à aplicação. O próximo passo é refinar o modelo para apresentar instruções com precisão de ciclos, que é como o ASIP serah realmente implementado. O ArchC então gera um modelo executável em SystemC, que é usado para a simulação, tendo como código de teste o resultado gerado pela cadeia de síntese de software. O modelo gerado em SystemC pode ser refinado manualmente a fim de se chegar o mais próximo possível da descrição RTL que serah feita em VHDL, não perdendo, dessa forma, todo a cadeia gerada para simulação e testes gerado anteriormente. Da ultima descrição gerada em SystemC parte-se para a conversão manual para a descrição ASIP em RTL. A cadeia de síntese de hardware segue o caminho já conhecido da comunidade de microeletrônica. A síntese em FPGA conta com uma ultima etapa que carrega o código da aplicação para ser sintetizado junto com o hardware projetado. 9

11 6 ARQUITETURA A arquitetura do conjunto de instruções foi definida a partir de um conjunto de algoritmos de efeitos de áudio previamente selecionados, implementados e testados em uma linguagem de alto nível, que servirá posteriormente como testbenches para a aplicação em questão. Fazendo-se a análise dos algoritmos gerados em alto nível, detectaram-se quais seriam as instruções necessárias para a geração dos efeitos em um processador específico. De modo geral observou-se a presença de somas, subtrações, multiplicações e saltos, além de instruções de acesso a memória, mas como era de se esperar nesse tipo de aplicação, as instruções aritméticas são a grande maioria. Como se visa a implementação em hardware do processador, a primeira preocupação foi com relação à multiplicação, que poderia se tornar um problema por ser custosa tanto em tempo de execução, quanto no espaço físico necessário para implementá-la em hardware. A opção foi reprogramar os efeitos, retirando as operações de multiplicação explícitas e as programando com soma e deslocamentos, criando-se assim o que se chamou de algoritmos de ganho. Para a tomada de decisão entre multiplicação e algoritmos de ganho usando deslocamentos, foram criadas tabelas comparando os seguintes fatores de cada opção: - precisão - desempenho em número de ciclos para se executar ganho - desempenho em número de ciclos e tempo total de execução de cada efeito - número aproximado de componentes necessários para implementação em hardware - escalabilidade Para o caso de se usar deslocamentos, havia a possibilidade tanto de implementar deslocamentos em hardware usando Shift Register, quanto Barrel Shifter. Essas duas opções foram consideradas para a tomada da decisão. As tabelas usadas para tomada de decisão podem ser vistas abaixo: Figura 2: Precisão de cada algoritmo de ganho Para cada algoritmo, foram executados todos os possíveis valores de ganho aceitos e anotada a diferença entre o valor dado e valor esperado e calculada a média. Nesse critério o algoritmo 2 foi descartado por apresentar precisão mais baixa que os demais e ter uma abrangência menor que os outros. As duas figuras anteriores comparam o atraso e espaço físico ocupado para cada possível implementação física, em um FPGA alvo. Esses critérios seriam importantes caso a 10

12 Figura 3: Tamanho estimado de cada componente em FPGA Figura 4: Atraso estimado de cada componente no FPGA diferença entre eles fosse muito grande, ou seja, se para implementar a multiplicação usando Barrel Shifter fosse dez vezes mais rápido e ocupasse cinquenta vezes menos o espaço no FPGA que um multiplicador, provavelmente teria um peso maior na decisão de qual implementação usar. Figura 5: Desempenho de cada algoritmo na execução do efeito Delay Esse figura apresenta o resultado mais importante, que é a comparação do desempenho de cada um dos algoritmos para um determinado efeito. Ela é resultado da contagem do número de instruções do efeito para cada implementação, combinado com o tempo de atraso de cada componente utilizado. Com esses valores foi possível calcular qual o tempo de execução do efeito. Analisando-se as tabelas geradas, optou-se pelo uso da multiplicação simples, pois representa o melhor custo-benefício dentre as soluções apresentadas. Objetivando-se a criação de ferramentas de auxílio à programação do processador, e, 11

13 por conseguinte possibilitando a programação do mesmo em alto nível, optou-se por uma arquitetura RISC. Abaixo segue quadro-resumo com as principais definições da arquitetura. Figura 6: Conjunto de Instruções Algumas considerações importantes sobre a definição da arquitetura em 16 bits precisam ser citadas: - esse foi o menor tamanho encontrado que comportasse a definição das instruções em formatos regulares. O menor tamanho foi buscado justamente por se tratar de um sistema embarcado, onde a quantidade de memória disponível geralmente é pequena. - internamente todos os dados são tratados em 16 bits, porém os dados de entrada (amostras de áudio) são de 8 bits. Dessa maneira o processador trabalha com precisão estendida (característica geralmente de DSPs), visando minimizar os problemas com overflow e com problemas de arredondamento ocasionados pela instrução de multiplicação - conseguiu-se criar um banco com 16 registradores de 16 bits, o que garante uma boa alocação de registradores futuramente. - os registradores de uso geral podem ser usados para endereçamento sem problemas. O espaço de endereçamento de 64 kbytes é mais que o atualmente necessário, o que garante a possibilidade de futuras extensões no projeto. 12

14 7 ORGANIZAÇÃO A organização do processador segue o princípio de projeto adotado na definição da arquitetura. Optou-se por uma implementação multiciclo por ser mais eficiente que uma implementação monociclo e mais simples que uma implementação utilizando pipeline. Abaixo segue figura contendo as principais informações das definições feitas no projeto da organização do processador: Figura 7: Organização do processador Algumas definições sobre o controle ainda serão tomadas, por isso a parte dos jumps não está totalmente definida no datapath acima. 13

15 8 ESTADO ATUAL Do cronograma apresentado abaixo, todas as atividades previstas até o mês de maio estão terminadas. 1. Definição e implementação em linguagem de alto nível dos efeitos desejados 2. Familiarização com as ferramentas SystemC, ArchC e o pacote de ferramentas da Mentor Graphics 3. Projeto e Validação da arquitetura do ASIP (modelo funcional, sem precisão de ciclos) 4. Projeto e Validação da organização do ASIP (modelo com precisão de ciclos) 5. Projeto e Validação do ASIP em Baixo Nível 6. Desenvolvimento de Software para o ASIP 7. Integração e Teste 8. Relatório final 9. Entrega do Relatório à Banca Ativ. 02/04 03/04 04/04 05/04 06/04 07/04 08/04 09/04 10/04 11/04 1 X 2 X 3 X X 4 X X 5 X X X X 6 X X X X 7 X 8 X X 9 X 14

16 Referências [1] SystemC homepage. In [2] OSCI. SystemC Version 2.0 User s Guide, [3] The ArchC Resource Center. In [4] RIGO, Sandro, The ArchC Architecture Description Language v0.8.1 Reference Manual, Instituto de Computação - Unicamp, Laboratório de Sistemas de Computadores. 15

UNIVERSIDADE FEDERAL DE SANTA CATARINA

UNIVERSIDADE FEDERAL DE SANTA CATARINA UNIVERSIDADE FEDERAL DE SANTA CATARINA PROJETO CONCEITUAL DE UM ASIP PARA PROCESSAMENTO DIGITAL DE ÁUDIO Eduardo Koerich d Ávila Vinicius Almeida Carlos Florianópolis - SC 2004/2 UNIVERSIDADE FEDERAL DE

Leia mais

METODOLOGIA BASEADA EM ADL PARA NÚCLEOS DE ASIP EXTENSÍVEIS: UM ESTUDO DE CASO

METODOLOGIA BASEADA EM ADL PARA NÚCLEOS DE ASIP EXTENSÍVEIS: UM ESTUDO DE CASO 1 METODOLOGIA BASEADA EM ADL PARA NÚCLEOS DE ASIP EXTENSÍVEIS: UM ESTUDO DE CASO Vinicius A. Carlos *, Eduardo K. d'ávila, Luiz C. V. dos Santos Departamento de Informática e Estatística Universidade Federal

Leia mais

UMA HIERARQUIA DE MEMÓRIA PARA UM MODELO RTL DO PROCESSADOR RISC-V SINTETISÁVEL EM FPGA

UMA HIERARQUIA DE MEMÓRIA PARA UM MODELO RTL DO PROCESSADOR RISC-V SINTETISÁVEL EM FPGA UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO UMA HIERARQUIA DE MEMÓRIA PARA UM MODELO RTL DO PROCESSADOR RISC-V SINTETISÁVEL EM FPGA PROPOSTA DE TRABALHO

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação POR QUE APRENDER CONCEITOS

Leia mais

FPGA & VHDL. Tutorial

FPGA & VHDL. Tutorial FPGA & VHDL Tutorial 2009-2 FPGA FieldProgrammableGateArray Dispositivo lógico contendo uma matriz de: Células lógicas genéricas Configuráveis ( programadas ) para desempenhar uma função simples Chaves

Leia mais

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?

Leia mais

Projeto com Linguagens de Descrição de Hardware

Projeto com Linguagens de Descrição de Hardware Projeto com Linguagens de Descrição de Hardware Versão 2012 RESUMO Esta experiência consiste no projeto e implementação de um circuito digital simples com o uso de uma linguagem de descrição de hardware.

Leia mais

FPGA & VHDL. Tutorial Aula 1. Computação Digital

FPGA & VHDL. Tutorial Aula 1. Computação Digital FPGA & VHDL Tutorial Aula 1 Computação Digital FPGA Field Programmable Gate Array Dispositivo lógico contendo uma matriz de: Células lógicas genéricas Configuráveis ( programáveis ) para desempenhar uma

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof.

Leia mais

PROJETO DE UM MODELO DE UM CONVERSOR ANALÓGICO DIGITAL PARA SOC S

PROJETO DE UM MODELO DE UM CONVERSOR ANALÓGICO DIGITAL PARA SOC S UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA PROJETO DE UM MODELO DE UM CONVERSOR ANALÓGICO DIGITAL PARA SOC S PROPOSTA DE TRABALHO DE GRADUAÇÃO Aluno:

Leia mais

Infraestrutura de Hardware. Funcionamento de um Computador

Infraestrutura de Hardware. Funcionamento de um Computador Infraestrutura de Hardware Funcionamento de um Computador Computador: Hardware + Software Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é

Leia mais

ENGENHARIA DE SISTEMAS MICROPROCESSADOS

ENGENHARIA DE SISTEMAS MICROPROCESSADOS ENGENHARIA DE SISTEMAS MICROPROCESSADOS Prof. Pierre Vilar Dantas Turma: 0040-A Horário: 4N Aula 01-26/07/2017 Plano de ensino Professor www.linkedin.com/in/pierredantas/ TÓPICOS Conceitos gerais. Evolução

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Instituto de Informática UFG 1o. Semestre / 2006 Adaptado do material do prof. Fábio Moreira Costa Programa e Introdução Assunto do curso

Leia mais

Sistema Computacional

Sistema Computacional Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes reinaldo@cefet-al.br O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.

Leia mais

MODELAGEM DE TRANSISTORES E DE CIRCUITOS ANALÓGICOS CMOS USANDO VERILOG-AMS

MODELAGEM DE TRANSISTORES E DE CIRCUITOS ANALÓGICOS CMOS USANDO VERILOG-AMS MODELAGEM DE TRANSISTORES E DE CIRCUITOS ANALÓGICOS CMOS USANDO VERILOG-AMS I. Autor: Prof. Oscar da Costa Gouveia Filho Departamento de Engenharia Elétrica Universidade Federal do Paraná II. Resumo: Verilog-AMS

Leia mais

Desenvolvendo aplicações com LabVIEW FPGA. Rogério Rodrigues Engenheiro de Marketing Técnico Marcos Cardoso Engenheiro de Vendas

Desenvolvendo aplicações com LabVIEW FPGA. Rogério Rodrigues Engenheiro de Marketing Técnico Marcos Cardoso Engenheiro de Vendas Desenvolvendo aplicações com LabVIEW FPGA Rogério Rodrigues Engenheiro de Marketing Técnico Marcos Cardoso Engenheiro de Vendas Agenda O que são FPGAs e por que eles são úteis? Programando FPGAs Hardware

Leia mais

Arquitetura e Organização de computadores

Arquitetura e Organização de computadores Arquitetura e Organização de computadores Aula 1: Organização e evolução de computador, parte 2 Prof. MSc. Pedro Brandão Neto, pedroobn@gmail.com Sistemas de Informação - UNDB Introdução 2 Máquinas Multiníveis

Leia mais

Infraestrutura de Hardware. Implementação Multiciclo de um Processador Simples

Infraestrutura de Hardware. Implementação Multiciclo de um Processador Simples Infraestrutura de Hardware Implementação Multiciclo de um Processador Simples Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e

Leia mais

Calculadora Simples em VHDL

Calculadora Simples em VHDL Calculadora Simples em VHDL Versão 2014 RESUMO Esta experiência consiste no projeto e implementação de um circuito digital simples com o uso de uma linguagem de descrição de hardware. São apresentados

Leia mais

Arquitetura de Computadores. Conjunto de Instruções

Arquitetura de Computadores. Conjunto de Instruções Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas

Leia mais

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Introdução geovanegriesang@unisc.br Processadores de linguagem Linguagens de programação são notações para se descrever

Leia mais

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

Microprocessadores CPU. Unidade de Controle. Prof. Henrique Microprocessadores CPU Unidade de Controle Prof. Henrique Roteiro Registradores; Unidade de Controle Níveis de Complexidade Introdução Um sistema microprocessado conta com diversos dispositivos para um

Leia mais

ULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.

ULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade. PROCESSADOR ULA Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade. ULA Uma ULA típica pode realizar as operações artiméticas: - adição; - subtração; E lógicas: - comparação

Leia mais

GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM

GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva  UFU/FACOM GFM015 Introdução à Computação Plano de Curso e Introdução Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/ic UFU/FACOM Plano de Curso Ementa Noções básicas sobre os componentes de

Leia mais

2. A influência do tamanho da palavra

2. A influência do tamanho da palavra 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2) Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora

Leia mais

Compiladores. Geração de Código Objeto

Compiladores. Geração de Código Objeto Compiladores Geração de Código Objeto Cristiano Lehrer, M.Sc. Atividades do Compilador Arquivo de origem Arquivo de destino Análise Otimização Geração de Código Intermediário Geração de Código Final Síntese

Leia mais

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples Infraestrutura de Hardware Implementação Monociclo de um Processador Simples Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço

Leia mais

Algoritmos Computacionais

Algoritmos Computacionais UNIDADE 1 Processador e instruções Memórias Dispositivos de Entrada e Saída Software ARQUITETURA BÁSICA UCP Unidade central de processamento MEM Memória E/S Dispositivos de entrada e saída UCP UNIDADE

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais CAP 2: Conceitos de Hardware e Software Prof. MSc. Diego R. Moraes diegorm@anhanguera.com Download de todo conteúdo da disciplina https://sites.google.com/site/diegorafaelmoraes/downloads

Leia mais

Plano de Aula 26/8/13. VHDL - Visão Geral. Obje%vos: VHDL - Visão Geral. Descrição de circuito digital em VHDL

Plano de Aula 26/8/13. VHDL - Visão Geral. Obje%vos: VHDL - Visão Geral. Descrição de circuito digital em VHDL Instituto Federal de Santa Catarina Área de Telecomunicações SST20707 Síntese de Sistemas de Telecomunicações Prof. Roberto de Matos viso de direitos utorais: Transparências baseadas no trabalho do Prof.

Leia mais

Aula 16: UCP: Conceitos Básicos e Componentes

Aula 16: UCP: Conceitos Básicos e Componentes Aula 16: UCP: Conceitos Básicos e Componentes Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Conceitos Básicos e Componentes FAC 1 / 34

Leia mais

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente

Leia mais

Conceitos básicos sobre computadores (continuação)

Conceitos básicos sobre computadores (continuação) SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores (continuação) Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário O que é um computador e

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características

Leia mais

Arquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani)

Arquitetura de Computadores. Professor: Vilson Heck Junior (Material: Douglas Juliani) Arquitetura de Computadores Professor: Vilson Heck Junior (Material: Douglas Juliani) Agenda Conceitos Componentes Funcionamento ou tarefas Otimização e desempenho Conceitos Componente de Hardware que

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação COMO UM PROGRAMA ESCRITO

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 2018.1 Computador O computador é uma máquina que realiza processamento de dados automaticamente. Ela é formada por um hardware e um software. O Engenho Analítico é o primeiro

Leia mais

2. A influência do tamanho da palavra

2. A influência do tamanho da palavra PROCESSAMENTO 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante

Leia mais

FERRAMENTA DE PROFILING PARA PROCESSADORES SCHNEIDER, R. C. 1, NEVES, B. S. 1

FERRAMENTA DE PROFILING PARA PROCESSADORES SCHNEIDER, R. C. 1, NEVES, B. S. 1 FERRAMENTA DE PROFILING PARA PROCESSADORES SCHNEIDER, R. C. 1, NEVES, B. S. 1 1 Universidade Federal do Pampa (UNIPAMPA) Bagé RS Brasil RESUMO O aumento da complexidade dos processadores e de suas etapas

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

SSC510 Arquitetura de Computadores 1ª AULA SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC

UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC UNIVERSIDADE FEDERAL DE SANTA CATARINA DANIEL CARLOS CASAROTTO JOSE OTÁVIO CARLOMAGNO FILHO MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC Florianópolis, 2004 DANIEL CARLOS

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 11 Conjuntos de instruções: Modos de endereçamento e formatos slide 1 Diagrama do endereçamento imediato Instrução Opcode

Leia mais

CONJUNTO DE INSTRUÇÕES

CONJUNTO DE INSTRUÇÕES CONJUNTO DE INSTRUÇÕES 1 CARACTERÍSTICAS DE INSTRUÇÕES DE MÁQUINA Quando um programador usa uma linguagem de alto-nível, como C, muito pouco da arquitetura da máquina é visível. O usuário que deseja programar

Leia mais

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização e Arquitetura de Computadores INTRODUÇÃO Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo

Leia mais

Circuitos Digitais Representação Numérica. Sistema Digital. Circuitos Digitais. Conversão A/D e D/A. Circuitos Digitais

Circuitos Digitais Representação Numérica. Sistema Digital. Circuitos Digitais. Conversão A/D e D/A. Circuitos Digitais 2 Sistemas Digitais Aula 2 Introdução à Sistemas Embarcados Prof. Abel Guilhermino Centro de Informática Universidade Federal de Pernambuco Circuitos Digitais Representação Numérica Analógica As entradas

Leia mais

Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação

Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Relatório do Trabalho da Disciplina de Arquitetura e Organização de Processadores CMP- 237 Marcelo

Leia mais

Revisão: Projeto de Processadores em VHDL

Revisão: Projeto de Processadores em VHDL Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Revisão: Projeto de Processadores em VHDL DCA0119 Sistemas Digitais Heitor Medeiros Florencio 1 Sumário

Leia mais

Arquitetura e organização de computadores Uma visão geral

Arquitetura e organização de computadores Uma visão geral Arquitetura e organização de computadores Uma visão geral MAC 344 - Arquitetura de Computadores Prof. Siang Wun Song Baseado em W. Stallings - Computer Organization and Architecture Objetivo do disciplina

Leia mais

Projeto e Implementação de um Fatorial em Hardware para Dispositivos Reconfiguráveis

Projeto e Implementação de um Fatorial em Hardware para Dispositivos Reconfiguráveis Projeto e Implementação de um Fatorial em Hardware para Dispositivos Reconfiguráveis Álamo G. Silva, Leonardo A. Casillo Departamento de Ciências Exatas e Naturais Universidade Federal Rural do Semi- Árido

Leia mais

DSP Builder - Altera. MO801 - Tópicos em Arquitetura e Hardware. Michele Tamberlini 05/2006

DSP Builder - Altera. MO801 - Tópicos em Arquitetura e Hardware. Michele Tamberlini 05/2006 DSP Builder - Altera MO801 - Tópicos em Arquitetura e Hardware Michele Tamberlini 05/2006 DSP Builder Roteiro Introdução Funcionalidades MegaCore MATLAB / SIMULINK SOPC Builder Bibliotecas Introdução Algoritmos

Leia mais

Relatório Circuitos Lógicos. Calculadora 4 bits

Relatório Circuitos Lógicos. Calculadora 4 bits INSTITUTO FEDERAL DE SANTA CATARINA-IFSC CÂMPUS SÃO JOSÉ Relatório Circuitos Lógicos Calculadora 4 bits Marcelo Bittencourt do Nascimento Filho Sarom da Silva Torres SÃO JOSÉ, 2018 1. Introdução O presente

Leia mais

Disciplina: Arquitetura de Computadores

Disciplina: Arquitetura de Computadores Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na

Leia mais

Sistemas Embebidos I , Tiago Miguel Dias ADEETC - Secção de Arquitecturas e Sistemas Operativos

Sistemas Embebidos I , Tiago Miguel Dias ADEETC - Secção de Arquitecturas e Sistemas Operativos Sistemas Embebidos I Licenciatura em Eng. de Electrónica e Telecomunicações e de Computadores Licenciatura em Engenharia Informática e de Computadores Mestrado em Engenharia Informática e de Computadores

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL INTRODUÇÃO À TECNOLOGIA DA ORGANIZAÇÃO COMPUTACIONAL PROFESSOR CARLOS MUNIZ ORGANIZAÇÃO DE UM COMPUTADOR TÍPICO Memória: Armazena dados e programas Processador (CPU - Central Processing Unit): Executa

Leia mais

Nível do Conjunto de Instruções Prof. Edson Pedro Ferlin

Nível do Conjunto de Instruções Prof. Edson Pedro Ferlin 1 Definições Nível ISA (Instruction Set Architecture). Está posicionado entre o nível da microarquitetura e o nível do sistema operacional. É a interface entre o software e o hardware. Nesse nível está

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL É A INTERFACE ENTRE

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Aritmética Computacional - Inteiros - Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário A unidade lógico-aritmética Representação de números inteiros

Leia mais

Programa Analítico de Disciplina INF251 Organização de Computadores I

Programa Analítico de Disciplina INF251 Organização de Computadores I 0 Programa Analítico de Disciplina INF51 Organização de Computadores I Departamento de Informática - Centro de Ciências Exatas e Tecnológicas Número de créditos: Teóricas Práticas Total Duração em semanas:

Leia mais

Arquitetura de Sistemas Digitais

Arquitetura de Sistemas Digitais Universidade Federal do Amazonas Faculdade de Tecnologia Departamento de Eletrônica e Computação Arquitetura de Sistemas Digitais Lucas Cordeiro lucascordeiro@ufam.edu.br Notas de Aula Os slides deste

Leia mais

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar - Aula 1 - O NÍVEL DA LÓGICA DIGITAL 1. INTRODUÇÃO Na parte inferior da hierarquia da figura abaixo encontramos o nível da lógica digital, o verdadeiro hardware do computador. Este nível situa-se na fronteira

Leia mais

Compiladores. Introdução à Compiladores

Compiladores. Introdução à Compiladores Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem

Leia mais

FEDERAL UNIVERSITY OF RIO GRANDE DO SUL

FEDERAL UNIVERSITY OF RIO GRANDE DO SUL Tutorial ModelSim Workshop IEEE Circuits and Systems Society UFRGS Student Branch Bruno Zatt UFRGS - Porto Alegre BRAZIL Mentor Graphics ModelSim ModelSim é, atualmente, a ferramenta de simulação mais

Leia mais

Sistemas Operacionais. Conceitos de Hardware

Sistemas Operacionais. Conceitos de Hardware Sistemas Operacionais Conceitos de Hardware Sumário 1. Introdução 7. RISC e CISC 2. Processador 1. Operações de Processamento 2. Unidade de Controle 3. Ciclos de uma Instrução 3. Memória 1. Memória Principal

Leia mais

Introdução à Computação

Introdução à Computação Universidade Federal de Campina Grande Departamento de Sistemas e Computação Introdução à Computação Conceitos Básicos de Eletrônica Digital (Parte IV) Prof. a Joseana Macêdo Fechine Régis de Araújo joseana@computacao.ufcg.edu.br

Leia mais

Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC

Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC Linguagem para descrever o funcionamento de um sistema (o que e como o sistema faz). O sistema descrito em HDL

Leia mais

Projeto de Processadores Programáveis

Projeto de Processadores Programáveis Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Projeto de Processadores Programáveis DCA0119 Sistemas Digitais Heitor Medeiros Florencio Sumário Processadores

Leia mais

Microarquiteturas Avançadas

Microarquiteturas Avançadas Universidade Federal do Rio de Janeiro Arquitetura de Computadores I Microarquiteturas Avançadas Gabriel P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com

Leia mais

Bruno Ribeiro da Silva. A adaptação de um sistema operacional para a execução em uma diferente arquitetura

Bruno Ribeiro da Silva. A adaptação de um sistema operacional para a execução em uma diferente arquitetura Bruno Ribeiro da Silva A adaptação de um sistema operacional para a execução em uma diferente arquitetura Universidade Federal de Santa Catarina Florianópolis, Fevereiro de 2007 1 Bruno Ribeiro da Silva

Leia mais

Introdução a Sistemas Digitais

Introdução a Sistemas Digitais Introdução a Sistemas Digitais Definição Sistemas Digitais Projeto Revisão: Circuitos Combinacionais Circuitos Sequênciais Máquinas de Estados Sistemas Digitais Definição Um sistema digital é um sistema

Leia mais

Organização de Sistemas de Computadores

Organização de Sistemas de Computadores Organização de Sistemas de Computadores Cap. 2 (Tanenbaum), Cap. 3 (Weber) 2.1 Processadores 1 CPU UC = buscar instruções na memória principal e determinar o seu tipo ULA = adição e AND Registradores =

Leia mais

2 Trabalhos Relacionados

2 Trabalhos Relacionados Trabalhos Relacionados 16 2 Trabalhos Relacionados Com o intuito de conhecer e aprofundar os conhecimentos sobre o conceito de processadores de rede são apresentados a seguir, três trabalhos relacionados

Leia mais

Sistemas Operacionais

Sistemas Operacionais Brainstormig Sistemas Operacionais Processos e multiprogramação Aula 2 Quais são os componentes de um programa? Como podemos representar um programa em execução? Onde ele inicia a executar? Como se mapeia

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução

Leia mais

Processamento de áudio em tempo real utilizando dispositivos não convencionais:

Processamento de áudio em tempo real utilizando dispositivos não convencionais: Processamento de áudio em tempo real utilizando dispositivos não convencionais: Processamento paralelo com Pure Data e GPU. André Jucovsky Bianchi ajb@ime.usp.br Departamento de Ciência da Computação Instituto

Leia mais

PSI3441 Arquitetura de Sistemas Embarcados

PSI3441 Arquitetura de Sistemas Embarcados PSI31 Arquitetura de Sistemas Embarcados - Arquitetura do µprocessador Escola Politécnica da Universidade de São Paulo Prof. Gustavo Rehder grehder@lme.usp.br Prof. Sergio Takeo kofuji@usp.br Prof. Antonio

Leia mais

Introdução à Programação de Computadores Fabricação Mecânica

Introdução à Programação de Computadores Fabricação Mecânica Introdução à Programação de Computadores Fabricação Mecânica Edilson Hipolito da Silva edilson.hipolito@ifsc.edu.br - http://www.hipolito.info Aula 04 - Linguagens de Programação, Interpretador, compilador

Leia mais

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3 CPU CPU Funções: Processamento; Controle Componentes: UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3 Processador A função de um computador é executar tarefas

Leia mais

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1)

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1) Introdução Arquitetura de Hardware Introdução (Aula 2) Organização Estruturada de Computadores 01- Monitor 02- Placa-Mãe 03- Processador 04- Memória RAM 05- Placas de Rede, Som, Vídeo, Fax... 06- Fonte

Leia mais

Ciclo de Seminários Técnicos

Ciclo de Seminários Técnicos A Computação Reconfigurável no Desenvolvimento de um Sistema Digital Delano Oliveira (delano@dsc.ufcg.edu.br) DSC/CEEI/UFCG Agenda Motivação Objetivo Conceitos Fluxo de Projeto Considerações Finais 2 Motivação

Leia mais

Processadores

Processadores Processadores Definição O processador é o Circuito Integrado mais importante do computador. Ele é considerado como o cérebro do computador e funciona como uma UCP Unidade Central de Processamento. Definição

Leia mais

sumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3

sumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3 sumário 1 bases numéricas 1 1.1 introdução... 2 1.2 representação de números... 3 1.3 transformação entre bases... 4 1.3.1 método polinomial...4 1.3.2 método de subtrações...5 1.3.3 método das divisões...6

Leia mais

Ferramenta para Desenvolvimentode Sistemas EmbarcadosUtilizando Linguagem de Alto Nível p.1/25

Ferramenta para Desenvolvimentode Sistemas EmbarcadosUtilizando Linguagem de Alto Nível p.1/25 Universidade Federal do Rio Grande do Sul Escola de Engenharia - Instituto de Informática Graduação em Engenharia de Computação Ferramenta para Desenvolvimento de Sistemas Embarcados Utilizando Linguagem

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes

Leia mais

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC

Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação Arquitetura de Computadores I RISC versus CISC Gabriel P. Silva 04.11.2014 Introdução Um dos objetivos de uma arquitetura de

Leia mais

Aula Introdutória. Arquitetura e Organização de Computadores

Aula Introdutória. Arquitetura e Organização de Computadores GBC036 Arq. e Org. de Computadores 1 Aula Introdutória Arquitetura e Organização de Computadores Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Nesta Aula

Leia mais

Conjunto de Instruções e Modelos de Arquiteturas

Conjunto de Instruções e Modelos de Arquiteturas Departamento de Engenharia Elétrica e de Computação EESC-USP SEL-0415 Introdução à Organização de Computadores Conjunto de Instruções e Modelos de Arquiteturas Aula 7 Prof. Marcelo Andrade da Costa Vieira

Leia mais

Estendendo o Conjunto de Instruções de um PPC para Uso de Transformadas do H.264

Estendendo o Conjunto de Instruções de um PPC para Uso de Transformadas do H.264 Estendendo o Conjunto de Instruções de um PPC para Uso de Transformadas do H.264 Marcelo Schiavon Porto Roger E. C. Porto {msporto, recporto}@inf.ufrgs.br Introdução 2 O padrão H.264/AVC é o mais novo

Leia mais

Sistemas Operacionais. Visão Geral

Sistemas Operacionais. Visão Geral Sistemas Operacionais P R O F. B R U N O A L B U Q U E R Q U E S C R I G N O L I Visão Geral Organização da Apresentação Introdução Componentes de um Sistema de Computação Conceito de SO Objetivos de um

Leia mais

Introdução. (Aula 2) Organização Estruturada de Computadores

Introdução. (Aula 2) Organização Estruturada de Computadores Introdução (Aula 2) Organização Estruturada de Computadores Introdução Arquitetura de Hardware 01- Monitor 02- Placa-Mãe 03- Processador 04- Memória RAM 05- Placas de Rede, Som, Vídeo, Fax... 06- Fonte

Leia mais

Introdução à Linguagem VHDL

Introdução à Linguagem VHDL Fundamentos de Sistemas Digitais Introdução à Linguagem VHDL prof. Dr. Alexandre M. Amory Referências Sugiro estudarem nesta ordem de preferência: Vahid, Cap 9 Ignorar verilog e SystemC Bem didático! um

Leia mais

Aula 1: Apresentação do Curso

Aula 1: Apresentação do Curso Aula 1: Apresentação do Curso Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Fernanda Passos (UFF) Apresentação do Curso FAC 1 / 30 Estrutura da Disciplina

Leia mais

Leandro da Silva Freitas. Projeto em Nível RT de IPs Digitais

Leandro da Silva Freitas. Projeto em Nível RT de IPs Digitais Leandro da Silva Freitas Projeto em Nível RT de IPs Digitais Florianópolis Julho 2008 Leandro da Silva Freitas Projeto em Nível RT de IPs Digitais Trabalho apresentado como requisito parcial para aprovação

Leia mais

Informática I. Aula Aula 18-19/06/06 1

Informática I. Aula Aula 18-19/06/06 1 Informática I Aula 18 http://www.ic.uff.br/~bianca/informatica1/ Aula 18-19/06/06 1 Correção da Prova 1 1. Qual dispositivo é considerado o primeiro ancestral do computador? Que operações podem ser realizadas

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Linguagens de Programação DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Tópicos da aula

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Linguagem de Montagem Slide 1 CISC RISC MIPS Organização e Arquitetura de Computadores I Sumário Representação de instruções Slide 2 CISC O CISC (Complex Instruction

Leia mais