Giter Site home page Giter Site logo

hoangt / nux Goto Github PK

View Code? Open in Web Editor NEW

This project forked from electronicvisions/nux

0.0 2.0 0.0 2.92 MB

A synthesizable RISC processor implementing the Power ISA

License: Other

Makefile 0.88% SystemVerilog 50.12% Tcl 0.38% Shell 0.63% C 10.51% C++ 0.35% Stata 33.84% Python 0.55% Assembly 2.73%

nux's Introduction

This repository contains the Nux Processor developed during the Brain-i-Nets, BrainScaleS, and HBP EU research projects. It is a small RISC processor implementing the Power ISA 2.06 (32 bit embedded implementation). It also has a non-standard SIMD processing unit for 8 and 16-bit fixed-point arithmetics. The design is open source and provided under the Solderpad license. For details see the LICENSE and NOTICE files.

Documentation

Documentation about the design is provided in

  • doc/guide contains a user guide as LaTeX document.
  • The PhD thesis of Simon Friedmann [1] documents internals.

Requirements for simulation

The processor was designed using SystemVerilog. It uses components from the Synopsys DesignWare library (FIFOs and some arithmetic functions. Replacements are welcome!). The current simulation flow is based on make and uses ModelSim. It should be easily adaptable to other simulators.

The project uses OMNIBUS as bus interface. Use the mr tool to set it up:

$ mr checkout

You may have to add the local .mrconfig file to your global $HOME/.mrtrust file. You can then update dependencies using

$ mr update

Alternatively you can directly clone the OMNIBUS git repository. Have a look into the .mrconfig file for the exact command line.

Directory structure

  • doc/ contains documentation
  • omnibus/ OMNIBUS repository checked out using mr tool.
  • src/ HDL source files.
  • support/ Tools and stuff to work with the design and its source.
  • target/ Run directories to implement the processor for a given target e.g. a certain FPGA platform.
  • test/ Sources required for tests of the design, e.g. C and assembly code for test programs.
  • verification/ Run directories for simulation.

How to simulate

Go to the simulation run directory in verification/sim_model for ModelSim and run:

$ make

This will compile all relevant source files. Make sure, that the $SYNOPSYS environment variable points to an installation directory, where a DesignWare installation can be found.

What is compiled can be configured through the .config file in the main directory. The defaults should be ok.

To start simulations, TCL scripts are provided as sim_*.do files for ModelSim. A useful first simulation is the Program Level Test:

$ vsim -c -do sim_plt.do

This will execute a number of test programs and report if any errors are detected.

See the user guide for more detailed descriptions of what simulations are available.

References

[1] http://archiv.ub.uni-heidelberg.de/volltextserver/15359/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.