LabHub
배우기 러닝패스 코스

My Cable Has an Echo

TDR: what can a returning wave tell you?

LabHub 에서 이어서 보기

한국어 원문으로 표시합니다.

한 줄 요약

TDR은 빠른 전압 변화를 보내고 돌아온 변화의 크기와 시각을 읽는 방법입니다. 반사의 부호는 경계의 임피던스 변화를, 왕복 지연은 경계까지의 편도 거리를 알려 줍니다. 단, 관측 가능한 반사가 없다면 위치를 찾아냈다고 말할 수 없습니다.

Concept map: 한 줄 요약 · 왜 이게 필요했나 · 어떻게 동작하나 · 현장에서 만나는 모습

왜 이게 필요했나

앞 실습에서는 케이블 끝에서 반사된 파와 종단 저항을 비교했습니다. 이제 케이블 중간에서 굵기나 구조가 달라진 상황을 생각해 봅시다. 수신 전압의 최대값만으로는 변화가 어디에서 생겼는지 알기 어렵습니다. 송신점에서 되돌아온 파가 언제 나타났는지를 보면 공간의 정보를 시간으로 읽을 수 있습니다.

하지만 반사 시각에 전파 속도를 곱하면 바로 거리가 되는 것은 아닙니다. 신호는 경계로 갔다가 같은 길을 돌아옵니다. 출발 지연과 유한 상승 시간도 관측 시각에 포함됩니다. 이 수업은 이런 항목을 하나씩 분리해 보이는 이상적 실험입니다. 실제 장비의 대역폭·케이블 손실·여러 경계가 섞이는 상황까지 해결하는 제품용 위치 추정기는 아닙니다.

어떻게 동작하나

실험 회로는 1V 펄스 전원, 50Ω 소스 저항, 50Ω 첫 선로, 다른 임피던스의 두 번째 선로와 그 값에 맞춘 종단으로 구성됩니다. 첫 선로의 편도 시간은 2/3/4ns, 두 번째 선로는 3ns입니다. 두 번째 선로 Z2와 종단은 함께 25/50/100Ω 중 하나로 정합니다. 끝 종단의 추가 반사를 없애 중간 경계 하나의 영향만 남기는 것입니다. 소스도 첫 선로와 정합되어 돌아온 파를 다시 반사하지 않습니다.

1V 펄스 ─ 50Ω 소스 ─ TX ─ [50Ω, 편도 TD] ─ 경계 ─ [Z2, 3ns] ─ Z2 종단
                         └──────── 경계로 출발 → ← TX로 귀환 ────────┘

처음 TX에서 보이는 진행파 A는 0.5V입니다. 경계에서의 반사계수 Γ=(Z2−50)/(Z2+50)이며, 송신점에 돌아온 뒤의 평탄부 B는 A+AΓ입니다. 따라서 관측한 두 평탄부로 Γ=(B−A)/A를 구하고 Z2=50(1+Γ)/(1−Γ)로 역산합니다. B/A 자체를 Γ라고 부르거나 차이에 절댓값을 씌우면 낮은 임피던스를 높은 임피던스로 오해합니다.

두 번째 선로 TX 첫 평탄부 A TX 귀환 뒤 B Γ
25Ω 0.5V 약 0.3333V −1/3
50Ω 0.5V 0.5V 0
100Ω 0.5V 약 0.6667V +1/3

이 표는 지정한 회로에서의 해석값이며 실물 측정치가 아닙니다. 실습에서는 ngspice가 실제로 계산한 TX 파형에서 두 값을 추출합니다. 입력 펄스는 1ns에 상승을 시작하며 상승 시간은 0.2ns 또는 0.6ns입니다. 출발 시각은 TX가 A/2를 위로 통과하는 때, 귀환 시각은 3ns 이후 TX가 (A+B)/2를 반사 방향으로 통과하는 때입니다. 두 시각에 같은 상승 시간의 절반이 들어가므로 차이를 취하면 출발 지연과 그 절반이 상쇄됩니다.

예를 들어 TD=3ns, 상승 시간 0.2ns라면 출발 절반은 약 1.1ns, 귀환 절반은 약 7.1ns입니다. 차이는 6ns이고 편도 시간은 3ns입니다. 교육용으로 정한 전파 속도 0.2m/ns를 사용하면 거리는 0.6m입니다. 7.1ns를 그대로 사용하거나 왕복 6ns에 바로 속도를 곱하면 위치를 과대평가합니다. 실제 전파 속도는 케이블 구조와 유전체에 따라 따로 알아야 하며 이 값이 모든 선로의 속도인 것은 아닙니다.

ngspice의 시간 열은 초입니다. 분석기는 읽을 때 한 번만 ns로 변환하고 이후 시각 연산은 모두 ns로 합니다. 표본은 동일 간격이라고 가정하지 않습니다. 임계값을 끼우는 두 표본 사이에서 직선으로 보간합니다. 상승은 a.v < 임계값 ≤ b.v, 하강은 a.v > 임계값 ≥ b.v로 검사하며, 보간한 시각에 after 조건을 적용합니다. after가 두 표본 사이에 있더라도 유효한 교차를 버리지 않습니다. 이미 높은 첫 점이나 평탄부는 새 교차가 아닙니다. 이 규약은 앞 실습의 first_crossing_ns와 구별하세요.

평탄부는 닫힌 시간 창 [2,3]ns와 [12,14]ns의 표본 중앙값입니다. 두 창에 각각 최소 두 표본이 있어야 합니다. 이는 이 고정 실험의 창 선택이며 모든 TDR 파형에 적용할 보편 알고리즘은 아닙니다. 데이터가 없으면 0으로 채우지 않고 실패해야 합니다. 전체 파형이 잘렸거나 시간이 중복되어도 분석을 계속하지 않습니다.

|Γ|≤1e−6이면 이번 교육용 규약에서는 반사가 관측되지 않은 것으로 처리합니다. 귀환 시각과 거리는 None, JSON에서는 null입니다. 모델 설정에 TD가 써 있어도 그 숫자는 관측으로 찾은 결과가 아닙니다. Γ=0에서 임피던스가 50Ω이라는 추정은 가능하지만, 같은 임피던스의 두 선로가 만나는 위치는 이 파형으로 구분할 수 없습니다. 반사가 없다는 말을 선로가 없다는 뜻으로 바꾸지 마세요.

현장에서 만나는 모습

분석 보고서에서 가장 위험한 착오는 입력한 위치를 그대로 결과 칸에 쓰는 것입니다. 원하는 결과와 일치해 보이지만 분석을 한 것이 아닙니다. 다음 실습에서는 실제 파형을 보존한 채 설정의 TD만 바꿔 이 실수를 검사합니다. 관측한 왕복 시간은 그대로여야 하고 consistent만 false로 바뀌어야 합니다. 임피던스 설정을 반대 방향으로 바꾼 경우도 구별합니다.

모든 설정은 실행 전에 검증하고 기존 출력 폴더를 덮어쓰지 않습니다. 각 경우의 설정, 회로, 엔진 로그와 전체 파형을 남기고 마지막 보고서와 연결합니다. 결과가 맞아 보이는 경우에도 simulated=true, physical_certified=false를 유지합니다. 회로 모델을 푼 사실과 실제 케이블을 계측·인증한 사실은 다릅니다. 이번 일치 검사는 해당 이상적 모델의 크기·지연을 확인할 뿐 회로 파일 전체의 진위를 인증하는 기능도 아닙니다.

다음 실습에서 할 것

설정 검증, 전체 파형 파싱, 평탄부 추출, 부호 있는 반사와 임피던스 역산, 양방향 교차 보간, 단일 실행 분석, 여러 조건 실행, CLI 증거 보존의 여덟 단계를 완성합니다. 파형을 생성하는 도우미는 제공되며 분석 함수는 직접 작성합니다. 반사 없는 조건을 포함해 아홉 조건을 비교하고, 상승 시간이 달라져도 왕복 지연이 유지되는지 확인합니다.

근거 문서: ngspice 공식 매뉴얼 6.1의 무손실 T 소자, TI AN-905의 반사계수. 매뉴얼 최신판과 실습 이미지의 ngspice 42 버전은 다릅니다. 여기서 사용한 T 소자·tran·wrdata 명령은 실제 42 엔진으로 별도 확인합니다.