분류 전체보기 53

[SoC 설계 및 프로그래밍] SoC 스마트 카메라

2025.1학기에 수강했던 SoC프로그래밍 결과를 정리한 내용 대부분의 임베디드 시스템은 MCU만으로도 충분히 구현할 수 있다.예를 들어, 단순한 C 코드를 실행하거나 외부 센서 데이터를 주기적으로 수집해 IoT 시스템을 구성하는 경우에는 굳이 FPGA와 같은 추가적인 하드웨어가 필요하지 않다.하지만 고속 데이터 처리가 필요한 입출력(IO) 상황에서는 이야기가 달라진다.예를 들어, 디스플레이에 실시간으로 화면을 출력하거나 카메라로부터 영상 데이터를 받아 처리하는 작업은 MCU로 구현하기 매우 어렵다.그 이유는 크게 세 가지다.카메라 데이터는 수십 MHz 이상의 픽셀 클럭으로 들어온다한 프레임에 수십만~수백만 개의 픽셀이 연속적으로 들어온다이 데이터를 한 클럭도 놓치지 않고 처리해야 한다즉, MCU처럼..

FIR필터 (1/2) - 필터계수와 C구현

필터는 말 그대로 특정 주파수를 거르거나 통과시키는 역할을 한다.디지털로 구현할 수 있는 필터는 크게 FIR와 IIR 필터로 나뉜다. 아날로그로 구현하는 필터들 (RLC회로)들은 피드백을 가지고 있으며, 임펄스응답은 무한의 길이를 갖는다. 이러한 피드백구조를 갖는 디지털필터를 IIR필터라고 하는데, 이 필터는 차수가 낮기 때문에 회로가 단순해지고 딜레이가 적지만, 위상측면에서 비선형성을 가진다는 것이 단점이다. 오디오, 이미지, 생체정보와 같은 현재 데이터의 보존이 중요한 경우 선형위상을 갖는 FIR필터를 사용하는게 이상적이다. 요약하자면(FIR)1. 유한한 시간안에 결과가 도출됨2. 피드백 없음3. 차수가 깊어질 수도 있음(정확도와 트레이드오프)4. 항상 안정적5. 계산량 아주많음 FIR필터가 선형위..

FFT (03.25)

1. DFT 분석● 연속 vs 이산 시간연속 시간: 주파수 1Hz의 회전 벡터이산 시간: 주파수 1 cycle/sample의 회전 벡터연속 시간에서는 주파수가 t에 따라 바뀌며 각각 다른 벡터이산 시간에서는 n=1,2,3...일 때 모두 같은 벡터가 반복됨● 주파수 해석의 차이연속 DFT: K번째 주파수 성분은 원래 주파수의 k배인 기저벡터와의 내적 (범위 제한 없음)이산 DFT: 단위원 상에서 1회전 기준으로 범위 제한됨 → 주기함수 형태로 반복결론: 이산 주파수 분석 결과는 주기성을 가지는 특성이 있음2. C 언어 구현 결과for (i = 0; i = 200 && i ● 복소수 자료형 정의 및 연산typedef struct { int r, i; // 실수부, 허수부} t_complex;void..

2024 COSS 차세대반도체 MCU 응용 경진대회 본선 1일차(2/2)

SPI, 스위치 모두 구현을 하지 못한 채로 숙소에 도착해서 밤새도록 관련 디버깅만 계속 했다...밤 12시쯤에 스위치 구현이 되었고 새벽 3시쯤인가에 dot matrix가 구현이 완료되었던 것 같다.그만큼 spi 통신 구현하는 것이 쉽지는 않았다. 2) dot matrixdot matrix를 구현하기 위해 spi통신을 활용해야 한다. 정확히는 dot matrix를 제어하기 위하여 spi를 사용하는 것이다.dot matrix는 switch matrix와 비슷한 방식으로 한줄씩 출력을 진행하는 것이다. 이 속도가 충분히 빠르다면 잔상효과로 인해 led가 동시에 들어와 있는 것처럼 보이는 것이다.이 dot matrix를 여러개 제어하기 위해서는 너무나 많은 pin이 필요한데, 이를 해결하기 위한 모듈이 MA..

2024 COSS 차세대반도체 MCU 응용 경진대회 본선 1일차(1/2)

이번 대회는 특이하게 대구엑스코에서 열리던데, 위치도 학교에서 가까워서 박스째로 오실로스코프, 인두기, 전원공급기, 함수발생기 등등 가져갈수 있는건 모두 다 챙겨서 가져갔다ㅋㅋ누구보다 준비물은 많이 챙겨갔을 꺼라고 자부했는데 다른학교 팀에서 컴퓨터 모니터째로 들고온 걸 보고 한 수 배웠다...근데 가보니깐 의외로 모든게 다 준비되어 있고 멀티미터나 오실로스코프같은 장비도 팀당 1대씩 주셨다.대회 전에 대회에 대한 정보는 거의 주지 않았고, 만능기판에 납땜을 해서 회로기판을 하나 만드는지, 브래드보드로 만드는지 정보도 없었기에 의문이 많았는데, 둘다 사용한다고는 생각 못했다. 주제는 피아노 visualizer였다.기존 장난감 피아노는 피아노를 입력하게 되면 그 입력값을 피아노 내부 회로로 받아오게 되고 그..

2024 COSS 차세대반도체 MCU 응용 경진대회 예선

https://github.com/hun7176/BIDOL_328 GitHub - hun7176/BIDOL_328: COSS projectCOSS project. Contribute to hun7176/BIDOL_328 development by creating an account on GitHub.github.com 여름방학에 참여한 co-week에서 되게 이 대회를 홍보를 많이 했었다. 엄청 큰대회인지, 이 스티커가 붙여진 물티슈를 나눠주시던데 5개정도 강제로 받은것 같다... IT 1호관 게시판에도 붙어있던데 홍보에 되게 진심인듯? MCU면 atmega나 stm32정도 다뤄봤으니까 해볼 수는 있겠다고 생각했는데 이게 전국단위 모집이라 실력자가 많이 나올것 같아서 고민을 꽤나 했다. 결국 경험을 쌓자..

SoC programming 실습(1/2)

프로젝트 생성 → Designing with IP Integrator → Program coding → program debuggingXilinx SDK(Software Development Kit)를 이용하여 실습을 해보자. 프로젝트 생성vivado에서 빈 프로젝트를 생성한다. Designing with IP IntegratorIP Integrator : system의 각 IP들을 계층적으로 통합하는 toolIP integrator → Create Block Design 버튼을 누르면이런식으로 gui환경 (design canvas)에서 block based design을 수행할 수 있다. 이번 실습에서는 zynq 프로세서를 불러오고 zynq프로세서에서 uart통신을 하는 실습을 진행할 예정이므로, de..

HW/System on Chip 2025.03.31