34 lines
2.0 KiB
Markdown
34 lines
2.0 KiB
Markdown
# Vortex Codebase
|
|
|
|
The directory/file layout of the Vortex codebase is as followed:
|
|
|
|
- `hw`:
|
|
- `unit_tests`: contains unit test for RTL of cache and queue
|
|
- `syn`: contains all synthesis scripts (quartus and yosys)
|
|
- `quartus`: contains synthesis scripts for Intel Quartus toolchain
|
|
- `opae`: contains synthesis scripts for Intel OPAE FPGA
|
|
- `simulate`: contains RTL simulator (verilator)
|
|
- `rtl`: contains rtl source code
|
|
- `cache`: contains cache subsystem code
|
|
- `fp_cores`: contains floating point unit code
|
|
- `interfaces`: contains code that handles communication for each of the units of the microarchitecture
|
|
- `libs`: contains general-purpose modules (i.e., buffers, encoders, arbiters, pipe registers)
|
|
- `driver`: contains driver software implementation (software that is run on the host to communicate with the vortex processor)
|
|
- `include`: contains vortex.h which has the vortex API that is used by the drivers
|
|
- `opae`: contains code for driver that runs on FPGA
|
|
- `rtlsim`: contains code for driver that runs on local machine (driver built using verilator which converts rtl to c++ binary)
|
|
- `simx`: contains code for driver that runs on local machine (vortex)
|
|
- `runtime`: contains software used inside kernel programs to expose GPGPU capabilities
|
|
- `include`: contains vortex API needed for runtime
|
|
- `linker`: contains linker file for compiling kernels
|
|
- `src`: contains implementation of vortex API (from include folder)
|
|
- `simX`: contains simX, the cycle approximate simulator for vortex
|
|
- `tests`: contains tests suite
|
|
- `runtime`: contains vortex runtime tests
|
|
- `driver`: contains vortex driver tests
|
|
- `opencl`: contains opencl tests and benchmarks
|
|
- `riscv`: contains official riscv tests
|
|
- `regression`: contains regression tests
|
|
- `vector`: tests for vector instructions (not yet implemented)
|
|
- `ci`: contain tests to be run during continuous integration (Travis CI)
|
|
- `miscs`: contains miscellaneous stuffs |