使用 EMIF 将 Xilinx FPGA
与 TI DSP 平台接口
应用指南
XAPP753 (v2.0.1) 2007 年 1 月 29 日
R
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
R
Xilinx is disclosing this Specification to you solely for use in the development of designs to operate on Xilinx FPGAs. Except as stated
herein, none of the Specification may be copied, reproduced, distributed, republished, downloaded, displayed, posted, or transmitted in
any form or by any means including, but not limited to, electronic, mechanical, photocopying, recording, or otherwise, without the prior
written consent of Xilinx. Any unauthorized use of this Specification may violate copyright laws, trademark laws, the laws of privacy and
publicity, and communications regulations and statutes.
Xilinx does not assume any liability arising out of the application or use of the Specification; nor does Xilinx convey any license under its
patents, copyrights, or any rights of others. You are responsible for obtaining any rights you may require for your use or implementation of
the Specification. Xilinx reserves the right to make changes, at any time, to the Specification as deemed desirable in the sole discretion of
Xilinx. Xilinx assumes no obligation to correct any errors contained herein or to advise you of any correction if such be made. Xilinx will not
assume any liability for the accuracy or correctness of any engineering or technical support or assistance provided to you in connection
with the Specification.
THE SPECIFICATION IS PROVIDED "AS IS" WITH ALL FAULTS, AND THE ENTIRE RISK AS TO ITS FUNCTION AND IMPLEMENTATION
IS WITH YOU. YOU ACKNOWLEDGE AND AGREE THAT YOU HAVE NOT RELIED ON ANY ORAL OR WRITTEN INFORMATION OR
ADVICE, WHETHER GIVEN BY XILINX, OR ITS AGENTS OR EMPLOYEES. XILINX MAKES NO OTHER WARRANTIES, WHETHER
EXPRESS, IMPLIED, OR STATUTORY, REGARDING THE SPECIFICATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NONINFRINGEMENT OF THIRD-PARTY RIGHTS.
IN NO EVENT WILL XILINX BE LIABLE FOR ANY CONSEQUENTIAL, INDIRECT, EXEMPLARY, SPECIAL, OR INCIDENTAL DAMAGES,
INCLUDING ANY LOST DATA AND LOST PROFITS, ARISING FROM OR RELATING TO YOUR USE OF THE SPECIFICATION, EVEN IF
YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THE TOTAL CUMULATIVE LIABILITY OF XILINX IN
CONNECTION WITH YOUR USE OF THE SPECIFICATION, WHETHER IN CONTRACT OR TORT OR OTHERWISE, WILL IN NO EVENT
EXCEED THE AMOUNT OF FEES PAID BY YOU TO XILINX HEREUNDER FOR USE OF THE SPECIFICATION. YOU ACKNOWLEDGE
THAT THE FEES, IF ANY, REFLECT THE ALLOCATION OF RISK SET FORTH IN THIS AGREEMENT AND THAT XILINX WOULD NOT
MAKE AVAILABLE THE SPECIFICATION TO YOU WITHOUT THESE LIMITATIONS OF LIABILITY.
The Specification is not designed or intended for use in the development of on-line control equipment in hazardous environments
requiring fail-safe controls, such as in the operation of nuclear facilities, aircraft navigation or communications systems, air traffic control,
life support, or weapons systems ("High-Risk Applications"). Xilinx specifically disclaims any express or implied warranties of fitness for
such High-Risk Applications. You represent that use of the Specification in such High-Risk Applications is fully at your risk.
© 2004-007 Xilinx, Inc. All rights reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx,
Inc. All other trademarks are the property of their respective owners.
修订历史
下表说明此技术文档的修订历史。
日期
2004 年 2 月 17 日
2004 年 3 月 31 日
2004 年 5 月 6 日
2005 年 6 月 15 日
版本
1.0
1.1
1.2
2.0
修订
Xilinx 最初版本。
修改图、加法和参考设计的新信息。
修订标题,添加平台。
添加 Virtex-4 实现。转换成章节格式。
2007 年 1 月 26 日
2.0.1
更改参考设计链接。
将 Xilinx FPGA 与 TI DSP 平台接口
www.xilinx.com/cn
XAPP753 (v2.0.1) 2007 年 1 月 29 日
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
修订历史. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
绪言 : 关于此指南
指南目录. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
其他资源. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
排版惯例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
第 1 章 : EMIF 概述
EMIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
EMIF 信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
EMIF 时钟控制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
字节通道对齐. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
EMIF 寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
EMIF 控制寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
CE 控制寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
CE 二级控制寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
全局控制寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
外设器件传输 (PDT) 控制寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
板级参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
第 2 章 : Virtex-II 系列或 Spartan-3 FPGA 到 EMIF 的设计
FPGA 设计 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Block RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Block RAM FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
CORE Generator 工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
TMSC64x 到 FPGA 的接口信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
设计示例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
FIFO 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
状态标志信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
EMIF 时序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
FPGA 时序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Block RAM 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
替代同步接口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
结论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
第 3 章 : Virtex-4 FPGA 到 EMIF 的设计
Virtex-4 IOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
FPGA 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
用做存储器的 Block RAM (示例 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Block RAM 用做具有前端触发器的存储器 (示例 2). . . . . . . . . . . . . . . . . . . . . . . . 38
Block RAM 用做 FIFO (示例 3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
外设器件传输 (PDT) 接口 (示例 4). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
具有 ISERDES 和 OSERDES 功能的 Virtex-4 IOB . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Virtex-4 ISERDES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Virtex-4 OSERDES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
数据突发接口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
寄存器初始化接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
印刷电路板 (PCB). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
XAPP753 (v2.0.1) 2007 年 1 月 29 日
www.xilinx.com/cn
将 Xilinx FPGA 与 TI DSP 平台接口
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
组件布局 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
PCB 指南提要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
结论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
第 4 章 : 参考设计
附录 A: Virtex-4 ISERDES 样本代码
附录 B: EMIF 寄存器域描述
附录 C: 相关参考文件
数据手册及用户指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Xilinx 技术文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Texas Instruments 公司文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
PCB 及设计指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
XAPP753 (v2.0.1) 2007 年 1 月 29 日
www.xilinx.com/cn
将 Xilinx FPGA 与 TI DSP 平台接口
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
R
关于此指南
绪言
指南目录
其他资源
排版惯例
本应用指南使用外部存储器接口 (EMIF) 实现了 Xilinx FPGA 到 Texas Instruments 数字信号
处理器 (DSP) 平台的几种连接。
本手册包含以下章节:
• 第 1 章 “EMIF 概述”,概述 Texas Instruments EMIF。
• 第 2 章 “Virtex-II 系列或 Spartan-3 FPGA 到 EMIF 的设计”描述将 TI TMSC6000
EMIF 连接到 Virtex™-II 系列或 Spartan™-3 FPGA 的实现。
• 第 3 章 “Virtex-4 FPGA 到 EMIF 的设计” 描述将 TI TMS320C64x EMIF 连接到
Virtex-4 FPGA 的实现。
• 第 4 章 “参考设计” 提供参考设计的目录结构和参考设计文件的链接。
• 附录 A “Virtex-4 ISERDES 样本代码” 提供 Virtex-4 实现的样本代码列表。
• 附录 B “EMIF 寄存器域描述” 定义 TI DSP 寄存器域。
• 附录 C “相关参考文件” 提供相关文档的链接。
要搜索硅片和软件问答数据库,或在 WebCase 中创建技术支持案例,请访问 Xilinx 网站,
网址为: http://www.xilinx.com/cn/support。
本文档使用了以下排版惯例。每种惯例使用一个示例来说明。
惯例
意义或用法
示例
斜体
引用其他文档
文字中强调的内容
更多详情,请参阅 《Virtex-4 配
置指南》。
地址 (F) 在时钟事件 2 之后被置
位。
带下划线文字
表示某网页的链接。
http://www.xilinx.com/cn/virtex4
将 Xilinx FPGA 与 TI DSP 平台接口
XAPP753 (v2.0.1) 2007 年 1 月 29 日
www.xilinx.com/cn
5
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
R
绪言:关于此指南
6
www.xilinx.com/cn
将 Xilinx FPGA 与 TI DSP 平台接口
XAPP753 (v2.0.1) 2007 年 1 月 29 日
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
R
EMIF 概述
第 1 章
本章简要描述 Texas Instruments DSP 外部存储器接口 (EMIF) 的功能。此描述中仅包含本
应用指南需要的元件及其相关实现。
有关此接口及其功能的完整概述,请参阅相关的 TI 数据手册(tms320c64xx.pdf,其中 xx
为 15t、16t 或 18)。
EMIF
EMIF 信号
TMSC64x EMIF 是 TMSC621x EMIF 的增强版。它具备 TMSC621x/TMSC671x EMIF 的所
有功能,并添加了以下新功能:
•
•
•
EMIFA 上的数据总线可以是 64 位宽,也可以是 32 位宽。
EMIFB 上的数据总线为 16 位宽。
EMIF 时钟 ECLKOUTx 为内部生成,并基于 EMIF 输入时钟。器件复位时,以下三个
时钟之一会被配置为 EMIF 输入时钟:
♦ 内部 CPU 时钟四分频
♦ 内部 CPU 时钟六分频
♦ 外部 ECLKIN
• 与 TMSC64x EMIF 接口的存储器应按照 ECLKOUTx (EMIF 时钟周期)运行。
♦ 可编程同步存储器接口控制器的同步控制引脚替换了固定的 SBSRAM 控制引脚。
♦ PDT 引脚提供外部到外部传输支持。
图 1-1 所示为组成 EMIFA 和 EMIFB 接口的信号,表 1-1 对这些信号进行了描述。端口 A
的信号都带前缀 “A”,端口 B 的信号都带前缀 “B”。为方便起见,本文档中的所有信号
名称都省略了 EMIF 端口前缀。
所有低有效信号的信号名称上都有上划线,如: SWE。
将 Xilinx FPGA 与 TI DSP 平台接口
XAPP753 (v2.0.1) 2007 年 1 月 29 日
www.xilinx.com/cn
7
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛
R
第 1 章:EMIF 概述
AED[63:0]
Data
ACE[3:0]
AEA[22:3]
ABE[7:0]
Memory
Map
Space
Select
Address
Byte
Enable
BED[63:0]
Data
BCE[3:0]
BEA[22:3]
BBE[7:0]
Memory
Map
Space
Select
Address
Byte
Enable
External
Memory
Interface
Control
AECLKIN
AECLKOUT1
AECLKOUT2
ASDCKE
AARE/ASDCAS/ASADS/ASRE
AAOE/ASDRAS/ASOE
AAWE/ASDWE/ASWE
AARDY
ASOE3
APDT
Bus
Arbitration
EMIFA
AHOLD
AHOLDA
ABUSREQ
External
Memory
Interface
Control
BECLKIN
BECLKOUT1
BECLKOUT2
BARE/BSDCAS/BSADS/BSRE
BAOE/BSDRAS/BSOE
BAWE/BSDWE/BSWE
BARDY
BSOE3
BPDT
Bus
Arbitration
EMIFB
BHOLD
BHOLDA
BBUSREQ
x753_01_031105
表 1-1: EMIF 信号描述
图 1-1: EMIFA 和 EMIFB 信号
引脚
CLKOUT4
CLKOUT6
ECLKIN
ECLKOUT1
ECLKOUT2
ED[63:0]
ED[31:0]
ED[15:0]
EA[22:3]
I/O/Z
O/Z
O/Z
I
CPU 时钟的四分频输出
CPU 时钟的六分频输出
EMIF 时钟输入
描述
O/Z 速率为 ECLKIN、CPU/4 或 CPU/6 时的 EMIF 输出时钟
O/Z 速率为 ECLKIN、CLKOUT4 或 CLKOUT6 时的 EMIF 输出时钟
I/O/Z
EMIFA 64 位数据总线 14
I/O/Z
I/O/Z
O/Z
EMIFA 32 位数据总线
EMIFB 16 位数据总线
EMIFA 地址输出
8
www.xilinx.com/cn
将 Xilinx FPGA 与 TI DSP 平台接口
XAPP753 (v2.0.1) 2007 年 1 月 29 日
http://www.elecfans.com 电子发烧友 http://bbs.elecfans.com 电子技术论坛