CMIS লেন পেজের রেজিস্টার ম্যাপ (10h, 11h, VDM, CDB)
CMIS মডিউলে প্রতিটি লেনের সবকিছু থাকে ব্যাংক-ভিত্তিক পেজে: ব্যাংক b (লোয়ার পেজের বাইট 126) লেন 8b+1 … 8b+8 কভার করে। 10h পেজে হোস্ট লেখে: ডেটা-পাথ ইনিশিয়ালাইজেশন, Tx ডিজেবল, পোলারিটি, স্কুয়েলচ, ইকুয়ালাইজেশন এবং অ্যাপ্লিকেশন নির্বাচনকারী স্টেজড কন্ট্রোল সেট; 11h পেজ থেকে হোস্ট ফেরত পড়ে: ডেটা-পাথের অবস্থা, প্রতি লেনের ফ্ল্যাগ, পরিমাপকৃত মান, কনফিগারেশন স্ট্যাটাস এবং অ্যাক্টিভ কন্ট্রোল সেট। 20h–2Fh পেজে VDM এবং 9Fh পেজে CDB মেইলবক্স থাকে। এই পেজে প্রধান বাইটগুলো তালিকাভুক্ত, CMIS 5.x অনুযায়ী সংকলিত (কিছু সিগন্যাল-ইন্টেগ্রিটি ফিল্ডের বাইটের অবস্থান 4.x ও 5.x-এ আলাদা; সেগুলো পরিসর আকারে দেওয়া হয়েছে)। ব্যাখ্যামূলক আলোচনা: CMIS।
চিহ্নের ব্যাখ্যা: প্রতি লেনের বাইটে লেন n-এর জন্য বিট n−1 ব্যবহৃত হয় (বিট 0 = লেন 1 … বিট 7 = লেন 8); নিবল ফিল্ডে প্রতিটি জোড়ার বিজোড় লেনের জন্য বিট 7–4 ও জোড় লেনের জন্য বিট 3–0 ব্যবহৃত হয়, অন্য কিছু উল্লেখ না থাকলে · রিজার্ভড = ভবিষ্যৎ ব্যবহারের জন্য সংরক্ষিত।
পেজ 10h: লেন কন্ট্রোল (হোস্ট লেখে)
| বাইট | ফিল্ড | বিট / বিষয়বস্তু |
|---|---|---|
| 128 | DPDeinitLane | প্রতি লেনে একটি বিট: 1 = ডি-ইনিশিয়ালাইজ করা (লেনের ডেটা-পাথকে DPDeactivated অবস্থায় নেওয়া) |
| 129 | রিজার্ভড | — |
| 130 | OutputDisableTx | প্রতি লেনে একটি বিট: 1 = Tx আউটপুট (লেজার) বন্ধ |
| 131 | PolarityFlipTx | প্রতি লেনে একটি বিট: Tx বৈদ্যুতিক ইনপুটের পোলারিটি উল্টে দেওয়া |
| 132 | SquelchDisableTx | প্রতি লেনে একটি বিট: 1 = স্বয়ংক্রিয় Tx স্কুয়েলচ নিষ্ক্রিয় করা |
| 133 | ForceSquelchTx | প্রতি লেনে একটি বিট: 1 = Tx স্কুয়েলচ জোর করে চালু করা |
| 134 | রিজার্ভড | — |
| 135 | AdaptiveInputEqEnableTx | প্রতি লেনে একটি বিট: 1 = হোস্ট-পাশের অ্যাডাপটিভ ইনপুট ইকুয়ালাইজেশন চালু |
| 136 | AdaptiveInputEqRecallTx | প্রতি লেনে একটি বিট: সংরক্ষিত EQ সেটিং ফিরিয়ে আনা (4.x: ফ্রিজ) |
| 137 | রিজার্ভড | — |
| 138–141 | FixedInputEqTargetTx | প্রতি লেনে একটি নিবল (138: লেন 1–2 … 141: লেন 7–8): ফিক্সড ইনপুট EQ কোড 0–15 |
| 142 | রিজার্ভড | — |
| 143 | ApplyDPInitLane | প্রতি লেনে একটি বিট: 1 = স্টেজড কন্ট্রোল সেট 0 প্রয়োগ করা ও DPInit চালানো |
| 144 | ApplyImmediateLane | প্রতি লেনে একটি বিট: ডেটা-পাথ পুনরায় ইনিশিয়ালাইজ না করে SCS0 প্রয়োগ করা |
| 145–152 | স্টেজড কন্ট্রোল সেট 0: ডেটা-পাথ কনফিগারেশন | প্রতি লেনে একটি বাইট (145 = লেন 1 … 152 = লেন 8): বিট 7–4 AppSelCode (1–15 = ডেস্ক্রিপ্টর ইনডেক্স, 0 = কোনোটি নয়) · 3–1 DataPathID (ডেটা-পাথের প্রথম হোস্ট লেন − 1) · 0 ExplicitControl (1 = অ্যাপ্লিকেশনের ডিফল্ট মানের বদলে নিচের SI সেটিং ব্যবহার করা) |
| 153 | SCS0 AdaptiveInputEqEnableTx | প্রতি লেনে একটি বিট |
| 154 | SCS0 AdaptiveInputEqRecallTx | প্রতি লেনে একটি বিট |
| 155 | রিজার্ভড | — |
| 156–159 | SCS0 FixedInputEqTargetTx | প্রতি লেনে একটি নিবল |
| 160 | SCS0 CDREnableTx | প্রতি লেনে একটি বিট: 1 = Tx CDR চালু, 0 = বাইপাস |
| 161 | SCS0 CDREnableRx | প্রতি লেনে একটি বিট |
| 162–165 | SCS0 OutputEqPreCursorTargetRx | প্রতি লেনে একটি নিবল |
| 166–169 | SCS0 OutputEqPostCursorTargetRx | প্রতি লেনে একটি নিবল |
| 170–173 | SCS0 OutputAmplitudeTargetRx | প্রতি লেনে একটি নিবল |
| 174–177 | রিজার্ভড | — |
| 178–210 | স্টেজড কন্ট্রোল সেট 1 | বিন্যাস 145–177-এর মতোই (178–185 ডেটা-পাথ কনফিগারেশন, 186–210 SI টার্গেট) |
| 211–255 | Rx আউটপুট কন্ট্রোল ও মাস্ক | প্রতি লেনে OutputDisableRx, PolarityFlipRx, SquelchDisableRx; পেজ 11h-এর ফ্ল্যাগ মাস্ক (বাইটের অবস্থান রিভিশন অনুযায়ী) |
নির্বাচনের ধারা: 145–152 লিখুন, তারপর লেনগুলোর জন্য 143 সেট করুন, তারপর ConfigStatus-এর জন্য পেজ 11h-এর 202–205 পোল করুন, তারপর ডেটা-পাথের অবস্থা জানতে 128–131 পড়ুন: CMIS, গতি ও রেট।
পেজ 11h: লেন স্ট্যাটাস (হোস্ট পড়ে)
| বাইট | ফিল্ড | বিট / বিষয়বস্তু |
|---|---|---|
| 128 | DPStateHostLane 1–2 | 3–0 লেন 1-এর অবস্থা · 7–4 লেন 2-এর অবস্থা (কোড টেবিল নিচে) |
| 129 | DPStateHostLane 3–4 | ওপরের মতো |
| 130 | DPStateHostLane 5–6 | — |
| 131 | DPStateHostLane 7–8 | — |
| 132–133 | রিজার্ভড | — |
| 134 | DPStateChangedFlag | প্রতি লেনে একটি বিট; ল্যাচড |
| 135 | TxFaultFlag | প্রতি লেনে একটি বিট |
| 136 | TxLOSFlag | প্রতি লেনে একটি বিট (হোস্ট-পাশের ইনপুট LOS) |
| 137 | TxCDRLOLFlag | প্রতি লেনে একটি বিট |
| 138 | TxAdaptiveInputEqFailFlag | প্রতি লেনে একটি বিট |
| 139 | Tx পাওয়ারের উচ্চ অ্যালার্ম | প্রতি লেনে একটি বিট |
| 140 | Tx পাওয়ারের নিম্ন অ্যালার্ম | — |
| 141 | Tx পাওয়ারের উচ্চ সতর্কতা | — |
| 142 | Tx পাওয়ারের নিম্ন সতর্কতা | — |
| 143 | Tx বায়াসের উচ্চ অ্যালার্ম | — |
| 144 | Tx বায়াসের নিম্ন অ্যালার্ম | — |
| 145 | Tx বায়াসের উচ্চ সতর্কতা | — |
| 146 | Tx বায়াসের নিম্ন সতর্কতা | — |
| 147 | RxLOSFlag | প্রতি লেনে একটি বিট (মিডিয়া-পাশের LOS) |
| 148 | RxCDRLOLFlag | প্রতি লেনে একটি বিট |
| 149 | Rx পাওয়ারের উচ্চ অ্যালার্ম | — |
| 150 | Rx পাওয়ারের নিম্ন অ্যালার্ম | — |
| 151 | Rx পাওয়ারের উচ্চ সতর্কতা | — |
| 152 | Rx পাওয়ারের নিম্ন সতর্কতা | — |
| 153 | OutputStatusRx | প্রতি লেনে একটি বিট: 1 = Rx আউটপুট চালু/বৈধ |
| 154–169 | Tx পাওয়ারের পরিমাপকৃত মান | প্রতি লেনে 2 বাইট (154–155 লেন 1 … 168–169 লেন 8), আনসাইনড, 0.1 µW |
| 170–185 | Tx বায়াসের পরিমাপকৃত মান | প্রতি লেনে 2 বাইট, 2 µA × গুণক |
| 186–201 | Rx পাওয়ারের পরিমাপকৃত মান | প্রতি লেনে 2 বাইট, 0.1 µW |
| 202 | ConfigStatus লেন 1–2 | 3–0 লেন 1 · 7–4 লেন 2 (কোড টেবিল নিচে) |
| 203 | ConfigStatus লেন 3–4 | — |
| 204 | ConfigStatus লেন 5–6 | — |
| 205 | ConfigStatus লেন 7–8 | — |
| 206–213 | অ্যাক্টিভ কন্ট্রোল সেট: ডেটা-পাথ কনফিগারেশন | প্রতি লেনে একটি বাইট, বিন্যাস পেজ 10h-এর 145–152-এর মতোই: যে কনফিগারেশন আসলে কার্যকর আছে |
| 214–234 | অ্যাক্টিভ কন্ট্রোল সেট: SI সেটিং | অ্যাডাপটিভ EQ এনাবল/রিকল, ফিক্সড EQ, CDR Tx/Rx, Rx প্রি/পোস্ট-কার্সর, Rx অ্যাম্প্লিটিউড; SCS বিন্যাসের প্রতিচ্ছবি |
| 235 | DPInitPending | প্রতি লেনে একটি বিট: 1 = একটি স্টেজড কনফিগারেশন ApplyDPInit-এর অপেক্ষায় আছে |
| 236–255 | রিজার্ভড / রিভিশন অনুযায়ী ফ্ল্যাগ | — |
ডেটা-পাথের অবস্থার কোড (বাইট 128–131)
| কোড | অবস্থা | অর্থ |
|---|---|---|
| 1h | DPDeactivated | লেন নিষ্ক্রিয়; Tx বন্ধ |
| 2h | DPInit | প্রয়োগ করা কনফিগারেশন দিয়ে ইনিশিয়ালাইজ হচ্ছে |
| 3h | DPDeinit | ভেঙে ফেলা হচ্ছে |
| 4h | DPActivated | Tx চালু, ডেটা চলছে |
| 5h | DPTxTurnOn | লেজার চালু হচ্ছে |
| 6h | DPTxTurnOff | লেজার বন্ধ হচ্ছে |
| 7h | DPInitialized | কনফিগার করা হয়েছে, Tx এনাবলের অপেক্ষায় |
| 0h, 8h–Fh | রিজার্ভড | — |
ConfigStatus কোড (বাইট 202–205)
| কোড | স্ট্যাটাস | অর্থ |
|---|---|---|
| 0h | ConfigUndefined | এখনো কোনো কনফিগারেশন প্রয়োগ করা হয়নি |
| 1h | ConfigSuccess | স্টেজড সেট গৃহীত হয়েছে ও কার্যকর |
| 2h | ConfigRejected | সাধারণ প্রত্যাখ্যান |
| 3h | ConfigRejectedInvalidAppSel | AppSel কোড ঘোষণা করা নেই |
| 4h | ConfigRejectedInvalidDataPath | ওই অ্যাপ্লিকেশনের জন্য DataPathID অনুমোদিত নয় |
| 5h | ConfigRejectedInvalidSI | সিগন্যাল-ইন্টেগ্রিটি টার্গেট পরিসরের বাইরে |
| 6h | ConfigRejectedLaneInUse | লেন আগে থেকেই অন্য একটি সক্রিয় ডেটা-পাথের অংশ |
| 7h | ConfigRejectedPartialDataPath | ডেটা-পাথের সব লেন কনফিগার করা হয়নি |
| 8h–Bh | রিজার্ভড | — |
| Ch | ConfigInProgress | প্রয়োগ চলছে |
| Dh–Fh | কাস্টম | ভেন্ডর |
পেজ 12h: টিউনেবল লেজার কন্ট্রোল (প্রতি লেনে)
প্রতি লেনে চ্যানেল নম্বর সেট, তরঙ্গদৈর্ঘ্য/ফ্রিকোয়েন্সি সেট, ফাইন-টিউনিং অফসেট, টিউনিং স্ট্যাটাস ও ফ্ল্যাগ থাকে; সক্ষমতার তথ্য থাকে পেজ 04h-এ: টিউনেবল ম্যাপ।
পেজ 20h–2Fh: VDM (ভার্সাটাইল ডায়াগনস্টিকস মনিটরিং)
| পেজ | বিষয়বস্তু | বিন্যাস |
|---|---|---|
| 20h–23h | ডেস্ক্রিপ্টর | প্রতিটি পর্যবেক্ষিত রাশির জন্য 2 বাইট (128–255 → প্রতি পেজে 64টি, মোট 256টি): বাইট 0-এর বিট 7–4 থ্রেশহোল্ড-সেট ID, 3–0 লেন (0 = মডিউল-স্তর); বাইট 1 পর্যবেক্ষিত রাশির ধরন (1 লেজারের বয়স · 2 TEC কারেন্ট · 3 লেজারের ফ্রিকোয়েন্সি ত্রুটি · 4 লেজারের তাপমাত্রা · 5/6 মিডিয়া/হোস্ট eSNR · 7/8 মিডিয়া/হোস্ট PAM4 লেভেল ট্রানজিশন · 9–16 মিডিয়া/হোস্ট প্রি-FEC BER সর্বনিম্ন/সর্বোচ্চ/গড়/বর্তমান · 17–24 মিডিয়া/হোস্ট FERC সর্বনিম্ন/সর্বোচ্চ/গড়/বর্তমান · 128+ কোহেরেন্ট সেট) |
| 24h–27h | স্যাম্পল | প্রতিটি পর্যবেক্ষিত রাশির জন্য 2 বাইট, ইনডেক্স তার ডেস্ক্রিপ্টরের মতোই; ফরম্যাট U16 / S16 / F16 |
| 28h–2Bh | থ্রেশহোল্ড | প্রতি থ্রেশহোল্ড সেটে 8 বাইট: উচ্চ অ্যালার্ম, নিম্ন অ্যালার্ম, উচ্চ সতর্কতা, নিম্ন সতর্কতা |
| 2Ch–2Fh | ফ্ল্যাগ ও মাস্ক | প্রতিটি পর্যবেক্ষিত রাশির অ্যালার্ম/সতর্কতা ফ্ল্যাগ (2Ch–2Dh) এবং মাস্ক (2Eh–2Fh) |
F16 অনুপাত ফরম্যাট: বিট 15–11 এক্সপোনেন্ট e, বিট 10–0 ম্যান্টিসা m; মান = m × 10^(e − 24)। বিস্তারিত: VDM ও FEC মেট্রিক।
পেজ 9Fh: CDB কমান্ড ব্লক
| বাইট | ফিল্ড | বিষয়বস্তু |
|---|---|---|
| 128–129 | CMD ID | কমান্ড আইডেন্টিফায়ার, MSB আগে (0000h স্ট্যাটাস জানতে চাওয়া · 0040h মডিউলের ফিচার · 0041h ফার্মওয়্যার-ম্যানেজমেন্টের ফিচার · 0100h ফার্মওয়্যারের তথ্য নেওয়া · 0101h ফার্মওয়্যার ডাউনলোড শুরু · 0102h বাতিল · 0103h LPL দিয়ে ফার্মওয়্যার ব্লক লেখা · 0104h EPL দিয়ে ফার্মওয়্যার ব্লক লেখা · 0107h ডাউনলোড সম্পূর্ণ · 0109h ইমেজ চালানো · 010Ah ইমেজ কমিট করা) |
| 130–131 | EPL-এর দৈর্ঘ্য | পেজ A0h–AFh-এ এক্সটেন্ডেড পেলোডের বাইট সংখ্যা |
| 132 | LPL-এর দৈর্ঘ্য | লোকাল পেলোডের বাইট সংখ্যা (0–120) |
| 133 | CdbChkCode | 128–132 ও LPL-এর ওপর চেকসাম: (Σ) mod 256-এর ওয়ান'স কমপ্লিমেন্ট |
| 134 | RPL-এর দৈর্ঘ্য | মডিউল যে রিপ্লাই পেলোডের দৈর্ঘ্য লেখে |
| 135 | RplChkCode | রিপ্লাইয়ের চেকসাম |
| 136–255 | LPL | লোকাল পেলোড (কমান্ডের প্যারামিটার / রিপ্লাই) |
| A0h–AFh 128–255 | EPL | সর্বোচ্চ 2048 বাইট এক্সটেন্ডেড পেলোড |
সবশেষে বাইট 129 (CMD ID-এর LSB) লিখলে কমান্ড কার্যকর হতে শুরু করে; এরপর হোস্ট লোয়ার পেজের বাইট 37–38 (CdbStatus) পোল করে, যতক্ষণ না CdbIsBusy ক্লিয়ার হয়।
সংশ্লিষ্ট ম্যাপ
- CMIS লোয়ার পেজ ম্যাপ: মডিউলের অবস্থা, ফ্ল্যাগ, অ্যাপ্লিকেশন।
- CMIS আপার পেজ ম্যাপ: শনাক্তকরণ তথ্য, ঘোষিত সক্ষমতা, থ্রেশহোল্ড।
- SFF-8636 লোয়ার পেজ ম্যাপ: 4-লেনের পূর্বসূরি।