- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章dspbuider设计规则000002
第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模块的位宽是16,所以SignalCompiler就自动将这16位宽的数据类型赋予了中间模块Delay。 应该注意,每一个DSP Builder模块都有自身的设计规则。在每一模块的使用说明中都包含了其位宽增长的规则。DSP Builder具有双位字类型,这种类型能支持的最大数据位宽是51位。如果希望位宽超过51位,则必须将数据总线分成多套,每套都不超过51位。如11-1所示的是一个60位加法器设计系统,分成了两个30位总线。 11.2 频率设计规则 11.2.1 单时钟设计规则 如果一项设计中不包含来自Rate Change库的锁相环模块PLL,则在Simulink设计转换成硬件系统的过程中,DSP Builder将使用同步设计规则,即在设计系统中的所有DSP Builder时序模块,如Delay模块,都以单一时钟的上升沿同步工作,这个时钟频率即为整个系统的采样频率。 然而需要注意的是,对于这些同步时序的模块,其时钟引脚都不会直接显示在Simulink设计图上,但当SignalCompiler将设计系统转化为VHDL文件时,才自动地把时序模块的时钟引脚都连在一起,并与系统的单一时钟相接。 但是,如果设计者希望在Simulink图上显示相关的信号端,并能直接控制这些信号端口,可以在DSP Builder时序模块的参数控制对话框中打开“Use Control Inputs”参数表来实现。 为了保持Simulink设计域至VHDL域的设置时钟周期的精确性,必须将“Solver”选项设定在“Fixed-step”和“discrete”状态上,并设模式为“Single Tasking”(如图11-2所示)。 仅从Simulink仿真的观点来看,所有的DSP Builder模块,包括时序模块,都有一固有的采样频率,这个频率值可以通过I/O口,从源模块传送到目标模块,也可以从源模块的输出脚向目标模块的输入脚传送。如果某一DSP Builder模块没有输入端口(如Increment或Pattern模块),这种传送机制是无法进行的。所以,对于这些情况,必须在模块参数表中设定时钟信号的周期。具体步骤如下: (1) 用鼠标右键击该模块; (2) 选中弹出菜单中的“Block Parameters”项; (3) 在“S-Function”栏键入所希望的时钟周期?(默认为1); (4) 点击“OK”,保存所设数据,并关闭之。 如果某一模块具有来自多个模块的不同频率的时钟驱动,则此模块(目标模块)将在Simulink仿真文件中采用其中最高频率的时钟。 图11-3是一项Single Clock Delay的Simulink设计图。 也有许多其它方式可用来规定源模块的工作频率。如图11-4所示,可以使用Sample time编辑窗来设置正弦波模块的工作频率。 在图11-3的设计中,使用的是单一时钟,这里DSP Builder没有使用PLL模块,所以所有的DSP Builder模块的采样周期都是相同的,并且,如果已打开了仿真参数中的采样时间色彩显示控制,则这些模块都以相同颜色显示。在此图中(仿真设计文件为SingleClock delay.mdl),Sine Wave a 和Sine Wave b模块的时间值都设定在le-6,即1000 ns。 如果使用SignalCompiler将此项设计转换成RTL硬件电路描述,其设计报告将包括诸如位宽、仿真采样时钟周期值,以及可能的出错信息等(如图11-5所示)。 图11-6是此项设计的RTL电路图,是由LeonardoSpectrum综合器输出的。由图可见,时序模块Delay a和Delay b由单一clock提供时钟。 11.2.2 多时钟设计
文档评论(0)