Leon2 MO801/MC912. Características Básicas Processador RISC Padrão SPARC V8 (IEEE-1754) Palavra de 32 bits Descrição em VHDL-87 Barramento AMBA (AHB e.

Slides:



Advertisements
Apresentações semelhantes
Programa das Aulas 20/09/05 - Apresentação da disciplina
Advertisements

Chapter Six Pipelining
Chapter Five The Processor: Datapath and Control (Parte B: multiciclo)
1998 Morgan Kaufmann Publishers Mario Côrtes - MO401 - IC/Unicamp- 2004s2 Ch5A-1 Chapter Five The Processor: Datapath and Control.
Propriedades físicas representativas de
Palestras, oficinas e outras atividades
Circuitos Lógicos e Organização de Computadores Capítulo 8 –Circuitos Seqüenciais Síncronos Ricardo Pannain
Circuitos Lógicos e Organização de Computadores Capítulo 6 – Blocos com Circuitos Combinacionais Ricardo Pannain
Escolhe a opção que julgues ser a correcta!
SIMATIC S7 Siemens Ltda. SITRAIN Training for Automation and Industrial Solutions Configuração de Hardware.
Projecto de Hardware com FPGAs
The new way! The old way... TC – DEI, 2005/2006.
Profa. Ana Cristina Benso da Silva Disciplina: Redes de Computadores
Exercícios de Roteamento BackBone IP
VHDL Very High Speed Integrated Circuit Hardware Description Language Prof. Eduardo Todt 2008.
Rodolfo Jardim de Azevedo
VHDL Introdução Paulo C. Centoducatte fevereiro de 2005
Verificação MO801/MC912.
VHDL - Introdução MO801/MC912.
VHDL (outros tópicos) MO801/MC912.
MC Prof. Paulo Cesar Centoducatte MC542 Organização de Computadores Teoria e Prática.
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
MC Prof. Paulo Cesar Centoducatte MC542 Organização de Computadores Teoria e Prática.
Altera Excalibur Galileu Batista.
Char Drivers Alexandre Madeira Taciano Rodolfo Programação de Periféricos Eduardo Augusto Bezerra 30/06/2005.
A.4. Trabalhando com elementos de biblioteca STL – Standard Template Libraby Disponibiliza um conjunto de classes templates, provendo algoritmos eficientes.
Mapas de Karnaugh 5 e 6 variáveis.
Sistemas Operacionais
Library IEEE; use ieee.std_logic_1164.all; use IEEE.std_logic_arith.all;
Auditoria de Segurança da Informação
SQL Procedural Junho/2006.
Introdução ao Fortran 4/abril/2006. Pseudocódigo Compreensão do problema Elaboração da lógica de resolução Tradução da lógica para pseudocódigo.
Arquiteturas de 4, 3, 2, 1 e 0 endereços.
Mais sobre classes Baseada no Livro: Deitel&Deitel - C++ How To program Cap. 7 Prentice Hall 1994 SCE 213 Programação Orientada a Objetos, ICMC - USP 2.
Funções de um computador
2ª Aula Teórica Prof. Cesar Costa
CT-300 – Seminário de Tese 1/25 Um Framework Padrão para Simulação de Modelos de Robôs Móveis de Robôs Móveis Juliano A. Pereira Prof. Carlos H. C. Ribeiro.
Capítulo I – Conceitos Primários 1.1 – Estrutura de um computador 1.2 – Informações manipuladas por um computador 1.3 – Evolução das linguagens de programação.
FUNDAÇÃO CARLOS CHAGAS
TE 043 CIRCUITOS DE RÁDIO-FREQÜÊNCIA
Organização de Sistemas de Computadores
Sistemas Operacionais e Windows XP Aula 04 – DCA0302.
O DSP possui 4 timers de 16 bits: –São independentes; –São utilizados para gerar uma base de tempo utilizada para os programas (temporizações em geral);
Provas de Concursos Anteriores
© GfK 2012 | Title of presentation | DD. Month
Calculada a solução óptima
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Verificação por Simulação Circuitos Descritos.
Arquitetura de Sistemas Operacionais – Machado/Maia 10/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência.
Criação de objetos da AD 1Luis Rodrigues e Claudia Luz.
Cinemática Plana de um Corpo Rígido Cap. 16
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap Exercícios.
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
Modos de Configuração do Dispositivo VIRTEX II XC2V1000 Eduardo Wenzel Brião
Placa de prototipação H.O.T. II
GAPH Integração de Hardware do Usuário ao CoreConnect Leandro Heleno Möller e Leonel Pablo Tedesco Prototipação Rápida e Computação.
Salas de Matemática.
MINISTÉRIO DO PLANEJAMENTO Projeto de Lei Orçamentária 2010 Ministro Paulo Bernardo Silva Brasília, 31 de agosto de 2009.
EXERCÍCIOS PARA GUARDA-REDES
Infra-estrutura de Hardware
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Grupo A – Azul Claro, Marrom, Laranja
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Marca do evento Calendário de reuniões e encontros para o ano de 2011 Calendário 2011.
Rio Verde - Goiás - Brasil
Cinemática Plana de um Corpo Rígido Cap. 16
CALENDÁRIO 2013 MÓDULO II.
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
GINÁSTICA LABORAL UM NOVO CAMINHO.
Transcrição da apresentação:

Leon2 MO801/MC912

Características Básicas Processador RISC Padrão SPARC V8 (IEEE-1754) Palavra de 32 bits Descrição em VHDL-87 Barramento AMBA (AHB e APB) para interligação de periféricos Controlador de memória (SRAM e DRAM)

Configuração do Processador Duas alternativas –Interface gráfica make xconfig(Linux) make wconfig(Windows + cygwin) –Edição manual dos arquivos device.vhd e target.vhd

Interface Gráfica Interface de configuração similar ao do kernel do Linux

Opções de Síntese

Processador e Cache

Unidade de Inteiros

Configuração Manual target.vhd –Declara as estruturas de configuração device.vhd –Cria a estrutura conf que armazena a configuração do leon A constante tkconfig é gerada automaticamente pela interface gráfica.

Síntese O diretório syn possui scripts de síntese para diversas ferramentas Arquivo para Leonardo: leon.tcl (sem informações sobre tecnologia) read -dont_elaborate../leon/amba.vhd read -dont_elaborate../leon/target.vhd read -dont_elaborate../leon/device.vhd read -dont_elaborate../leon/config.vhd read -dont_elaborate../leon/sparcv8.vhd read -dont_elaborate../leon/iface.vhd read -dont_elaborate../leon/macro.vhd... read -dont_elaborate../leon/mcore.vhd read -dont_elaborate../leon/leon.vhd elaborate leon -architecture rtl

Síntese (cont.) Informações sobre tecnologia no início do arquivo –FPGA Xilinx XCV800 do kit da XESS set part v800hq240 set process 4 set wire_table xcv800-4_wc load_library xcv

Síntese (cont.) read -dont_elaborate./xsv800.vhd elaborate xsv800 -architecture rtl set xilinx_exec_path /home/lsc/xilinx/bin/sol set edif_write_arrays FALSE # Comandos para contornar incompatibilidades com a Xilinx set register2register 80 set input2register 80 set register2output 80 optimize.work.xsv800.rtl -target xcv -chip -delay -effort quick optimize_timing.work.xsv800.rtl # Output report_area xsv800.area -cell_usage -all_leafs report_delay xsv800.delay -num_paths 1 -critical_paths - clock_frequency auto_write -downto xcv xsv800.edf

Ferramentas da Xilinx Ferramentas de linha de comando: ngdbuild -p xcv800-4-hq240 -uc xsv800.ucf xsv800.edf xsv800.ngd map -p xcv800-4-hq240 -o xsv800.ncd xsv800.ngd xsv800.pcf par -w xsv800.ncd xsv800.ncd xsv800.pcf trce -skew xsv800.ncd xsv800.pcf -o xsv800.twr -xml xsv800.twx bitgen xsv800.ncd -d -w

Simulação Utilizando o ModelSim basta executar o comando make no diretório raiz da distribuição e chamar o simulador Diretórios: –tbench: Código VHDL do Test Bench do Leon –tsource: Código em C para teste do processador –leon: Descrição VHDL do processador

Kit da XESS Utilitários com interface gráfica para Windows e versões de linha de comando para Linux –gxsload ou xsload: Transferência de arquivos para a placa através da interface paralela –gxsetclk ou xsetclk: Altera a freqüência do clock da placa (entre 10KHz e 100MHz)

Características SPARC Conjunto maior de instruções –Mais instruções de salto –Instruções para ativar código de condição (cc) Suporte a regiões específicas de memória (ASI – Address Space Identifier) Imediato de 30 bits no CALL Big endian

Formato das Instruções

Instruções (notação) rs1 e rs2 são as origens rd é o registrador destino ADD rs1, rs2, rd rd = rs1 + rs2 Ex.: ADD %i3, %i4, %o0 ADD rs1, 100, rd rd = rs Ex.: ADD %i3, 100, %o0

Registradores Banco de registradores organizado em janelas r[24]..r[31] (in) r[16]..r[23] (local) r[08]..r[15] (out)r[24]..r[31] (in) r[16]..r[23] (local) r[08]..r[15] (out)r[24]..r[31] (in) r[16]..r[23] (local) r[08]..r[15] (out) r[0]..r[7] (global) CWP + 1 CWP Current Window CWP - 1 Restore, RETT SAVE, trap

Registradores (convenções) RegistradorUso %i7 = %r31Endereço de retorno %fp = %i6 = %r30Frame pointer %i0 = %r24Primeiro parâmetro de entrada e valor de retorno %o7 = %r15Endereço do CALL %sp = %o6 = %r14Stack pointer %o0 = %r8Primeiro parâmetro de saída e valor retornado %g7, %g6, %g5Reservados %g1 = %r1Valor temporário %g0 = %r00 (zero

Memória do Leon IntervaloTamanhoConteúdoControlador 0x – 0x1FFFFFFF512MbPROM Controlador de Memória 0x – 0x3FFFFFFF512MbI/O em Memória 0x – 0x7FFFFFFF1GbSRAM e/ou SDRAM 0x – 0x8FFFFFFF256MbRegistradores on-chipBarramento APB 0x – 0x9FFFFFFF256MbUnidade de depuraçãoDSU

Alguns Registradores on-chip EndereçoSignificado 0x Memory Configuration Register 1 0x Memory Configuration Register 2 0x Memory Configuration Register 3 0x AHB Status Register 0x Cache Control Register 0x Power-down Register 0x Leon Configuration Register 0x Timer 1 Counter Register 0x Timer 1 Reload Register 0x Timer 1 Control Register 0x UART 1 Data Register 0x UART 1 Status Register 0x UART 1 Control Register 0x CUART 1 Scalar Register

Leon Configuration Register BitSignificado 30Debug suport unit present 29SDRAM controller present 28:26Number of implemented Watchpoints 25UMAC/SMAC instruction implemented 24:20Number of register windows – 1 19:17Log 2 (instruction cache size) in Kb 16:15Log 2 (instruction cache line size) in 32bit words 14:12Log 2 (data cache size) in Kb 11:10Log 2 (data cache line size) in 32bit words 9UDIV/SDIV instruction implemented 8UMUL/SMUL instruction implemented 7Watchdog present 6Memory status and failing address register present 5:4FPU type (00 = none, 01 = Meiko) 3:2PCI core type (00 = none, 01 = InSilicon, 10 = ESA, 11 = Other) 1:0Write protection type (00 = none, 01 = standard)

Código Fonte Configuração –target.vhdtarget.vhd –device.vhddevice.vhd –config.vhdconfig.vhd Interfaces –iface.vhdiface.vhd Módulo principal –leon.vhd, leon_eth.vhd, leon_pci.vhd, leon_eth_pci.vhdleon.vhdleon_eth.vhd leon_pci.vhd leon_eth_pci.vhd Controlador de Memória –mctrl.vhdmctrl.vhd Processador –mcore.vhdmcore.vhd Unidade de Inteiros –iu.vhdiu.vhd Biblioteca de tecnologia –tech_virtex.vhd, tech_virtex2.vhdtech_virtex.vhd tech_virtex2.vhd AMBA –amba.vhdamba.vhd