Instalación de Herramientas para FPGAs ECP5 e ICE40 en CONDA

Conda permite administrar las herramientas de desarrollo de manera sencilla ya que en éste caso nos ofrece los precompilados de Yosys, nextpnr, compiladores y otras herramientas útiles, que en otros casos deberían ser compiladas desde las fuentes, lo que requiere más recursos en tiempo y capacidad de máquina.
Los comandos a usar son sencillos tanto para instalar, actualizar y ejecutar entornos. A continuación se explica los pasos de instalación de las herramientas.
Herramientas a instalar
Pasos de instalación
1. Instalación de MINICONDA
Nota: No existe problema si en su PC tiene una versión de python3 instalada.
1.1 Descargar miniconda de éste link
![]()
1.2 Instalación de MINICONDA
Ejecute el siguiente comando y siga las instrucciones del instalador
bash Miniconda3-latest-Linux-x86_64.sh
nota 1: el directorio de instalación de miniconda por default será /home/user/miniconda3
nota 2: Ésta instalación afecta directamente al bashrc ubicado en ~/.bashrc,
se recomienda revisar el estado de éste archivo donde miniconda3 agregó las líneas al final
Recomendación: Desactive el lanzador automático del entorno base de miniconda, la activación manual le permitirá un mayor control sobre las acciones a realizar a futuro desde el bash.
conda config --set auto_activate_base false
1.4 Actualizar miniconda
conda update -n base -c defaults conda
1.5 Creación de entorno
Un entorno permite que conda presente las herramientas según nuestros intereses; por ejemplo si se crea el entorno FPGA y se instala las herramientas deseadas, cada vez que active ese entorno, conda agregará al PATH los binarios y librerías que se ha instalado para tal fin; es una manera de organizar nuestros recursos.
Nota: en realidad conda crea un entorno base así que sino desea crear un entorno
podría saltarse éste paso teniendo encuenta éste hecho.
Ejecute el siguiente comando para crear el entorno FPGA:
conda create --name fpga
Para activar el entorno creado ejecute el siguiente comando:
conda activate fpga
2. Instalación de NEXTPNR, YOSYS y cross-compiladores
conda install -c "litex-hub" nextpnr-ecp5
conda install -c "litex-hub" nextpnr-ice40
conda install -c "litex-hub/label/ci-master-1188059080" yosys
conda install -c litex-hub gcc-riscv32-elf-newlib
conda install -c litex-hub gcc-lm32-elf-newlib
conda install -c litex-hub iceprog
Verificación de herramientas instaladas
yosys -V
nextpnr-ecp5 -V
riscv32-unknown-elf-gcc -v