第11章DSPBuilder设计规则000002.ppt
《第11章DSPBuilder设计规则000002.ppt》由会员分享,可在线阅读,更多相关《第11章DSPBuilder设计规则000002.ppt(54页珍藏版)》请在三一文库上搜索。
1、第11章 DSP Builder设计规则,11.1 位宽设计规则 11.2 频率设计规则 11.3 DSP Builder设计的取名规则 11.4 定点数据下标说明 11.5 在SBF中二进制小数点的位置 11.6 GoTo和From模块的支持特性,11.1 位宽设计规则,在设计中,必须根据具体情况规定输入和输出数据口的位宽,即源端口与目标端口的数据位宽。一旦确定了输入端的数据位宽,SignalCompiler就会通过各中间模块把数据位宽从源端口向目标端口传递。在一定条件下,设计者也可以对所通过的各模块中的数据位宽作一定的设定。例如,在第三章中介绍的调幅设计中,Sinln和SinDelay模块
2、的位宽是16,所以SignalCompiler就自动将这16位宽的数据类型赋予了中间模块Delay。,应该注意,每一个DSP Builder模块都有自身的设计规则。在每一模块的使用说明中都包含了其位宽增长的规则。DSP Builder具有双位字类型,这种类型能支持的最大数据位宽是51位。如果希望位宽超过51位,则必须将数据总线分成多套,每套都不超过51位。如11-1所示的是一个60位加法器设计系统,分成了两个30位总线。,图11-1 两套总线方式的60位硬件加法器,11.2 频率设计规则,11.2.1 单时钟设计规则 如果一项设计中不包含来自Rate Change库的锁相环模块PLL,则在Si
3、mulink设计转换成硬件系统的过程中,DSP Builder将使用同步设计规则,即在设计系统中的所有DSP Builder时序模块,如Delay模块,都以单一时钟的上升沿同步工作,这个时钟频率即为整个系统的采样频率。,然而需要注意的是,对于这些同步时序的模块,其时钟引脚都不会直接显示在Simulink设计图上,但当SignalCompiler将设计系统转化为VHDL文件时,才自动地把时序模块的时钟引脚都连在一起,并与系统的单一时钟相接。,但是,如果设计者希望在Simulink图上显示相关的信号端,并能直接控制这些信号端口,可以在DSP Builder时序模块的参数控制对话框中打开“Use C
4、ontrol Inputs”参数表来实现。 为了保持Simulink设计域至VHDL域的设置时钟周期的精确性,必须将“Solver”选项设定在“Fixed-step”和“discrete”状态上,并设模式为“Single Tasking”(如图11-2所示)。,图11-2 仿真延时参数设置,仅从Simulink仿真的观点来看,所有的DSP Builder模块,包括时序模块,都有一固有的采样频率,这个频率值可以通过I/O口,从源模块传送到目标模块,也可以从源模块的输出脚向目标模块的输入脚传送。如果某一DSP Builder模块没有输入端口(如Increment或Pattern模块),这种传送机制
5、是无法进行的。所以,对于这些情况,必须在模块参数表中设定时钟信号的周期。具体步骤如下:,(1) 用鼠标右键击该模块; (2) 选中弹出菜单中的“Block Parameters”项; (3) 在“S-Function”栏键入所希望的时钟周期 (默认为1); (4) 点击“OK”,保存所设数据,并关闭之。 如果某一模块具有来自多个模块的不同频率的时钟驱动,则此模块(目标模块)将在Simulink仿真文件中采用其中最高频率的时钟。 图11-3是一项Single Clock Delay的Simulink设计图。,图11-3 Single Clock Delay设计图,也有许多其它方式可用来规定源模块
6、的工作频率。如图11-4所示,可以使用Sample time编辑窗来设置正弦波模块的工作频率。,图11-4 正弦波模块参数设置,在图11-3的设计中,使用的是单一时钟,这里DSP Builder没有使用PLL模块,所以所有的DSP Builder模块的采样周期都是相同的,并且,如果已打开了仿真参数中的采样时间色彩显示控制,则这些模块都以相同颜色显示。在此图中(仿真设计文件为SingleClock delay.mdl),Sine Wave a 和Sine Wave b模块的时间值都设定在le-6,即1000 ns。 如果使用SignalCompiler将此项设计转换成RTL硬件电路描述,其设计报
7、告将包括诸如位宽、仿真采样时钟周期值,以及可能的出错信息等(如图11-5所示)。,图11-5 仿真报告,图11-6是此项设计的RTL电路图,是由LeonardoSpectrum综合器输出的。由图可见,时序模块Delay a和Delay b由单一clock提供时钟。,图11-6 示例Single Clock Delay的RTL电路图,11.2.2 多时钟设计 如果设计系统中包含了来自Rate change库中的锁相环模块PLL,DSP Builder模块就将根据PLL输出时钟组中的某一时钟的上升沿来工作。图11-7是一个多时钟Delay设计系统实例,该例含多时钟支持电路。 对于含有PLL的系统,
8、DSP Builder 将Simulink中PLL模块映射到硬件器件中的PLL核,即在设计模块中使用PLL的条件是目标器件中必须含PLL核。支持PLL模块设计的目标器件系列有:Stratix系列(支持6个输出时钟)和Cyclone系列(支持6个输出时钟)。,图11-7的设计显示的是PLL模块的配置情况。其中PLL输出时钟pllclock1设定为1000 ns,而pllclock2设定为100 ns,这可由多种方法来设置。图中数据路径A工作在pllclock1上,而数据路径B工作在pllclock2上。据此,可以在Sample Time编辑窗中设置pllclock1和pllclock2,分别为l
9、e-6和le-7(图11-8)。,图11-7 多时钟设计系统,图11-8 PLL设置,DSP Builder将系统转化为RTL电路后,将产生一个报告文件,该报告将列出系统中所有DSP Builder模块的数据位宽和仿真采样时钟周期。在多时钟设计系统的DSP Builder编译中,如果发现模块仿真时钟周期与PLL的输出时钟周期不符,将在报告中给出警告。 图11-9是LeonardoSpectroum综合器产生的此设计系统的RTL电路,从中可以看出Delay a和Delay b模块分别工作在两个PLL输出时钟上,其中clock是PLL的参考时钟。,图11-9 多时钟设计系统的RTL电路,11.2.
10、3 使用PLL的高级特性 要想使用PLL的高级特性,可以通过对DSP Builder模块的设置来实现,这些设置支持对PLL分频与倍频因子的设定。此外如果希望改变PLL时钟信号的其它特性,如相移,占空比等,都可以编辑SignalCompiler产生的pll.vhd文件,从而在VHDL的顶层设计中对PLL作必要的修改。,11.3 DSP Builder设计的取名规则,DSP Builder模块的命名必须遵循VHDL的命名规则。以下的一些规则是必须遵循的: (1) 必须注意大小写的一致性,但模块名的大小写不一致是没有关系的,例如实体名Mydesign与MYDESIGN是相同的。 (2) 不要使用VH
11、DL的关键词来命名DSP Builder模块。,(3) 注意不要使用非法文字,特别是VHDL的实体名只能包含QZ,09,以及下划线( _ )。 (4) 模块名的起始文字必须是字母az,因为VHDL的实体名是不允许以英语字母以外的任何字符作为首字符的。 (5) 不允许连续使用两个下划线“_ _”,因为这在VHDL中是非法的。 (6) 模块文件名中的空格将在SignalCompiler的编译中被忽略掉。,此外,SignalCompiler对于每一个DSP Builder的HDL子系统模块产生一个单独的VHDL文件,而这些文件都有独立的实体和结构体。DSP Builder产生的VHDL文件中的实体名
12、位置具有全局性,所以,所有的子系统名必须是唯一的。,11.4 定点数据下标说明,在将Simulink文件向VHDL文件转化中,对数据的定点标注的说明可见表11-1所述。,表11-1 数据下标说明,图11-10是几种下标情况对应的不同数据类型的数据比较,其中有8位有符号二进制小数、有符号二进制数,以及无符号二进制数的示例。,图11-10 数据格式比较,11.5 在SBF中二进制小数点的位置,对于硬件设计,Simulink信号必须转化成与硬件结构相对应的总线格式,所以Simulink的浮点值必须转换成定点值并能在目标硬件中实现。这种转换是硬件实现的关键步骤,因为需要硬件来表示定点值的位数以及小数点
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 11 DSPBuilder 设计 规则 000002
链接地址:https://www.31doc.com/p-3122939.html