Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setup unit tests with cocotb #2

Closed
9 tasks done
cospan opened this issue Mar 7, 2015 · 1 comment
Closed
9 tasks done

Setup unit tests with cocotb #2

cospan opened this issue Mar 7, 2015 · 1 comment

Comments

@cospan
Copy link
Contributor

cospan commented Mar 7, 2015

Cocotb is tool that allows users to write test benches for HDL in Python. It is much easier to write extensive tests with Python than with verilog.

The following tests should be written an exercise before the sata core is verified:

  • Bootup: The system starts in a default state How is this defined?
  • Single Word Write: Write a single piece of data to the SATA stack side: Expected Results: observe the correct address and data on the simulated hard drive
  • Single Word Read: Read a single piece of data from the SATA stack: Expected Results: observe the correct address on the hard drive side and pass a piece of data through the simulated hard drive and read it from the SATA stack
  • Large Write: how big? Send a stream of data from the SATA stack side to the simulated hard drive side: Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
  • Large Read: how big? Read a stream of data from the SATA stack side: Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
  • Large Write With Easy Back Pressure: how big? Send a stream of data from the SATA stack side to the simulated hard drive side with simulated stall commands to slow the transfer of data: Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
  • Large Read With Easy Back Pressure: how big? Read a stream of data from the SATA stack side with simulated stall commands to emulate back preassure: Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
  • Large Write With Hard Back Pressure: how big? Send a stream of data from the SATA stack side to the simulated hard drive side emulate the challenging back pressure (every other clock, ever two clock, etc..): Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
  • Large Read With Hard Back Breassure: how big? Read a stream of data from the SATA stack side emulate the challenging back pressure (every other clock, ever two clock, etc..): Expected Results: observe the correct address behavior (starting at every sector) and the correct data flowing through.
@cospan
Copy link
Contributor Author

cospan commented Mar 25, 2015

The cocotb test bench was the right choice, it has allowed me to try new tests very easily. I've finished all the above tests

@cospan cospan closed this as completed Mar 25, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant