Skip to content

Make and use verilog test benches to test upcoming AMDC release (daisy chain) #505

@elsevers

Description

@elsevers

Context

Related Issues / PRs:

We are adding daisy chain capability to the AMDS link on the AMDC in #500. This is requiring an overhaul of the hardware (verilog). We need to test the new hardware via verilog testbenches to make sure all cases are properly handled.

Note that in #502, we have reason to believe that timeouts may not be properly handled for the case of only 1 channel of data being expected from an AMDS.

Approach

Create verilog test benches and check:

  1. Baseline case of 1x AMDS transmitting 8 channels
  2. Case of 3x AMDS's, each transmitting 8 channels
  3. Case of 3x 2S boards, each transmitting 2 channels
  4. Case of 1x AMDS transmitting only 1 channel
  5. These same cases but with incomplete data, parity errors, and delays that should cause timeouts.
  6. Other msc cases that come up

Carefully confirm that the timeouts and data corruption detection are working properly, both in the sense that we are detecting problems, but also in the sense that we are not adding additional delays by unnecessarily waiting for channels that we do not expect to have arrive.

Metadata

Metadata

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions