소개
이력 사항
現) 반도체 대기업 (CHIP 회로설계 4년차)
아날로그 IP / 디지털 시나리오 설계
A급 특허 출원
글로벌 외국 기업 엔지니어 기술 대응
前) 스타트업 인큐베이팅 업체 (MCU Firm-ware 설계)
前) 대기업 가전제품 업체 (All-in-one 정수기 생산 기술)
前) 중견기업 의료기기 업체 (CIS, DDI ASIC 설계)
CHIP 설계 취업/이직 충분히 도전할 수 있습니다.
저와 함께 CHIP 설계 취업/이직에 가까워지세요!
"반도체 아날로그/디지털 회로설계를 꿈꾸시나요?
대기업 S전자 현직자의 눈으로 기초부터 도와드립니다!"
반갑습니다! S전자에서 시스템반도체를 설계하고 있는 삼코치 입니다 :)
저는 스타트업에서부터 회로설계 직무에 도전하면서 많은 시행착오를 겪어왔습니다.
PCB 설계, F/W 설계, FPGA 설계, CHIP 설계를 구먹구구 식으로 경험했죠.
그런데 한 가지 아쉬움이 있었습니다.
'왜 회로설계 분야는 체계화된 실습 기회와 취업에 대한 정보가 적을까?'
반도체 공정, 프로그래밍 등의 분야는 콘텐츠가 많았지만, 회로설계는 정보가 적다보니 그저 '숨겨진 세상'이었습니다.
이 글을 읽는 회로설계 취준생분들 또한 저와 같은 답답한 심정을 느껴보셨을 겁니다.
그래서 현직자와 면담도 해보고, 교수님께 물어보고, IDEC 강의를 수강해보기도 하죠.
하지만 알들말듯 여전히 잘 모르는 경우가 대부분 입니다.
그.래.서! 제가 직접 취업까지 연결되는 체계화된 강의를 제작해 버렸습니다!
저는 [아날로그 회로-> 디지털 시스템 -> MCU 펌웨어 -> 드라이버 설계 -> 소프트웨어]를 모두 경험하면서,
'Top-down / Bottom-up'스킬을 통해 제품과 회로를 완벽히 설명해낼 수 있게 되었습니다.
그리고 인프런에서 실무적인 회로를 다루면서 '아날로그/디지털 회로'에 대해 저만의 직관적 해석 방법부터 Trade-off를 따지는 방법까지 모두 풀어드리려 합니다.
저와 함께 기초를 닦고, 실무 역량을 쌓아 자신만의 Chip 설계 Story를 만들어 가봅시다!
강의
전체 4로드맵
전체 1수강평
- 디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
- 디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
- 디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
- 아날로그 회로설계 실무 : Analog IP 설계와 성능 개선하기
- 회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
게시글
질문&답변
2024.10.17
QDR에 대한 질문
네 안녕하세요, 답변 남겨드립니다.DDR2와 GDDR5에서의 QDR(Quad Data Rate) 개념은 용어는 같지만, 적용 방식과 맥락에서 차이가 있습니다.DDR2의 QDRDDR(Double Data Rate) 메모리는 클럭의 상승 및 하강 엣지에서 데이터를 전송하여 데이터 전송 속도를 두 배로 증가시킵니다. DDR2는 이러한 DDR 기술을 기반으로 하여 성능을 향상시킨 것입니다. DDR2에서 QDR이라는 용어는 일반적으로 사용되지 않지만, DDR 기술의 발전으로 인해 데이터 전송 속도가 증가한 것은 사실입니다.GDDR5의 QDRGDDR5부터 적용된 QDR 기술은 시스템 클록(CK)과 데이터 클록(WCK)을 별도로 사용하여 데이터 전송 속도를 더욱 높이는 방식입니다. GDDR5는 시스템 클록의 두 배 속도로 데이터 클록을 설정하여, 클록 주기를 4배로 높이는 방식으로 작동합니다. 이로 인해 GDDR5는 데이터 전송 속도를 크게 향상시킬 수 있습니다. 결론적으로, DDR2에서의 QDR 개념은 DDR 기술의 발전을 의미하는 반면, GDDR5에서의 QDR은 시스템 클록과 데이터 클록을 별도로 사용하여 데이터 전송 속도를 극대화하는 구체적인 기술을 의미합니다. 따라서 두 기술은 같은 이름을 사용하지만, 실제로는 서로 다른 방식으로 작동하며, 각각의 메모리 기술의 특성과 요구 사항에 맞춰 설계되었습니다.
- 1
- 2
- 82
질문&답변
2024.10.17
TPSRAM 질문있습니다!
네 안녕하세요, 답변 남겨드립니다.1. https://www.inflearn.com/community/questions/1363460/tpsram-%EA%B5%AC%EC%A1%B0-%EA%B4%80%EB%A0%A8%ED%95%98%EC%97%AC-%EC%A7%88%EB%AC%B8-%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4이 질문과 답변 한 번 읽어보시면 이해가 되실겁니다!2. SRAM에서와 달리 ra(read address)에서 rd(read data)가 나오기까지 1클럭이 늦게 나오는 이유는 맞습니다. TPSRAM은 일반적으로 데이터의 안정성을 높이기 위해 플립플롭(Flip-Flop)을 사용하여 데이터를 버퍼링합니다. 이로 인해 읽기 동작이 1클럭 지연되는 것입니다. 즉, ra에서 rd가 나오기까지의 지연은 플립플롭을 거치는 과정에서 발생하는 것입니다.이러한 구조는 TPSRAM이 여러 포트를 통해 동시에 접근할 수 있도록 하면서도 데이터의 일관성을 유지하는 데 도움을 줍니다.
- 1
- 2
- 63
질문&답변
2024.09.05
Wrapper 사용하는 이유에 대해 궁금합니다.
네 안녕하세요, 답변 남겨드립니다.말씀하신것도 맞습니다. Wrapper를 사용하는 이유는 여러 가지가 있지만, 주로 다음과 같은 이유들 때문입니다:1. 코드의 간결성: Wrapper를 사용하면 인스턴스화 코드가 분리되어 있어, 코드의 가독성이 높아집니다. 이를 통해 복잡한 객체 생성 과정을 간단하게 관리할 수 있습니다.2. 유지보수 용이성: Wrapper를 통해 인스턴스화 관련 코드를 한 곳에서 관리할 수 있으므로, 나중에 수정이 필요할 때 해당 Wrapper의 정의 부분만 수정하면 됩니다. 이는 코드의 다른 부분에 영향을 주지 않고도 변경할 수 있게 해줍니다.3. 재사용성: Wrapper를 사용하면 동일한 인스턴스를 여러 곳에서 재사용할 수 있습니다. 이를 통해 코드 중복을 줄이고, 일관성을 유지할 수 있습니다.4. 의존성 관리: Wrapper를 통해 의존성을 명확하게 관리할 수 있습니다. 필요한 의존성을 Wrapper에서 정의하고, 이를 통해 인스턴스를 생성하면, 의존성 변경 시 Wrapper만 수정하면 되므로 관리가 용이합니다.5. 테스트 용이성: Wrapper를 사용하면 테스트할 때 Mock 객체를 쉽게 주입할 수 있어, 단위 테스트를 수행하기가 더 수월해집니다.결론적으로, Wrapper를 사용하면 코드의 유지보수성과 가독성을 높이고, 의존성 관리와 테스트를 용이하게 할 수 있습니다.
- 1
- 1
- 98
질문&답변
2024.09.03
V3 613mV 결정
제가 해당 시뮬을 돌릴 때 BJT를 다른 공정 파라미터를 사용해서 동일한 10uA임에도 불구하고 저는 613mV가 떳네요!10uA로 한 이유는 그것이 PMOS의 동작점을 잡을 때 적절한 전류이기 때문입니다!이에 대한 것은 네이버 카페에서 설명해둔 영상을 녹화하여 수강생 분들께 제공드리고 있습니다.그리고 두번째 질문은일단 예를 들어 저항값을 sweep하여 전압값을 확인할 수 있는 방법이 있긴 한데,https://www.youtube.com/watch?v=ZCMxT0EKF7M일단 임시로는 이 영상을 참고해보신다면 이해는 되실겁니다!말씀하신 기능에 대해서는 라이브 방송을 통해 한번 더 다뤄드릴 수 있도록 하겠습니다.혹시 네이버카페에 가입하여 등급업 하셨을까요?https://cafe.naver.com/samcoach위 카페에서 등급업 후, 과제 질문 게시판에 동일한 질문 남겨주시면 제가 한번 더 확인하여 방송으로 알려드리고 녹화본 전달드리겠습니다.!
- 1
- 2
- 94
질문&답변
2024.08.29
MEM/WB 질문 있습니다
안녕하세요! 답변 남겨드립니다!ALU 연산 결과와 Data Memory 접근 타이밍1. ALU 연산 결과: EX/MEM 레지스터에서 ALU의 결과는 다음 사이클에 MEM/WB 레지스터로 이동합니다. 이 부분은 맞습니다.2. Data Memory 접근: Data Memory에서 값을 가져오는 경우, EX/MEM 레지스터에서 주소를 받고, 다음 사이클에 Data Memory에서 값을 읽어옵니다. 이 값은 그 다음 사이클에 MEM/WB 레지스터로 이동합니다. 따라서, Data Memory에서 값을 읽는 경우는 다음과 같은 사이클이 소모됩니다: - 1 사이클: EX/MEM에서 주소를 Data Memory에 전달 - 2 사이클: Data Memory에서 값이 출력 - 3 사이클: 출력된 값이 MEM/WB 레지스터로 이동이 경우, Data Load를 수행할 때는 총 3 사이클이 소모됩니다. 따라서, ALU 연산 결과와 Data Memory 접근을 합치면, Data Load 명령은 총 5 사이클이 소모됩니다 (ALU 연산 1 사이클 + Data Memory 접근 3 사이클 + MEM/WB로의 이동 1 사이클). 사이클 소모의 차이- Instruction 별 사이클 소모 차이: 맞습니다. 각 명령어의 특성에 따라 소모되는 사이클 수가 다를 수 있습니다. 예를 들어, ALU 연산은 5 사이클이 소모되지만, Data Load는 5 사이클이 소모되며, Store 명령은 Data Memory에 값을 쓰는 과정이 포함되므로 추가적인 사이클이 필요할 수 있습니다.결론적으로, Data Load 명령은 5 사이클이 소모되며, 각 명령어에 따라 소모되는 사이클 수는 다를 수 있습니다.
- 0
- 1
- 65