OpenCores
URL https://opencores.org/ocsvn/ion/ion/trunk

Subversion Repositories ion

[/] [ion/] [trunk/] [src/] [readme.txt] - Rev 228

Go to most recent revision | Compare with Previous | Blame | View Log

Code samples:
=============

This directory contains a few test applications that can be simulated and run
on real hardware (except for the opcode test which can only be simulated). See
the readme file and the makefile for each program.

The makefiles have been tested with the CodeSourcery toolchain for windows (that
can be downloaded from www.codesourcery.com). They should work with other 
toolchains and have been occasionally tested with the Buildroot toolchain
for GNU/Linux.

Most makefiles have two targets, to create a simulation test bench and a 
synthesizable demo.

Target 'sim' will build a the simulation test bench package as vhdl file 
'/vhdl/tb/sim_params_pkg.vhdl'. This is the default test bench expected by the
simulation script '/sim/mips_tb.do'. The template used to build the package is 
file '/src/sim_params_template.pkg' and the tool used to insert the data into
the template is the python script '/src/bin2hdl.py'.

Target 'demo' will build a package for the synthesizable demo as file 
'/vhdl/demo/code_rom_pkg.vhdl', from template file '/code_rom_template.vhdl',
using the same python script. 

The build process will produce a number of binary files that can be run on the 
software simulator. A DOS BATCH file has been provided for each sample that 
runs the simulator with the proper parameters (swsim.bat).

The simulation log produced by the software simulator can be compared to the log
produced by Modelsim (the only hdl simulator supported yet); they should be
identical (but see notes on the project doc).



Support code library:
=====================

Many of the code samples use support code from an ad-hoc library included with 
the project (src/common/libsoc). Before making any of the samples you should 
make the library ('make' with no target). That command will build lib file 
'src/common/libsoc/libsoc.a'.



Building VHDL code from templates:
==================================

The python script 'bin2hdl.py' is used by all the samples to insert binary data 
on vhdl templates. 
Assuming you have Python 2.5 or later in your machine, call the script with 

    python bin2hdl.py --help

to get a short description and usage instructions.
There's a more detailed description in the project main doc (Well, I hope there 
is one by the time you read this, documentation has been falling behind lately).

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.