Fill 1000BASE-T from IEEE 802.3-2012 Section Three Clause 40 (2.78.0).

Cable 100 Ω / 100 m / 570 ns / 50 ns skew stay CABLE. MDI 16 dB and 0.67 V are PHY. L2 PCB Zdiff UNKNOWN. 1000BASE-X 1000 Mb/s from Clause 36.
This commit is contained in:
2026-09-22 18:03:44 +02:00
parent 8a93ffc1c5
commit d32af5627a
6 changed files with 396 additions and 101 deletions
+2 -2
View File
@@ -209,8 +209,8 @@ def test_mini_hdmi_is_connector_not_protocol_id():
def test_ethernet_hdmi_skeletons_unknown_needed_document():
cat = load_catalog()
for lid in (
"1000base-t", "2.5gbase-t", "5gbase-t",
"10gbase-t", "sgmii", "1000base-x", "10gbase-r",
"2.5gbase-t", "5gbase-t",
"10gbase-t", "sgmii", "10gbase-r",
"hdmi-1.4", "hdmi-2.0", "hdmi-frl",
):
ifaces = [p for p in cat.physical_interfaces if p.logical_protocol_id == lid]
+19 -4
View File
@@ -203,10 +203,25 @@ def test_ieee8023_section2_100base_tx_not_10base_or_1000():
assert tby["differential_impedance"].value_kind == "UNKNOWN"
assert "PCB" in (tby["differential_impedance"].needed_document or "")
gbe = next(p for p in cat.physical_interfaces if p.id == "1000base-t-mdi")
gdr = next(c for c in gbe.constraints if c.parameter == "data_rate")
assert gdr.value_kind == "UNKNOWN"
assert "Clause 40" in (gdr.needed_document or "")
assert gdr.value is None
gby = {c.parameter: c for c in gbe.constraints}
_cite_ok(gby["data_rate"])
assert gby["data_rate"].value == 1000.0
assert gby["data_rate"].source.revision == "2012"
assert gby["data_rate"].source.section == "40.1"
assert gby["data_rate"].source.page == "179"
_cite_ok(gby["cable_channel"])
assert gby["cable_channel"].value == 100.0
assert gby["cable_channel"].source_type == "CABLE"
assert gby["cable_channel"].source.section == "40.7.2.2"
assert gby["differential_impedance"].value_kind == "UNKNOWN"
_cite_ok(gby["peak_differential_output"])
assert gby["peak_differential_output"].value == 0.67
assert gby["peak_differential_output"].source_type == "PHY"
x = next(p for p in cat.physical_interfaces if p.id == "1000base-x-pcb")
xr = next(c for c in x.constraints if c.parameter == "data_rate")
_cite_ok(xr)
assert xr.value == 1000.0
assert xr.source.section == "36.1.1"
fx = next(p for p in cat.physical_interfaces if p.id == "100base-fx-pcb")
fxr = next(c for c in fx.constraints if c.parameter == "data_rate")
_cite_ok(fxr)