전자회로 실무 / 전자회로 실무·고속 인터페이스

PCIe 카드 어댑터에서 장치가 안 잡힐 때는 리셋·존재 감지·보조 전원을 따로 확인합니다 (PCIe Adapter Bring-up)

전용 슬롯용 확장 카드를 일반 PCIe 슬롯에 연결하는 어댑터를 만들었는데, 전원은 들어오는 것 같아도 컴퓨터에 카드가 나타나지 않을 수 있습니다. 고속 신호선만 다시 그리기 전에 보조 신호가 제 역할을 하는지 나눠 확인해야 합니다. 이 글은 어댑터의 접점과 점퍼를 어떤 순서로 검사해야 인식 실패의 원인을 좁힐 수 있는지 설명합니다.

이름이 비슷해도 역할은 다릅니다

PCIe(Peripheral Component Interconnect Express)는 확장 카드를 연결하는 직렬 인터페이스입니다. 컴퓨터가 카드의 존재를 확인하고 장치 정보를 읽어 자원을 배정하는 과정을 열거(enumeration)라고 합니다. 카드에 전압이 공급됐다고 해서 열거가 완료된 것은 아닙니다.

PERST#(PCIe reset)는 낮은 전압일 때 활성화되는 재설정 신호입니다. PRSNT#(presence detect)는 카드가 슬롯에 꽂혔는지 호스트가 판단하는 데 쓰는 접점 조합입니다. 3.3Vaux(3.3 V auxiliary power)는 대기 상태에서 필요한 기능을 위한 보조 전원입니다. 실제 카드와 호스트가 어느 신호를 사용하는지는 해당 제품의 회로와 규격으로 확인해야 합니다.

어댑터에 Vdet(voltage detect)처럼 적힌 패드는 표준 PCIe 핀 이름이라고 가정하면 안 됩니다. 이 이름만 보고 12 V를 연결하지 마십시오. 전용 카드 쪽에서 그 핀이 어떤 회로로 들어가고 허용 전압이 얼마인지 확인한 뒤 연결 여부를 정해야 합니다. 마찬가지로 x4·x8이라고 적힌 점퍼는 존재 감지 접점의 연결 위치를 바꿀 수 있지만, 카드가 실제로 사용하는 레인(lane, 송수신 차동선 한 쌍씩으로 이루어진 데이터 경로)의 수를 늘려 주지는 않습니다.

호스트 슬롯과 전용 카드 사이에서 데이터 레인, 리셋, 존재 감지, 보조 전원과 기기별 감지 핀을 분리해 확인하는 어댑터 개념도입니다. 점퍼 위치와 핀 수는 예시이며 특정 카드의 배선을 뜻하지 않습니다.
호스트 슬롯과 전용 카드 사이에서 데이터 레인, 리셋, 존재 감지, 보조 전원과 기기별 감지 핀을 분리해 확인하는 어댑터 개념도입니다. 점퍼 위치와 핀 수는 예시이며 특정 카드의 배선을 뜻하지 않습니다. · 클릭하면 확대됩니다.

전원을 넣기 전에는 접점과 경로부터 나눠 봅니다

먼저 사용할 카드의 정확한 형식과 커넥터 핀 배치를 확보합니다. 어댑터 사진이나 같은 계열 카드의 추정 핀 이름만으로 전원 핀을 정하지 않습니다. 카드와 어댑터를 분리한 상태에서 접점 번호·방향·기판 두께·키 홈이 맞는지 확인하고, 전원이 들어가는 접점은 도면과 실제 기판에서 각각 표시합니다. 어댑터의 양 끝을 도통 검사해 의도한 핀끼리 이어지는지, 이웃 핀이나 접지와 단락되지 않았는지 봅니다. 고속 차동선의 양·음 극성과 기준 클록(REFCLK, reference clock) 경로도 별도로 대조합니다.

카드의 금속 접점인 골드 핑거(gold finger)는 도금 종류와 두께, 끝단의 경사 가공(베벨, bevel), 기판 두께가 맞아야 슬롯에 무리 없이 들어갑니다. 한 제작 사례가 특정 표면처리를 사용했다고 해서 그것을 모든 카드 에지 커넥터의 반복 삽입용 사양으로 일반화해서는 안 됩니다. 실제로 사용할 슬롯의 접점·삽입 수명·기판 외형 조건을 기준으로 제조 사양을 정하고, 억지로 끼워 접점이나 슬롯을 손상시키지 않습니다.

전원, 리셋, 존재 감지를 서로 다른 검사로 다룹니다

  1. 전원부터 확인합니다. 카드가 장착된 상태에서 12 V·3.3 V 등 필요한 전원이 카드 쪽 접점까지 도달하는지 해당 제품 사양에 맞춰 측정합니다. 전압이 보이더라도 부하가 걸릴 때 떨어지는지 확인합니다. 3.3Vaux는 필요한 카드에만 정해진 경로로 연결하고, 일반 3.3 V와 같은 핀이라고 단정하지 않습니다.
  2. 재설정 경로를 확인합니다. PERST#가 전원 인가 중 활성 상태로 유지되다가 전원과 기준 클록이 안정된 뒤 해제되는지 측정합니다. 전용 커넥터에 재설정처럼 보이는 후보 핀이 둘이라면 둘을 무작정 묶지 말고, 각각의 연결 상태와 부팅 결과를 기록해 사용 가능한 경로를 판정합니다. 카드가 간헐적으로만 잡힌다면 냉간 부팅과 재부팅에서 PERST# 파형을 따로 비교합니다.
  3. 존재 감지 경로를 확인합니다. PRSNT1#과 선택된 PRSNT2#가 호스트가 기대하는 방식으로 연결되는지 어댑터 도면과 실제 도통 상태를 대조합니다. x4·x8 선택 패드가 있다면 전원 차단 상태에서 한 번에 한 구성만 바꾼 뒤 인식 결과를 기록합니다. 어떤 호스트는 존재 감지 연결을 읽고, 어떤 호스트는 데이터 레인의 수신기 검출에 더 의존합니다. 점퍼를 바꿔도 변화가 없다고 해서 레인 배선이 정상이라고 결론 내리지 않습니다.
  4. 기기별 감지 핀은 별도 승인 항목으로 둡니다. Vdet 같은 전용 핀을 전원 레일에 연결하는 어댑터 설계가 있을 수 있지만, 카드별 허용 전압과 핀 기능을 확인하지 못했다면 개방 상태로 두고 시험 계획을 세웁니다. 확인 전 임의로 전원을 가하는 것은 고장 원인을 늘립니다.

점퍼가 있는 실제 어댑터를 검토할 때는 패드 이름보다 그 점퍼가 어느 두 접점을 잇는지를 먼저 확인합니다. 한 전용 카드 어댑터에서는 PERST# 점퍼가 기본 경로 A1과 대체 경로 A14를 선택합니다. 제작자의 시험에서는 A14를 선택하면 카드가 항상 열거되지는 않았습니다. 이 사례는 두 핀이 비슷하게 보인다는 이유로 하나의 리셋 핀으로 취급하면 안 된다는 뜻입니다. 옆의 저항 패드는 재설정 입력이 떠서 오작동할 때를 대비한 자리일 뿐, 그 현상이 확인되지 않았다면 부품을 임의로 추가할 근거가 되지 않습니다.

같은 어댑터의 lanes 점퍼는 신호선 여덟 쌍을 네 쌍으로 재배선하는 장치가 아닙니다. PRSNT1#을 x8 또는 x4 위치의 PRSNT2#에 잇는 선택입니다. 기본 x8에서 인식되지 않을 때 x4 설정을 한 번 시험해 볼 수 있지만, 그 결과로 실제 링크 폭을 추정하지는 않습니다. Vdet 점퍼는 12 V를 전용 커넥터의 B1에 잇도록 설계되어 있습니다. 다만 B1이 전압 감지 입력이라는 설명은 제작자의 추정이므로, 다른 카드에 이 배선을 복제하기 전에는 회로와 허용 전압을 별도로 확인해야 합니다. 3.3Vaux 연결 역시 카드가 대기 전원을 사용한다는 자료가 있을 때만 적용합니다. 특정 기능에 쓰일 것이라는 추정만으로 연결하거나 성능을 단정할 수 없습니다.

이 과정을 거친 뒤에도 카드가 보이지 않으면 기준 클록과 고속 데이터 경로, 커넥터 접촉, 카드 자체의 호환성으로 검사를 넓힙니다. 운영체제에서 카드 이름만 보지 말고 링크 폭·속도와 오류도 확인합니다. x8 접점으로 만들었더라도 실제 연결이 x4로 훈련될 수 있으므로 존재 감지 설정과 실제 링크 결과를 구분해 기록합니다.

관찰된 상태먼저 확인할 경로같은 조건에서 남길 결과
전원은 있는데 카드가 전혀 보이지 않습니다.PERST#의 활성·해제, PRSNT# 연결, 기준 클록입니다.냉간 부팅과 재부팅의 파형, 호스트 열거 결과를 남깁니다.
간헐적으로만 인식됩니다.접점의 기계적 맞춤과 재설정 파형을 봅니다.삽입 상태와 부팅 조건을 바꿔 재현되는지 기록합니다.
카드는 보이지만 링크 폭이 예상보다 작습니다.실제 연결된 데이터 레인과 신호 경로를 확인합니다.협상된 링크 폭·속도와 오류 수를 남깁니다.
대기 상태 기능만 동작하지 않습니다.해당 카드가 3.3Vaux를 쓰는지 확인합니다.대기·복귀 상태의 보조 전압과 기능을 기록합니다.

어댑터의 점퍼는 불명확한 신호를 시험 가능한 가설로 분리해 주는 도구입니다. 한 번에 여러 점퍼를 바꾸면 어느 경로가 인식에 영향을 줬는지 알 수 없습니다. 접점 도면, 바꾼 점퍼 하나, 전원·리셋 측정값, 호스트의 열거 및 링크 결과를 같은 시험 기록에 묶어야 다음 수정이 근거를 갖습니다.