基于Hyperlynx的DDR2嵌入式系统设计与仿真

发布者:温暖阳光最新更新时间:2010-09-21 来源: 电子技术应用关键字:DDR2  嵌入式系统  Hyperlyxn  IBIS模型 手机看文章 扫描二维码
随时随地手机看文章

    现代电子设计和芯片制造技术正在飞速发展,电路的复杂度、元器件布局以及布线密度、开关速度、时钟和总线频率等各项指标参数都呈快速上升趋势。当上升时间超过传输延时的1/6时,反射、串扰、振荡以及传输线效应等涉及到的时序、信号完整性(SI)、EMI等一系列问题决定着产品设计的成败。特别是DDR2系统,可支持高达9.6 GB/s的带宽(FB-DIMMs),时钟频率高达0.9 GHz[1-2],高速DDR2系统的信号完整性和时序问题,己经成为设计能否成功的关键因素之一。因此,在印制电路板(PCB)设计完成之前,运用仿真工具对PCB进行板级的信号完整性仿真和时序分析,进行分析和设计的优化,可以发现调试过程中可能产生的问题,从而可节约成本、缩短产品的设计周期。

1 模型的选取

    在基于计算机分析信号完整性和时序分析的过程中,建立实际驱动IC的模型十分关键。目前主要有三种可以用于PCB板级信号完整性分析的模型:SPICE模型、IBIS模型和AMS模型[3-5]。
    IBIS模型由于采用IN和V/T表的形式来描述I/O单元和引脚的特性,不但方便易得,而且不依赖于不同的仿真工具,计算量较小。

    SPICE模型需要IC厂商提供详细、准确描述I/O单元的内部设计和晶体管制造参数这些涉及到知识产权的机密数据,所以SPICE模型不易获取。其分析精度主要取决于模型参数的来源(即数据的精确性)以及模型方程式的适用范围。使用不同仿真工具进行SPICE模型仿真时,会产生不同的分析精度。

    AMS建模语言与IBIS模型同样也是数据形式来描述IC的特性,可以应用在多种不同类型的仿真工具中。AMS模型在PCB板级信号完整性分析中的可行性和计算精度毫不逊色于SPICE和IBIS模型,但目前支持的仿真工具还不是很多。

    综合比较上述三种模型,由于IBIS模型的方便、快捷、具有必要的精确度以及精度不依赖于仿真工具的优点,本文选取IBIS模型进行仿真。

2 仿真工具的选取

    Mentor公司推出的仿真工具其功能十分强大,Hyperlynx可进行多电路板分析,包括趋肤效应、电介质损耗效应、损耗传输线效应的精确模拟,具有数千兆位信号的内部符号干扰图表分析功能;可为多位激励源、抖动、眼图和眼罩定义区域;可以建立随频率变化的过孔模型而进行分析;进行差分信号模拟和分析来对包括差分阻抗和不同终端负载的优化;Terminator Wizard能够分析并计算出使用包括串联终端、并联、并联交流电和差分最佳的终端方案;通过辐射法和传输线电流分析来发现EMC故障问题;支持所有的PCB布线和布局程序[6-7]。

    Hyperlynx还可方便地采用IBIS或HSPICE模型进行仿真,自带7 000个通用IC模型库,或根据数据簿信息运用可视化IBIS编辑器允许测试和编辑IBIS模式来创建用户的模型。Hyperlynx还具有界面友好、方便易用的优点。综合Hyperlynx的优点,本文选取Hyperlynx进行仿真分析。

3 设计实例

    下面给出应用Hyperlynx7.7前仿真工具Linesim和级仿真工具Boardsim利用IBIS模型对基于MIPS架构的XLS606 CPU的信号线进行分析。

    CPU的最大外频为1 GHz,内存选用Micron公司的DDR2-800,信号线走中间层,参考上下两层地,因为信号工作频率达到400 MHz,故布线密度大,很容易出现信号完整性问题。
    布线前仿真可以根据PCB对信号完整性的要求,帮助设计者合理布置元器件、规划系统时钟网络以及确定关键线网的端接策略。在布线过程中跟踪设计,随时反馈布线效果,确定PCB布线的约束规则,如参数设置和布线约束等(这里不详细叙述)。

    在运用CAD设计工具设计得出具有关键元件布局和关键网络的走线的基本元素的PCB后,综合考虑如电气、电磁兼容性(EMC)等因素对信号完整性(SI)的影响以及这些因素之间的相互作用,从而进行Boardsim布线后的仿真分析与验证。下面选取一些重要的DQ、DQS、MA网络进行分析。在进行完整PCB的布线后,可以通过Boardsim导入PCB文件。图1为地址/控制线在Boardsim中的显示图,图2为差分对DQS在Boardsim中的显示图。

    在相关网站上下载该处理器和该型号内存的IBIS模型。根据JESD79-2C DDR2 SDRAM SPECIFICATION的说明要求,可以知道地址/命令/控制信号以及DQS差分对或时钟信号的DC和AC工作标准对DDR2-800要求如表1所示。根据上述指标可以得出眼图的数据,然后设置叠层编辑器来设置特性阻抗值,导入CPU以及存储器的IBIS模型,根据实际设计设置网络中上拉电阻以及滤波电容的实际值,可以读出有效特性阻抗值Z0=54.3 Ω,以及每位周期的值。因为信号频率为400 MHz,所以每位周期设置为1.25 ns。

    从图3眼图可以看出,信号在不同DIMM内部和外部的信号质量是不同的,在没有端接电阻以及布线、阻抗调整的情况下,运行400 MHz的频率信号十分差,眼图的宽度、高度、上升斜率等关键指标都不符合JEDEC对DDR2-800的DC/AC规范。

    图4为修改Layout布线和端接电阻以及阻抗值等设计后的仿真眼图,从图4可以明显直观地看到,修改之后信号状况大大改观,而且可以直接读出眼宽、高电平值、低电平值、采样眼宽等信号眼图的重要数据,以便于确定硬件和PCB设计。

    同理,可以对重要的差分信号和时钟信号进行仿真。而DDR2中新增加的ODT(On Die Termintation)功能在仿真中可以得到体现。通过不设置以及设置ODT的值,可以直观地在眼图以及客观地在仿真结果数据一栏中得出合成差分信号的质量。图5为差分信号的仿真结果眼图。

    通过眼图和数据,可以确定最优差分阻抗和ODT值的设置。
    高速信号的PCB优化设计,可以在PCB的设计阶段,运用Hyperlyxn仿真工具和IBIS驱动模型,对高速信号设计中的关键信号进行完整性仿真和时序分析、EMI仿真、分析和优化,可以发现PCB制好后调试中可能出现的问题,从而可以节约成本、缩短产品的设计时间。

关键字:DDR2  嵌入式系统  Hyperlyxn  IBIS模型 引用地址:基于Hyperlynx的DDR2嵌入式系统设计与仿真

上一篇:C语言编译过程中的错误分析
下一篇:基于MPC555的发动机电控系统的嵌入式编程接口库设计

推荐阅读最新更新时间:2024-05-02 21:09

开源、可重复使用的软件堆栈助力实现实时处理和CbM算法开发
Open-Source, Reusable Software Stack Enables Real-Time Processing and Algorithm Development for CbM 开源、可重复使用的软件堆栈助力实现实时处理和CbM算法开发 CN0549状态监控平台简介 在本文中,我们将重点介绍CN0549的不同组件可用的软件生态系统、数据分析工具和软件集成,以及工程师和数据专家如何使用它们进行应用开发。我们分两部分来介绍使用CN0549开发平台进行状态监控(CbM)和预测性维护(PdM)应用,这是该系列文章的第二篇。新平台旨在加快定制CbM解决方案从原型制作到生产的整个开发流程。第一部分主要介
[嵌入式]
 开源、可重复使用的软件堆栈助力实现实时处理和CbM算法开发
基于S3C2440嵌入式系统主板的电磁兼容性设计
    随着电子设备的频率越来越高,世界各国对电子产品电磁辐射标准的执行变得越来越严格,如何保证能在有限时间很好地在设计阶段发现并解决EMI/EMC问题非常重要,而PCB往往是一个电子系统的核心构成部分,一个经仔细电磁干扰设计的PCB板,能大幅度降低阻抗不匹配、传输线问题、信号互相耦合等现象引发的信号反射、延迟等线路不稳定因素,同时也可达到降低电磁辐射发射干扰,大大提高系统的稳定性和可靠性。本文将以嵌入式系统主板为平台,运用 EMIStream仿真软件,并采用源端串联端接阻抗的方法分析了解决嵌入式高速主板存在的电磁干扰问题。 1 电磁兼容性 1.1 电磁兼容和电磁干扰     电磁兼容(electro magnetic
[嵌入式]
ARM体系的嵌入式系统BSP的程序设计
  arm公司在32位RISC的CPU开发领域不断取得突破,其结构已经从V3发展到V6。   BSP(Board Support Package)板级支持包介于主板硬件和操作系统之间,其功能与PC机上的BIOS相类似,主要完成硬件初始化并切换到相应的操作系统。BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说,尽管实现的功能一样,可是写法和接口定义是完全不同的。另外,仔细研究所用的芯片资料也十分重要,例如尽管arm在内核上兼容,但每家芯片都有自己的特色。所以这就要求BSP程序员对硬件、软件和操作系统都要有一定的了解。   本文介绍基
[嵌入式]
32位嵌入式系统的字节对齐
32位嵌入式系统的软件开发过程中,字节对齐问题是相当重要的。我们现在就拿ARM处理器和ADS1.2开发环境作为例子说明字节对齐的概念。 在此之前,我先声明几个基本的概念: (1)、对象:在C语言中使用结构体类型、共同体类型、或内部基本类型所定义的变量或常量,就称为对象。对象占据了一块实际的存储器空间,这块空间有固定的起始地址和字节数。 (2)、引用:使用对象有两种方法:“对象名”和“引用”。当你在源代码中定义一个对象时,编译器就会为它分配一块存储器,此时你就可以使用“对象名”来操作该对象。但是对于程序运行时动态分配的某一块存储器空间(对象),你就没法使用“对象名”了,而只能使用“引用”,所以,“引用”就是指向特定类型的
[单片机]
揭示行业新趋势,工业计算机及嵌入式系统展盛大开幕
8月21日,以“智慧 创造 生产力”为主题,2012工业计算机及嵌入式系统展(IPC&Embedded Expo)在深圳会展中心拉开帷幕。据主办方创意时代会展介绍,本次展会中会重点展出各种新型工业计算机、嵌入式技术与产品,以及他们在各个细分行业市场中的应用方案。参与企业包括德州仪器、意法半导体、飞思卡尔、Microchip、AMD、赛灵思、富士通、安森美、ADI、Microsemi等嵌入式领域代表性企业;研华、博来、显控、康佳特、顶星、安勤、创智成等工业计算机领域代表性企业;以及力科、置富、捷波、创见、金胜、艾默生、Exar等等嵌入式技术各领域的代表。同期召开的IPC & Embedded Expo 2012 主题演讲、第四届mc
[单片机]
嵌入式系统优先级反转问题的分析
摘要: 本文介绍了嵌入式系统任务调度优先级反转的一个实例。通过实例的讨论对嵌入式系统优先级反转有一个更深入的了解,有助于在编程中避免此类问题的发生。 关键词: 嵌入式实时系统;VxWorks;多任务;优先级反转 引言 VxWorks是美国Wind River(风河)公司的一个实时操作系统,具有良好的可靠性和实时性。该系统采用基于优先抢占式调度策略,系统为每一个任务分配一个优先级,调度程序保证当前运行的是优先权最高的任务。但在实际开发中,由于任务间资源共享,信号量及中断的引入,往往会出现高优先级任务被低优先级任务长时间阻塞或阻塞一段不确定时间的现象,即所谓优先级反转(Priority Inversion)。优先级反转会造成任务调度的
[应用]
ARM嵌入式系统中断向量表的动态配置
摘要:通常32位ARM嵌入式系统的中断向量表是在程序编译前设置好的,每次编写中断程序都要改C程序的汇编启动代码,相当繁琐。本文给出一种配置ARM中断向量表新方法。该方法比通常方法仅增加一条指令执行时间,简便高效,功能完备,向量表在运行时动态生成,C程序可以使用固定向量表的启动代码,并可隐藏起来。 关键词:动态配置 嵌入式系统 ARM 中断向量表 一般32位ARM嵌入式系统的中断向量表是程序编译前设置好的。在编写32位ARM嵌入式系统的中断服务程序、设置和修改ARM体系结构的中断向量表时,常感到相当麻烦,不得不修改汇编代码,对不喜欢使用汇编代码编程的程序员尤其如此。当需要在程序运行过程中动态修改中断向量的程序时会感到更为不便,
[嵌入式]
基于LXT971A的嵌入式系统的网络通讯设计
摘要:介绍LXT971A型网络通讯接口电路的内部结构和引脚功能,给出在嵌入式系统中采用LXT971A与MPC860型网络通讯处理器进行网络通讯的硬件接口实现方法,同时介绍基于嵌入式系统的服务器端的软件编程。 关键词:嵌入式系统 网络通讯 接口电路 处理器 服务器 1 概述 在嵌入式系统中,网络通讯是非常重要而且必备的功能。为了充分发挥嵌入式系统中CPU的网络控制功能,选择一款合适 的网络接口电路至关重要,LXT971A网络通讯接口电路就是一个很好的选择。LXT971A是Intel公司的网络通讯接口电路,它符合IEEE标准,直接支持10Mb/s/100Mb/s双绞线应用,也支持100Mb/s光纤接口;该电路提供的MII接口能很
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved