Skip to content

Commit d9780e8

Browse files
committed
fix
1 parent 77f1ef4 commit d9780e8

File tree

2 files changed

+62
-1
lines changed

2 files changed

+62
-1
lines changed

docs/fabric/MAS_router/mas_arbiter.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
Micro-Architecture Specification (MAS) for Arbiter Module
2+
# 1. Overview
3+
Brief Description:
4+
This document details the micro-architecture of an Arbiter module designed to manage multiple client requests and select a winner based on a predefined arbitration scheme.
5+
6+
Purpose and Functionality:
7+
The Arbiter module is used to arbitrate among NUM_CLIENTS clients. It determines which client gains access based on the input signals.
8+
9+
# 2. Block Diagram
10+
[Placeholder for Block Diagram]
11+
Insert High-Level Block Diagram of the Arbiter here
12+
13+
# 3. Interfaces
14+
Signal Descriptions:
15+
16+
| Signal Name | Direction | Description |
17+
|------------------|-----------|---------------------------------------------|
18+
| clk | Input | Clock signal. |
19+
| rst | Input | Reset signal. |
20+
| valid_candidate | Input | Array indicating valid candidates. |
21+
| winner_dec_id | Output | Decision array indicating the winner. |
22+
23+
# 4. Functional Description
24+
Operational Modes:
25+
26+
The module arbitrates among NUM_CLIENTS clients.
27+
It uses the valid_candidate array to determine which clients are currently requesting access.
28+
Data Flow Description:
29+
30+
The arbiter prioritizes clients based on a fixed scheme.
31+
Upon determining a winner, the winner_dec_id signal is asserted corresponding to the winning client.
32+
# 5. Configuration and Control
33+
Configuration Registers:
34+
35+
NUM_CLIENTS: Defines the number of clients participating in arbitration.
36+
# 6. Performance and Characteristics
37+
Throughput:
38+
Dependent on the clock frequency.
39+
40+
Latency:
41+
Typically one clock cycle for arbitration decision.
42+
43+
# 7. Error Handling and Exceptions
44+
The module does not explicitly include error handling mechanisms in the provided RTL. Design-specific error handling should be considered.
45+
# 8. Testing and Verification
46+
Test Plan Overview:
47+
48+
Verify correct arbitration among multiple clients.
49+
Test for edge cases where multiple clients request access simultaneously.
50+
Verification Strategies:
51+
52+
Simulate with varying numbers of clients.
53+
Stress test with simultaneous requests.
54+
55+
# 9. Change Log
56+
Revision History:
57+
58+
Initial version: [Date]
59+
Author Information:
60+
61+
[Author Name]

docs/fabric/MAS_router/mas_fifo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ The FIFO module is intended for buffering data. It supports basic operations suc
99
Placeholder for Block Diagram
1010
[Insert High-Level Block Diagram of the FIFO here]
1111
![2024-01-31-11-44-31.png](/snapshots/2024-01-31-11-44-31.png)
12-
![test2.png](/drawio/test2.png)
12+
![test2.png](/drawio/test2.jpg)
1313

1414
# Configuration FIFO parameters:
1515
DATA_WIDTH: Defines the width of the data in the FIFO.

0 commit comments

Comments
 (0)