资源描述
孙海峰
Cadence Allegro Bus Simulation总线仿真
——源同步分析
孙海峰
随着电子设计的快速进步,总线速度的提高在PCB上的实现越来越难,这样就催生了新的不受时钟制约的时序系统,即源同步时序系统。源同步时序系统最大的优点,就是大大提升了总线的速度,在理论上信号的传送可以不受传输延迟的影响。源同步系统的基本结构如下图所示:
图1:源同步结构示意图
图1是一个基本的源同步时钟系统的结构示意图。可以看到,驱动芯片在发送数据信号的同时也产生了选通信号(Strobe),而接收端的触发器由该选通信号脉冲控制数据的读取,因此,这个选通信号也可以称为源同步时钟信号。
源同步时钟系统中,数据和源同步时钟信号是同步传输的,保证这两个信号的飞行时间完全一致,这样只要在发送端的时序是正确的,那么在接收端也能得到完全正确的时序。整个系统在时序上的稳定性完全体现在数据和选通信号的匹配程度上,包括传输延迟的匹配,器件性能的匹配等等,只要两者完全匹配,那么我们就可以保证系统时序的绝对正确,。
然而,在实际的PCB设计中,我们往往不可能观察到总线与选通信号的匹配程度,我们就需要借助新的设计仿真软件,来实现这个功能,就此Cadence顺应电子设计的大潮流,推出了DDR总线仿真工具Bus Simulation用以进行源同步分析仿真。那么Cadence软件是如何来实现PCB的源同步时序分析的呢,接下来,我将详细阐述这个过程。
1、进入Cadence Allegro SI仿真界面,如下图所示:
2、点击OK进入SI仿真界面,并完成SI仿真基本流程,包括:模型库添加、模型赋予、DC网络值定义等等。
图2:模型库添加与管理
图3:模型赋予
图4:DC直流网络定义
3、完成上述SI仿真基本步骤后,就可以开始进行SI分析,包括:反射、串扰、EMI、通道分析等等,这里就不再赘述。
这里主要介绍的是新的PCB源同步时序分析工具Bus Simulation,该总线仿真针对DDR的总线进行源同步时序分析。在源同步分析之前,我们先要对DDR总线进行相关仿真设置。
在SI仿真界面中,执行Analyze->SI/EMI Sim->Bus Setup命令,在弹出的Signal Bus Setup窗口进行DDR总线仿真基本设置。
图5:调用Bus Setup
下图6即为调出的DDR总线信号的设置窗口,上方Select Bus to Setup区域为DDR总线基本设置,包括:Bus Name仿真总线名称、Bus Direction总线数据方向、Controller Ref des总线控制器件、Switch On数据采样沿等(与DDR1、DDR2、DDR3采样沿一致)。此外,点击Create Simulation Bus即可创建仿真总线。
图6:总线信号设置——DDR总线驱动与接收能力选择
完成上方Select Bus to Setup区域的总线选择基本设置后,接下来我们需要设置具体仿真相关参数,分别包括:为总线赋予驱动与接收能力的Assign Bus Buffer Models选项卡,为DDR总线确定选通信号或时钟信号的Select Clocks or Strobes选项卡,以及为选通信号或时钟信号确定所需仿真的总线网络的Assign Bus Xnets to Clocks or strobes选项卡,其设置方式简单明晰,如图6-8所示。
图7:DDR总线信号设置——选通信号(Strobe)或时钟(Clock)的选择
图8:DDR总线信号设置——为选通信号或时钟加载需要仿真的总线网络
最后,点击OK完成DDR总线的仿真设置,下面就是源同步仿真了。
4、完成Bus Setup设置后,就可以进行Bus Simulation源同步仿真了。
执行Analyze->SI/EMI Sim->Bus Simulate命令,在弹出的Analysis Bus Simulation仿真窗口中设置激励源、选择仿真类型等即可实现DDR总线仿真。
图9:调用总线仿真
执行该命令后弹出如下图10所示的总线仿真对话框:
图10:总线仿真窗口
其中相关参数设置如下:Case Selection表示case选择,即可以进行单板仿真及多板的拼板仿真;Bus to Simulate表示仿真总线,由前面的Bus Setup步骤确定,还可以点击后面的Bus Setup来编辑总线;Assign Bus Stimulus用于设置总线仿真的激励源;Fast/Typical/Slow Mode用以选择仿真模式,此由器件模型参数决定不同模式参数,该选择与普通SI分析意义一致;Receiver Selection用以选择接收端;Simulation Type用以确定仿真类型,有反射分析和综合分析;Simulation Output用以确定仿真完成之后输出数据,包括仿真报告、波形以及电路文件等。
5、在Analysis Bus Simulation窗口点击Assign Bus Stimulus,在Stimulus Setup窗口设置激励源,如下图所示:
图11:总线分析激励源设置
在激励源设置中,由于总线与选通信号或时钟信号都是同步的(源同步信号),因此只需要设置选通信号的激励即可执行总线仿真。
6、点击OK完成总线仿真激励源的设置,然后回到总线仿真的窗口中来,点击下方Simulate命令,执行总线分析:,如下图所示。
图12:执行总线仿真
完成总线仿真后,输出波形如下图所示:
图13:总线仿真输出各节点波形
从波形窗口,我们可以看到所有总线网络的各个节点的时序波形,都明晰清楚的显示出来,以此为参考或方向,既可以给我们DDR设计给予更多的便捷。
源同步总线在PCB布线的设计上更为方便,设计者只需要严格保证线长的匹配即可,而不用太多的考虑信号走线本身的长度,单却可以大大提高高速设计的可靠性。
源同步数据传输在理论上突破了频率的限制,但随着频率的提高,在控制Skew上也变得越来越困难,尤其是一些信号完整性因素带来的影响也越发显得突出,而且目前的高速系统设计中,往往综合应用了普通时钟和源同步时钟技术,这些对于高速PCB设计分析人员来说是一个越来越严峻的挑战。
因此Bus Simulation的源同步仿真技术给了设计师更大的设计空间与灵感,当挑战在源同步分析的基础上变得更加清晰,设计方向更加明确时,挑战也就成为设计师必将攻克的一道难关。
展开阅读全文