MII، RMII، GMII، RGMII: PHY تک متوازی انٹرفیسز · برقی انٹرفیسز: MII خاندان اور AUIs · نیٹ ورک کارڈز اور سوئچز · دستاویزات · CodingBox
CodingBox دستاویزات

MII، RMII، GMII، RGMII: PHY تک متوازی انٹرفیسز

متوازی میڈیا-انڈیپنڈنٹ انٹرفیسز MAC کو چند سینٹی میٹر PCB پر کاپر PHY چپ سے جوڑتے ہیں — راؤٹرز، چھوٹے سوئچز، ایکسیس پوائنٹس، صنعتی کنٹرولرز اور RJ45 والے ہر ایمبیڈڈ بورڈ کے اندر۔ یہ کبھی ٹرانسیور کیج تک نہیں پہنچتے، مگر جو چیز پہنچتی ہے اس کے لیے یہ حوالہ ہیں: SGMII "سیریلائزڈ GMII" ہے، XGMII "10G پر GMII" ہے، اور کاپر SFP کے اندر PHY ان میں سے ایک اندرونی طور پر بولتا ہے۔ یہ صفحہ MII، RMII، GMII اور RGMII کے پنز، کلاکس اور ٹائمنگ، RGMII ڈیلے مسئلہ، اِن بینڈ اسٹیٹس، MDIO مینجمنٹ اور ہر انٹرفیس سے پیدا ہونے والی خرابیوں کو بیان کرتا ہے۔

MII (IEEE 802.3 Clause 22)

آئٹمقدر
ریٹس10 اور 100 Mb/s
ڈیٹا4 بٹ TXD[3:0]، 4 بٹ RXD[3:0]
کلاکسPHY سے TX_CLK اور RX_CLK: 25 MHz (100M)، 2.5 MHz (10M)
کنٹرولTX_EN، TX_ER، RX_DV، RX_ER، CRS (کیریئر سینس)، COL (کولژن)
مینجمنٹMDC، MDIO (مشترک)
سگنل گنتی16 ڈیٹا/کنٹرول + 2 مینجمنٹ
لیولز5 V / 3.3 V TTL
رینجچند cm؛ ہر MAC کے لیے ایک PHY

اب بھی مائیکروکنٹرولرز اور FPGAs میں ملتا ہے؛ پن گنتی کے لیے RMII نے اس کی جگہ لی۔

RMII (RMII Consortium spec v1.2)

آئٹمقدر
ریٹس10 اور 100 Mb/s
ڈیٹا2 بٹ TXD[1:0]، RXD[1:0]
کلاکواحد REF_CLK 50 MHz، MAC اور PHY میں مشترک؛ آکسیلیٹر، MAC، یا PHY سے ماخذ (PHY-clock-out موڈ)
کنٹرولTX_EN، CRS_DV (کیریئر سینس + ڈیٹا ویلیڈ ملٹی پلیکسڈ)، RX_ER (اختیاری)
سگنل گنتی7–9
10 Mb/s موڈہر نبل 50 MHz پر 10× دہرایا جاتا ہے
رینجcm

50 MHz ریفرنس کلاک ٹوپولوجی RMII کا معروف بگ ہے: بیرونی کلاک کا منتظر PHY جبکہ SoC PHY سے کلاک چلانے کی توقع کرے تو صحت مند لنک LED کے ساتھ انٹرفیس مردہ رہتا ہے۔

GMII (Clause 35)

آئٹمقدر
ریٹس1000 Mb/s؛ 10/100 کے لیے MII سگنلنگ پر واپس آتا ہے
ڈیٹا8 بٹ TXD[7:0]، RXD[7:0]
کلاکسٹرانسمٹ کے لیے MAC سے GTX_CLK 125 MHz؛ ریسیو کے لیے PHY سے RX_CLK 125 MHz؛ TX_CLK صرف 10/100 فال بیک میں PHY سے استعمال ہوتا ہے
کنٹرولTX_EN، TX_ER، RX_DV، RX_ER، CRS، COL
سگنل گنتی24 + مینجمنٹ
لیولز2.5 V (بہت سے پر 3.3 V ٹالرنٹ)
رینجcm؛ 125 MHz سنگل ڈیٹا ریٹ پر ٹائمنگ بجٹ سخت

آج زیادہ تر آن چپ یا FPGA انٹرفیس؛ بورڈز پر RGMII نے اس کی جگہ لی۔

RGMII (Reduced GMII، HP/Marvell اسپیسفیکیشن v1.3 اور v2.0)

آئٹمقدر
ریٹس10/100/1000
ڈیٹا4 بٹ TXD[3:0] اور RXD[3:0] ڈبل ڈیٹا ریٹ: بڑھتے کنارے پر لو نبل، گرتے کنارے پر ہائی نبل
کلاکسTXC 125 MHz (MAC سے)، RXC 125 MHz (PHY سے)؛ 100M / 10M کے لیے 25 / 2.5 MHz
کنٹرولTX_CTL (بڑھتے کنارے پر TX_EN، گرتے کنارے پر TX_EN xor TX_ER)، RX_CTL (RX_DV / RX_DV xor RX_ER)
سگنل گنتی12
لیولز2.5 V (v1.3)، 1.5 V HSTL یا 1.8 V (v2.0 آپشن)؛ بعض PHYs پر 3.3 V
رینج≤ 10–15 cm مماثل لمبائی ٹریسز

ڈیلے مسئلہ

RGMII میں ریسیور پر کلاک کا ڈیٹا ایجز سے 1.5–2.0 ns بعد پہنچنا ضروری ہے (سیٹ اپ/ہولڈ ونڈو)۔ اسے حاصل کرنے کے تین طریقے:

موڈڈیلے کون شامل کرتا ہےڈیوائس ٹری phy-modeنوٹس
PCB ڈیلے (v1.3)~5 cm اضافی کلاک ٹریسrgmiiروایتی، نازک
PHY میں اندرونی ڈیلے (RGMII-ID، v2.0)PHY TX اور RX کلاکس پر 2 ns شامل کرتا ہےrgmii-idآج سب سے عام
MAC/SoC میں اندرونی ڈیلےSoC اسے شامل کرتا ہےMAC سائیڈ ڈیلے رجسٹر کے ساتھ rgmii—
مخلوطPHY صرف ایک سمت پرrgmii-txid، rgmii-rxidجب صرف ایک طرف معاون ہو

ڈیلے دو بار شامل کرنا (PCB اور PHY) یا بالکل نہ شامل کرنا RGMII کی نمایاں خرابی پیدا کرتا ہے: 1G پر CRC ایررز یا بغیر ٹریفک لنک اپ، جبکہ 100M کام کرتا ہے (100M کا دورانیہ 40 ns ہے اور اسکیو برداشت کرتا ہے)۔ PHY کا ڈیلے رجسٹر یا phy-mode بدل کر درست کریں۔

اِن بینڈ اسٹیٹس

بے کار وقت میں PHY، RXD[3:0] پر لنک، رفتار اور ڈوپلیکس چلاتا ہے تاکہ MAC، MDIO ریڈ کے بغیر اپنے کلاک ڈیوائیڈر کو دوبارہ کنفیگر کر سکے: RXD[0] لنک، RXD[2:1] رفتار (00 = 10، 01 = 100، 10 = 1000)، RXD[3] ڈوپلیکس۔ بعض MACs اسے نظر انداز کر کے MDIO پولنگ پر بھروسا کرتے ہیں؛ غیر مطابق توقعات ایسا لنک دیتی ہیں جو PHY پر اپ اور MAC پر ڈاؤن ہو۔

TBI اور RTBI

دس بٹ انٹرفیس: MAC/PCS اور بیرونی SerDes یا آپٹیکل PHY کے درمیان 8b/10b-کوڈ شدہ 1000BASE-X سمبلز (125 MHz پر 10 بٹس، DDR کے ساتھ RTBI میں 5 بٹس)۔ بورڈز پر متروک؛ اس کی سیریل جانشین 1000BASE-X/SGMII ہے (SGMII اور سیریل گیگابٹ)۔

موازنہ

انٹرفیسپنز (ڈیٹا + کنٹرول)کلاکزیادہ سے زیادہ ریٹوولٹیجعام استعمال
MII16PHY سے 25 MHz100M3.3/5 VMCUs، لیگیسی
RMII7–9مشترک 50 MHz100M3.3 Vایمبیڈڈ SoC + PHY
SMII2–3/پورٹ125 MHz100M3.3 Vملٹی پورٹ PHYs (Cisco)
GMII24125 MHz (MAC tx / PHY rx)1G2.5 VFPGA، آن چپ
RGMII12125 MHz DDR1G2.5/1.8/1.5 Vبورڈز پر SoC ↔ PHY
SGMII4 (2 پیئرز)1.25 GBd ایمبیڈڈ1G (ریپلیکیشن سے 10/100)CMLSoC ↔ PHY، SFP کیجز

PHY مینجمنٹ: MDIO/MDC

آئٹمClause 22Clause 45
ایڈریسنگ5 بٹ PHY ایڈریس، 5 بٹ رجسٹر (32 رجسٹرز)5 بٹ پورٹ، 5 بٹ ڈیوائس (PMA/PMD، PCS، PHY XS، DTE XS، AN، وینڈر)، 16 بٹ رجسٹر
کلیدی رجسٹرز0 کنٹرول (ری سیٹ، رفتار، AN فعال، لوپ بیک)، 1 اسٹیٹس (لنک، AN مکمل)، 2–3 PHY ID (OUI + ماڈل)، 4 AN معاونت کا اعلان، 5 لنک پارٹنر اہلیت، 9/10 1000BASE-T کنٹرول/اسٹیٹس، 17+ وینڈر (RGMII ڈیلے، LEDs)1.x PMA، 3.x PCS، 7.x AN، 30.x/31.x وینڈر
رفتارMDC ≤ 2.5 MHz (عملی طور پر اکثر زیادہ)وہی
Linux ٹولزmii-tool -v eth0، phytool read eth0/1/0، ethtool eth0؛ phylib، phylink سے ڈرائیورphytool read eth0/1:1/0

پلگیبل ماڈیولز کے برعکس، جنہیں I²C پر منظم کیا جاتا ہے، MDIO پر نہیں (ٹو وائر انٹرفیس)۔ کاپر SFP کا اندرونی PHY استثنا ہے: بہت سے ڈیزائنز میں اس کے MDIO رجسٹرز ماڈیول کے I²C کے ثانوی ایڈریس سے پہنچنے کے قابل ہوتے ہیں، اور اسی طرح وینڈرز 10/100 فال بیک اور آٹو نیگوشی ایشن رویہ سیٹ کرتے ہیں۔

عام PHYs اور ان کے انٹرفیسز

PHY فیملیانٹرفیسزعام بورڈ
Marvell 88E1111 / 88E1512 / 88E1510GMII، RGMII، SGMII، TBIراؤٹرز، کاپر SFP ماڈیولز (88E1111)
Realtek RTL8211F / RTL8201RGMII / RMIISBCs، صارف راؤٹرز
Microchip KSZ9031 / KSZ8081 / LAN8720RGMII / RMII / RMIIصنعتی، MCU بورڈز
TI DP83867 / DP83848RGMII، SGMII / MII، RMIIصنعتی
Broadcom BCM54xxxRGMII، SGMII، QSGMIIانٹرپرائز سوئچز (کواڈ/اوکٹل PHYs)
Marvell 88E1543 / 88E1548QSGMII کواڈ48-پورٹ ایکسیس سوئچز

انٹرفیس کے لحاظ سے خرابیاں

علامتانٹرفیسوجہ
کبھی لنک نہیں، PHY ID ٹھیک پڑھتی ہےRMIIREF_CLK سمت/ماخذ کا عدم تطابق
100M کام کرتا ہے، 1G پر ٹریفک نہیں / CRCRGMIIڈیلے موڈ (ID) غلط یا دوگنا
PHY LED پر لنک اپ، MAC ڈاؤن کہتا ہےRGMII/SGMIIایک طرف اِن بینڈ اسٹیٹس بند، یا MDIO پولنگ غائب
1G پر آدھے پیکٹس ضائعGMII/RGMIIٹریس لمبائی اسکیو، غلط وولٹیج لیول
PHY MDIO پر نہیں ملتاکوئی بھیغلط PHY ایڈریس (اسٹریپنگ پنز)، MDIO پل اپ غائب
رفتار 10/100 پر اٹکیکوئی بھیAN معاونت کے اعلان والا رجسٹر محدود، کیبل، یا 1G معاونت کے بغیر phy-mode

CodingBox میں

اس صفحے میں کچھ بھی ماڈیول کے EEPROM سے نہیں گزرتا — سوائے کاپر SFP کے، جس کا اندرونی PHY (عام طور پر 88E1111-کلاس حصہ) اسی I²C کے پیچھے ہے جسے CodingBox پڑھتا ہے۔ جب کاپر ماڈیول 1G پر کام کرے مگر 10/100 پر نہ کرے، جواب اس PHY کی کنفیگریشن اور ہوسٹ کے SGMII/1000BASE-X موڈ میں ہے، A0h شناختی بائٹس میں نہیں (کاپر ایتھرنیٹ اور DAC، SGMII اور سیریل گیگابٹ)۔


اگر آپ کو اس مضمون میں کوئی غلطی یا عدم درستی ملے تو متعلقہ حصہ منتخب کریں اور Ctrl+Enter دبا کر ۔