基于FPGA 的LVDS设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CLR
CLK4X INV
LO
CLR
IDAT14 D0
IDAT10 D1
IDAT6 D2
IDAT2 D3
LR
L
IDAT12 D0
RISEDATA IDAT8 D1
IDAT4 D2 IDAT0 D3
LF
L
FALLDATB
CLK4X
DDRFD VCC
INV D0 D1
GND
CLK4X
CLK4X
LO
CLR
LO
36
2003.5
绘 制 原 理 图 或 设 计 状 态 机 的 方 法 生 成 网 络 表 ,功 能 仿 真 正 确 后 ,经 过 翻 译 、映 射 、放 置 和 布 线 、时 序 优 化 及 配 置 过 程 ,生 成 比 特 流 文 件 。然 后 ,进 行 时 序仿真,仿真通过后下载到 PROM 中。(我们用了 Xilinx 公司的 XC18V01。)
ELSIF CLK 'EVEN T AN D CLK='1 ' T HEN COU NT <=
(COUN T +1) M OD 256;
END PROCESS;
TC<='1 ' WHEN COU NT=255 ELSE '0';
TYPE STATE _TYPE I S (IDL E, PACK1, PACK2, TRANS-
靠近子卡的边缘连接器(≤ 1.52 cm),并给每个差
分引脚串联一个 20 Ω的贴片电阻。 ④ 电源方面:Virtex芯片上电时要求有大于 500
mA 的驱动电流,同时,由于多个输出引脚的电位 快 速 变 化 ,要 求 每 对 电 源 和 地 引 脚 都 要 良 好 旁 路 。
4 结 论
当使用 40 MHz 的外部时钟时, BLVDS 总线上 的传输速率为 120 M b/s,成功实现了多个通信子卡 间 的 高 速 数 据 通 信 。现 在 ,我 们 正 将 该 通 信 系 统 移 植到我单位与胜利油田联合研制的 SL-6000 型高分 辨率综合测井系统上。
3 硬件设计要点
① BLVDS 信号的偏置电压为 1.25 V,电压摆幅 只有 350 mV,传输速率≥ 100 M b/s;因此,电路板 制作至关重要, 要求至少使用四层板。
② 为使干扰信号只以共模方式加到差分线对上 (不影响数据正确性), 要求差分线对间的距离尽 可能小。BLVDS 标准要求的差分阻抗为 100 Ω,由 公式 :
闲状态时如有发送命令, 即转入发送状态
ELSE SREG<=PA CK1;
// 否则,发送填充字1
WHEN PACK1=>
(后略)
(2) 串化器的原理设计
串化器由多级嵌套的子图和若干宏模块组成,
原理图的顶层图如图 4 所示。四个四位并入串出寄
存器将 16位并行数据拆分为四组串行数据,其中的
奇数位和偶数位分别通过一个双数据速率寄存器,
向发送区写入 相应的替代字
Y
为填充字或同步字?
向发送区写入两 Y 个相应的替代字
N 为替代字?
N
将此字写入发送区
还有未读数据? Y
N 从发送区取一帧数据写入
FPGA的发送FIFO
发送FIFO满?
Y
N 再向发送FIFO写一帧数据
全部发送完毕?
N
Y 结束
图3 发送数据流程图
37 2003.5 Mi crocontrol lers & Emb edded Systems
控制部分
总线
倍频器
图2 FPGA结构
送 FIFO 中。该 FPGA 得到总线控制权后,即发送同 步 帧 ( 由 同 步 字 与 填 充 字 组 成 ),待 被 寻 址 的 接 收 子 卡 实 现 与 自 己 的 同 步 后 ,再 发 送 数 据 帧 。各 帧 数 据 经 串 化 器 转 化 为 两 对 差 分 信 号 ,并 同 与 之 同 步 的 差分时钟信号一起送至背板 BLVDS总线上。在接收 端,接收子卡将差分信号解串成 16位并行信号,并 从中获得同步信息并实现同步, 继而检出有效数 据, 写入接收 FIFO, 同时以快中断 (FIQ) 通知 EP7211。
得 到 两 对 差 分 信 号 ,同 时 用 另 一 个 双 数 据 速 率 数 据 速 率 寄
存 器 为 时 序 敏 感 器 件 ,其 内 部 主 要 部 分 都 加 入 了 时
开始
有待发数据? N Y
从数据区读入一个1 6位字
真正的双口操作 ; ◇ 支持包括 LVDS、BLVDS 在内的 20 种高性能
接口标准 ; ◇ 8 个全数字的延迟锁定环 DLL(Delay Locked
Loops), 具有时钟移相和乘除功能 ; ◇ 支持 IEEE 1149.1 边界扫描标准, 具有基于
SRA M 的在系统配置功能。 我们使用Xilinx Foudation F3.1i 软件开发XCV50E 芯片。 设计流程为 : 首先用编写 VHDL 语言程序、
我们最终选定 Xilinx公司的 XCV50E。此芯片属 于 Virtex-E 系列, 具有如下特性 :
◇ 0.18 nm 6 层金属工艺,具有 5.8万个系统门; ◇ 使用 1.8 V 核心电压, 低功耗设计 ; ◇ 130 MHz 内部时钟 ; ◇ 64 KB 的同步块内存 (BlockRAM),可实现
子卡1 CPU FPGA
子卡2 CPU FPGA
子卡3 CPU FPGA
匹配 电阻
差分总线 控制总线 地址总线 底板结构
匹配 电阻
图1 系统结构
设计完成后的 XCV50E由控制部分、发送 FIFO、 帧 编 码 器 、串 化 器 、解 串 器 、帧 解 码 器 、数 据 检 出 器、接收 FIFO、时钟倍频器及输入输出单元等部分 组成,结构如图 2 所示。 1.2 工作过程
Z DIF ?
120
ln ?? 4? ??
0.475? R ? 0.67 ? 0.54b ?
给出。
其中,
ZDIF
为差分线对的差分阻抗,
ε R

印制板介电常数, δ为信号层到电源层的厚度,b
为导线宽度。本电路选用的线距及线宽均为
0.18mm。
③ 考虑到阻抗不匹配引起的信号反射和导线的
电导效应,要求 XCV50E 芯片的差分引脚尽可能地
新器件新技术 NEW PRODUCT & TECH
基于 FPGA 的总线型 LVDS 通信系统设计
■ 信息工程大学 卜佑军 来卫国
摘 要 关键词
总 线 型 低 压 差 分 信 号( BLVDS)是 一 种 性 能 优 良 的 物 理 层 接 口 标 准 。本 文 介 绍 一 种 基 于 总 线 型 LVDS 的通信系统方案,以及利用 FPGA 芯片实现系统核心模块的设计方法。该方案可广泛 使用在高速通信领域, 具有较高的应用价值。
FPGA 的设计中,发送及接收 FIFO 的设计用了
双 口 块 内 存 (Block RA M ),时 钟 倍 频 器 用 了 延 迟 锁 定
环 (DLL)。帧解码器由 30 位并行数据产生器、同
步 字 检 测 阵 列 和 接 收 状 态 机 组 成 。以 下 重 点 介 绍 帧
编码器和串化器的设计。
2 软件设计
2.1 EP7211程序设计
通信子卡内的 EP7211为系统级芯片,用来预处 理和接收数据。EP7211的内核为 ARM7TDMI,使用 32 位精简指令。发送数据的流程如图 3 所示。接收 较简单, 只需在快中断(FIQ)服务程序中写入接收 FIFO 的读取代码即可。
2.2 FPGA设计
1 结构及工作过程
1.1 系统结构和FPGA结构
本 通 信 系 统 由 背 板 和 若 干 通 信 子 卡 组 成 。背 板 并列有 8 个插槽,并布有 BLVDS 总线和其它控制、 地址总线。 通信子卡由 EP7211 芯片 (负责数据处 理)、XCV50E 及 DRAM、PROM 等外围芯片和元件 组成,系统结构如图 1 所示。
38
2003.5
(1) 帧编码器的 VHDL 语言设计
帧编码器包括一个长为 256 的计数器和一个四
状 态 的 单 热 点 状 态 机 ,用 以 产 生 同 步 帧 和 数 据 帧 。
部分代码如下 :
PROCESS( RESET ,CLK)
// 产生长 256 的计数器
IF RESET='1' T HEN COUN T<=0;
BLVDS FPGA 串 化 解 串 高 速 通 信
低压差分信号 LVDS (Low Volt ag e Differen tial Signal)是由 ANSI/TIA/EIA-644-1995 定义的用于高 速数据传输的物理层接口标准。 它具有超高速 (1.4 Gb/s)、 低功耗及低电磁辐射的特性, 是在铜 介质上实现千兆位级高速通信的优选方案; 可用 于服务器、 可堆垒集线器、 无线基站、 ATM 交换 机 及 高 分 辨 率 显 示 等 等 ,也 可 用 于 通 用 通 信 系 统 的 设计。 BLVDS(Bus LVDS) 是 LVDS 技术在多点通 信 领 域 的 扩 展 ,要 求 附 加 总 线 仲 裁 设 计 、更 大 的 驱 动电流 (10 mA) 和更好的阻抗匹配设计。
M IT );
SIGANL SREG :STATE_TYPE;
PROCE SS(CLK ,R ESET)
// 状态机进程
IF CLK'EVENT AN D CLK='1' THEN
IF RESET=1 THEN SREG<=IDLE ELSE
CASE SREG IS
WHEN I DLE=>
IF SEN D_UD='1' T HEN SREG <= TRANSM IT ; //空
新器件新技术 NEW PRODUCT & TECH
IDAT15 D0 IDAT11 D1 IDAT7 D2
IDAT13 D0 RISEDATA IDAT9 D1
IDAT5 D2
RISEDATA D0
FALLDATA
D1
FALLDATA
INV
IDAT3 D3
IDAT1 D3
LR
L
LF
L
CLK4X LR
CLR
PISO
PISO
IDAT[15 : 0]
CLK
CLK
LOADRISE
LR
LOADFALL LF
CLK4X
CLK4X
DDRFD INV
RISEDATB D0
FALLDATB D1
CLK4X
D L
CKX CX
DBX DB
LOAD GEN
图4 串化器原理图
DDRFD
序 特 性 限 制 , 如 最 大 时 滞(ma xde la y )、 最 大 抖 动 (maxskew), 并用 FMAP 控件强制性地把相关信号 放入同一个函数产生器中。
在 发 送 子 卡 中 ,EP7211 将 待 发 数 据 整 理 成 多 个 长 255 字,字宽 16 位的数据帧,发至 FPGA 内的发
NEWPRODUCT& TECH 新器件新技术
CPU
FPGA结构
发送 FIFO
帧编 码器
串化器
接收 FIFO
数据 检出
帧解 码器
解串器
输 入 差分 输 总线 出 单 元 控制
通常的 LVDS 电路设计使用各种专用芯片,如 美国国家半导体公司的 DS92LV16 等。我们用 FPGA 芯片自行设计 BLVDS 内核及扩展部分。相比之下, 使用 FPGA 可大幅减少芯片数量,降低成本,提高 系统可靠性, 同时具有更大的灵活性和向后兼容 性。 由于目前尚无实用的 16 位 BLVDS 收发器芯片 问 世 , 本 设 计 也 填 补 了 专 用 芯 片( A SIC)的 空 白 。
参考文献
1 Xilinx 公司. Virt ex-E fie ld progra mmable g ate arrays-relimin ary product specification. 2001-02
2 A dv a n ce d RISC M a ch i n e s (A RM ) L t d. ARM7TDM I Data Sheet . 1995
3 Na t iona l Se micon duct or. LVDS Own e rs ’ Manual. 1997
4 Stefan Sjoholm, Lennart Lindh. 用 VHDL 设计 电子线路. 边计年, 薛宏熙译. 北京:清华大学出版 社 , 2000
(收稿日期 :2002-12-18)
相关文档
最新文档