Toolchain for Lm32
[edit] GUIA DE INSTALACIÓN DE LAS HERRAMIENTAS PARA EL PROCESADOR LM32
En esta guia se describe paso a paso como instalar las herramientas de compilación (GNU-GCC-Lattice Mico32) para el procesador Lm32 de la empresa lattice, usando como fuentes las herramientas dadas en http://www.milkymist.org/mmsoc.html. También se instalaran los paquetes necesarios, para poder hacer uso de las herramientas de síntesis y simulación del procesador Lm32 postuladas aqui http://projects.qi-hardware.com/index.php/p/nn-usb-fpga/source/tree/master/lm32
REQUERIMIENTOS: Paquete ISE WebPack , GNU/Linux
[edit] 1. Compilador Cruzado GNU-GCC-Lattice Mico32
Para descargar los archivos fuentes agregamos como super usuario al final del archivo sources.list ubicado en :
/etc/apt/sources.list
La siguiente línea:
deb http://www.milkymist.org/debian/ ./
Si no funciona, pruebe estas adhiriendo estas dos lineas:
deb http://www.milkymist.org/debian/ ./ deb-src http://www.milkymist.org/debian/ ./
Ahora escribimos en una terminal:
sudo apt-get update
sudo apt-get install gcc-lm32 flterm
Luego de realizar estos pasos ya tendremos instalado el compilador cruzado
[edit] 2. Cadena de herramientas para síntesis y simulación
Descargamos los archivos fuentes desde la terminal escribiendo:
git clone git://projects.qi-hardware.com/nn-usb-fpga.git
Esto creara una carpeta en nuestro home/user llamada nn-usb-fpga con los archivos fuentes del procesador ubicados en:
nn-usb-fpga/lm32/logic/sack/ ,
Alli encontraremos un archivo Makefile con instrucciones para síntesis y simulación del procesador Lm32 implementado para la FPGA de SIE.
SINTESIS
Para sintetizar usando las herramientas de XILINX debemos, verificar primero que la ruta de instalación del programa ise se encuentre en la variable de entorno PATH para poder acceder a ellas desde terminal.
Abrimos el archivo .bashrc ubicado en nuestro home:
cd ~
sudo gedit .bashrc
Agregamos las siguientes líneas al final del archivo, inicando la ubicación de las herramientas y librerias de ise aqui tomamos la ruta de instalación por defecto de la version 10.1
export PATH=$PATH:/opt/Xilinx/10.1/ISE/bin/lin/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Xilinx/10.1/ISE/bin/lin/
Salvamos los cambios y cerramos, ahora nos ubicamos desde una terminal nueva en el directorio donde se encuentra el Makefile y sintetizamos asi:
cd ~/nn-usb-fpga/lm32/logic/sack/
make syn
SIMULACION
Las herramientas necesarias para la simulación son Icarus (Simulador de verilog), y Gtkwave (Entorno Grafico para visualizar formas de ondas), Para instalar Icarus entramos a http://www.milkymist.org/mmsoc.html y buscamos el link "Icarus Verilog 0.9.1 (TAR.GZ) (Sources)", descomprimimos el archivo descargado, y accedemos desde terminal a su ubicación dentro de la carpeta verilog-0.9.1 lo compilamos e instalamos asi:
./configure
make
sudo make install
Para instalar el entorno grafico escribimos
sudo apt-get install gtkwave
Finalmente para simular volvemos de nuevo al directorio del Makefile y utilizamos el comando view
cd ~/nn-usb-fpga/lm32/logic/sack/
make view
En caso de tener problemas de dependecias verificar que tenemos instalados los siguientes paquetes build-essential, flex, xz, bison, gperf asi:
sudo apt-get install <nombre_del_paquete_requerido>