MATLAB 和 Simulink 培训

课程详细信息

本课程为期三天,从 FPGA 结构内实现的角度回顾了 DSP 基础。本课程尤其重点介绍了与实现各种 DSP 技术和算法相关的资源和 性能成本。

内容包括:

  • 介绍 FPGA 硬件以及适用于 DSP 应用程序的技术
  • DSP 定点运算
  • 信号流图技术
  • FPGA HDL 代码生成
  • 快速傅里叶变换 (FFT) 实现
  • 设计和实现 FIR、IIR 和 CIC 滤波器
  • CORDIC 算法
  • 设计和实现 LMS 和 QR 算法等自适应算法
  • 同步和数字通信定时恢复技术

Day 1 of 3


Introduction to DSP FPGA Hardware

Objective: Provide introduction to DSP and FPGA. Understand general FPGA architecture and why FPGAs are uniquely suited to the implementation of DSP algorithms.

  • From discrete logic to FPGAs -some history!
  • The generic DSP system
  • DSP cores and processors review
  • Custom and semi-custom ASICs
  • System-on-chip (SOC)
  • FPGA flexibility and functionality
  • FPGAs vs Programmable DSPs

FPGA Fundamental Concepts

Objective: Review the fundamental Concepts of FPGA-based implementations.

  • Timing and critical path issues
  • Pipelining
  • Arithmetic implementation: multiply and add
  • Parallel and serial implementations
  • FIR Filters

FPGA Technology

Objective: Explore different AMD FPGA families and architectures. 

  • The FPGA technology roadmap
  • Clocking rates, data rates, and sample rates
  • FPGA memory and registers
  • Input/output blocks and requirements
  • Bits, Slices, and Configurable Logic Blocks
  • FPGA Families 

DSP Arithmetic Essentials

Objective: Understand fixed point binary arithmetic. Map arithmetic operations to AMD FPGA hardware.

  • 2's complement fixed point arithmetic
  • Full adders and multiplier cells
  • Division and square root implementation
  • Wordlength issues and Fixed point arithmetic
  • Saturate and wraparound
  • Overflow and underflow

Signal Flow Graph (SFG) Techniques

Objective: Review the representation of DSP algorithms using a signal flow graph. Use the Cut Set method to improve timing performance. Implement parallel and serial FIR filters.

  • DSP/Digital Filter Signal Flow Graphs
  • Latency, delays, and "anti-delays"
  • Re-timing: Cut-set and delay scaling
  • The transpose FIR
  • Pipelining and multichannel architectures
  • SFG topologies for FPGAs

Digital Filtering

Objective: Explore the different filter topologies

  • Low pass, high pass, band pass, and band stop
  • FIR, IIR, Adaptive
  • Impulse Response
  • Frequency Response

Day 2 of 3


Recursive DSP Retiming (IIR and LMS)

Objective: Review the retiming of parallel DSP signal flow graph architectures with feedback loops

  • IIR
  • Adaptive LMS
  • Non-Canonical LMS

Serial Filter Implementation

Objective: Explore efficient implementation of oversampledfilters.

  • Serial filters
  • Serial-parallel filters
  • Hardware cost

Multi-Channel Filter Implementation

Objective: Develop multi-channel filters using time-sharing signal flow graphs

  • Cut set retiming
  • Delay scaling rule
  • Implementation issues
  • Extending serial filters to multiple channels

Frequency Domain Processing

Objective: Discuss the theory and FPGA implementation of the Fast Fourier Transform.

  • DFT, FFT and IFFT
  • FFT FPGA architectures
  • FFT wordlength growth and accuracy

Multirate Signal Processing for FPGAs

Objective: Develop polyphase structure for efficient implementation of multirate filters. Use CIC filter for interpolation and decimation.

  • Upsampling and interpolation filters
  • Downsampling and decimation filters
  • Efficient arithmetic for FIR implementation
  • Integrators and differentiators
  • Half-band, moving average and comb filters
  • Cascade Integrator Comb (CIC) Filters (Hogenauer)
  • Efficient arithmetic for IIR Filtering

Day 3 of 3


CORDIC Techniques

Objective: Introduce the CORDIC algorithm for calculating trigonometric, linear,  and hyperbolic functions.

  • CORDIC rotation mode and vector mode
  • Compute cosine and sine function
  • Compute vector magnitude and angle
  • Architecture for FPGA implementation

Adaptive DSP Algorithms and Applications

Objective: Introduce the LMS algorithm in adaptive signal processing. Illustrate QR algorithm as a Recursive Least Squares (RLS) technique and why it suits FPGA implementation.

  • Adaptive applications (equalization, beamforming)
  • LMS Algorithms and parallel implementation
  • Non-canonical LMS algorithms
  • Linear algebra; solving linear systems of equations
  • The QR algorithm for adaptive signal processing
  • QR processing requirements and numerical issues

Numerically Controlled Oscillators

Objective: Learn and compare different NCO architectures

  • IIR filters
  • CORDIC rotations
  • Lookup Tables
  • Evaluate spectral purity and SFDR

Timing and Synchronization Issues

Objective: Discuss symbol timing recovery, carrier phase recovery, carrier frequency recovery, and frame synchronization.

  • Carrier recovery, squaring and Costas loops, PLLs
  • Phase rotations; Sampling rate conversions
  • Symbol timing recovery, early/late gate detection
  • Delay locked loop timing and synchronization

第1天 (共3天)


介绍 DSP FPGA 硬件

目标: 介绍 DSP 和 FPGA。理解基本的 FPGA 结构以及 FPGA 适用于 DSP 算法的原因。

  • 从离散逻辑到 FPGA 的历史
  • DSP 简介
  • DSP 内核和处理器回顾
  • 定制的和半定制的 ASIC
  • 片上系统 (SOC)
  • FPGA 的灵活性和功能
  • FPGA 和可编程 DSP

线性系统 DSP 算法概览

目标: 回顾采样定理,量化,傅立叶分析和数字滤波器设计的基本概念。

  • 失真和重建滤波器
  • 采样率和字长
  • Z域的表示和基本分析
  • FIR 和 IIR 滤波器
  • 数字滤波器设计和规范
  • 过采样技术 (sigma delta)

FPGA 技术

目标: 了解不同的 Xilinx FPGA 家族和结构。介绍Spartan 3 和Virtex-5 FPGA。

  • FPGA 技术路线图
  • 时钟速率,数据速率和采样速率
  • FPGA 内存和寄存器
  • 输入输出模块和要求
  • 比特,片和可调节逻辑模块
  • 可比 MIP 性能评分
  • FPGA 家族

FPGA 元素用于 DSP 算法

目标: 理解 DSP 片,时钟资源和功耗。

  • 创建延迟线和移位寄存器
  • FPGA 上使用 RAM 内存
  • 串行到并行和并行到串行
  • 多路复用器进行通道选择
  • 全加器,进位逻辑和加法树
  • 乘法器:位移和相加;基于 ROM
  • 高效乘法器的实现

DSP 算法本质

目标: 理解定点二进制算法。Xilinx FPGA 硬件的算术操作。

  • 二进制补码定点算法
  • 基本的加法器和乘法器阵列
  • 除法和开方阵列…并不简单!
  • 字长问题和定点算法
  • 饱和和折叠
  • 上溢出和下溢出

信号流程图 (SFG) 技术

目标: 使用信号流程图表示DSP算法。使用割集算法改进时间效率。实现并行和串行的FIR滤波器。

  • DSP/数字滤波器信号流程图
  • 延迟和反延迟!
  • 割集和延迟缩放
  • 转置型 FIR
  • 流水线操作和多通道结构
  • SFG 拓扑结构用于 FPGA

第2天 (共3天)


频域处理

目标: 讨论快速傅立叶变换的理论和 FPGA 实现。

  • DFT, FFT 和 IFFT
  • FFT FPGA 结构
  • FFT 字长增加和精确度

FPGA 多速率信号处理

目标: 开发多相位结构来有效的实现多速率滤波器。使用 CIC 滤波器进行内插和抽取。

  • 升采样和内插滤波器
  • 降采样和抽取滤波器
  • 实现的高效算法
  • 积分器和微分器
  • 半带,移动平均和梳状滤波器
  • 级联积分梳状 (CIC) 滤波器(Hogenauer)
  • IIR 滤波的高效算法

CORDIC 技术

目标: 介绍使用 CORDIC 算法来计算各种三角函数。

  • CORDIC 旋转模式和向量模式
  • 计算余弦和正弦函数
  • 计算向量的长度和角度
  • FPGA 实现的结构

第3天 (共3天)


自适应 DSP 算法和应用

目标: 介绍 LMS 算法用于自适应信号处理。演示最小均方(RLS) 算法中的 QR 算法如何适用于FPGA 实现。

  • 自适应应用 (均衡,波束成形)
  • LMS 算法和并行实现
  • 非标准的 LMS 算法
  • 线性代数;解线性系统方程组
  • QR 算法用于自适应信号处理
  • QR 处理的要求和数值问题

数字通信和 FPGA

目标: 回顾正交调制和相位成形。讨论数字控制振荡器的实现。

  • 四进制相移键控 (QPSK)
  • 发送/接受滤波器 – 根升余弦
  • 升采样和数字下变频
  • 直接数字上变频
  • 数字IF 阶段(和fs/4 系统)
  • 数字控制振荡器 (NCO)
  • FPGA 的数字划分

定时和同步问题

目标: 介绍符号定时恢复,载波相位恢复,载波频率恢复和帧同步。

  • 载波恢复,平方和 Costas 环, PLL
  • 相位旋转;采样率转换
  • 符号定时恢复,早/晚阀门检测
  • 延迟锁相环定时和同步

难度: 高级

课程要求:

  • MATLAB® 基础和 Simulink® 系统和算法建模

持续时间: 3 天

语言: English

查看时间表并报名