CodingBox 문서

CMIS 레인 페이지 레지스터 맵 (10h, 11h, VDM, CDB)

CMIS 모듈에서 레인별 항목은 모두 뱅크 구조의 페이지에 있습니다: 뱅크 b(하위 바이트 126)는 레인 8b+1 … 8b+8을 담당합니다. 페이지 10h는 호스트가 쓰는 영역으로, 데이터 경로 초기화, Tx disable, 극성, 스퀠치, 이퀄라이제이션, 애플리케이션을 선택하는 스테이징된 제어 세트가 있습니다. 페이지 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을 씁니다 · rsvd = 예약됨.

페이지 10h: 레인 제어(호스트가 씀)

바이트필드비트/내용
128DPDeinitLane레인당 1비트: 1 = 비초기화(해당 레인의 데이터 경로를 DPDeactivated로 전환)
129rsvd
130OutputDisableTx레인당 1비트: 1 = Tx 출력(레이저) 끔
131PolarityFlipTx레인당 1비트: Tx 전기 입력 반전
132SquelchDisableTx레인당 1비트: 1 = 자동 Tx 스퀠치 비활성화
133ForceSquelchTx레인당 1비트: 1 = Tx 스퀠치 강제
134rsvd
135AdaptiveInputEqEnableTx레인당 1비트: 1 = 호스트 측 적응형 입력 이퀄라이제이션
136AdaptiveInputEqRecallTx레인당 1비트: 저장된 EQ 설정 불러오기(4.x: 동결)
137rsvd
138–141FixedInputEqTargetTx레인당 니블(138: 레인 1–2 … 141: 레인 7–8): 고정 입력 EQ 코드 0–15
142rsvd
143ApplyDPInitLane레인당 1비트: 1 = 스테이징된 제어 세트 0을 적용하고 DPInit 실행
144ApplyImmediateLane레인당 1비트: 데이터 경로를 재초기화하지 않고 SCS0 적용
145–152스테이징된 제어 세트 0: 데이터 경로 구성레인당 1바이트(145 = 레인 1 … 152 = 레인 8): 비트 7–4 AppSelCode(1–15 = 디스크립터 인덱스, 0 = 없음) · 3–1 DataPathID(데이터 경로의 첫 호스트 레인 − 1) · 0 ExplicitControl(1 = 아래의 SI 설정을 애플리케이션 기본값 대신 사용)
153SCS0 AdaptiveInputEqEnableTx레인당 1비트
154SCS0 AdaptiveInputEqRecallTx레인당 1비트
155rsvd
156–159SCS0 FixedInputEqTargetTx레인당 니블
160SCS0 CDREnableTx레인당 1비트: 1 = Tx CDR 켬, 0 = 바이패스
161SCS0 CDREnableRx레인당 1비트
162–165SCS0 OutputEqPreCursorTargetRx레인당 니블
166–169SCS0 OutputEqPostCursorTargetRx레인당 니블
170–173SCS0 OutputAmplitudeTargetRx레인당 니블
174–177rsvd
178–210스테이징된 제어 세트 1145–177과 동일한 구조(178–185 데이터 경로 구성, 186–210 SI 목표값)
211–255Rx 출력 제어와 마스크레인당 OutputDisableRx, PolarityFlipRx, SquelchDisableRx; 페이지 11h용 플래그 마스크(바이트 위치는 리비전마다 다름)

선택 절차: 145–152에 쓰기 → 해당 레인의 143 설정 → ConfigStatus를 확인하기 위해 페이지 11h 202–205 폴링 → 128–131을 읽어 데이터 경로 상태 확인. 참고: CMIS, 속도와 레이트.

페이지 11h: 레인 상태(호스트가 읽음)

바이트필드비트/내용
128DPStateHostLane 1–23–0 레인 1 상태 · 7–4 레인 2 상태(아래 코드 표 참고)
129DPStateHostLane 3–4위와 동일
130DPStateHostLane 5–6
131DPStateHostLane 7–8
132–133rsvd
134DPStateChangedFlag레인당 1비트; 래치됨
135TxFaultFlag레인당 1비트
136TxLOSFlag레인당 1비트(호스트 측 입력 LOS)
137TxCDRLOLFlag레인당 1비트
138TxAdaptiveInputEqFailFlag레인당 1비트
139Tx 파워 고알람레인당 1비트
140Tx 파워 저알람
141Tx 파워 고경고
142Tx 파워 저경고
143Tx 바이어스 고알람
144Tx 바이어스 저알람
145Tx 바이어스 고경고
146Tx 바이어스 저경고
147RxLOSFlag레인당 1비트(미디어 측 LOS)
148RxCDRLOLFlag레인당 1비트
149Rx 파워 고알람
150Rx 파워 저알람
151Rx 파워 고경고
152Rx 파워 저경고
153OutputStatusRx레인당 1비트: 1 = Rx 출력 활성화/유효
154–169Tx 파워 모니터레인당 2바이트(154–155 레인 1 … 168–169 레인 8), 부호 없음, 0.1 µW
170–185Tx 바이어스 모니터레인당 2바이트, 2 µA × 배율
186–201Rx 파워 모니터레인당 2바이트, 0.1 µW
202ConfigStatus 레인 1–23–0 레인 1 · 7–4 레인 2(아래 코드 표 참고)
203ConfigStatus 레인 3–4
204ConfigStatus 레인 5–6
205ConfigStatus 레인 7–8
206–213활성 제어 세트: 데이터 경로 구성레인당 1바이트, 페이지 10h의 145–152와 동일한 구조: 실제로 적용 중인 구성
214–234활성 제어 세트: SI 설정적응형 EQ 활성화/불러오기, 고정 EQ, CDR Tx/Rx, Rx 프리커서/포스트커서, Rx 진폭. SCS 구조를 그대로 반영
235DPInitPending레인당 1비트: 1 = 스테이징된 구성이 ApplyDPInit을 기다리는 중
236–255rsvd/리비전별 플래그

데이터 경로 상태 코드(바이트 128–131)

코드상태의미
1hDPDeactivated레인 유휴; Tx 꺼짐
2hDPInit적용된 구성으로 초기화 중
3hDPDeinit해제 중
4hDPActivatedTx 켜짐, 데이터 흐름 중
5hDPTxTurnOn레이저 켜지는 중
6hDPTxTurnOff레이저 꺼지는 중
7hDPInitialized구성 완료, Tx 활성화 대기 중
0h, 8h–Fhrsvd

ConfigStatus 코드(바이트 202–205)

코드상태의미
0hConfigUndefined아직 적용된 구성 없음
1hConfigSuccess스테이징된 세트가 수락되어 적용 중
2hConfigRejected일반적인 거부
3hConfigRejectedInvalidAppSel광고되지 않은 AppSel 코드
4hConfigRejectedInvalidDataPath해당 애플리케이션에 허용되지 않는 DataPathID
5hConfigRejectedInvalidSI범위를 벗어난 신호 무결성 목표값
6hConfigRejectedLaneInUse이미 다른 활성 데이터 경로에 속한 레인
7hConfigRejectedPartialDataPath데이터 경로의 일부 레인만 구성됨
8h–Bhrsvd
ChConfigInProgress적용 중
Dh–Fhcustom벤더별

페이지 12h: 튜너블 레이저 제어(레인별)

레인별 채널 번호 설정, 파장/주파수 설정, 미세 조정 오프셋, 튜닝 상태와 플래그가 있으며, 지원 기능은 페이지 04h에 있습니다. 참고: 튜너블 맵.

페이지 20h–2Fh: VDM(Versatile Diagnostics Monitoring)

페이지내용구조
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이며, value = m × 10^(e − 24)입니다. 자세한 내용: VDM과 FEC 지표.

페이지 9Fh: CDB 명령 블록

바이트필드내용
128–129CMD ID명령 식별자, MSB부터(0000h 상태 조회 · 0040h 모듈 기능 · 0041h 펌웨어 관리 기능 · 0100h 펌웨어 정보 조회 · 0101h 펌웨어 다운로드 시작 · 0102h 중단 · 0103h LPL로 펌웨어 블록 쓰기 · 0104h EPL로 펌웨어 블록 쓰기 · 0107h 다운로드 완료 · 0109h 이미지 실행 · 010Ah 이미지 커밋)
130–131EPL length페이지 A0h–AFh에 있는 확장 페이로드의 바이트 수
132LPL length로컬 페이로드의 바이트 수(0–120)
133CdbChkCode128–132와 LPL에 대한 체크섬: (Σ) mod 256의 1의 보수
134RPL length모듈이 기록하는 응답 페이로드 길이
135RplChkCode응답 체크섬
136–255LPL로컬 페이로드(명령 파라미터/응답)
A0h–AFh 128–255EPL최대 2048바이트의 확장 페이로드

바이트 129(CMD ID의 LSB)를 마지막에 쓰면 실행이 트리거됩니다. 이후 호스트는 CdbIsBusy가 해제될 때까지 하위 페이지 바이트 37–38(CdbStatus)을 폴링합니다.

관련 맵


이 문서에서 부정확한 내용이나 오류를 발견하면 해당 부분을 선택하고 Ctrl+Enter를 눌러 해 주세요.