Ti의 LM2776은 2가지 모드를 가지고 있어서 40mA보다 적게 소모할 때에는 낮은 주파수로 스위칭 하면서 적은 전력을 소모한다. 하지만 리때 리플전압이 급격하게 증가한다. 온도에 따라서도 급격하게 변화할 수 있고 사용전류량의 변화에 따라서도 급격하게 변화할 수 있다. 주의해야한다.
이렇게 리플이 많이 발생하는 경우 캐피시터를 크게 단다고 해도 해결되는 한계가 있다.
해결을 위해서 뒤에 레귤레이팅을 더 해주는 옵션을 생각해볼 수 있지만 .레귤레이터 입력과 출력전압의 차이가 적을수록 노이즈 성분은 거의 그대로 통과할 가능성이 높다. 따라서 설계에 주의해야함.
LM27761은 LDO를 내장해서 리플을 줄인 베품이다. 대신 가격이 좀 더 비싸다. 그래도 외부LDO로는 구현하기 어려운 수준의 리플전압을 구현했다.
LM27762는 음전압 외 양전압도 LDO를 거쳐서 제공한다. 양전압이 필요하다면 사용을 고려해 볼 수도.
---
LM7705
-0.232V 를 발생시키는 칩. 외 이런 애매한 전압이 필요한가?
GND라고 해도 회로가 GND까지 안내려가는 경우가 발생한다. op-amp가 0을 출력하지 못한다거나.
어떤 물리량(物理量)이 현재의 물리 조건만으로는 결정되지 않고, 그 이전에 그 물질이 경과해 온 상태의 변화 과정에 의존하는 현상. 이것이 현저하게 나타나는 것에는 강자성체(强磁性體)의 자화(磁化), 탄성의 변형 등이 있음.
"그 물질이 경과해 온 상태의 변화 과정에 의존하는 현상"
이건 과거 수치를 피드백 받아서 현제 상태가 결정된다는 그런 의미로 들린다. 실제로 op-amp에 피드백 루프를 추가해서 설명하고있기도 하다. 하지만 electronic에서 hysteresis는 저런 정의만 가지고는 이해가 잘 안된다.
문제상황이 무엇인지 살펴보자.
비교기는 입력 값과 threshold 값을 비교해서 출력을 하게된다. 입력 값이 threshold를 한번에 지난다면 좋겠지만 입력 값이 느리게 변한다고 할 때 (혹은) 노이즈로 인해 입력값이 threshold 값 주위에서 왔다갔다 하게 된다. 그러면 의도치 않은 비교출력을 하게된다. 이러한 상황은 출력 값의 오실레이팅이나 출력기기의 chattering을 발생시킬 수 있다.
원인
threshold가 구간이 아닌 한 지점으로 되어있기 때문에 이러한 문제가 발생한다. 위의 문제상황에서 보통은 피드백 루프를 통한 지연을 통해 노이즈로 인한 출력을 억제할 수 있지만 입력신호의 값이 워낙 천천히 바뀌는 경우라면 일정 시간의 지연만으로는 문제를 해결할 수 없는 경우가 생긴다.
해결방법
threshold가 구간을 가지도록 한다. 예를들면 on-threshold는 높게, off-threshold는 낮게 설정해두면 on 되고나서 작은 값의 변화에 의해 off되거나 하는 경우가 없어지게 된다. 반대의 경우도 마찬가지.
자세한 내용은 생략하겠지만(영상에 잘 나옴) op-amp에 저항을 적절히 달아서 두 개의 threshold 구간을 만들어주는 것이 포인트.
회로나 소자 내에 hysteresis가 있다는건 슈미트트리거가 있다는 것과 동일한 표현이다. 지금까지 슈미트 트리거는 알면서 hysteresis는 모르고 있었다니...
느리게 변한다고 하는 예시가 꼭 초, 분단위의 시간을 의미하는 것은 아니다. 디지털 로직에 따라서는 수us내로 조절해주어야하는 경우도 있기 때문에 느리다는 것은 스팩보다 느린것을 의미하는 상대적 표현임을 유의하자.
결국 EEVBlog로 향하게 된다. 이렇게 깔끔하고 종합적으로 세세한 내용까지 다 다뤄주는 매체가 많지 않다. 있다면 몇몇 칩 회사의 문서 정도?
전원 제어용으로 FET 많이 사용(여기서는 고속제어용 FET 이야기는 아님. FET-RF 라고 분류되어있는 것을은 GHz대역까지도 사용 가능한 FET. FET은 일반적으로 C 성분이 있어서 on 타임이 필요한데 이를 어떻게 잘 해결한 부류)
고전류를 핸들링 할 수 있고 제어에 따른 전류량이 매우 작아도 되기 때문에 유리한 곳이 있다.
(확인은 안했지만 )일반적으로 BJT에 비해 전류량 대비 저항이 작아서 발열이 적은 장점도 있다.
문제는 GS(Gate-to-Source) 전압이다. 아주 잘 봐야한다.
데이터쉬트 Electrical Characteristic 에는 온도에 따른 Min, Typ, Max 값을 적어두지만 대부분 수백 uA의 작은 전류량을 기준으로 한다. 그렇기 때문에 실제로 사용해야하는 전류량에 따른 Gate 전압을 확인할 필요가 있다.
https://electronics.stackexchange.com/a/56846
(본문에는 풀업, 풀다운을 할 경우 필요한 저항 용량에 대한 고려도 적어주었다. 친절 ㅎㅎ)
데이터쉬트 Electrical Characteristic 아래쪽에 위치한 특성 그래프에서 해당 내용을 확인할 수 있다.
따라서 선택한 FET이 원하는 전류량과 제어전압을 맞출 수 있는지 확인해야한다.
1.8V나 3.3V 로직을 사용하는 경우는 특히 더 유의해야한다. 이런경우 보통은 FET을 바로 제어하지 않고 TR을 사용해서 FET을 제어하는 방식으로 많이 구현한다.
남은 문제는 발열 문제이다. 무조건 0.7V씩 걸리는 TR에 비하면 매우 낮은 저항값=>저발열이지만 발열량에 따른 패키지 타입과 PCB 패드 설계등에 대한 자료를 찾기가 쉽지않다. 어떤 패키지에서 어느정도 W 까지 별 문제가 없는지. 여기에 해당하는 자료는 좀 더 찾아봐야겠다.
Rds On 값은 전류가 흐를 때 FET가 가지는 DS간 내부저항이다. 보통 수 mOhm에서 수백 mOhm까지 있는데 발열을 신경써야하는 전류량이라면 낮을수록 좋다. (디지키에서 보면 0.n mOhm부터 수백Ohm까지 제품이 분포하기는 하는데 수백Ohm짜리를 일반적으로 사용하지는 않을테고... 특별한 경우가 아니면 수십mOhm정도. 신경써야한다면 수mOhm정도면 왠만한 케이스들은 다 커버 가능할 것)
V=IR로 FET에 걸리는 전압 구하고 거기에 전류를 곱하면 발열량이 나온다.
예를 들어 5V 3A를 제어한다고 치고 Rds가 0.030Ohm이면 0.27W의 발열량을 갖는다.
소자 온도가 125도를 넘기지 않도록 설계한다고 할 때 463°C/W 보다 낮은 값을 가지는 패키지를 선택해야한다는 걸 알 수 있다.
일단 http://www.rohm.co.kr/web/korea/tr_what7 여기 자료를 기준으로 판단한다면 상당수의 소형 패키지(SOT-23)들은 최대전류 근처로 동작시킬 수 없다는 결론이 나온다. (발열패드가 있는 TO-252같은 경우는 괜찮지만 별도의 방열대책이 불가능한 SOT-23의 경우에는 일정전압 일정전류 이상으로는 사용이 불가)
THERMAL RESISTANCE 라는 검색어로 검색하면 관련 데이터가 좀 나온다.
설명과 pcb 패드에 따른 온도 자료 https://www.infineon.com/dgdl/smdpack.pdf?fileId=db3a304330f6860601311905ea1d4599
가장 많은 소자에 대한 테이블이 있는 자료 https://www.njr.com/semicon/package/thermal.html
결과적으로 예시로 든 상황에서는 SOT-23의 경우 125°C 기준으로 0.38W, TO-252의 경우 0.98W까지 가능하다. 어느쪽을 택해도 되겠으나 부품이 높은 온도로 유지되는 것은 원하지 않기 때문에 TO-252패키지를 선택하는게 나아보인다.
(단순히 최대 용량대비로 °C를 구하는 건 아닌 것 같다. 대기온도를 어떻게 적용시키는 건지 모르겠다. 25°C 기준 100°C 상승분에 대해만 계산하면 되는 것인가)
ARM cortex-M 시리즈에 TCM에 관한 내용이 나온다 캐시는 hit과 miss 시에 데이터 접근 시간이 다르기 때문에 동작 시간을 정확하게 예측해야하는 몇몇 임베디두 시스템에서는 캐시의 사용이 문제가 된다. 그래서 캐시 대신 TCM을 사용한다.
TCM은 fast sram으로 구성되어있다고 한다. 캐시와는 다르게 별도의 주소공간을 가지고 매핑되어있다. 빠른 접근이 필요한 데이터를 별도주소공간의 sram에다가 써서 사용하겠다는 것과 같은 의미인 것 같다. 결과적으로 보면 external주소에 외부 sram을 다는 것과 별 차이가 없어보인다. Fast sram이라고는 하지만 보통 1~2백MHz대의 클락에서 sram은 원래 한사이클만에 데이터를 받아올 수 있지 않나? 주로 인터럽트 처리 관련 데이터를 저장하는데 사용할 수 있다고 한다. 컴파일러랑 프로세서 자체가 알아서 잘 처리하므로 유저가 직접 건들필요는 없지 싶었은데 공식문서 설명하는걸 보면 사용자가 필요한 경우에 직접 작성해주어야 하는 부분인가? dram을 붙이기도 하는 m7시리즈면 이해가 되기도 하지만 보통 메모리가 필요하면 외부에 sram을 달면 될텐데 외부 sram은 접근하는데 사이클이 더 필요한가봄
결론. 캐시 사용으로 인한 처리시간 불확정성 제거 캐시를 사용하지 않지만 주요 데이터를 내부 sram에 저장하므로 외부 메모리 접근으로 인한 성능 저하 감소
따져보면 캐시랑 비슷한 점이 별로 없다 외부메모리로 쓰지도 않고. 그냥 좀 느린 레지스터라고 해야. cp. 스택오버플로 질답 ARM공식문서