new-sonar/gateware/liteeth/doc/_build/html/_sources/ethphy.rst.txt

139 lines
5.3 KiB
ReStructuredText

ETHPHY
======
Register Listing for ETHPHY
---------------------------
+----------------------------------------------------------+---------------------------------------------+
| Register | Address |
+==========================================================+=============================================+
| :ref:`ETHPHY_CRG_RESET <ETHPHY_CRG_RESET>` | :ref:`0x00001000 <ETHPHY_CRG_RESET>` |
+----------------------------------------------------------+---------------------------------------------+
| :ref:`ETHPHY_RX_INBAND_STATUS <ETHPHY_RX_INBAND_STATUS>` | :ref:`0x00001004 <ETHPHY_RX_INBAND_STATUS>` |
+----------------------------------------------------------+---------------------------------------------+
| :ref:`ETHPHY_MDIO_W <ETHPHY_MDIO_W>` | :ref:`0x00001008 <ETHPHY_MDIO_W>` |
+----------------------------------------------------------+---------------------------------------------+
| :ref:`ETHPHY_MDIO_R <ETHPHY_MDIO_R>` | :ref:`0x0000100c <ETHPHY_MDIO_R>` |
+----------------------------------------------------------+---------------------------------------------+
ETHPHY_CRG_RESET
^^^^^^^^^^^^^^^^
`Address: 0x00001000 + 0x0 = 0x00001000`
.. wavedrom::
:caption: ETHPHY_CRG_RESET
{
"reg": [
{"name": "crg_reset", "bits": 1},
{"bits": 31},
], "config": {"hspace": 400, "bits": 32, "lanes": 4 }, "options": {"hspace": 400, "bits": 32, "lanes": 4}
}
ETHPHY_RX_INBAND_STATUS
^^^^^^^^^^^^^^^^^^^^^^^
`Address: 0x00001000 + 0x4 = 0x00001004`
.. wavedrom::
:caption: ETHPHY_RX_INBAND_STATUS
{
"reg": [
{"name": "link_status", "bits": 1},
{"name": "clock_speed", "bits": 1},
{"name": "duplex_status", "bits": 1},
{"bits": 29}
], "config": {"hspace": 400, "bits": 32, "lanes": 4 }, "options": {"hspace": 400, "bits": 32, "lanes": 4}
}
+-------+---------------+-----------------------------------+
| Field | Name | Description |
+=======+===============+===================================+
| [0] | LINK_STATUS | |
| | | |
| | | +---------+-------------+ |
| | | | Value | Description | |
| | | +=========+=============+ |
| | | | ``0b0`` | Link down. | |
| | | +---------+-------------+ |
| | | | ``0b1`` | Link up. | |
| | | +---------+-------------+ |
+-------+---------------+-----------------------------------+
| [1] | CLOCK_SPEED | |
| | | |
| | | +----------+--------------------+ |
| | | | Value | Description | |
| | | +==========+====================+ |
| | | | ``0b00`` | 2.5MHz (10Mbps). | |
| | | +----------+--------------------+ |
| | | | ``0b01`` | 25MHz (100MBps). | |
| | | +----------+--------------------+ |
| | | | ``0b10`` | 125MHz (1000MBps). | |
| | | +----------+--------------------+ |
+-------+---------------+-----------------------------------+
| [2] | DUPLEX_STATUS | |
| | | |
| | | +---------+--------------+ |
| | | | Value | Description | |
| | | +=========+==============+ |
| | | | ``0b0`` | Half-duplex. | |
| | | +---------+--------------+ |
| | | | ``0b1`` | Full-duplex. | |
| | | +---------+--------------+ |
+-------+---------------+-----------------------------------+
ETHPHY_MDIO_W
^^^^^^^^^^^^^
`Address: 0x00001000 + 0x8 = 0x00001008`
.. wavedrom::
:caption: ETHPHY_MDIO_W
{
"reg": [
{"name": "mdc", "bits": 1},
{"name": "oe", "bits": 1},
{"name": "w", "bits": 1},
{"bits": 29}
], "config": {"hspace": 400, "bits": 32, "lanes": 4 }, "options": {"hspace": 400, "bits": 32, "lanes": 4}
}
+-------+------+-------------+
| Field | Name | Description |
+=======+======+=============+
+-------+------+-------------+
+-------+------+-------------+
+-------+------+-------------+
ETHPHY_MDIO_R
^^^^^^^^^^^^^
`Address: 0x00001000 + 0xc = 0x0000100c`
.. wavedrom::
:caption: ETHPHY_MDIO_R
{
"reg": [
{"name": "r", "bits": 1},
{"bits": 31}
], "config": {"hspace": 400, "bits": 32, "lanes": 4 }, "options": {"hspace": 400, "bits": 32, "lanes": 4}
}
+-------+------+-------------+
| Field | Name | Description |
+=======+======+=============+
+-------+------+-------------+