본문 바로가기

전체 글100

[종합 분석] 반도체 시장 - 메모리 & 시스템(비메모리) Global Semiconductor Market Revenue, 2016 - 2022 먼저 반도체 시장 규모를 살펴보면 2016년 부터 2020년 까지 44%가 성장했다. 그리고 2022년까지 14%가 증가한 5700억 달러(약 600조)를 전망하고 있다. IT, 자동차, 바이오, 헬스케어 등과 비교해서 어마어마한 시장 규모이다. 출처: www.t4.ai/industry/semiconductor-market-share Global Semiconductor Market Share by Vendor, 2019 그럼 반도체 시장은 어떤 Vendor들이 어떻게 파이를 먹고 있는 지 살펴보자. Intel >> 삼성 전자 >>>> SK 하이닉스 > Micron > Broadcom > Qualcomm 순이다. 그리.. 2021. 4. 17.
Image Stabilization, 손떨림방지의 방식들 전자식 손떨림 방식 (EIS - Electronic Image Stabilization) 전자식 손떨림 보정 기능으로, 소프트웨어로 흔들림을 보정하여 선명하게 가공하는 기능이다. 물리적인 방식이 아니기에 원가나 구현 난이도 측면에서 낮은 편이나 빛이 부족한 어두운 곳에서는 잔상이 심하게 발생하는 단점이 있다. 이 기술을 사용한 대표적인 카메라로는 고프로 6이 있다. 광학식 손떨림 방식 (OIS - Optical Image Stabilization) 렌즈를 설계하면서 특정 광학군이 보정 광학군의 역할을 하도록 설계하여, 그 광학군을 이동시켜 흔들림을 보정한다. 렌즈 안에 작은 모터가 있어서 자이로 센서의 반대 방향으로 렌즈를 살짝 움직인다. 아주 작은 각이지만 렌즈로 볼 때는 큰 각 변화가 있다. 따라서 .. 2021. 4. 15.
[기초 개념] Verilog 문법 한눈에 보기 Verilog 문법 1) The module keyword - 보통 파일 1개에 module 1개만 (module – endmodule은 한 세트) 2) 규칙 - Always 함수 안에는 wire 타입에 값을 넣을 수 없음 (보통 clk이 변경되었을 때 always 함수 안을 수행하므로 같은 clk base인 reg를 사용해서 문제 발생 안함) - Assign은 특정 파라미터에 값을 지정해줄 때 쓰는데 이는 wire 타입만 가능함 (reg 타입 불가) 3) 보통 코드 구성 방식 - Module문 시작 - Input, output 파라미터 선언 - Always 함수 생성 - 그 안에 if, for, while, case, repeat 등 사용 ※Verilog 코드 예시 module reg_adder ( i.. 2021. 4. 12.
Vivado로 FPGA 설계 예시 - Frame grabber 실습 예시 1) 실습 도구 Euresys CXP2.0 B’D (PC3603) FPGA Chip Xilinx Kintex Ultrascale XCKU035 (91% DSP, 82% FF, 74% LUT and 56% BRAM resources) (2GB capacity, 12GB/s bandwidth, shared on-board DRAM memory) 2) 구현 기능 Pixel Threshold 3) 메인 파일 정보 CustomLogicPkt.vhdp (VHDL 사용) Size: 2,761 KB 기본 실습 보드와는 차원이 다른 개수다. (실습 보드는 10개 내외) 카메라 FPGA 칩과 비교해도 고해상도 & CXP 조합에서 볼 수 있는 정도의 개수다. 4) Source - CustomLogicTop: FP.. 2021. 4. 11.
Vivado 프로그램 이란? Vivado 프로그램이란? FPGA의 IDE로써 Verilog 혹은 VHDL 언어로 작성한 코드를 시뮬레이터, 합성, 파일 추출까지 할 수 있다. FPGA 칩은 크게 Xilinx와 Intel(Altera 인수)가 있으며 Vivado는 Xilinx사의 칩을 사용할 때만 이용 가능하다. Flow Navigator 정리 위에서부터 아래로 순서대로 실행하면 내가 작성한 코드를 bitstream으로 만들 수 있다. 1) Project Manager 프로젝트 관련 설정 및 소스 코드 관리, Xilinx IP 관리 등을 할 수 있다. 간단히 프로젝트 관련 설정 내용이 다 모여 있다고 보면 된다. 2) IP Integrator IP를 가져다 블록 다이어그램을 서로 연결하는 방식으로 전체 디자인을 구성하고 싶을 때 사용.. 2021. 4. 11.
FPGA 란? (구조, 요소들의 기능) FPGA 란? FPGA 구동 설계를 하기 위한 아래 3가지 요소가 있고 Block RAM(일명 BRAM)으로 일컸는 메모리가 있다. 1) Logic Blocks (or CLB) - Flip-flops - LUTs - Multiplexer 2) Programmable interconnect (배선) - 코딩으로 자유롭게 수정/설정 가능 3) I/O Blocks - Physical 방식: ex. 전압 강하, 임피던스 매칭.. - Logical 방식 4) Block RAM 5) CMT (Clock Management Tile) - IP Catalog의 clock wizard를 통해 생성함 - MMCM: Mixed-Mode Clock Manager - PLL: Phase Locked Loop https://ww.. 2021. 4. 11.
[기초 개념] Verilog 파라미터, 상수 총 정리 Verilog는 module로 시작해서 endmodule로 끝난다. Verilog에게 module은 C언어의 function과 유사하다. 포트 신호의 방향 input: 외부에서 모듈로 입력되는 신호의 방향을 의미 output: 모듈 내부에서 외부로 출력되는 신호의 뱡향을 의미 inout: 모듈의 외부와 내부의 양쪽 방향으로 소통이 가능한 신호의 방향을 의미 포트 신호의 타입 Wire (상위 개념이 net): - represent physical connection - 값 전달 위주의 전기적인 연결선의 역할 Reg (상위 개념이 variable): - represent abstract storage element (Register) - 값을 기억하는 소프트웨어의 변수와 유사한 역할 Verilog data.. 2021. 4. 11.
[기초 개념] Verilog, SystemVerilog 란? Verilog 란? - Verilog is not a software language. - Verilog is a Hardware Description Language(HDL). - RTL coding - ASIC or FPGA의 논리 회로를 설계하기 위한 언어. - 논리 회로를 설계하는 것이므로 Timing 속도, 소모 전력 등의 성능 구현하는 것이 주가 됨. SystemVerilog 란? - Testbench(검증용 코드)에 사용되는 언어. - Verilog의 문법보다 좀 더 Software language에 가까움. ASIC 설계에서 중요한 요소 2가지 1) 얼마나 빠른 Timing으로 정확하게 수행하는 가? 2) 얼마나 Low power로 수행하는 가? Running the ASIC develop.. 2021. 4. 11.