전자회로 실무 / 논리 인터페이스·표시

다이오드 AND(diode AND) 출력에 LED를 달기 전에 HIGH 전압을 확인합니다

입력 셋 중 하나만 LOW여도 출력이 LOW가 되고, 셋이 모두 HIGH일 때만 표시등이 켜지도록 다이오드와 풀업 저항을 연결할 수 있습니다. 그러나 출력에 LED까지 바로 달면 풀업 저항이 표시등의 전류도 공급해야 합니다. LED가 켜지는지만 보고 이 출력을 다음 디지털 회로의 HIGH로 사용하면 전압이 부족할 수 있습니다. 이 글에서는 입력 다이오드의 방향을 읽고, HIGH·LOW 두 상태의 전류 경로를 따로 계산해 실제 수신기의 입력 임계값을 확인하는 순서를 설명합니다.

다이오드 방향과 두 출력 가지를 먼저 읽습니다

다이오드 AND(diode AND)는 출력 노드를 저항으로 전원 쪽에 끌어올리고, 어느 입력이 LOW가 되면 다이오드를 통해 그 입력으로 출력 전류가 빠져나가도록 만든 회로입니다. 풀업 저항(pull-up resistor)은 전원 V+와 출력 사이의 저항입니다. 아래 개념도에서는 10 kΩ입니다. 각 다이오드의 애노드(anode)는 출력 쪽, 기호의 막대가 있는 캐소드(cathode)는 입력 A·B·C 쪽입니다. 이 방향을 거꾸로 연결하면 동작이 달라집니다.

출력에서 접지로 내려가는 별도 가지에는 470 Ω 저항과 LED(Light-Emitting Diode, 발광 다이오드)가 직렬로 있습니다. 이 470 Ω은 LED 전류를 제한할 뿐, 10 kΩ 풀업이 약한 전원 경로라는 점은 그대로입니다. 회로에 표시된 V+는 전원 전압이고, V_OUT은 다음 회로가 읽을 공통 출력 전압입니다. 도면만으로 V+의 값이나 입력을 구동하는 부품을 알 수는 없습니다.

각 입력의 캐소드가 왼쪽, 애노드가 공통 출력 쪽인 세 다이오드와 10 kΩ 풀업, 출력에서 470 Ω과 LED를 거쳐 접지로 가는 가지를 구분한 설명용 회로입니다.
각 입력의 캐소드가 왼쪽, 애노드가 공통 출력 쪽인 세 다이오드와 10 kΩ 풀업, 출력에서 470 Ω과 LED를 거쳐 접지로 가는 가지를 구분한 설명용 회로입니다. · 클릭하면 확대됩니다.
입력 상태의도한 출력반드시 확인할 점
A·B·C가 모두 충분히 HIGH로 구동됨입력 다이오드가 차단되고 풀업이 출력을 올립니다.LED와 다음 입력에 전류가 흐를 때도 V_OUT이 HIGH 입력 임계값 이상인지 확인합니다.
어느 한 입력이 분명한 LOW로 구동됨출력 전류가 그 입력 쪽 다이오드로 빠져 LOW가 됩니다.LOW 입력이 전류를 받아도 전압이 낮게 유지되는지 확인합니다.
입력 하나가 연결되지 않음결과를 LOW라고 정할 수 없습니다.입력의 기본 상태를 별도 바이어스로 정해야 합니다.

모두 HIGH여도 LED가 풀업 전류를 가져갑니다

A·B·C가 모두 출력보다 충분히 높은 전압을 유지해 입력 다이오드가 차단되었다고 하겠습니다. 10 kΩ을 지난 전류는 LED 가지와 다음 회로의 입력으로 나뉩니다. I_PU는 풀업 전류, I_LED는 LED 전류이며 단위는 A(암페어)입니다. 수신기 입력이 출력에서 가져가는 전류를 I_IN이라고 정의하면, 직류 상태의 전류 관계는 다음과 같습니다.

I_PU=(V+−V_OUT)/10 kΩ=I_LED+I_IN+I_leak

여기서 I_leak는 입력 다이오드 등의 누설 전류를 출력에서 빠져나가는 방향으로 합한 값입니다. LED가 실제로 도통하는 구간에서만, 그 전류에서의 LED 순방향 전압 V_F,LED(LED forward voltage)를 이용해 I_LED≈(V_OUT−V_F,LED)/470 Ω으로 근사할 수 있습니다. LED의 V_F,LED는 전류와 온도에 따라 달라지므로 고정된 2 V로 부품을 판정하지 않습니다.

회로의 위험을 숫자로 보기 위해서만 가정값 V+=5 V, V_F,LED=2 V를 쓰고, 세 입력 다이오드는 차단되며 수신기 전류와 누설을 무시하겠습니다. 그러면 두 저항과 LED 가지를 흐르는 전류는 (5−2)/(10,000+470)≈0.287 mA, 출력은 2+0.287 mA×470≈2.13 V입니다. 이 값은 실제 LED의 전류·전압 곡선을 풀어 얻은 결과도, 특정 기판의 측정값도 아닙니다. 다만 풀업이 5 V에 연결되어 있어도, LED 부하를 단 출력이 5 V가 아닐 수 있음을 보여 줍니다. LED가 이 작은 전류에서 눈에 띄게 켜지는지도 따로 확인해야 합니다.

풀업이 훨씬 작은 100 Ω이고 출력 노드에서 LED가 접지로 직접 이어진 경우에는 위의 10 kΩ+470 Ω 예시를 그대로 대입할 수 없습니다. 모든 입력 다이오드가 차단되고 V+=5 V, V_OUT=2.04 V라고 가정하면 풀업 저항 전류는 (5−2.04)/100≈29.6 mA입니다. 다른 부하와 누설이 없을 때에만 LED 전류도 거의 이 값입니다. 반대로 어느 입력이 LOW가 되면 LED가 꺼져도 풀업 전류가 그 입력의 다이오드로 흐르므로, V_OUT≈0.7 V로 가정해 계산하면 드라이버가 약 (5−0.7)/100=43 mA를 받아야 합니다. LED가 켜진다는 이유만으로 해당 LED·저항·LOW 드라이버의 정격 조건을 만족했다고 판단하지 말고 각각의 허용 전류와 저항의 전력, 실제 출력 전압을 확인합니다.

다음 디지털 입력이 HIGH로 인정하는 최소 전압 V_IH(HIGH-level input voltage)보다 최악 조건의 V_OUT이 높아야 합니다. LOW로 인정하는 최대 전압은 V_IL(LOW-level input voltage)입니다. 수신기 종류와 전원에 따라 두 임계값이 달라지므로, 위의 2.13 V만 보고 합격·불합격을 단정하지 않습니다. 다른 입력이 HIGH라고 불려도 그 전압이 출력보다 충분히 높지 않으면 해당 입력 다이오드가 도통해 출력을 제한할 수 있습니다.

LOW는 입력이 실제로 전류를 받아야 만들어집니다

A만 LOW이고 B·C가 충분히 HIGH라면, 풀업에서 나온 전류는 출력에서 A 쪽 다이오드를 거쳐 A를 구동하는 회로로 흘러갑니다. 그 다이오드가 도통하는 동안 출력은 대략 V_OUT≈V_OL,A+V_D,A입니다. V_OL,A는 전류를 받는 A 구동 회로의 실제 LOW 출력 전압, V_D,A는 그 전류에서 A 다이오드의 순방향 전압입니다. 둘 다 0 V 또는 0.7 V로 고정되는 값이 아닙니다.

예를 들어 V+=5 V, V_OL,A=0 V, V_D,A=0.7 V를 계산 예시로만 가정하면 V_OUT≈0.7 V이고, 풀업 전류는 (5−0.7)/10 kΩ≈0.43 mA입니다. LED 가지가 이 전압에서 사실상 꺼지고 다른 입력 전류가 작다면, A 구동 회로가 대략 이 전류를 받아야 합니다. 이것도 실제 다이오드나 드라이버의 측정치가 아닙니다. A가 LOW라고 설정되어 있어도 필요한 전류를 받으면서 V_OL,A를 낮게 유지할 수 있는지, 동시에 수신기의 V_IL 아래로 출력이 내려가는지 확인해야 합니다. 둘 이상의 입력이 LOW이면 다이오드마다 전류가 똑같이 나뉜다고 가정하지 않습니다.

연결되지 않은 입력은 적극적으로 LOW를 만드는 경로가 아닙니다. 누설 전류와 이전 상태에 남은 전하에 따라 그 입력 전압이 달라질 수 있으므로, 입력이 열린 상태를 동작 표의 LOW로 취급하지 않습니다. 입력마다 구동 방식과 기본 바이어스를 정하고, 전원이 서로 다른 회로에 연결된다면 꺼진 입력 쪽으로 전류가 흘러 들어갈 수 있는지도 확인합니다.

표시등과 논리 입력을 함께 쓸 때의 선택

풀업 저항을 줄이면 LED 부하가 있을 때 V_OUT이 올라갈 가능성은 있지만, 한 입력이 LOW일 때 그 입력이 받아야 하는 전류도 커집니다. 따라서 10 kΩ을 작은 값으로 바꾸기 전에 입력 드라이버의 LOW 전압·허용 싱크 전류와 저항·LED의 전류 조건을 함께 계산합니다. 표시등이 꼭 필요하고 다음 디지털 입력에도 안정적인 전압을 보내야 한다면, 먼저 논리 노드를 고입력 임피던스의 버퍼(buffer)로 읽고 그 버퍼의 출력을 통해 LED를 따로 구동하는 방식을 검토할 수 있습니다. 버퍼를 넣어도 입력 임계값과 전원·전류 정격 검사는 필요합니다.

실제 회로에서 확인할 순서

  1. 전원을 끄고 세 다이오드의 막대가 A·B·C 쪽을 향하는지, 10 kΩ이 V+와 출력 사이인지, 470 Ω과 LED가 출력에서 접지로 직렬 연결되는지 확인합니다.
  2. V+의 최소·최대와 A·B·C 드라이버의 HIGH·LOW 보장 전압, LOW 싱크 전류, 수신기의 V_IH·V_IL을 해당 부품 자료에서 적습니다. LED의 순방향 전압은 실제로 흐를 전류와 온도 범위에서 확인합니다.
  3. 모든 입력을 확실하게 HIGH로 구동한 뒤 V+, V_OUT, 470 Ω 양단 전압을 잽니다. I_LED=V_470/470 Ω, I_PU=(V+−V_OUT)/10 kΩ으로 전류를 계산하고, 출력이 수신기의 V_IH 이상인지 봅니다. 밝기는 논리 HIGH의 증거가 아닙니다.
  4. A·B·C를 하나씩 LOW로 만들고 나머지는 HIGH로 둡니다. 각 상태의 입력 전압, 다이오드 양단 전압, V_OUT을 측정해 출력이 V_IL 이하인지, LOW 드라이버가 필요한 전류를 받는지 확인합니다. 두 개 이상 LOW인 조합도 확인합니다.
  5. 입력이 개방될 가능성이 있으면 그 상태를 따로 시험하고 기본 바이어스를 정합니다. 전원 투입·차단 때 다른 회로로 전류가 역류하지 않는지도 봅니다.

표시등이 켜지고 꺼지는 모습만으로는 이 회로의 논리 출력을 보증할 수 없습니다. HIGH에서는 풀업과 LED가 만드는 실제 동작점을, LOW에서는 입력 드라이버의 전류 수용 능력과 다이오드 전압을 각각 확인해야 합니다.