System Generator入门笔记  [CPLD/FPGA] 发布时间:2010-04-08 23:02:09 

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

用System Generator进行仿真

1、必须包含的模块:Gateway In、Gateway Out、System Generator、以及Xilinx定点运算单元。

2、对于系统设计中有精确时钟限制的外部接口模块,使用System Generator设计不是最佳方法,此时可以利用HDL等方法实现,然后通过System Generator工具提供的Black Box导入Sysgen工程中即可。

System Generator Blockset

1、主要包括:Xilinx Blockset、Xilinx Preference Blockset 和 Xilinx XtremDSP Kit三个库函数块。

2、Xilinx Blockset包含了所有在Simulink中构建数字信号处理系统和其他FPGA数字系统的模块。

3、Xilinx Preference Blockset 是更高层次的模块,都是由Xilinx Blockset中的模块组成的,降低了开发难度,并且具有较高的可靠性。

信号数据类型

1、Xilinx Block的输出格式可以设定为:Full precision和User-defined precision

Full precision:会在运算中自动进行位宽扩展

User-defined precision:对输出结果进行截位(wrap)或饱和(saturate)处理(用户设置)。

2、在System Generator中,点击Format –> Port/Signal Displays –> Port Data Type 即可显示每个模块输入输出的数据类型。

3、当Simulink无法确定数据类型和采样速率时,会报错,通常这种情况出现在有反馈的情况下。这时可以通过添加一个Assert模块对信号进行强制制定或重新定义。且不占用硬件资源。

4、Gateway In可以设定Sample Period,值越大,采样点越少。一般来说,对于同一组Gateway In,sample period应该是一样的,即采样率时一样的。所以当修改一个Gateway In的Sample Period时,记得同时更新同一级的Gateway In的Sample Period。

5、采样率变换,利用模块:Up sample和Down sample。System Generator中不同颜色代表不同的采样率。可以点击Format –> Sample Time Colors

利用Matlab产生测试向量

1、使用From Workspace block产生测试向量。注意数据必须是2xn矩阵:

colume 1 = time values

colume 2 = data values

例如:[1:101; sin(2*pi*[0:.01:1])]

2、使用To workspace block将sysgen数据输出到MATLAB进行分析

时钟周期

1、Simulink system period为Simulink仿真时钟周期,该周期必须是设计中所有采样周期的最大公因子,比如系统中有3个采样周期(2、3、4),那么Simulink system period为1。

2、如果FPGA系统时钟周期是10ns,那么Simulink系统周期,2s、3s、4s三个采样周期分别对应FPGA器件实现时的10ns、20ns、30ns、40ns。另一种做法是将Simulink系统周期就定义成FPGA的系统周期,这样省去了时钟周期间的换算。

3、可以用Clock Enable Probe模块来实现潜在的时钟使能信号。

转载地址:http://www.360doc.com/content/12/0320/23/9215308_196135508.shtml

System Generator入门笔记的更多相关文章

  1. system generator学习笔记【02】

    作者:桂. 时间:2018-05-20  23:28:04 链接:https://www.cnblogs.com/xingshansi/p/9059668.html 前言 继续学习sysgen.接触s ...

  2. system generator学习笔记【01】

    作者:桂. 时间:2018-05-18  18:26:50 链接:http://www.cnblogs.com/xingshansi/p/9045914.html 前言 学习使用system gene ...

  3. System Generator入门

      System generator 安装之后会在Simulin模块库中添加一些Xilinx FPGA专用的模块库,包括Basic Element,Communication,Control Logi ...

  4. ES6入门笔记

    ES6入门笔记 02 Let&Const.md 增加了块级作用域. 常量 避免了变量提升 03 变量的解构赋值.md var [a, b, c] = [1, 2, 3]; var [[a,d] ...

  5. [Java入门笔记] 面向对象编程基础(二):方法详解

    什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...

  6. MySQL入门笔记

    MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制 ...

  7. 一看就懂的Mybatis框架入门笔记

    本篇为初学Mybatis框架时的入门笔记,整理发出 Spring集成Mybatis https://www.cnblogs.com/yueshutong/p/9381590.html SpringBo ...

  8. CI框架入门笔记

    当前(2019-03-22)CodeIgniter 框架的最新版本是 3.1.5,于2017年6月发布,距今快两年了也没有更新,这与 Laravel 的更新速度相比差距太大了.因为确实,它是一个很古老 ...

  9. System Generator简介

    前言 System generator 安装之后会在Simulin模块库中添加一些Xilinx FPGA专用的模块库,包括Basic Element,Communication,Control Log ...

随机推荐

  1. windows下搭建svn服务端、客户端

    1.安装SVN服务器subversion以及客户端TortoiseSVN,在网上下载windows版的subversion,TortoiseSVN并安装,比如我的服务端安装在了D:\Program F ...

  2. android 搭建开发环境

    法一.直接集成的ADT+ECLIPSE 还有64位的jdk即可 法二.EClipse装好后,下载好SDK,ADT(在线或离线装) sdk下载后,点sdk.exe 文件. 如果更新失败,解决方法如下 C ...

  3. 关于yarn的spark配置属性

    spark1.2.0 These are configs that are specific to Spark on YARN Property Name Default Meaning  spark ...

  4. C#透明窗体代码详解

    using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServi ...

  5. Using ASP.Net WebAPI with Web Forms

    Asp.Net WebAPI is a framework for building RESTful HTTP services which can be used across a wide ran ...

  6. Java连接mysql数据库并进行内容查询

    最近用框架做了几个项目,感觉当初底层的东西有点忘了,写一个JDBC的简单的连接代码来熟悉回顾一下,也希望对刚接触的新手能有所帮助.这也是我的第一篇随笔,废话不多说,直接上代码: public Conn ...

  7. js正则表达式验证账号手机号电话邮箱

    1.账号 规则:字母.数字.下划线组成,字母开头,4-16位. 表达式:/^[a-zA-z]\w{3,15}$/: 2.手机号 规则:11位数字,以1开头 表达式:/^1\d{10}$/ 3.电话号码 ...

  8. framework&&library's root

    框架和文件集合的路径应该是相对路径而不是绝对路径 写法如下图所示:

  9. hadoop环境安装及简单Map-Reduce示例

    说明:这篇博客来自我的csdn博客,http://blog.csdn.net/lxxgreat/article/details/7753511 一.参考书:<hadoop权威指南--第二版(中文 ...

  10. nodejs的mysql模块学习(六)连接池的创建和使用

    介绍 在 软件工程 , 连接池 是一个 高速缓存 的 数据库连接 维持,使得连接可以当需要将来向数据库请求重复使用. [ 来源请求 ] 连接池用于提高数据库上执行命令的性能. 打开并保持每个用户的数据 ...