水煮FPGA 传统FPGA设计流程简介.

Slides:



Advertisements
Similar presentations
現代殺手心血管疾病 書田診所家醫科主任 何一成 陽明大學醫學士 陽明大學傳統醫學碩士
Advertisements

首页 全国高等学校招生考试统一考试 监考员培训 广州市招生考试委员会办公室.
SOPC技术 数字逻辑电路 主讲:刘昌华 嵌入式技术研究所
FPGA设计与应用 大连理工大学软件学院 王洁 2011年春季.
2011年度十佳、先进员工 旅游活动(二) 九鲤溪与太姥山游记.
人口增长.
香港扶貧計劃 關愛基金 Group 5 組員 馬曉真 余葆 董賽騫 蕭雪兒.
通州国税纳税信用等级A类纳税人 取消发票认证操作培训 2016 通州国税.
營利事業所得稅查核準則 相關概念介紹 南區國稅局 新營分局 林俊標 各位學員大家好:
第一章 会计法律制度 补充要点.
二、个性教育.
彰化縣教師會 導護問題知多少? 理事長:許麗芳老師 報告人:廖銘潭老師   .
第2章 SOPC硬件开发环境及流程.
EDA技术 第9章 FPGA硬件设计.
劳动统计专业年报培训 社会科 洪惠娟 2009年11月.
实验四 利用中规模芯片设计时序电路(二).
學 號:997I0010、997I0024 組 員:洪韋鈴、王婷婷 日 期: 指導老師:王立杰 老師
第2章 FPGA/CPLD结构与应用.
传统数字系统设计流程 设计目标 人工给出真值表 人工化简卡诺图 得到最简表达式 人工使用LSI电路实现 系统调试和验证.
《 E D A 技 术》 课 程 教 学 讲授:伍宗富 湖南文理学院电气与信息工程学院 2017年3月22日星期三.
第10章 FPGA硬件设计 <EDA技术与应用> 课程讲义
認識拿破崙˙波拿巴 關於一位運氣很差的矮子的趣事兩三件 我不是矮子!! 本日主角 重點不是這個吧? 惡搞人員:橘蘋3顆和一隻小精靈.
第八章 可编程逻辑器件 本章的重点: 本章的难点: 1.PLD的基本特征,分类以及每种类型的特点;
第八組 組員:07黃佩瑄 13吳姿毅 14葉芷芸 26黃欣蓮 34林思妤 48潘婷蓉
公司法(六) 股份有限公司 1.
可综合Verilog语言及FPGA验证
电 子 信 息 工 程 系 热 烈 欢 迎 来自全国各地的新同学!.
Greatest Common Divisor ---最大公约数
AKA Embedded 开放实验室系列普及讲座之一 FPGA/CPLD的应用和开发简介
第1章 FPGA概述 1.1 FPGA的发展历程 1.2 FPGA的基本原理 1.3 FPGA的设计方法 1.4 FPGA的设计流程
FPGA设计时序收敛 天津工业大学-Xilinx 信号传输与处理联合实验室
水煮FPGA 传统FPGA设计流程简介.
學校教職員退休條例修正草案重點報告 報告人:徐創晃.
《中级经济法》模考点评 主讲老师:武劲松.
第3章 可编程逻辑器件的 工作原理.
Chapter 5 Verilog 硬體描述語言
Chapter 5 Verilog硬體描述語言
可编程片上系统设计 何宾
FIFO 与 UPP 本节我们结合UPP接口给大家介绍一下FIFO在实际工程中的使用。 广州创龙电子科技有限公司 01 51ele.net
第1章 概 述.
EDA技术 廖义奎.
浅谈基于FPGA的电路设计 报告人:吴爱平 2005/11/13
版权所有,禁止未经授权的商业使用行为 何宾 Tel: 北京中教仪装备技术有限公司.
EDA技术实用教程 第1章 概 述.
可编程逻辑器件及ASIC简介.
可编程器件与电子设计自动化 上海交通大学电工及电子技术实验中心 一九九九年三月.
SOA – Experiment 3: Web Services Composition Challenge
FPGA设计.
EDA 原理及应用 何宾
本章小结: 可编程逻辑器件(Programmable Logic Device,简称为 PLD)是目前数字系统设计的主要硬件基础。现场可编程门阵列 FPGA(Field Programmable Gate Array)现场可编程门阵列FPGA在结构上由逻辑功能块排列为阵列,功能由逻辑结构的配置数据决定,配置数据可以存放在片外的EPROM或其他存储体上,人们可以控制加载过程,在现场修改器件的逻辑功能。
Programmable Logic Architecture Verilog HDL FPGA Design
FPGA系统设计与实践 综合.
大作业要求 1、按照选题要求设计电路,并仿真、下载,实现电路。 2、撰写综合报告.
数据挖掘工具性能比较.
CPU结构和功能.
第6章 半导体存储器和可编程逻辑器件 6.1 概述 6.2 ROM(只读存储器) 6.3 RAM (随机存取存储器)
第1章 概述 1.1 DSP实现方案及设计流程 1.2 现代DSP设计流程概述 1.3 两类DSP解决方案的比较.
FPGA 在线调试技术 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd 本节将讲解FPGA的在线调试技术。主要以VIVADO和ISE为例,讲解一下虚拟输入输出VIO (Virtual Input/Output)和集成逻辑分析仪ILA.
第一章 概 述.
Cassandra应用及高性能客户端 董亚军 来自Newegg-NESC.
北投溫泉博物館 建築特色 ★小組成員:高103林孟璇、林念儀、施妤柔★.
第1章 EDA技术概述.
实验三 16位算术逻辑运算实验 不带进位控制的算术运算 置AR=1: 设置开关CN 1 不带进位 0 带进位运算;
Xilinx FPGA Design Flow
第四章 QuartusII软件的应用 本章重点: 本章难点: EDA技术 QuartusII的设计输入 QuartusII软件的综合与编译
长春理工大学 电工电子实验教学中心 数字电路实验 数字电路实验室.
可编程逻辑器件器件的应用(讲座1) 兰州石化职业技术学院 电子技术教研室 贾 达.
反应显微谱仪的飞行时间测量 暨数据获取系统的研究
第九章 存储器和可编程逻辑器件 本章主要内容 半导体存储器 只读存储器 随机存取存储器 存储器容量的扩展 可编程逻辑器件
FPGA系统设计与实践 本章小结(第5章).
Presentation transcript:

水煮FPGA 传统FPGA设计流程简介

FPGA? Field Programmable Gate Array 可编程逻辑器件 适合高密度,复杂时序逻辑 供应商: Xilinx、Altera、Actel、Lattice、Quicklogic

FPGA结构 可编程IO 可编程逻辑单元 LUT(查找表) 寄存器 布线 全局线(低Skew、强驱动) 普通互连(长、短) 专用进位链 内嵌功能单元 PLL/DLL RAM DSP SERDES ……

DCM IOB XC3S50 overview Switch box CLB RAM&DSP Lan (global、short、long)

LUT Register 进位链 XC3S50 CLB overview

FPGA设计流程 电路设计 功能仿真 综合 综合后仿真 布局布线 布局布线后仿真 板级仿真(optional) 加载配置,在线调试

FPGA设计平台 ? Xilinx ISE — 界面简洁的工具接口 Altera Quarters II — 高集成度的工具箱 MAXPLUS II ?

模型设计 数字系统模型设计层次 ESL Behavior level RTL Gate level 设计输入 SystemC, SystemVerilog HDL 原理图 — simple 网表 – IP core TOP DOWN

高性能电路HDL描述 1、提升频率 算法:并行、乒乓、流水线……合理按排数据流 结构:源逻辑复制,减少扇出…… 2、减少资源、功耗 资源共享,时钟使能

功能仿真 Tools Modelsim VCS NCsim …… Working in Test Bench 建议在设计中估算并加入延时信息 测试激励 测试目标 测试监控 Test Bench

综 合 将模型映射到现有资源 Tools Synplify Pro – for most FPGA XST – for xilinx FPGA Quartus – for Altera FPGA ……

可综合HDL设计 HDL是描述性语言,非设计语言,原则上先有电路后有HDL。 可综合的特点:可以直观反应到一个或几个具体的简单电路上 if()…else…  mux2 always @( posedge clk) begin …  DFFs end for()…  ? a÷b  ? 传说中可综合的RTL不一定可综合 对应的映射区间限制在FPGA现有的资源内

HDL模型优化 — 我们的目标是,没有不确定性 — 不要让综合器替你做决定 用HDL设计描述你的设计 尽量使用厂商所提供的库 使用综合约束

A+B+C+D or Example

综合约束 模型优化(speed、area) 模型映射自由度 设置方式: 1、菜单选择 – for global 2、HDL内嵌入 – for special 3、约束文件编辑

优化目标 优化力度 FSM选项 资源识别 Example

综合结果观察 1、综合报告 资源利用率 最大设计速率 – 注意你的Warning 2、RTL View/Technology View 跟踪、分析关键模块、路径

Synplify Pro RTL overview Technology view Critical path Net/port/inst

综合后仿真 目的: 验证综合后的实际功能与模型所描述功能的一致性 添加器件延时信息,初步验证时序(optional)

实 现 流程 布局 单元放置 物理综合(optional) 布线 单元连接 单元重放置 组合逻辑优化(复制,交换) 时序逻辑优化(复制,平衡) 布局后仿真

约束 附加约束 唯一人为干预实现过程的接口 决定实现效果好坏的主要因素 约束不会提升设计的最佳性能,同综合一样,它只增加实现过程的可控性,结果的唯一性 PIN 分配管脚、电压标准 驱动能力、速度 输入延迟 端接阻抗 Timing …… Area 附加约束

Area Constraint 绝对位置  触发器  LUT  RAM/DSP ……(primitive) 绝对区域  模块  group of primitive 相对位置 …… (primitive) 相对区域 指定布线  net

Floorplanner overview 区域约束 模块列表 Map结果

!区域约束主要目的是关联耦合逻辑,减少后续布线压力;其次是加大资源利用率。 !靠的近信号延迟不一定就小,信号线上延迟主要来自线与线之间的转接(如LUT,switch-box)。由于FPGA内部连接的结构是横纵两向的,斜向的连接延迟会大于横纵方向上最大跨度连接。所以,在做位置约束时尽量避免斜向;而区域约束要松,如果没有资源上的顾虑,约束面积建议为所需的3倍以上。 !对时序的改善贡献很小,紧的约束甚至有恶化时序的可能。

Timing Constraint 端口输入输出约束  IO端口 时钟约束 单时钟域约束  同步器件 多时钟域约束  关联时钟组 Skew约束  同源时钟 线延迟约束  net TIG  all 设计的最高速度已经由设计的构造和器件的性能决定,时序约束只提供了设计需求,明确了设计内部各单元哪些需要被优待,哪些可以随意。所以,没必要在时序上加上很紧的约束,跟自己的电脑过不去,还浪费青春,浪费电。适可而止才是正道。

布局布线后验证&仿真 时序分析 动态时序分析 需要测试向量 效率低 覆盖率不能保证 静态时序分析 不需要外部测试激励 效率高 全覆盖 精确度不高

STA时序模型

TPmin = Tcko +Tdelay +Tsetup -Tskew Tcko + Tdelay - Tskew ≥Thold Slack = Tp - Tpmin

Xilinx STA tool overview !尽量保证实现结果留有一定的余量

后仿 仿真模型 时序标注 .sdf文件 提供三种延时值,最大、典型、最小 打印信息 $setup, $hold, $recovery # ** Error:/path/to/xilinx/verilog/src/simprims/X_RAMD16.v(96): $setup(negedge WE:29138 ps, posedge CLK:29151 ps, 373 ps); # Time:29151 ps Iteration:0 Instance: /test_bench/u1/\U1/X_RAMD16\ 要求时间 相关信号 出错模型 错误类型 信号最后改变时间 错误报告事件 出错位置

END…