-
Notifications
You must be signed in to change notification settings - Fork 150
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1566 from antmicro/improve-063-gtp-fuzzer
063-gtp-common-conf: get features corresponding to IBUFDS -> GTP
- Loading branch information
Showing
3 changed files
with
112 additions
and
49 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
GTPE2\_COMMON Primitive Configuration fuzzer | ||
============================================ | ||
|
||
This fuzzer is used to document the parameters corresponding to the GTPE2\_COMMON primitive. | ||
|
||
It uses pre-built JSON containing a dictionary of parameters, each one with four attributes: | ||
|
||
- Type: one of Binary, Integer, String, Boolean. | ||
- Values: all possible values that this parameter can assume. In case of `BIN` types, the values list contains only the maximum value reachable. | ||
- Digits: number of digits (or bits) required to use a parameter. | ||
- Encoding: This is present only for `INT` types of parameters. These reflect the actual encoding of the parameter value in the bit array. | ||
|
||
E.g.: | ||
|
||
```json | ||
{ | ||
"PLL0_REFCLK_DIV": { | ||
"type": "INT", | ||
"values": [1, 2], | ||
"encoding": [16, 0], | ||
"digits": 5 | ||
} | ||
} | ||
``` | ||
|
||
In addition, there exist wires and PIPs that allow the connections of the `GTREFCLK` ports to clocks coming from the device fabric instead of the `IBUFDS_GTE2` primitive. | ||
|
||
In fact, if the clock comes from the device fabric, the physical `GTGREFCLK[01]` port is used instead of the `GTREFCLK[01]` one (even though the design's primitive port is always `GTREFCLK`). | ||
|
||
In the [User Guide (pg 27)](https://www.xilinx.com/support/documentation/user_guides/ug482_7Series_GTP_Transceivers.pdf), it is stated that the `GTGREFCLK[01]` port is used for "internal testing purposes". | ||
Using this port is highly discouraged to get the reference clock from the fabric, as the recommended way is to get the clock from an external source using the `IBUFDS_GTE2` primitive. | ||
|
||
Therefore, in addition to the parameters, `IN_USE` and `ZINV\INV` features, this fuzzer documents also the `GTREFCLK[01]_USED` and `BOTH_GTREFCLK[01]_USED` features. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters