Home

Awesome

General Information

New release of library to enhance readibility and unifying code through all files, new documentation organization. This version is not backward compatible but a script is given to help user to adapt code to new release.

Maintainer

Benoît Stef [benoit.stef@psi.ch]

Authors

License

This library is published under PSI HDL Library License, which is LGPL plus some additional exceptions to clarify the LGPL terms in the context of firmware development.

Detailed Documentation

See Documentation

Changelog

See Changelog

What belongs into this Library

This library contains general VHDL code that is not very application specific and can be reused easily. Code must be written with reuse in mind. All important settings must be implemented as Generics (e.g. port widths, FIFO depths, etc,).

It is suggested to use one .vhd file per Package or Entity.

Examples for things that belong into this library:

What does not belong into this Library

Tagging Policy

Stable releases are tagged in the form major.minor.bugfix.

<!-- DO NOT CHANGE FORMAT: this section is parsed to resolve dependencies -->

Dependencies

The required folder structure looks as given below (folder names must be matched exactly).

Alternatively the repository psi_fpga_all can be used. This repo contains all FPGA related repositories as submodules in the correct folder structure.

<!-- END OF PARSED SECTION -->

Dependencies can also be checked out using the python script scripts/dependencies.py. For details, refer to the help of the script:

python dependencies.py -help

Note that the dependencies package must be installed in order to run the script.

Simulations and Testbenches

For everything that is non-trivial, self-checking testbenches shall be provided to allow easy and safe reuse of the library elements.

A regression test script for Modelsim is present. New Testbenches must therefore be added to the configuration of the regression test script sim/config.tcl.

To run the regression test, execute the following command in modelsim from within the directory sim

source ./run.tcl

The regression tests can also be ran using GHDL. To do so, GHDL must be installed and added to the path and a TCL interpreter must be installed. In the TCL interpreter, execute the following command within the directory sim:

source ./runGhdl.tcl