Video Course Review - 05. CDC (Clock Domain Crossing)

2025. 3. 28. 19:56·AI SOC COURSE/영상 처리
728x90

1. Title

Clock Domain Crossing 


2. Category

"Video Processing"

 

3. Key Concepts

 Clock Domain Crossing, FIFO, Frame Buffer, Metastable

 

4. Setup

OV7670, Basys-3로 구성된 시스템의 블록 다이어그램을 다시한번 살펴보자. Frame Buffr의 가운데 부분이 붉은 선으로 나눠져 있는데, 이는 Clock Domain Crossing (CDC) 이 발생하는 경계를 의미한다.

 

OV7670 카메라 모듈과 VGA 컨트롤러 (Basys-3 내부) 는 서로 다른 클록 도메인에서 동작하기 때문에 데이터 손실이나 메타스테이블 문제 없이 안정적으로 데이터를 넘겨주기 위해 CDC 처리가 필수적이다.

 

 

자료구조 (Array, Linked-List), 추상적 자료형 (Stack, Queue)

AI SOC COURSE - C PROGRAMMING & FIRMWAREC Programming1. Course Review C Programming Course Review2024.11.06 주요 학습 내용자료형 (Data Types)- 정수형, 실수형, 문자형 등 기본 자료형에 대한 이해- 각 자료형의 크기와 범

salmon1113.tistory.com

 

본 과정에서는 Dual Port RAM을 이용하여 Frame Buffer를 구현하였다.

module frameBuffer (
    // write side
    input  logic        wclk,
    input  logic        we,
    input  logic [16:0] wAddr,
    input  logic [11:0] wData,
    // read side
    input  logic        rclk,
    input  logic        oe,
    input  logic [16:0] rAddr,
    output logic [11:0] rData
);
    logic [3:0] mem[0 : (320 * 240 - 1)];

    // write side 
    always_ff @(posedge wclk) begin
        if (we) begin
            mem[wAddr] <= wData;
        end
    end

    // read side
    always_ff @( posedge rclk ) begin
        if (oe) begin
            rData <= mem[rAddr];
        end
    end
endmodule
728x90

'AI SOC COURSE > 영상 처리' 카테고리의 다른 글

Video Course Review - 04. OV7670 SCCB  (0) 2025.03.20
Video Course Review - 03. Up Scaling, OV7670  (0) 2025.03.19
Video Course Review - 02. Display Image (Lenna)  (0) 2025.03.18
Video Course Review - 01. VGA Port  (0) 2025.03.17
'AI SOC COURSE/영상 처리' 카테고리의 다른 글
  • Video Course Review - 04. OV7670 SCCB
  • Video Course Review - 03. Up Scaling, OV7670
  • Video Course Review - 02. Display Image (Lenna)
  • Video Course Review - 01. VGA Port
Dinoj
Dinoj
  • Dinoj
    AlOG
    Dinoj
  • 전체
    오늘
    어제
    • 분류 전체보기 (208)
      • Spice (2)
      • Python (19)
        • Pandas (0)
        • COMPUTER VISION (18)
        • Pytorch (1)
      • PCB 이론 (18)
        • PI (6)
        • SI (12)
      • 회로 이론 (44)
        • 기타 학습 (20)
        • UVM (Universal Verification.. (12)
        • AI HARDWARE (12)
      • PROJECTS (29)
        • AI 가속기 (10)
        • 영상 처리 (3)
        • UVM (Universal Verification.. (2)
        • CPU 설계 (5)
        • CMOS VLSI (2)
        • Verilog (2)
        • Firmware (2)
        • C 언어 (2)
        • 기타 프로젝트 (1)
      • Linux (20)
        • Embedded Linux (Rpi) (7)
        • Petalinux (7)
        • Linux 기초 (6)
      • AMBA BUS (16)
        • AXI BUS (5)
        • APB BUS (2)
        • Vitis (8)
      • AI SOC COURSE (53)
        • 영상 처리 (5)
        • SYSTEM VERILOG (CPU 설계) (20)
        • VERILOG 기초 (5)
        • CMOS VLSI (7)
        • FIRMWARE (9)
        • C PROGRAMMING (1)
        • Python (Keras) (6)
      • 코딩 지식 (5)
        • SYSTEM VERILOG (3)
        • TCL (2)
      • TISTORY (1)
  • 블로그 메뉴

    • 홈
    • 글쓰기
    • 관리
    • Info
  • 인기 글

  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
Dinoj
Video Course Review - 05. CDC (Clock Domain Crossing)
상단으로

티스토리툴바