Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >高效设计

高效设计

作者头像
Lauren的FPGA
发布于 2019-10-31 06:06:57
发布于 2019-10-31 06:06:57
5060
举报
文章被收录于专栏:Lauren的FPGALauren的FPGA

一些看似简单且基本的设计原则往往被大家不经意地忽视了,从而出现下面这些情形:

  • 大量使用异步复位;
  • 可以用分布式RAM的却用了Block RAM
  • 逻辑级数和时钟频率不匹配
  • 没有使用Block RAM自带的寄存器
  • DSP48用作乘法器时,没有使用MREG
  • DSP48用作加法器时,没有使用PREG
  • 欠妥的MMCM选项设置导致输出时钟抖动过大

这些因素或多或少都对时序收敛带来负面影响。如果在设计后期才发现这些问题,比如需要使用Block RAM自带的寄存器,这就意味着相应的路径都要做等效延迟,很可能出现“牵一发而动全身”的被动局面,还要重新做功能仿真等,工作量瞬时巨大。因此,在设计初期就尽可能地把这些因素考虑在内,减少时序收敛的迭代次数。这也是我写“高效设计”这一专题文章的初衷,希望可以帮到大家。另外,这一专题文章其实还包括高效使用DSP48E2和高效使用MMCM,最终会以其他形式呈现出来。

高效设计专题文章:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
老生常谈的复位,你真的用对了吗
“我遇到这样一个警告,最后会引起我的全局复位信号布不通,请问该如何处理?我是把所有的变量做成能复位的。”
Lauren的FPGA
2019/10/30
2.3K2
Xilinx FPGA底层资源介绍
XILINX FPGA 芯片整体架构如下所示,整个芯片是以BANK进行划分的,不同的工艺、器件速度和对应的时钟具有不同的BANK数量(下面截图是以K7325tffg676为例):左边的BANK都是HR BANK,右侧的最下面三个是HP BANK,最上面的四个BANK是transceiver。
瓜大三哥
2020/05/07
4.1K0
FPGA的设计艺术(1)FPGA的硬件架构
本文首发:FPGA的设计艺术(1)FPGA的硬件架构[1]FPGA是一个很神奇的器件,工程师可以在上面做游戏或者说工程师每天都在上面做游戏,通过搭积木的方式,还能设计出精美绝伦,纷繁复杂,奇妙无比的电路,这使用器件搭建几乎是做不到的,因为太庞大!这种设计也只能在FPGA或者专用的IC中能够实现,IC只能定制,可是FPGA却可以反复使用,每一次都可以是不同的电路,因此,FPGA目前的应用十分广泛,在很多关键领域,也是香饽饽一样的存在。
Reborn Lee
2021/05/28
2.5K0
FPGA的设计艺术(1)FPGA的硬件架构
FPGA 设计中经常犯的 10 个错误
本文列出了FPGA设计中常见的十个错误。我们收集了 FPGA 工程师在其设计中犯的 10 个最常见错误,并提供了解决方案的建议和替代方案。本文假定读者已经具备 RTL 设计和数字电路方面的基础。接下来让我们深入探讨在FPGA 设计中要避免的 10 大错误。
碎碎思
2023/08/30
6260
FPGA 设计中经常犯的 10 个错误
加法树还是加法链?
接下来,我们考虑4个32-bit有符号数相加该如何实现,其中目标时钟频率仍为400MHz。以UltraScale Plus系列芯片为目标芯片。
Lauren的FPGA
2020/09/27
3.5K0
加法树还是加法链?
FPGA的基本架构
,今天写的这个其实很早我就想记录下了,以前学数电的时候好像就有接触到相关的一些概念,但是后来学FPGA以后没太注意,感觉没什么关系,直到多次遇到梗以后才想着对这些概念重新了解下,特别是上几个月在求职的时候发现一些公司在招聘要求上写了需要对FPGA的架构要熟悉,那时候我还对架构有点懵逼,差点就不想玩了,然后耐着性子重新去找资料看了下,原来这些已经有过接触,这个要求上的架构指的就是FPGA的结构
狂人V
2020/06/29
1.4K0
【干货】八小时超长视频教你掌握FPGA时序约束!
注:零基础学会FPGA时序约束。本期推送配套相关独家教学视频,关注公众号,后台回复“时序分析培训”或留下您的邮箱,即可获取视频链接。视频内容是由团队郑圆圆同学讲解,欢迎批评指正。以下是节选的视频片段。
网络交换FPGA
2020/06/02
4.1K4
【干货】八小时超长视频教你掌握FPGA时序约束!
FPGA芯片结构
目前主流的FPGA仍是基于查找表技术的,已经远远超出了先前版本的基本性能,并且整合了常用功能(如RAM、时钟管理和DSP)的硬核(ASIC型)模块。如图1-1所示(注:图1-1只是一个示意图,实际上每一个系列的FPGA都有其相应的内部结构),FPGA芯片主要由6部分完成,分别为:可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块。
数字芯片社区
2020/07/20
1.3K0
FPGA芯片结构
简谈FPGA的片内资源
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
FPGA技术江湖
2020/12/29
8710
简谈FPGA的片内资源
FPGA Xilinx Zynq 系列(三)
今天给大侠带来FPGA Xilinx Zynq 系列第三篇,本篇内容目录简介如下:
FPGA技术江湖
2020/12/30
1.1K0
Xilinx 7 系列 FPGA 底层资源-- 内部结构之CLB(LUT查找表、Flip-Flop、进位链、MUX)
一直以来,觉得自己关于 FPGA 方面,摸不到“低”——对底层架构认识不清,够不着“高”——没真正独立做过 NB 的应用,如高速、复杂协议或算法、神经网络加速等高大上的应用,所以能力和认识水平都处于中间水平。这段时间做时序优化,感觉心有余而力不足了,可能要触及手动布局布线了,打开 Device 布局图才开始有兴趣探究一些底层结构的东西。
FPGA探索者
2021/04/29
6.4K0
Xilinx 7 系列 FPGA 底层资源-- 内部结构之CLB(LUT查找表、Flip-Flop、进位链、MUX)
FPGA设计流程
在设计进入之前,需要根据设计规范进行设计规划。设计规范需要转换为体系结构和微体系结构。设计架构和微架构包括将总体设计分解为小模块,以实现预期功能。在架构设计阶段,需要估计内存、速度和功率的需求。根据需要,需要为实现选择FPGA设备。
碎碎思
2022/04/14
1.2K0
FPGA设计流程
第1讲 软件工程师应如何理解FPGA
Vivado HLS是将基于C/C++描述的算法转化成相应的RTL代码,最终在FPGA上实现。这就要求软件工程师对FPGA的内部架构有一些基本的认识,目的在于保证生成的RTL代码在性能和资源上能够达到很好的平衡。实际上,C语言与FPGA是有一些对应关系的。比如:
Lauren的FPGA
2019/10/31
5510
DSP48演变史
DSP48最早出现在XilinxVirtex-4 FPGA中,但就乘法器而言,Virtex-II和Virtex-II Pro中就已经有了专用的18x18的乘法器,不过DSP48可不只是乘法器,其功能更加多样化。DSP48基本结构如下图所示(图片来源:ug073, Figure 2-1)。DSP48中的核心单元是18x18的乘法器。从图中不难看出,DSP48可实现基本数学函数P=Z±(X+Y+CIN)。这里X、Y和Z是图中3个MUX的输出。根据图中MUX的输入,上述数学函数可以变为P=A*B+C或P=A*B+PCIN,后者需用级联DSP48。因为PCIN和PCOUT是专用走线相连。同时,与Virtex-II不同,Virtex-II中,相邻的DSP48和Block RAM共享互连资源,而在Virtex-4中,DSP48和Block RAM有独立的布线资源。
Lauren的FPGA
2020/11/09
2K1
DSP48演变史
Versal FPGA中的浮点计算单元
Versal FPGA中最新的DSP原语DSP58,它在最新的DSP48版本上已经有了许多改进,主要是从27x18有符号乘法器和48位后加法器增加到了27x24和58位。但除此之外,DSP58还有两种额外的操作模式,分别称为DSPCPLX和DSPFP32。本文将重点介绍其中的DSPFP32,它是一个硬化的浮点加法器和乘法器。
猫叔Rex
2024/02/22
5860
Versal FPGA中的浮点计算单元
《IC真题之吾见 》 华为实习笔试
吾见:B 理由: A:recovery时间,即恢复时间,字面上理解,就是异步控制信号撤离后,电路恢复正常的时间检查。 所以,恢复时间的定义是:异步控制信号撤离时刻与下一个有效时钟边沿的时间间隔。原文如下:
数字芯片社区
2022/09/19
1.4K0
《IC真题之吾见 》 华为实习笔试
2020年大疆芯片开发(一)【FPGA资源】【存储器问题】【Source clock latency 约束】
C、FPGA 的 ChipScope 设置同样的采样深度,如果想一次观测更长时间的信号波形,可以将采样时钟换成更高频率的时钟
FPGA探索者
2021/05/26
1.1K0
2020年大疆芯片开发(一)【FPGA资源】【存储器问题】【Source clock latency 约束】
FPGA基本知识与发展趋势
FPGA 是英文 Field Programmable Gate Array 的缩写,即现场可编程门阵列,它是在 PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路 (ASIC) 领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写。在修改和升级时,不需额外地改变 PCB 电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本,因此获得了广大硬件工程师的青睐。
碎碎思
2021/04/02
8630
FPGA基本知识与发展趋势
FPGA系统性学习笔记连载_Day10 【时序逻辑、竞争冒险、同步复位、异步复位】
本系列为FPGA系统性学习学员学习笔记整理分享,如有学习或者购买开发板意向,可加交流群联系群主。
FPGA技术江湖
2021/04/01
6500
FPGA系统性学习笔记连载_Day10 【时序逻辑、竞争冒险、同步复位、异步复位】
深度解析ug1292(1)
ug1292第一页的主题是初始设计检查。这一步是针对综合后或者opt_design阶段生成的dcp。尽管在Vivado下,从功能仿真到综合、布局布线、直至生成.bit文件是相对自动化的流程,但是解决时序违例仍然是一个复杂且耗时的过程。仅仅靠log信息或者布线后的时序报告往往很难定位,这是因为实现过程中的每一步(opt_design逻辑优化,place_design布局, phys_opt_design物理优化, route_design布线)都会做一些优化,这些优化可能会导致关键路径被掩盖,例如,有时发现设计中逻辑级数(Logic Level)较高的路径时序收敛了,反倒是逻辑级数较低甚至为0的路径出现时序违例。因此,采取按部就班的策略,检查每一步的结果,及时且尽早发现设计中的问题是很有必要的。
Lauren的FPGA
2019/10/30
1.5K0
相关推荐
老生常谈的复位,你真的用对了吗
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档