검색결과 리스트
글
Open collector, Open drain
이를 이해하기 위해서는 먼저 아래의 [기초 강의]에서 설명한 TTL 및 CMOS의 기본 원리나 [집중 분석]에서 설명한 토템폴(totem-pole) 방식을 이해하여야 한다.
일반적인 TTL 소자는 출력간의 회로가 토템폴 방식으로 되어 있어서 출력단을 구성하는 2개의 트랜지스터중에서 항상 1개가 ON 상태를 유지한다. 즉, 출력이 "H" 상태인 경우에는 상위 트랜지스터가 ON되어 출력전류가 안에서 밖으로 흘러나오는(source current) 동작을 수행하고, 출력이 "L" 상태인 경우에는 하위 트랜지스터가 ON되어 출력전류가 밖에서 안으로 흘러들어가는 (sink current) 동작을 수행한다.
CMOS 소자의 경우에도 트랜지스터가 바이폴라 트랜지스터 대신에 FET로 바뀌고 출력단 회로가 약간 다른 것을 제외하면 기본적으로는 이와 같은 동작을 한다. 즉, CMOS의 경우에는 TTL에서처럼 출력단 회로에서 저항이나 다이오드가 없이 단순히 상위 및 하위에 1개씩의 FET로만 구성된다. 이 CMOS의 경우에도 상위 및 하위 트랜지스터는 반드시 1개만 ON되는데, CMOS(Complementary MOS)라는 말은 바로 이를 가리킨다. 즉, 2개의 트랜지스터중에서 1개가 ON되면 반대로 나머지 1개는 반드시 OFF되는 출력단 구조를 상보형(complementary) 구조라고 부르는 것이다.
이러한 개방 콜렉터나 개방 드레인형의 디지털 소자를 사용할 때는 잘못하면 회로가 정상적으로 동작하지 않는 것은 물론이고 소자가 소손되어 망가질 수 있으므로 매우 주의해야 한다.
위의 <그림 1>에서 처럼 1개의 디지털 소자 출력이 여러개의 부하를 구동하는 것은 팬아웃만 초과하지 않으면 아무 문제가 없다. 팬아웃은 쉽게 말하면 부하를 구동할 수 있는 전류 용량이며, 이 용량의 범위내에서는 올바른 디지털 출력전압 레벨을 보장할 수 있게 된다.
그러나, <그림 2>의 경우처럼 여러개의 출력을 묶어서 1개의 부하에 연결할 필요성이 있을 때는 함부로 이렇게 하면 안된다. 그 이유는 출력단 회로의 동작원리를 생각하면 쉽게 알 수 있다. 즉, <그림 3>을 보라. TTL 소자의 경우에는 <그림 3>의 왼쪽에 해당하는데, 이때에도 1개로 묶여져 있는 모든 소자의 출력단이 항상 모두 "H" 상태나 "L" 상태를 유지한다면 별 문제가 없다. 그러나, 일반적으로 이 출력단에는 "H" 상태를 가지는 것과 "L" 상태를 가지는 것이 공존하게 될 것이다. 그렇게 되면 이들 출력단이 선으로 직접 접속되어 있으므로 곧바로 단락회로가 되어 "H" 출력단에서 흘러나온 큰 단락전류가 전류가 "L" 출력단으로 흘러들어가게 된다. 이러한 상황이 오래 방치되면 출력단의 트랜지스터들을 파괴시킬 수도 있을 것이다. 물론 토템폴의 출력단에는 윗쪽 트랜지스터의 콜렉터측에 직렬저항이 있지만 이는 수십Ω 이하의 매우 작은 값이므로 사태를 해결할 수 있는 정도가 되지 못한다.
이러한 최악의 상황은 <그림 3>의 오른쪽과 같은 CMOS에서도 마찬가지로 발생할 수 있다. CMOS의 경우에는 그나마의 직렬저항도 없으므로 더욱 큰 단락전류가 흐르게 될 것이다.
그러면 이러한 사태를 방지하려면 어떻게 해야 하는가? 그것은 2가지로 설명할 수 있다.
첫째로, 일반적인 디지털 소자는 출력을 이와 같이 직접 접속하면 안된다. 논리적으로는 출력을 이렇게 묶으면 이는 부논리로 OR의 기능을 수행하므로 배선논리 OR(wired-OR)라고 하는데, 이를 사용하려면 그에 합당한 조건이 필요하다.
둘째로, 꼭 이러한 wired-OR 회로를 사용해야 한다면 출력단이 전원단락을 일으키지 않는 구조를 가지는 디지털 회로를 사용하는 것인데, 이러한 출력단 회로에는 개방 콜렉터/개방 드레인형의 방식과 3상태(3-state) 방식이 있다.
TTL에서 개방 콜렉터 방식으로 사용한 예를 <그림 4>의 왼쪽에 보였다. 그림에서 보듯이 개방 콜렉터 구조에서는 위쪽의 트랜지스터가 없고, 아래쪽 트랜지스터의 콜렉터가 그대로 밖으로 개방되어 출력되는 구조를 가진다. 따라서 여러개의 출력을 직접 접속하더라도 단락의 위험이 없어지게 된다. 여러개의 출력중에서 단 1개라도 "L" 상태이면 다음단의 입력은 "L"로 결정된다.(부논리로 OR) 그러나, 이들 출력이 모두 "H" 상태라면 이는 실제로 "H"가 되지 못하므로 다음단의 입력은 "H"나 "L"로 되지 못하고 부동상태(floating state)에 있게된다. 따라서, 이러한 바람직하지 않은 결과를 방지하려면 개방 콜렉터형의 wired-OR 회로에서는 반드시 이 묶여진 출력단을 수KΩ 정도의 저항으로 +5V 전원에 풀업(pull-up)시켜 주어야 한다.
CMOS에서는 똑같은 상황을 개방 드레인이라고 부르며, 역시 이에 관한 회로를 보이면 <그림 4>의 오른쪽과 같다.
이러한 개방 콜렉터나 개방 드레인 회로가 사용되는 전형적인 예는 여러개의 주변장치가 CPU에게 인터럽트를 요구하는 인터럽트 신호선이다. 대부분의 마이크로프로세서에서 인터럽트 신호선은 low active로 되어 있으며, 이 경우에는 개방 콜렉터나 개방 드레인 회로가 그대로 적용될 수 있는 것이다.
한편, 이처럼 출력단을 1개로 묶어 사용하는 것은 3상태 회로를 사용하여 구성할 수도 있다. 그러나, 이 경우에는 모든 출력단을 하이 임피던스 상태(Z)로 disable시켜 놓았다가 필요할 때마다 다음 단의 입력으로 연결하고자 하는 출력단 1개만을 enable시키는 방법으로 제어해야만 한다. 이러한 예는 마이크로프로세서 시스템에서 모든 칩선택 신호들이 주변장치들중에서 오직 1개만을 데이터 버스에 선택적으로 접속하는 동작이 이에 해당하며, RS-485 통신에서의 수신부 회로에서도 이러한 구조가 적용됨을 찾아볼 수 있다.
이상에서 보았듯이 개방 콜렉터/개방 드레인 구조나 3상태 구조를 가지는 소자는 일반 상보형 동작을 수행하는 디지털 소자와 매우 다르게 사용된다. 따라서, TTL이나 CMOS 소자들에서는 이러한 특이 출력형의 소자들을 나머지의 일반 소자들과 엄격히 구분하여 표시하고 있다. 예를 들면 6개의 인버터를 포함하는 7404는 "Hex Inverter"라고 부르지만, 이것의 개방 콜렉터형인 7405는 "Hex Inverter with Open-Collector Outputs"라고 부른다.
[출처] 오픈 콜렉터와 오픈 드레인 방식이란 무엇인가|작성자 라이더
'Learning stuff' 카테고리의 다른 글
Converters (0) | 2012.04.12 |
---|---|
OP AMP의 기본동작 (1) | 2012.04.11 |
schmitt trigger (0) | 2012.04.11 |
Monostable (0) | 2012.03.24 |
낸드으 플래시_1 (0) | 2012.03.13 |