- 이전에 Uni-Polar, Polar, Bi-Polar와 같은 스키마들과 해당 스키마에서 구현된 라인코딩방식을 알아봤다.
- 그러나 이런 코딩방식들은 기본적으로 많아야 1번의 펄스에서 1개의 비트만 보낼 수 있다. (r=1.0 or 0.5)
- 이 것은 효율적이지 못하다. 우리가 원하는 것은 더 적은신호를 보내면서 많은 데이터를 보내는 방식이다.
4. Multi-Level Coding (다중 레벨 코딩)
- 펄스당 신호율 (Modulation : Data)를 늘리려면 한 번의 펄스에 여러비트를 보내버리면 된다.
- 이렇게 되면 신호 대 데이터의 레벨 비율도 증가한다 (초반에 언급한 라인코딩방식의 평가 방법)
- 나중에 배우겠지만, 멀티레벨의 경우 선로가 많이 필요해서 장거리에서 못쓴다. (선로 너무 비쌈)
1) 2B1Q
- 2개 Bit를 1개 Quaternary로 변환한다고 해서 2B1Q이다.
- Quaternary는 우리가 알고 있는 쿼터(4개의, 4진법)라고 생각하면 좋다.
- 2개 비트가 하나의 펄스를 이루게 되어 Modulation : Data Rate는 2.0이 된다.
- 과거에 IDSN이나 ADSL같은 저속통신에 사용되었다.
2) 8B6T
- 8B6T는 8개의 Bit를 6개의 Ternary (3진법)으로 변환하는 방법이다.
- 근데, 2진 비트 8개는 256개의 신호가 가능하고, 3진 비트 6개는 729개의 신호가 만들어질 수 있는데,
- 이 것을 모두 사용하는 것이 아니라 신호의 모양이 예쁜 것, 그러니까 0이나 +나, -가
- 하나만 계속 반복되는 것이 아닌 계속 바뀌어서 Clocking 성능이 좋은 방식으로 변환해준다.
- (참고로 인코딩 테이블이 존재한다. 위 처럼 00010001은 -0-0++로 바꾸는 등의 규칙을 정해놓았다)
- 729개에서 256개를 제외한 나머지 신호(보통 000000같이 반복되는)은 오류검출, 동기화 등에 사용된다.
- 2B1Q나 8B6T 같이 멀티레벨 라인코딩들은 장거리 전송에서 사용하기는 어렵다. (꺼의 Bi-Polar 사용)
3) 4D-PAM5 (4-Dimensional 5-Level Pulse Amplitude Modulation)
- 4D-PAMS는 5개의 레벨을 사용하는데, +2, +1, -1, -2는 데이터를 표현하기 위한 신호로 쓰이고
- 0은 에러를 수정하기 위해서 사용한다. 각각의 레벨을 다른 선로로 전송한다.
- 이렇게 신호를 분산시켜 전송하여 속도를 향상시킬 수는 있으나, 역시 장거리 통신에선 쓰이기 힘듬
5. Multi-Level Transition (다중 회선 코딩)
1) MLT-3 (Multi Level Transition - 3)
- MLT-3는 (-, 0, +)로 3진 코드를 사용하는데, 이는 Bi-Polar와 굉장히 흡사하다
- 이 방식은 NRZ-I나 차분 맨체스터코딩처럼 1을 만나면 신호를 반전시키는 방식인데,
- 반전 시킬 때, AMI나 Pseudo-Ternary 처럼 +와 -신호를 교차하면서 변경한다.
- 1을 만나면 +로, 다시 1을 만나면 0으로, 다시 1을 만나면 -로, 다시 1을 만나면 0으로 변한다
- 대역폭 (Bandwidth) = N/3정도가 나오고, 근거리 통신인 LAN에서 현재 쓰고 있는 방식이다
6. Reference
'네트워크' 카테고리의 다른 글
아날로그 to 디지털 전송 (1) - ADC (아날로그 to 디지털 변환) (0) | 2020.05.12 |
---|---|
디지털 to 디지털 전송 (5) - 보율의 개념 & 보율-데이터율 변환법 (0) | 2020.05.12 |
디지털 to 디지털 전송 (4) - Clocking 기술 (블록코딩, 스크램블링) (0) | 2020.05.08 |
디지털 to 디지털 전송 (2) - 라인 코딩 스키마 (1) (1) | 2020.05.07 |
디지털 to 디지털 전송 (1) - 라인 코딩 개요 (0) | 2020.05.07 |
물리층 (6) - 성능 (0) | 2020.04.13 |
물리층 (5) - 데이터 전송률 (나이퀴스트, 샤넌 용량) (0) | 2020.04.12 |