fpga3-设计入门
更新时间:2023-09-02 05:48:01 阅读量: 教育文库 文档下载
FPGA设计基础设计入门
一、基于FPGA的设计流 程和方法
所谓的 “基于FPGA的设计”---是指 使用FPGA器件作为载体,借助EDA工 具实现有限功能数字系统的技术过程。
实际上就是: 系统功能定义 具体FPGA电路实现 的若干个影射和变换的技术过程。
FPGA设计流程1、系统设计(制定系统规范)---手工完成 2、模块设计---手工完成 3、设计输入---手工完成 4、功能仿真 5、综合、优化 6、布局与布线,生成网表文件 7、时序仿真---借助EDA工具手工完成 8、器件的编成和测试
1、系统设计(制定系统规范)---手工完成定义整个系统完成的功能。平衡各方面的因素, 对整个系统确定大体规划和整体设计方案。 系统规范包含的内容:设计所要实现的功能;设计所采用的基本思想; 整个设计的组织结构; I/O引脚的名称、作用及其测试波形的描述; 采用的PLD器件的型号; 片内各种资源的使用情况; 该设计与其它设计的接口方式等。
2、模块设计阶段---手工完成依据《系统规范》采用Top—Down的设 计方法,逐步细化将系统划分为若干个相 对完整,功能相对独立的功能模块。确定 模块之间的逻辑关系和层次关系以及模块 间接口约定;确定各个子单元的设计思路; 确定各个子单元之间的接口关系; 关键节 点的位置、作用及其测试的描述;
3、设计输入---手工完成 原理图输入– 使用元件符号和连线等描述 – 比较直观,但设计大规模的数字系统时则显 得繁琐
HDL语言输入– 逻辑描述功能强 – 成为国际标准,便于移植
4、功能仿真---借助EDA工具 不考虑信号传输和器件的延时,仿 真系统逻辑功能是否符合系统规范。 5、综合、优化---借助EDA工具自动完成(综合器)
– 优化:将逻辑化简,去除冗余项,减少设 计所耗用的资源。– 综合:将模块化层次化设计的多个文件合 并为一个网表,使设计层次平面化。对综 合来说满足要求的方案可能多个,综合器 将产生一个最优或接近最优的结果。
6、布局与布线,生成编程文件---借助EDA工具自动完成
– 将已分割的逻辑小块放到器件内部逻辑资 源的具体位置并利用布线资源完成各功能 块之间的连接 – 生成可供器件编程使用的数据文件。
7、时序仿真---借助EDA工具手工完成 考虑信号传输和器件的延时,仿真系统的 时序和逻辑功能是否仍符合系统规范。(不同 器件的内部延时不一样,不同的布局、布线延 时也会有比较大的不同)。 8、器件的编成和测试 在功能仿真与时序仿真正确的前提 下, 将布局布线后形成的位流文件通过下载工具下 载到具体的FPGA芯片中,这个过程也叫FPGA 编程(配
置)
可编程逻辑器件设计流程
目标 FPGA 的选择① FPGA 的资源情况(LE数量、结构特点、嵌 入式硬核); ② FPGA的工作速度、工作温度;
③ I/O管脚的数量和类型 ;④ FPGA器件的编程方式 ;
⑤ FPGA的开发工具支持情况;
二、可编程逻辑设计指导原则当代的可编程逻辑设计日趋复杂,设计的复 杂度和设计频率的要求与5年前都不可同日 而语。良好的设计风格对设计的工作频率、 所消耗的芯片面积、甚至整个系统的稳定性 都非常重要。
模块划分的一般规则:模块划分非常重要,关系到能否最大程度上 发挥项目成员的协同设计能力,更重要的是它直 接决定着设计的综合、实现的耗时和效率。 模块划分多大、如何划分取决于设计人员对 所设计系统的理解和设计经验,没有严格的规则。 工程师常遵循一些基本原则,使用这些规则可以 清晰地划分电路,形成较为合理的电路结构,帮 助形成良好的习惯。我们简单地列举一些模块划 分的原则:
1
分离特殊逻辑和核心逻辑输出 双向 输入
I/O PAD
I/O输 出 使 能 核心逻辑输出 核心逻辑输入
复位模块 I/O模块时钟模块
核心逻辑所用的时钟
核心逻辑
时钟模块存储器模块核心逻辑所用的复位信号
复位模块
好处是:便于利用综合约束属性显化指定 这些单元的结构和所使用的资源,还可以 提高仿真效率。
2
模块之间 无 粘合逻辑
只在层次结构中的最底层模块中包含门电路。模块A组合 逻辑
模块BD Q组合 逻辑
模块AD Q组合 逻辑
模块BD Q组合 逻辑
D Q
粘合逻辑
模块间存在粘合逻辑
模块间存无粘合逻辑
综合器不能将异或门与模块B合并,因此会 限制综合器进行逻辑优化。
3
一个模块内只使用一个时钟如果一个设计中包含了多个时钟,按时钟 管辖的范围划分模块。
4
相邻的组合逻辑放到同一模块组合C 组合B模块 2 模块 3模块 3
D Q
组合A模块 1
D Q
D Q
组合逻辑
D Q
便于综合器优化逻辑设计、复用资源、减少 面积、更利于工具优化某个具体的时序关键 路径。
5
寄存器方式输出每个模块经过D触发器锁存后再输出。亦即 寄存器和输出端口之间不要含有组合逻辑。好处: 便于综合工具权衡所分割的子模块中的组合电路 部分和同步时序电路部分,从而达到更好的优化 效果,这种模块划分符合时序约束的习惯,便于 利用约束属性进行时序约束。
6
时序逻辑使用D触发器,而不是锁存器
7
独立异步逻辑在FPGA的设计中,应尽量避免异步逻辑 设计。若必须使用异步逻辑,应将异步逻辑 放在一个独立的模块中 。
8 将不同优化目标的逻辑分开这种方法的好
处是:对于某个模块综合器只 需要考虑一种优化目标和策略,从而比较容易 达到较好的优化效果。如果同时考虑两种优化 目标,会使综合器陷入相互制约的困境,耗费 巨大的综合优化时间也得不到好的优化效果。 9 使用合适的模块规模,结构层次不宜太深。
使用可综合的编码风格HDL语言: 是“硬件描述语言” ,即Hardware Description Language,而不是“硬件设计语 言”,Hardware Design Language. 因此电路设计必须遵循RTL的模式来编写代 码,而不能随心所欲地只写出符合语法的代 码。 下面就常用的可综合Verilog编写格式做 一简单总结。
正在阅读:
fpga3-设计入门09-02
戏剧学名词解释11-15
模具履历表09-04
东南大学 - 数值分析 - 第二章 - 牛顿迭代法03-15
第8章 基于ARM的Linux内核移植09-06
关于电影的一百个中国第一及中国电影导演代际与作品总结,你弄清03-02
2015南通二模附加讲解08-19
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 入门
- 设计
- fpga
- 《做德美教师,享幸福人生》演讲稿
- 羊胚胎素
- ★研发人员的考核与激励
- 中国装卸臂市场规模份额及行业前景调查分析报告2018年目录
- 新版牛津译林8B-Unit2知识点和语法讲解(语法讲解的很好-有讲有练)
- 船舶海水管系的腐蚀与防护
- 危险货物运输驾驶员安全知识手册
- 连铸浊循环水处理系统设计流程分析与探讨
- 通信英语缩写简写翻译集锦
- 肺部影像读片精要图例
- On Studies论读书-培根(中英文对照)
- 焰熔法合成宝石复习
- 2017-2023年中国船舶修理市场研究与产业竞争格局报告(目录)
- 中国玻璃烧杯市场发展研究及投资前景报告(目录)
- IPC-A-610E与IPC-A-610F的区别
- 课题——营销策划文案写作案例
- 农村规划,河南新农村发展规划,新农村规划图,郑州新农村建设规划图
- 大学英语语法基础详解
- proe产品造型设计经典试题
- 分析化学实验课后习题答案(第四版)