Lição do Teach
Nios V na DE1-SoC (1/5): primeira execução
Abra o CodeIDE Nios V na DE1-SoC, execute o programa pronto hello.elf e registre no terminal JTAG UART evidências da placa real.
Entre com uma conta de professor para preparar uma sessão. Os estudantes entram com um código da turma.
Ainda não tem uma conta na LabsLand? Criar sua conta de professor
Objetivos de aprendizagem
Executar um ELF pronto no sistema Nios V fixo da DE1-SoC.
Identificar o Nios V como uma CPU soft-core RISC-V implementada dentro da FPGA.
Distinguir a imagem fixa do sistema FPGA do programa ELF do estudante.
Usar o terminal JTAG UART como saída observável do programa.
Visualização da atividade do estudante
Conteúdo da atividade
Apenas visualização. Em uma sessão de aula, os estudantes podem preencher respostas e entregar o trabalho ao professor.
Sistema FPGA fixo, programa enviado
8 min
Objetivo desta primeira execução: comprovar que um programa conhecido pode ser executado em um processador Nios V real dentro da FPGA da DE1-SoC e entender quais partes do sistema são fixas antes de começar a editar código nas próximas lições.
Uma FPGA é um chip reconfigurável: sua lógica interna pode ser configurada para funcionar como um sistema digital. Neste laboratório, a FPGA da DE1-SoC já está configurada com o FPGAcademy DE1-SoC Computer with Nios V. Nesta oficina, você não enviará uma imagem de hardware .sof personalizada.
RISC-V é uma arquitetura de conjunto de instruções: uma especificação das instruções, dos registradores e do modelo básico de execução que um processador compatível compreende. O Nios V é a implementação soft-core da Intel de um processador RISC-V em FPGA. Soft-core significa que a CPU é construída com a lógica da FPGA, em vez de ser um chip de processador fixo separado.
Nesta lição, você controla o programa de software selecionado: um arquivo ELF já compilado para o Nios V. O .sof descreve o sistema de hardware na FPGA — CPU, memória e periféricos mapeados em memória. O .elf contém as instruções e os dados que a CPU Nios V executa dentro desse sistema de hardware já configurado.
Você não editará código-fonte nesta primeira lição. A edição começa na Lição 2. Aqui, o objetivo é relacionar o arquivo enviado à evidência observada: o terminal JTAG UART deve imprimir a mensagem do programa.
O hello.elf pronto vem de um pequeno programa como este:
#include <stdio.h>
int main(void) {
printf("Hello from Nios V\n");
while (1) {
}
}
Referências úteis:
- Processador Intel Nios V
- Visão geral de FPGAs e processadores embarcados da Intel
- FPGAcademy DE1-SoC Computer with Nios V
- RISC-V International: sobre o RISC-V
Você não precisa ler todas essas referências antes de continuar. Nesta primeira lição, as explicações anteriores são o conteúdo necessário. Os links permitem verificar como o Nios V, o RISC-V e o sistema DE1-SoC da FPGAcademy se encaixam em um ecossistema maior.
A imagem de hardware .sof fixa é preparada no servidor. Nesta oficina, sua tarefa é selecionar, compilar ou enviar o programa .elf e observar seu funcionamento pelo terminal e pelos periféricos da placa.
Com suas palavras, qual é a diferença entre a imagem fixa do sistema .sof e o programa .elf neste laboratório?
O programa não movimenta motores nem desenha gráficos. Qual saída você deve procurar para saber que o hello.elf foi executado?
Execute hello.elf
12 min
Abra o laboratório de envio do Nios V e use o programa hello.elf já carregado. Essa entrada permite selecionar e executar um arquivo ELF, mas não mostra nem edita seu código-fonte.
Abra a entrada
Nios V for DE1-SoC, destinada apenas ao envio.Selecione
hello.elfcomo programa Nios V caso ainda não esteja selecionado.Clique em
Verify program(Verificar programa).Clique em
Upload to FPGA(Enviar para a FPGA).Aguarde a sessão da placa e o console JTAG UART.
Procure pelo menos uma linha
Hello from Nios Vno console.
Depois de executar hello.elf, registre o arquivo selecionado, o texto exato observado no console, se a sessão da placa abriu e qualquer atraso ou problema.
| ELF selecionado | Texto observado no console | A sessão da placa abriu? | Problema ou atraso observado |
|---|---|---|---|
Registre a linha exata do console JTAG UART que comprova a execução do ELF. A linha esperada é Hello from Nios V. Se ela aparecer mais de uma vez, registre esse fato também; isso pode ocorrer quando o terminal se reconecta ou o programa é executado novamente.
Mapa do fluxo de trabalho
10 min
O fluxo destinado apenas ao envio tem várias etapas. Cada uma existe por um motivo.
Qual sequência descreve melhor o que aconteceu?
Este laboratório permite compilar, enviar e executar, além de observar o terminal e o hardware. Que tipo de suporte à depuração não faz parte do fluxo atual?
Síntese final
5 min
Escreva um resumo de três frases do fluxo do laboratório: qual sistema de hardware foi usado, qual arquivo você executou e como observou o resultado.
Transforme esta visualização em uma sessão de aula
Continue para o LabsLand Teach para usar esta lição com seus estudantes e conferir o acesso disponível para sua conta.
Ainda não tem uma conta na LabsLand? Criar sua conta de professor