Beruflich Dokumente
Kultur Dokumente
DOCUMENTAO!!!!
Ambiente de Software
Propsito
configurar o APEX Dados de configurao Quartus hexout flash (ocupa 1/4 da mem. Flash) GERMS flash Configurao de usurio x fbrica 512Kb - instrues do Nios e espao de dados no voltil 256Kb - configurao do usurio 256Kb - configurao de fbrica
APEX
pinos de expanso conectores PCM conectores SODIMM
Fluxo de projeto
Configurao do processador Biblioteca de perifricos Seleo dos perifricos
Hardware
Software
Generate
Cdigo executvel
Altera PLD
Processador Nios
Processador Nios
Processador Soft Core Configurvel (Firm Core) Arquitetura RISC 32-Bit Instrues de 16-Bit Maioria das instrues executadas em1 ciclo de clock Pipeline de 5 estgios Grande Banco de Registradores Internos 128, 256 or 512 registradores 32 registradores por janela Bloco de Dados Configurvel 16 bits 32 bits incluso ou no de multiplicao PBM
IRQ
SRAM
CPU
FLASH
Timer
Porta Serial
UART
Processador Nios
Faixa de endereamento 128 kbytes (16 bits) 4 Gbytes (32 bits) Desempenho : at 50 MIPS Otimizado para PLD APEX 13% do APEX EP20K200E - 16 bits 20% do APEX EP20K200E - 32 bits Freqncia Mxima de 50 MHz Endereo Base do Vetor de Excees 64 endereos de manipuladores de excees Nios 32 bits = 4 bytes Nios 16 bits = 2 bytes Operaes de deslocamento com nmero de ciclos parametrizvel 1, 3, 7, 15 or 31 Bits/Clock
Parmetros do Nios
Data Path (32 or 16) Tamanho do Barramento de Endereos (10 a 33-bits) Tamanho do Bloco de Registradores (128, 256 or 512) Endereo de Reset Endereo Base do Vetor de Excees
64 endereos de manipuladores de excees Nios 32 bits = 4 bytes Nios 16 bits = 2 bytes
Executa em 2 Clocks
Opes de Multiplicao
Software Usa a biblioteca matemtica do GNU MSTEP Hardware Multiplicador multiplicao de 1 bit por clock Aumento de ~ 4X sobre a rotina de multiplicao (software) MUL Hardware Multiplicador 16 x 16 32 em 2 Clocks
LEs Adicionais Ciclos de Clock 16x16>32 Ciclos de Clock 32x32>32
Multiplicador
0 +200 +400
80 18 2
250 80 16
Hardware Externo
Introduo
Objetivos do Avalon:
simplicidade operaes sncronas baixo consumo de rea (LE)
Funes do Barramento
Decodificao de endereo
Gerao de chip-select
Gerao de wait-state
Ciclos de clock extra
Controle de interrupo
Com prioridade
Sistema
I/O
Altera PLD
Avalon Bus
Nios CPU
I/O
Temporizao do Barramento
Sinais registered (sem atraso comb.)
Lgica
clock
D
clock
Lgica
Nios
Address, readn
Avalon
CS Data
NIOS HW
Hw
User-Defined Interface
Criao de portas para interface com outros perifricos
On-Chip & Off-Chip
I/O
Altera PLD
Avalon Bus
Nios CPU
I/O
Criando um Projeto
Agora vamos criar um projeto com uma interface para ligar um hardware do usurio Copie o projeto minimal_32 do diretrio de exemplos do excalibur para o seu diretrio Abra o seu projeto D um duplo click em no bloco nios_system_module
Interface do Usurio
4 1
2 3
1. Cdigo do usurio mais wrapper 2. Seleciona o top 3. Varre o VHDL para as portas - scan files 4. Manualmente escolhe o tipo da porta no barramento Avalor (Type) 5. Finish
Temporizao
Neste caso, 1 wait state
Gerar o hw
Finalizando a integrao
Atualize o smbolo do processador com os sinais recmcriados
selecione o smbolo e com o boto da direita update symbol or block crie um smbolo para o hw externo
Sintetizando
Sintetize o SOC!
Realizando o download
1
4 2 3