__________

Designing the Future with Circuits

반도체 회로설계 취준기

Popular

하만(Harman) 세미콘 아카데미 71일차~ - SoC를 위한 Peripheral 설계(CPU, SoC, AMBA Bus, HandShake, AXI 프로토콜)

[2024.06.24~] 인천인력개발원1-1. H/W vs. S/W1-2. CPU(Central Processing Unit, 중앙처리장치)1-3. SoC(System on Chip) AMBA(Advanced Microcontroller Bus Architecture)ARM이 개발한 SoC 내부 IP(Intellectual Property)간 통신을 위한 표준 버스 프로토콜AMBA 프로토콜 종류 - APB(Advanced Peripheral Bus): 저전력&낮은 인터페이스 복잡도를 갖는 저대역폭 주변장치 연결을 위한 버스 프로토콜 - AHB(Adv. High performance Bus): CPU, DMA 컨트롤러, 메모리 등 고성능 IP간 통신을 위한 버스 프로토콜 - AXI(Adv. eXtensib..

[KLA] CSE 인턴 후기_최종탈락

오늘은 KLA 인턴전형 후기를 남겨보겠습니다!면접전형에서 최종 탈락했지만 각 전형 진행 방식이나 결과 발표 등 정보 공유하고자 합니다.채용 프로세스 [결과 발표일 포함] 1. 지원서 접수 [ 2024.11.11(월)~2024.11.25(일) ]2. 서류전형 결과 발표 [ 2024.11.28 (목) ]3. 온라인 인적성 검사 실시 [ ~2024.12.01(일) ]4. 전화영어 테스트 [ 2024.12.02(월) ]5. 인적성/전화영어 결과 발표 [ 2024.12.09(월) ]6. 면접 진행 [ 2024.12.12(목) ]7. 최종 발표 [ 2024.12.20(금) ] 작년 11월 24일까지 모집한 2025 KLA 동계인턴 CS Engineer 인턴십에 지원했습니다. 이전까지는 10명 이상 선발했는데 이번 ..

취업준비 2025.01.16 3

UART 설계(1) - Baud Rate Generator 설계

Baud Rate을 생성하고, Over Sampling을 하기 위한 코드 작성 (baud_rate_gen.v)oversampling을 위해 bit count를 진행해야 한다.첫 신호에서 start bit가 들어오면 bit_cnt_std 8번째에 샘플링을 시작하고, 그 이후부터는 16번째에 샘플링을 하면 data bit의 중앙에서 데이터를 샘플링할 수 있다, 1개의 baud rate 주기 안에 들어가는 clock의 개수를 구하기 위해서 baud rate 주기 / clk 주기 = clk freq / baud rate freq을 계산한다.위에서 계산한 값을 16으로 나누어 그 값을 bit count standard로 잡으면 이 기준의 16배가 baud rate의 주기가 된다.bit count standard만..

Verilog 2024.07.22 0

AXI 프로토콜 / HandShake

HandShake 방식HandShake란? - 통신 과정에서, 수신부와 송신부의 특정 조건이 맞을 때 정보가 교환되는 방식AXI에서의 HandShakeMaster와 Slave에서 Valid, Ready 신호를 이용하여 Handshake 진행 - Valid 신호: 데이터의 전송이 가능함을 알리는 Source의 신호 - Ready 신호: 데이터의 수신이 가능함을 알리는 Destination의 신호Valid와 Ready가 모두 HIGH일 때(Beat 상태) 데이터, 주소 등의 정보가 전송됨Source는 Ready 신호와 상관 없이 Valid를 1로 설정할 수 있으며, 이 값은 HandShake 발생 시까지 유지돼야 함AXI Read에서 HandShake Read Address 전송 과정1. Master가 AR..

자습시간

more

Pmod OLED 공룡 게임 만들기(3) - 최종

크롬 공룡 게임 구현 저번 게시글에 이어 마지막으로 Pmod KYPD와 Pmod OLED를 이용해 하드웨어 파일을 생성한 후, Vitis를 이용해 키패드로 동작하는 공룡 게임을 최종 완료했습니다. Vivado Process Vivado와 Vitis를 이용한 Pmod OLED 제어 [Pmod IP 이용]이번 게시글에서는 Digilent의 게시물과 IP 라이브러리를 통해 Pmod OLED의 데모 파일 구현을 진행합니다. 추후 이를 응용하여 Pmod OLED를 통해 다양한 기능을 구현할 예정입니다. Vivado, Vitis 이용방법semicon-circuit.tistory.com 이 게시글에서와 동일한 방법으로 Vivado Library에서 IP를 추가한 뒤, Pmod KYPD와 Pmod OLED를 추가하여 ..

Verilog 2025.02.20 0

Pmod OLED 공룡 게임 만들기(2)

이번에는 저번에 구현했던 비트맵에서 더 나아가 여러가지 이미지를 번갈아가며 화면에 나타내어 움직이는 듯한 모습을 구현하고자 합니다.저번에 사용했던 툴을 이용해서 공룡이 달리는 듯한 두 이미지를 생성하고, 이를 배열로 변환한 뒤 다음과 같이 코드를 작성해서 공룡이 뛰는 모션을 구현했습니다.더보기void Dino_Run() { OLED_ClearBuffer(&myDevice); OLED_MoveTo(&myDevice, 0, 0); // (0,0)에서 출력 시작 OLED_Update(&myDevice); // OLED 화면 업데이트 u8 *pat; char c; xil_printf("print dinosaur and cactus"); c = 1; while(1){ xil_pr..

Verilog 2025.02.17 0

Pmod OLED 공룡 게임 만들기(1) - 비트맵 이미지 구현

Vivado와 Vitis를 이용한 Pmod OLED 제어 [Pmod IP 이용]이번 게시글에서는 Digilent의 게시물과 IP 라이브러리를 통해 Pmod OLED의 데모 파일 구현을 진행합니다. 추후 이를 응용하여 Pmod OLED를 통해 다양한 기능을 구현할 예정입니다. Vivado, Vitis 이용방법semicon-circuit.tistory.com 지난 게시글에서 Vivado에서 Pmod IP를 이용해 하드웨어 파일을 만들고, Vitis로 Pmod OLED 데모 파일을 실행하는 과정까지 포스팅했습니다,이번 게시글에서는 이어서 직접 비트맵 파일을 Pmod OLED에 표시해보는 작업을 진행합니다. 앞으로 이 디스플레이를 이용해 구글의 공룡게임을 구현할 예정입니다. 먼저 공룡의 모습과 선인장을 픽셀로 ..

Verilog 2025.02.17 0

Vivado와 Vitis를 이용한 Pmod OLED 제어 [Pmod IP 이용]

이번 게시글에서는 Digilent의 게시물과 IP 라이브러리를 통해 Pmod OLED의 데모 파일 구현을 진행합니다. 추후 이를 응용하여 Pmod OLED를 통해 다양한 기능을 구현할 예정입니다. Vivado, Vitis 이용방법 Getting Started with Vivado and Vitis for Baremetal Software Projects - Digilent Reference digilent.com준비사항Vivado, Vitis 2023.2버전: 기존에 사용하던 2024.2버전으로는 호환이 되지 않아 해당 버전으로 수행했습니다.Digilent 보드 파일 다운로드아래의 파일을 다운로드 받아 압축을 해제한 뒤,\vivado-boards-master\vivado-boards-master\new\..

Verilog 2025.02.14 0