TerasIC DE1-SoC for Intel FPGA University Program
O Kit de Desenvolvimento (Development Kit) DE1-SoC apresenta uma plataforma robusta de design de hardware construída em torno do FPGA System-on-Chip (SoC) da Altera, que combina núcleos embarcados Cortex-A9 dual-core com lógica programável para máxima flexibilidade de design, aproveitando poder da reconfigurabilidade aliada a um sistema de processador de alto desempenho e baixo consumo de energia.
O SoC da Altera integra, como mostrado na Figura 1, um sistema de processador rígido ( HPS - Hard Processor System) baseado em ARM, composto por processador, periféricos e interfaces de memória, perfeitamente integrados à estrutura FPGA por meio de um backbone de interconexão de alta largura de banda.
Figura 1: Diagrama de blocos - DE1-Soc DevKit |
---|
![]() |
Fonte: DE1-SoC Development and Education Kit |
Especificações
- FPGA Device
- Cyclone V SoC 5CSEMA5F31C6 Device
- Dual-core ARM Cortex-A9 (HPS)
- 85K Programmable Logic Elements
- 4,450 Kbits embedded memory
- 6 Fractional PLLs
- 2 Hard Memory Controllers
- Configuration and Debug
- Serial Configuration device – EPCS128 on FPGA
- On-Board USB Blaster II (Normal type B USB connector)
- Memory Device
- 64MB (32Mx16) SDRAM on FPGA
- 1GB (2x256Mx16) DDR3 SDRAM on HPS
- Micro SD Card Socket on HPS
- Communication
- Two USB 2.0 Host Ports (ULPI interface with USB type A connector) on HPS
- UART to USB (USB Mini B connector)
- 10/100/1000 Ethernet
- PS/2 mouse/keyboard
- IR Emitter/Receiver
- Connectors
- Two 40-pin Expansion Headers (voltage levels: 3.3V)
- One 10-pin ADC Input Header
- One LTC connector (One Serial Peripheral Interface (SPI) Master ,one I2C and one GPIO interface )
- ADC
- Sample rate: 500 KSPS
- Channel number: 8
- Resolution: 12 bits
- Analog input range : 0 ~ 4.096 V
- Switches, Buttons and Indicators
- 4 User Keys (FPGA x4)
- 10 User switches (FPGA x10)
- 11 User LEDs (FPGA x10 ; HPS x 1)
- 2 HPS Reset Buttons (HPS_RST_n and HPS_WARM_RST_n)
- Six 7-segment displays
- Sensors
- G-Sensor on HPS
- Power
- 12V DC input
Layout
A Figura 2 ilustra a distribuição na parte superior da placa de desenvolvimento dos dispositivos associados ao FPGA e ao HPS. Os diversos dispositivos da placa e os conectores podem ser vistos na distribuição apresentada na Figura 2.
Figura 2: Layout superior da placa DE1-SoC |
---|
![]() |
Fonte: DE1-SoC Development and Education Kit |
Na parte inferior da placa de desenvolvimento é possível configurar o FPGA para operar em modo EPCS (Erasable Programmable Configurable Serial) ou HPS (Hard Processor System) através das chaves de seleção MSEL[4:0]
implementadas na chave SW10
, como ilustrado na Figura 3.
Figura 3: Layout inferior da placa DE1-SoC |
---|
![]() |
Fonte: DE1-SoC Development and Education Kit |
Obs: Note que a chave na posiçõa ON
corresponde ao valor lógico 0
.
MSEL[4:0] | Configure Scheme | Description |
---|---|---|
10010 | AS | FPGA configured from EPCS (default) |
01010 | FPPx32 | FPGA configured from HPS software: Linux |
00000 | FPPx16 | FPGA configured from HPS software: U-Boot, with image stored on the SD card, like LXDE Desktop or console Linux with frame buffer edition. |
Versões do kit didático
Existem algumas revisões no projeto e documentação da placa de desenvolvimento. Para identificar a versão que estamos utilizando, basta identificar, na parte inferior da placa, o número de série, conforme ilustrado na Figura 4.
Figura 4: Identificando a versão da placa |
---|
![]() |
Fonte: DE1-SoC Development and Education Kit |
Conteúdo do kit
A Figura 5 ilustra o conteúdo do kit didático DE1-SoC, que será utilizado durante o desenvolvimento das atividades deste componente curricular.
Figura 5: Conteúdo do kit |
---|
![]() |
Fonte: DE1-SoC Development and Education Kit |
Software
O software de desenvolvimento utilizado para projetos com a placa DE1-SoC é o Intel® Quartus® Prime Lite Edition Design Software, aqui em sua versão 24.1.
Ao baixar o instalador recomendado, execute o arquivo qinst-lite-windows-24.1std-1077.exe
no Windows ou qinst-lite-linux-24.1std-1077.run
no Linux.
Ao abrir a janela do instalador, conforme Figura 6, selecione os pacotes pertinentes à sua aplicação. Aqui são selecionados pacotes para os dispositivos Cyclone® V
e MAX® II
.
Figura 6: Instalação do Quartus Prime Lite Edition |
---|
![]() |
Fonte: Intel® Quartus® Prime Lite Edition Design Software |
Após a instalação a ferramenta está pronta para o uso.
Figura 7: Quartus Prime Lite Edition |
---|
![]() |
Fonte: Autor |
Comunicação com a placa de desenvolvimento
1) Verifique a fonte de alimentação e conecte-a entre a placa e a tomada;
2) Conecte o cabo USB entre a placa e o computador;
3) Pressione o botão vermelho para ligar a placa;
4) No Windows, abra o Gerenciador de dispositivos
e verifique se o seguinte dispositivo foi reconhecido:
- JTAG cables
- Altera USB-Blaster II (JTAG interface)
- Altera USB-Blaster II (System console interface)
- Caso apareça
Dispositivo desconhecido
- Verifique se o driver está na pasta do quartus:
C:\intelFPGA_lite\XX.X\quartus\drivers\usb-blaster-ii
, onde oXX.X
é a versão instalada. - Se não houver o arquivo do driver na pasta de instalação do Quartus, baixe o driver direto do site e instale-o.
- Verifique se o driver está na pasta do quartus:
4) No Linux, não há necessidade de instalar driver para realizar download via USB-BlasterTM e USB-BlasterII, mas necessita de permissão de administrador.
- Com privilégio de administrador, via
sudo
por exemplo, crie o novo arquivo/etc/udev/rules.d/92-usbblaster.rules
, contendo:
# USB-Blaster
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6001", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6002", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6003", MODE="0666"
# USB-Blaster II
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6010", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6810", MODE="0666"
- Caso tenha problemas, consulte Intel® FPGA Download Cable (formerly USB-Blaster) Driver for Linux.
Obs: A distribuição de GNU/Linux aqui utilizada é Debian 12
.