首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
DSP技术
» 高速数字电路设计:互连时序模型与布线长度分析
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
高速数字电路设计:互连时序模型与布线长度分析
发短消息
加为好友
520503
当前离线
UID
872339
帖子
13270
精华
0
积分
6635
阅读权限
90
在线时间
361 小时
注册时间
2012-3-2
最后登录
2016-3-10
论坛元老
UID
872339
1
#
打印
字体大小:
t
T
520503
发表于 2015-5-27 23:01
|
只看该作者
高速数字电路设计:互连时序模型与布线长度分析
模型
,
领域
关键字:PCB DDR SDRAM PHY芯片
高速数字电路互连时序模型与布线长度分析
高速电路
设计领域,关于布线有一种几乎是公理的认识,即“等长”走线,认为走线只要等长就一定满足时序需求,就不会存在时序问题。本文对常用高速器件的互连时序建立模型,并给出一般性的
时序分析
公式。为体现具体问题具体分析的原则,避免将公式当成万能公式,文中给出了MII 、RMII、RGMII和SPI的实例分析。实例分析中,结合使用公式分析和理论分析两种方法,以实例证明公式的局限性和两种方法的利弊。本文最后还基于这些实例分析,给出了SDRAM和DDR SDRAM等布线的一般性原则。
本文通过实例指明时序分析的关键在于:对具体时序理解透彻的基础上,具体问题具体分析,不能一味的套用公式,更不是通过走线的等长来解决时序问题。
1. 典型高速器件互连时序模型
图1给出通用高速器件互连接口简化模型。图中,左侧虚线框表示通信器件双方的主控端。常见的实际情形有:SDRAM控制器、SPI主控制器等。经过适当的演化,基于本模型很容易得到I2C主控端、MII接口的TX组模型、RMII共享时钟模型以及DDR控制信号与地址信号的互连模型等。右侧虚线框表示通信中的被动端。本模型中,数据是双向的,但是时钟是单一方向。简单地说,就是时钟单一方向发送,数据双向传递。这个特点是本模型的适应场景。
图1 简化的器件互连模型
图2 是基于本模型的数据写时序关系图。图中,T0表示主控端内部时钟发生器CLK发出的时钟到达触发器Q1时钟输入端的延时;T1表示触发器Q1接受到时钟后到Q1输出端出现数据的延时;T2表示主控端内部时钟发生器CLK发出的时钟到主控端外部时钟输出引脚的延时;T3表示内部触发器Q1输出的数据到达主控端外部数据输出引脚的延时。通常,半导体制造商不会给出T0-T3这些参数,通常会给出一个用于反映这些参数最终等价效果的参数,即主控端外部数据引脚上出现数据时相对于外部时钟引脚出现时钟信号的延时,这里记为Tco。
图2 数据写时序图
时序分析最关心的参数是信号到达接受端的最终建立时间和保持时间是否符合器件要求。这里将建立时间和保持时间分别记为Tsetup和Thold。Tflt-clk和Tflt-data分别表示时钟信号和数据信号的飞行时间,即他们在对应走线上的延时。Tjitter-clk和Tjitter-data分别代表时钟信号和数据信号上的抖动时间。
器件的建立时间和保持时间是通过描述器件外部的时钟引脚和数据引脚上的时序关系来反映器件内部相关的时序延时和相关目标逻辑时序关系的集总参数。信号从器件的引脚到内部目标逻辑存在一定延时,同时内部逻辑需要最终的建立和保持时间,综合器件内部的这些需求,最终得到器件对外的时序要求。
分析图2中时钟信号和数据信号的相互关系,可以发现:由于Tco的存在,如果器件间的时钟和数据走线等长,则在接收端,用于发送时间的边沿不能用于数据的采样。为了在接收端对数据进行正确采样,必须调整时钟和数据走线的关系,有两种方法:第一,时钟走线长于数据走线,使得数据飞行时间较时钟短。此时,在接收端仍然可以使用产生数据的时钟沿采样数据;第二,数据走线比时钟长,使得数据飞行时间较时钟长。此时,可以使用使用产生数据时钟沿的下一个上升沿采样数据。
实际工程中,设计人员一般使用第二种方法并希望对于数字系统的建立时间和保持时间都留有一定裕量,因此我们可以得出下列公式,即建立时间公式:
(Tsetup)min + (Tco)max + (Tflt-data - Tflt-clk)max + Tjitter-clk+ Tjitter-data < T (1)
和保持时间公式:
(Tco)min + (Tflt-data - Tflt-clk)min - Tjitter-clk- Tjitter-data > (Thold)min (2)
很显然,Tco、Tflt-data 、Tflt-clk中,Tco是器件的固有参数,Tflt-data 和Tflt-clk取决于对应的PCB走线长度和走线层等。如果Tflt-data 和Tflt-clk的差过小,则导致数据的保持时间不足;如果过大,则会使得建立时间不足。因此,Tflt-data 和Tflt-clk的差存在上限和下限双重限制。
图3 数据读时序图
图3 是基于本模型的数据读时序关系图。图中参数含义与前述相同。需要注意的是:在读关系中,时钟首先需要从主控端传到从端,待从端发出的数据回到主控端后,才能由主控端对数据进行采样。因此,建立和保持时间的公式如下:
(Tsetup)min + (Tco)max + (Tflt-data)max + (Tflt-clk)min + Tjitter-clk+ Tjitter-data < T (3)
(Thold)min< (Tco)min + (Tflt-data)min + (Tflt-clk)max - Tjitter-clk- Tjitter-data (4)
参数Tco、Tflt-data 、Tflt-clk中,To是器件的固有参数,Tflt-data 和Tflt-clk取决于对应的PCB走线长度和走线层等。如果Tflt-data 和Tflt-clk的总和过小,则导致数据的保持时间不足;如果过大,则会使得建立时间不足。因此,Tflt-data 和Tflt-clk的和存在上限和下限双重限制。
需要额外说明的是,前述公式的分析中暗含一个结果,就是:默认器件的输出保持时间和输出延时是等时间的。实际上,不同的半导体器件具有不同的情况,即使同一个半导体器件,在每次输出数据时也不一定是完全相同的。这正是本文开始就一再强调的,时序分析的公式并不是万能的,尽管大多数情况均适用,鉴于现实世界中的情况多样,必须具体问题具体分析。
还有一个问题:是否可以使用产生数据时钟沿的次次上升沿采样数据,或者更靠后的边沿来采样数据。图4所示是1#时钟沿发出的数据由3#时钟沿采样的例子,在前述内容中,1#时钟沿发出的数据均由2#时钟沿采样。此处。为了在接收端有较好的建立和保持时间,可以看出数据的飞行时间最好要大于一个时钟周期。假设此时钟周期为40ns,表层走线,板材为FR-4,则数据线的最小长度要635CM。即使时钟周期为8ns,数据线最小长度也要127CM。这显然不是我们所希望的。因此,实际中使用产生数据时钟沿的次上升沿来采样数据。
图4 使用数据产生沿的后续边沿采样数据
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议