Installation of Mico32/FPG-EYE development environment
From ErikaWiki
Line 48: | Line 48: | ||
= Evidence custom Mico32 components = | = Evidence custom Mico32 components = | ||
- | FPG-EYE demo application | + | FPG-EYE demo application uses a couple of custom Mico32 components: |
- | * | + | * Mico32_camera component (used to acquire frames from the cmos camera) |
- | * | + | * serial_io (used to access programmable DIP switches, LEDs, and peripherals power-off MOSFET switches) |
- | + | These components are available in [http://download.tuxfamily.org/erika/webdownload/fpg-eye/FPG-EYE_software_packet.zip FPG-EYE Software Packet], Mico32_camera as component binary, and serial_io directly as source code. | |
- | + | To use these components in your platform, they must be imported inside the LatticeMico System Development Tools. | |
== Import custom Mico32 components in LatticeMico System Development Tools == | == Import custom Mico32 components in LatticeMico System Development Tools == | ||
- | Open your LatticeMico System Development Tool and | + | Open your LatticeMico System Development Tool and on Available Components view click Import/Create custom Component button |
[[File:LatticeMicoSystem_import_button.png|center|thumb|200px| Available Components view Import/Create button.]] | [[File:LatticeMicoSystem_import_button.png|center|thumb|200px| Available Components view Import/Create button.]] | ||
- | and | + | Select radio button Open component XML and load the xml component description file from the FPG-EYE software packet directory (e.g. '''FPG-EYE_software_packet\wishbone_components\mico32_camera\mico32_camera.xml''') |
[[File:LatticeMicoSystem_import_evidence_camera_component.png|center|thumb|200px| Import evidence camera component]] | [[File:LatticeMicoSystem_import_evidence_camera_component.png|center|thumb|200px| Import evidence camera component]] | ||
- | In our version of LatticeMico System Development Tools sometimes | + | In our version of LatticeMico System Development Tools, sometimes for unknown reason, this procedure needs to be repeated more than once. |
[[File:LatticeMicoSystem_import_result.png|center|thumb|200px| Import Evidence custom components result]] | [[File:LatticeMicoSystem_import_result.png|center|thumb|200px| Import Evidence custom components result]] | ||
Revision as of 08:49, 18 October 2011
Contents |
Introduction
This page describes a set of steps needed to compile and deploy a platform on FPG-EYE board.
To begin with, following free license softwares from Lattice must be installed in your environment:
Note:
- Each version of ispLEVER requires corresponding version of LatticeMico System Development Tools.
- 64 bit OSes are not supported by ispLEVER (even though we were able to install it on a 64 bit Windows Vista/7, it is cumbersome).
- The ispVM System must be version 18.0 or superior.
The entire FPG-EYE software has been developed with ispLEVER 8.0 and correspondant LatticeMico System Development Tools. It is assumed that all the tools are installed in the same base directory %ispTOOLS%
In addition to lattice software you also need:
- Evidence RT-Druid software to run ERIKA Enterprise OS on Mico32 softcore
- Python installation with pySerial module to deploy your application on the FPG-EYE external flash, with Evidence's bootloader Mico32 application.
Standard Mico32 components Patches
During FPG-EYE software development a few bugs encountered in standard Mico32 components were corrected. Namely small bugs in following components:
- SPI Flash Controller (Component directory: spi_flash. Verilog files: spi_flash_intf.v wb_intf.v)
- Async SRAM Controller (Componet directory: asram_top. Verilog files: asram_core.v)
The above mentioned bugs were of ispLEVER version 8.0 components. We are not sure if the same have been fixed in later versions.
Patched verilog files can be found in FPG-EYE Software Packet. To apply these patches, you need to copy these new files in their respective components folders.
The base directory for all the components is:
%ispTOOLS%\micosystem\components
Patched verilog files for each component must be placed in:
%ispTOOLS%\micosystem\components\<Component directory>\rtl\verilog
to fix the known bugs.
Evidence custom Mico32 components
FPG-EYE demo application uses a couple of custom Mico32 components:
- Mico32_camera component (used to acquire frames from the cmos camera)
- serial_io (used to access programmable DIP switches, LEDs, and peripherals power-off MOSFET switches)
These components are available in FPG-EYE Software Packet, Mico32_camera as component binary, and serial_io directly as source code.
To use these components in your platform, they must be imported inside the LatticeMico System Development Tools.
Import custom Mico32 components in LatticeMico System Development Tools
Open your LatticeMico System Development Tool and on Available Components view click Import/Create custom Component button
Select radio button Open component XML and load the xml component description file from the FPG-EYE software packet directory (e.g. FPG-EYE_software_packet\wishbone_components\mico32_camera\mico32_camera.xml)
In our version of LatticeMico System Development Tools, sometimes for unknown reason, this procedure needs to be repeated more than once.
ERIKA and RT-Druid
FPG-EYE demo application is an ERIKA application, so to compile it you need ERIKA and RT-Druid softwares.
Python and pySerial module
To deploy an Mico32 application on FPG-EYE external flash Evidence provides a dedicated bootloader on FPG-EYE XP2 flash. To interact with this bootloader a python script is given with FPG_EYE Software Packet. This python script has been written and tested on a python 2.x environment.
Install Python on Windows
To install python on a windows machine you have two options, one native and one under cygwin. To install the native one just download the right installer here and run it. If you want the cygwin version just run the Setup application, reach the Select Packages dialog, open python category and select python package.
Install pySerial on Windows
If you have installed the native version of python just dowload the pySerial installer and run it. The easy way to install the pySerial module on cygwin is to install python setuptools first, running this script in a Cygwin shell and after the setuptool installation just type:
easy_install pyserial
Automatically setuptools will select the right version of the module for your environment.