Skip to content

cornell-brg/blimp

Repository files navigation

BLIMP

BRG’s Luculently Interfaced Modular Processor

A tech-inspired blimp

Documentation

The main documentation for Blimp can be found on the GitHub Pages

Testing

Blimp uses CMake as its build system generator. To begin testing, first generate the build system using CMake, optionally specifying either Verilator or VCS as the Verilog compiler (Blimp uses Verilator by default)

mkdir build
cd build
cmake .. -DCMAKE_Verilog_COMPILER_ID=Verilator

From there, users can run any individual test by specifying its name as a target:

make ALU_test

Known tests can be listed with the list target.

Tests for a specific top-level version N can be run with the target check-vN

make check-v7

Finally, all tests can be run with the check target

make check

Running tests as shown above can often be slow; users may additionally want to specify a level of parallelism (ex. make -j ALU_test) or specify a different backend when generating the build system (ex. cmake .. -GNinja)

Simulation

Simulation programs are kept in the app directory. A given program can be built natively by with the target app-<program>-native, which will build <program>-native in the app directory

make app-hello-native
./app/hello-native

Programs can also be built for RISCV by omitting the native suffix

make app-hello

These can then be run using the functional-level simulator, specifying the path to the ELF file

make fl-sim
./fl-sim app/hello

They can also be run on a specific Blimp version by making the corresponding simulator

make v7-sim
./v7-sim +elf=app/hello

About

BRG’s Luculently Interfaced Modular Processor

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •