System Generator

System Generator 是赛灵思(Xilinx)公司开发的一款设计工具,用于在MATLAB/Simulink环境下进行高级数字信号处理(DSP)和系统级设计。它为工程师提供了一种直观的方式来设计和验证数字信号处理系统,利用了Simulink的模型驱动设计方法和赛灵思FPGA的高度可编程性

基于System Generator对2FSK调制解调的实现

System Generator是AMD一款系统级建模工具,有助于加快FPGA的硬件设计

FPGA中截位导致的直流分量如何去除?

在用FPGA做算法时,由于FPGA中一般都是使用定点数据,因此经常需要移位操作。比如一个16bit的信号经过滤波器后,由于滤波器的增益,输出结果肯定不是16bit,如果我们想保持输入输出的位宽是一致的,那就必须要进行移位。

【视频教程】将 System Generator DSP 版用于 RFSoC

观看本视频,了解和学习 Vivado System Generator for DSP 2018.3 版本中全新的超级采样率模块集(SSR)。它提供了与 Matlab 和 Simulink 集成的设计流程,以加速 Zynq UltraScale+ RFSoC 器件上高速 DSP 应用的设计和实现。

System Generator从入门到放弃(九)-利用Vivado HLS block实现Vivado HLS调用C/C++代码

ug948中提供的官方例程为图像的中值滤波,该设计将一副256*256大小的RGB图像,添加噪声后提取出其中的Y通道,使用C++语言完成中值滤波。该设计将在Simulink环境下进行仿真。本次设计的流程是利用Vivado HLS建立C/C++代码,Export RTL–>System Generator–>Vivado。

System Generator从入门到放弃(八)-使用多时钟域实现多速率系统设计

多速率的概念是相对于单速率(Single Rate)信号处理而言的。单速率是指整个信号处理流程中只有一种数据速率;多速率是指系统中存在多个数据速率。使用多速率信号处理可以节省存储空间、减少通信数据量、减少运算量、减轻设计难度

System Generator从入门到放弃(七)——不同溢出与量化方式的对比

在介绍Gateway In block时谈到了System Generator中的数据类型,及不同的量化和溢出方式。本文将以两个简单的设计实例,更直观地说明不同的量化和溢出方式有什么区别。

System Generator从入门到放弃(六)——利用Vivado HLS block实现Vivado HLS调用C/C++代码

 ug948中提供的官方例程为图像的中值滤波,该设计将一副256*256大小的RGB图像,添加噪声后提取出其中的Y通道,使用C++语言完成中值滤波。该设计将在Simulink环境下进行仿真。本次设计的流程是利用Vivado HLS建立C/C++代码,Export RTL–>System Generator–>Vivado

System Generator从入门到放弃(五)——Black Box调用HDL代码

System Generator是Xilinx公司进行数字信号处理开发的一种设计工具,它通过将Xilinx开发的一些模块嵌入到Simulink的库中,可以在Simulink中进行定点仿真,可以设置定点信号的类型,这样就可以比较定点仿真与浮点仿真的区别。并且可以生成HDL文件,或者网表,可以在ISE中进行调用。或者直接生成比特流下载文件。能够加快DSP系统的开发进度。

一、Black Box调用HDL代码

1、简介
  System Generator提供了一个特性:可以通过black box这个block将其它HDL文件以黑盒的形式封装到System Generator设计中,在仿真时使用Simulink+Vivado Simulator(或ModelSim)协同仿真的方法,在Simulink环境中完成设计的仿真测试。

  具体介绍大家可以查阅相关资料。

2、本部分设计使用到的block

Xilinx block

  • Black Box(->Basic Elements):调用HDL文件
  • 其它block

    System Generator从入门到放弃(四)——利用MCode调用MATLAB代码

    FPGA设计中经常用到一些控制逻辑,如有限状态机(FSM),如果用各种block搭建一个FSM比较麻烦。System Generator支持调用MATLAB代码,通常可以编写MATLAB代码来实现FSM等控制逻辑,通过MCode block调用到System Generator设计中。

    System Generator从入门到放弃(三)——Digital Filter

    Simulink中的仿真模型为连续时间系统,数据格式多种多样;而FPGA中为离散时间系统,数据必须用一定的位数进行量化。两者之间必须要进行从连续到离散的转换、数据格式的转换,否则无法进行正确的FPGA设计