GithubHelp home page GithubHelp logo

johnsbrew / chisel-testers Goto Github PK

View Code? Open in Web Editor NEW

This project forked from freechipsproject/chisel-testers

0.0 0.0 0.0 972 KB

Provides various testers for chisel users

Scala 91.67% Makefile 0.38% C++ 7.88% Verilog 0.08%

chisel-testers's Introduction

Chisel Testers

This a layer of test harnesses for Chisel

Chisel is an open-source hardware construction language developed at UC Berkeley that supports advanced hardware design using highly parameterized generators and layered domain-specific hardware languages.

Visit the community website for more information.

The Chisel Tutorials provide many examples of how to use these harnesses

The Available Harnesses

There are currently three harnesses available. All make it easy to construct a circuit, implemented as chisel Module, named the device under test (or DUT) by specifying what goes into the module's inputs and what is expected to come out of the module's outputs. The types of IO ports used by the circuit determines which tester to use.

PeekPokeTester

Tests the DUT by poking values into its inputs and testing values of its outputs. PeekPokeTester is the most flexible tester, peeks and pokes are done in a software based model. Peeking can be done at any time, and the value returned can be tested and used to take different branches during the text execution. The PeekPokeTester supports two separate backends.

  1. The Firrtl Interpreter: a lightweight scala based low firrtl execution engine, with rapid spinup but slower overall speed.
  2. A verilator backend: which builds a c++ compiled circuit emulation. Faster execution, but with a longer spinup.

This is in contrast to the following hardware oriented testers, in which a testing circuit is built that drives the circuit, or device under test (DUT) from value vectors for each input. Testing the outputs each cycle against a separate set of value vectors for each output.

For a longer description, see the Using the PeekPokeTester.

SteppedHWIOTester

Tests the DUT by poking values into its inputs and testing values of its outputs. Tests are executed in a fixed order and at a fixed cycle

For a long description see the Using the Hardware IO Testers

OrderedDecoupledHWIOTester

Tests a DUT that uses decoupled flow control for its inputs and outputs. Tests values are applied in order mediated by the ready/valid controls. The implementer does not have to manage this flow control.

chisel-testers's People

Contributors

ucbjrl avatar chick avatar donggyukim avatar dt27182 avatar shunshou avatar grebe avatar jackkoenig avatar ducky64 avatar albert-magyar avatar seldridge avatar oharboe avatar diningyo avatar sequencer avatar colin4124 avatar jimmysitu avatar hngenc avatar martoni avatar edcote avatar yqszxx avatar azidar avatar

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.