1 / 79

FPGA 硬件验证及 逻辑综合软件

FPGA 硬件验证及 逻辑综合软件. 2013 年 4 月 11 日. 内容. FPGA 硬件验证 逻辑综合软件 时序仿真 演示. 一、 FPGA 硬件验证. FPGA 应用举例 FPGA 常用软件 FPGA 验证流程. 应用领域举例. 总线接口 高速数据采集 通信领域 编解码、信号纠错 嵌入式系统 数字图象处理 数字信号处理. Xilinx 公司 ISE Altera 公司 QUARTUS II 1 、开发工具

Télécharger la présentation

FPGA 硬件验证及 逻辑综合软件

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FPGA硬件验证及逻辑综合软件 2013年4月11日

  2. 内容 FPGA硬件验证 逻辑综合软件 时序仿真 演示

  3. 一、 FPGA硬件验证

  4. FPGA应用举例 • FPGA常用软件 • FPGA验证流程

  5. 应用领域举例 • 总线接口 • 高速数据采集 • 通信领域 编解码、信号纠错 • 嵌入式系统 • 数字图象处理 • 数字信号处理

  6. Xilinx公司 ISE Altera公司 QUARTUS II 1、开发工具 Lattice公司 ispLEVER ACTEL公司 Libero IDE (Microsemi收购) 2、开发语言 Verilog or VHDL FPGA公司及软件

  7. 国产FPGA • 京微雅格(Capital Microelectronics),以前又称雅格罗技(Agate Logic)。 • 2003年在美国硅谷创办。 • 2005年与清华大学合作。 • FPGA+CPU+RAM+Flash可配置应用平台(CAP)芯片: • Astro系列(AS1E5F1K、AS2E5F1K) • Angelo系列(AG1F4N4) • http://www.capital-micro.com/index.htm

  8. Xilinx—ISE界面

  9. Altera--Quartus II界面

  10. Lattice—ispLEVER界面

  11. Actel--Libero界面

  12. FPGA流程 第三方软件

  13. Xilinx Spartan 3 xc3s400 为例 1.创建新工程 2.添加设计文件(.v或者.vhd) 3.分配IO管脚 4.综合 5.布局布线 6.下载 7.测试

  14. 创建新工程1/2 • File-->New project

  15. 创建新工程2/2 接下来一直Next.. Spartan3 XC3S400 FT256 -4

  16. 添加设计文件 鼠标右键

  17. 分配IO管脚1/2

  18. 分配IO管脚2/2 添加管脚约束文件 上一步分配完管脚,保存,自动生成这个ucf文件。

  19. 综合 鼠标单击选中顶 层模块 fsk_modulator, 双击Synthesize

  20. 实现 鼠标单击选中 顶层模块 fsk_modulator, 双击Implement Design

  21. 生成下载文件--.bit格式

  22. 下载文件1/3

  23. 下载文件2/3

  24. 下载文件3/3

  25. 测试1/2 FPGA开发板 下载线

  26. 测试2/2

  27. 功能要求 功 能 要 求 系统建模 系统建模 行为设计 不满足 Verilog / VHDL ( ) 不满足 电路仿真 行为仿真 满足 满足 综合 、 优化 手工设计 网表 版图 不满足 不满足 时序仿真 满足 后仿真 版图自动 满足 布局 、 布线 流片 、 封装 、 测试 不满足 后仿真 满足 流片 、 封装 、 测试 IC典型流程 数字VLSI 流程 模拟IC 流程 Matlab Matlab Modelsim, Questasim, Muxplus II Spectre Virtuoso, laker Design Compiler Spectre Astro, Encounter Calibre Modelsim, Questasim, Muxplus II

  28. 二、逻辑综合

  29. 逻辑综合相关概念 • 逻辑综合工具--Design Compiler

  30. 逻辑综合相关概念 • 什么是逻辑综合? • 时间路径 • 时序:setup/hold • 可综合verilog • 基本术语

  31. 什么是逻辑综合? • 综合就是把HDL 代码转换为门级电路的过程,用公式表示 就是:综合= 翻译  + 优化  + 映射( Synthesis  = Translation  + Optimization  + Mapping  )

  32. assign mux_out=!mux_control&mux_in1 |mux_control&mux_in2|mux_in1&mux_in2; //assign mux_out=mux_control ?mux_in1:mux_in2; 翻译 映射

  33. 时间路经 • 时间路径:信号传播经过的逻辑通道,简称路径。 • 起点一般为:基本输入端口或寄存器的时钟端口; • 终点一般为:基本输出端口或寄存器的数据端口。 • 时间路径通常分为4种: 基本输入到基本输出: 基本输入到寄存器: 寄存器到基本输出: 寄存器到寄存器:

  34. 时间路经 基本输入到基本输出 基本输入到寄存器 寄存器到寄存器 寄存器到基本输出

  35. 时序:setup/hold • 建立(setup)时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。 • 保持(hold)时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。 • 裕度(slack):是时序要求与实际时序之间的差值,反映了时序是否满足要求。裕度为正,满足要求;反之不满足。 裕度=要求的时间-实际的时间

  36. 可综合的Verilog(1) HDL语言:是“硬件描述语言” ,即Hardware Description Language, 而不是“硬件设计语言”,Hardware Design Language.因此电路设计必须遵循RTL的模式来编写代码,而不能随心所欲地只写出符合语法的代码。 下面就常用的可综合Verilog编写格式做一简单总结。

  37. 可综合的Verilog(2)

  38. 可综合的Verilog(3)

  39. 可综合的Verilog(4)

  40. 可综合的Verilog(5)

  41. 可综合的Verilog(6)

  42. 逻辑基本术语 • 库(Library) • 设计(Design) • 单元(Cell or Instance) • 参考(Reference) • 端口(Port) • 管脚(Pin) • 线网(Net) • 时钟(Clock)

  43. 逻辑综合基本术语—库 库:一组逻辑单元的集合。 • 库包括库申明、库属性、库应用环境和每个单元的功能描述、时间延时、面积、功耗等。 • 逻辑综合库包含两种格式: 1.自由文件格式 .lib(任何文本编辑器都可以打开) 2. synopsys应用程序可使用的格式.db(不可查看) 存放路径 Astro布局布线库 LVS文件 文本文件,datasheet, handbook 可测性矢量压缩文件 标准单元版图 Cadence布局布线库 物理参数库 符号库 逻辑综合库 标准单元verilog模型 标准单元清单 库说明文件

  44. 逻辑综合基本术语 design module top(A,B,C,D,CLK,OUT1); input A,B,C,D,CLK; output OUT1; …. INV U2(.A(BUS0),.Z(INV0)); …. endmodule port reference cell pin

  45. 逻辑综合工具介绍 • Synopsys公司:Design Compiler(DC)和Synplify • Cadence公司:Encounter RTL Compiler 和 BuildGates • Magma公司:Talus RTL • Mentor公司: Precision RTL • 以上综合工具都具有图形界面和命令窗口

  46. DC启动 工作站启动方法: 创建启动软件目录 mkdir syn 进入到启动软件目录 cd syn source /opt/demo/synopsys.env design_vision & 注:先不要启动软件,看完53页内容在启动软件。

  47. DC界面 输入命令的地方

  48. 逻辑综合流程 1.HDL准备 2.准备工艺库 3.读入HDL代码 4.添加约束 5.综合 6.查看报告 7.文件导出

  49. 1.HDL准备 • 软件仿真过没有问题的设计文件 • 带IO的顶层文件。

  50. module top_pad (clk_pad, en_pad, data_in_pad, fsk_out_pad ); input clk_pad,en_pad,data_in_pad; output fsk_out_pad; fsk_modulator fsk_modulator(clk_wire,en_wire,data_in_wire,fsk_out_wire); PULLHS1 pull_high (.Z(high_wire)); PULLHS0 pull_low (.Z(low_wire)); //input PBCD2RN data_in_block (.PAD(data_in_pad),.IE(high_wire), .OEN(high_wire), .REN(high_wire), .C(data_in_wire)); PBCD2RN clk_block (.PAD(clk_pad),.IE(high_wire), .OEN(high_wire), .REN(high_wire), .C(clk_wire)); PBCD2RN en_block (.PAD(en_pad),.IE(high_wire), .OEN(high_wire), .REN(high_wire), .C(en_wire)); //output PBCD2RN fsk_out_block (.PAD(fsk_out_pad),.IE(low_wire), .OEN(low_wire), .REN(high_wire), .I(fsk_out_wire)); endmodule 查看库的handbook

More Related