MATLAB 및 Simulink 교육

DSP for FPGAs

교육과정 세부 정보

본 3일 교육과정에서는 FPGA 패브릭 내 구현 측면에서 DSP 기초에 대해 다룹니다. 다양한 DSP 기법 및 알고리즘 구현과 관련된 리소스와 성능 비용에 대한 집중적인 설명이 제공됩니다. 본 과정의 주요 내용은 다음과 같습니다.

  • DSP 응용 프로그램을 위한 FPGA 하드웨어 및 기술 소개
  • DSP 고정 소수점 연산
  • 신호 흐름 선도 (signal flow graph) 기법
  • FPGA를 위한 HDL 코드 생성
  • 고속 푸리에 변환 (FFT) 구현
  • FIR, IIR 및 CIC 필터 설계 및 구현
  • CORDIC 알고리즘
  • LMS 및 QR 알고리즘을 포함한 적응형 알고리즘 설계 및 구현
  • 동기화 및 디지털 통신 타이밍 복구 기법

Day 1 of 3


DSP FPGA 하드웨어 소개

Objective: DSP와 FPGA를 소개합니다. 일반적인 FPGA 아키텍처를 이해하고 FPGA가 DSP 알고리즘 구현에 적합한 이유를 알아봅니다.

  • 이산 로직에서 FPGA까지 - 주요 이력!
  • 일반 DSP 시스템
  • DSP 코어와 프로세서 검토
  • 사용자 지정 ASIC와 준(semi) 사용자 지정 ASIC
  • 단일 칩 시스템(SOC)
  • FPGA 유연성과 기능
  • FPGA와 프로그래밍 가능한 DSP 비교

선형 시스템 DSP 알고리즘 검토

Objective: 샘플링 정리, 양자화, 푸리에 해석 및 디지털 필터 설계의 기본 개념을 살펴봅니다.

  • 에일리어싱 및 복원 필터
  • 샘플링 레이트 및 워드 길이
  • Z-영역 표기 및 기본 분석
  • FIR 필터와 IIR 필터
  • 디지털 필터 설계 및 사양
  • 오버샘플링 기법(시그마 델타)

FPGA 기술

Objective: 다양한 Xilinx FPGA제품군과 아키텍처를 살펴봅니다. Spartan 3과 Virtex-5 FPGA를 소개합니다.

  • FPGA 기술 로드맵
  • 클록 레이트, 데이터 레이트, 샘플 레이트
  • FPGA 메모리 및 레지스터
  • 입력/출력 블록 및 요구사항
  • 비트, 슬라이스, 구성 가능한 논리 블록
  • 비교 가능한 MIP 성능 등급
  • FPGA제품군과 소스

DSP 알고리즘의 FPGA 요소

Objective: DSP 슬라이스, 클록 리소스 및 전력 소모에 관해 알아봅니다.

  • 지연선 및 시프트 레지스터 빌드
  • FPGA의 RAM(메모리) 사용
  • 직렬에서 병렬로 , 병렬에서 직렬로
  • 채널 선택용 멀티플렉서
  • 전가산기, 캐리 로직, 가산기 트리
  • 곱셈기: 쉬프트 및 덧셈, ROM 기반
  • 효율적인 곱셈기 구현

DSP 연산 핵심

Objective: 고정소수점 이진 연산을 이해합니다. 연산 작업을 Xilinx FPGA 하드웨어에 매핑합니다.

  • 2의 보수 고정소수점 연산
  • 기본 가산기 및 곱셈기 배열
  • 나누기 및 제곱근 배열....쉽지 않음!
  • 워드 길이 문제와 고정소수점 연산
  • 포화와 wrap-around
  • 오버플로와 언더플로

신호 흐름 선도(SFG) 기법

Objective: 신호 흐름 선도를 사용하여 DSP 알고리즘의 표현을 검토합니다. Cut Set 메서드를 사용하여 타이밍 성능을 개선합니다. 병렬 FIR 필터 및 직렬 FIR 필터를 구현합니다.

  • DSP/디지털 필터 신호 흐름 선도
  • 대기 시간, 지연, "anti-지연"!
  • 타이밍 재지정: Cut-set 및 지연 스케일링
  • 전치(transpose) FIR
  • 파이프라인 구성 및 다중채널 아키텍처
  • FPGA의 SFG 토폴로지

Day 2 of 3


주파수 영역 처리

Objective: 고속 푸리에 변환의 이론과 FPGA 구현을 다룹니다.

  • DFT, FFT, IFFT
  • FFT FPGA 아키텍처
  • FFT 워드 길이 증가 및 정확도

FPGA의 멀티레이트 신호 처리

Objective: 멀티레이트 필터의 효율적인 구현을 위한 다상 구조체를 개발합니다. 보간과 데시메이션을 위해 CIC 필터를 사용합니다.

  • 업샘플링과 보간 필터
  • 다운샘플링과 데시메이션 필터
  • FIR 구현의 효율적인 연산
  • 적분기와 미분기
  • 반대역 필터, 이동평균 필터, 콤(Comb) 필터
  • CIC 필터(Hogenauer)
  • IIR 필터링의 효율적인 연산

CORDIC 기법

Objective: 다양한 삼각 함수 계산을 위한 CORDIC 알고리즘을 소개합니다.

  • CORDIC 회전 모드 및 벡터 모드
  • 코사인 및 사인 함수 계산
  • 벡터 크기 및 각도 계산
  • FPGA 구현의 아키텍처

Day 3 of 3


적응형 DSP 알고리즘과 응용

Objective: 적응형 신호 처리에 사용하는 LMS 알고리즘을 소개합니다. 재귀적 최소제곱(RLS) 기법으로서의 QR 알고리즘을 보여주고 이 알고리즘이 특별히 FPGA 구현에 적합한 이유를 알아봅니다.

  • 적응형 응용(평활화, 빔 형성)
  • LMS 알고리즘과 병렬 구현
  • Non-canonical LMS 알고리즘
  • 선형 대수 - 선형 연립방정식 풀기
  • 적응형 신호 처리를 위한 QR 알고리즘
  • QR 처리 요구사항과 수치해석적 문제

DSP 지원 통신 및 FPGA

Objective: 직교(quadrature) 변조와 펄스 성형을 살펴봅니다. 수치 제어 발진기의 구현을 다룹니다.

  • 4진 위상 편이 변조(QPSK)
  • 송신/수신 필터 - 제곱근 올림 코사인
  • 언더샘플링 및 디지털 하향 변환
  • 직접 디지털 상향 변환
  • 디지털 IF 단계(및 fs/4 시스템)
  • 수치 제어 발진기(NCO)
  • FPGA의 설계 분할

타이밍 및 동기화 문제

Objective: 심볼 타이밍 복구, 반송파 위상 복구, 반송 주파수 복구 및 프레임 동기화를 다룹니다.

  • 반송파 복구, squaring 루프와 Costas 루프, PLL
  • 위상 회전 - 샘플링 레이트 변환
  • 심볼 타이밍 복구, early/late 게이트 감지
  • DLL(delay locked loop) 타이밍과 동기화

수준: 고급

수강자 필수조건:

기간: 3 일

언어: English