0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解FPGA的设计规范与应用

FPGA设计论坛 来源:未知 2023-06-19 09:35 次阅读

点击上方蓝字关注我们


FPGA设计规范


1.设计必须文档化。要将设计思路,详细实现等写入文档,然后经过严格评审通过后才能进行下一步的工作。这样做乍看起来很花时间,但是从整个项目过程来看,要比一上来就写代码要节约时间,且这种做法可以使项目处于可控、可实现的状态。

2.代码规范。

如果在另一个设计中的时钟是40ns,复位周期不变,我们只需对CLK_PERIOD进行重新例化就行了,从而使得代码更加易于重用。b.信号命名要规范化。

1) 信号名一律小写,参数用大写。

2) 对于低电平有效的信号结尾要用_n标记,如rst_n。

3) 端口信号排列要统一,一个信号只占一行,按输入输出及从哪个模块来到哪个模块去的关系排列,这样在后期仿真验证找错时后 方便很多。

4) 一个模块尽量只用一个时钟,这里的一个模块是指一个module或者是一个entity。在多时钟域的设计中涉及到跨时钟域的设计中有专门一个模块做时钟域的隔离。这样做可以让综合器综合出更优的结果。

5) 尽量在底层模块上做逻辑,在高层尽量做例化,顶层模块只能做例化,禁止出现任何胶连逻辑(glue logic),哪怕仅仅是对某个信号取反。理由同上。

6) 在FPGA的设计上禁止用纯组合逻辑产生latch,带D触发器的latch的是允许的,比如配置寄存器就是这种类型。

7) 一般来说,进入FPGA的信号必须先同步,以提高系统工作频率(板级)。

8) 所有模块的输出都要寄存器化,以提高工作频率,这对设计做到时序收敛也是极有好处的。

9) 除非是低功耗设计,不然不要用门控时钟--这会增加设计的不稳定性,在要用到门控时钟的地方,也要将门控信号用时钟的下降沿 打一拍再输出与时钟相与。

10)禁止用计数器分频后的信号做其它模块的时钟,而要用改成时钟使能的方式,否则这种时钟满天飞的方式对设计的可靠性极为不利,也大大增加了静态时序分析的复杂性。如FPGA的输入时钟是25M的,现在系统内部要通过RS232与PC通信,要以rs232_1xclk的速率发送数据。


FPGA设计中的注意事项

1.基础问题

FPGA的基础就是数字电路和HDL语言,想学好FPGA的人,建议床头都有一本数字电路的书,不管是哪个版本的,这个是基础,多了解也有助于形成硬件设计的思想。在语言方面,建议初学者学习Verilog语言,VHDL语言语法规范严格,调试起来很慢,Verilog语言容易上手,而且,一般大型企业都是用Verilog语言。

2.EDA工具问题

熟悉几个常用的就可以的,开发环境QuartusII ,或ISE 就可以了,这两个基本是相通的,会了哪一个,另外的那个也就很Easy了。功能仿真建议使用Modelsim ,如果你是做芯片的,就可以学学别的仿真工具,做FPGA的,Modelsim就足够了。综合工具一般用Synplify,初学先不用太关心这个,用Quartus综合就OK了。

3.硬件设计思想问题

对于初学者,特别是从软件转过来的,设计的程序既费资源又速度慢,而且很有可能综合不了,这就要求我们熟悉一些固定模块的写法,可综合的模块很多书上都有,语言介绍上都有,不要想当然的用软件的思想去写硬件。详细资料:edu118.com

4.学习习惯问题

FPGA学习要多练习,多仿真,signaltapII是很好的工具,可以看到每个信号的真实值,建议初学者一定要自己多动手,光看书是没用的。关于英文文档问题,如果要学会Quartus II的所有功能,只要看它的handbook就可以了,很详细,对于IT行业的人,大部分知识都是英文文档,一定要耐心看,会从中收获很多的。

5.算法问题

做FPGA的工程师,一般都是专攻算法了,这些基础知识都是顺手捏来的,如果你没有做好搞理论的准备,学FPGA始终只能停留在初级阶段上。对于初学者,数字信号处理是基础,应该好好理解,往更深的方向,不用什么都学,根据你以后从事的方向,比如说通信、图像处理,雷达、声纳、导航定位等。

不管你是一名逻辑设计师、硬件工程师或系统工程师,甚或拥有所有这些头衔,只要你在任何一种高速和多协议的复杂系统中使用了FPGA,你就很可能需要努力解决好器件配置、电源管理、IP集成、信号完整性和其他的一些关键设计问题。不过,你不必独自面对这些挑战,因为在当前业内的FPGA公司里工作的应用工程师每天都会面对这些问题,而且他们已经提出了一些将令你的设计工作变得更轻松的设计指导原则和解决方案.

FPGA设计的主要应用


1、电路设计
连接逻辑,控制逻辑是FPGA早期发挥作用比较大的领域也是FPGA应用的基石。事实上在电路设计 中应用FPGA的难度还是比较大的这要求开发者要具备相应的硬件知识(电路知识)和软件应用能力(开发工具)这方面的人才总是紧缺的,往往都从事新技术, 新产品的开发成功的产品将变成市场主流基础产品供产品设计者应用在不远的将来,通用和专用IP的设计将成为一个热门行业!搞电路设计的前提是必须要具备一 定的硬件知识。在这个层面,干重于学,当然,快速入门是很重要的,越好的位子越不等人电路开发是黄金饭碗。
2、产品设计
把相对成熟的技术应用到某些特定领域如通讯,视频信息处理等等开发出满足行业需要并能被行业客户 接受的产品这方面主要是FPGA技术和技术的结合问题,另外还有就是与客户的界面问题产品设计还包括工具类产品及民用产品,前者重点在性能, 后者对价格敏感产品设计以实现产品功能为主要目的,FPGA技术是一个实现手段在这个领域,FPGA因为具备接口,控制,功能IP,内嵌CPU等特点有条 件实现一个构造简单,固化程度高,功能全面的系统产品设计将是FPGA技术应用广大的市场,具有极大的爆发性的需求空间产品设计对技术人员的要求比较 高,路途也比较漫长不过现在整个行业正处在组建“首发团队”的状态,只要加入,前途光明产品设计是一种职业发展方向定位,不是简单的爱好就能做到的!产品 设计领域会造就大量的企业和企业家,是一个发展热点和机遇。
3、系统级
系统级的应用是FPGA与传统的计算机技术结合,实现一种FPGA版的计算机系统,实现一个基本环境,在这个平台上跑LINUX等系统,这个系统也就支持各种标准外设和功能接口(如图象接口)了这对于快速构成FPGA大型系统来讲是很有帮助的。这种“山寨”味很浓的系统早期优势不一定很明显,类似ARM系统的境况但若能慢慢发挥出FPGA的优势,逐渐实现一些特色系统也是一种发展方向。若在系统级应用中,开发人员不具备系统的扩充开发能力,只是搞搞编程是没什么意义的,当然设备驱动程序的开发是另一种情况,搞系统级应用看似起点高,但不具备深层开发能力,很可能会变成爱好者,就如很多人会做网页但不能称做会编程。类似以上是几点个人观点,希望能帮助想学FPGA但很茫然无措的人理一理思路。这是一个不错的行业,有很好的个人成功机会。但也肯定是一个竞争很激烈的行业,关键看的就是速度和深度当然还有市场适应能力。






有你想看的精彩



基于FPGA的图像实时处理系统设计
至芯科技FPGA就业培训班——助你步入成功之路、6月27号北京中心开课、欢迎咨询!
基于FPGA的CAN总线通信节点设计






扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!


点个在看你最好看




原文标题:详解FPGA的设计规范与应用

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1602

    文章

    21322

    浏览量

    593213

原文标题:详解FPGA的设计规范与应用

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    干货!原理图设计规范133条checklist

    原理图设计是产品设计的理论基础,设计一份规范的原理图对设计PCB、跟机、做客户资料具有指导性意义,是做好一款产品的基础。原理图设计基本要求: 规范、清晰、准确、易读。因此制定《原理图设计规范》的目的
    发表于 04-01 15:50

    PCB layout在布线上的设计规范有哪些?

    一站式PCBA智造厂家今天为大家讲讲pcb layout设计需要注意哪些细节?pcb layout设计规范。Printed Circuit Board (PCB)是一种电子零件,它是连接
    的头像 发表于 02-23 09:19 295次阅读

    解读PCB设计规范

    规范规定了我公司 PCB 设计流程和设计原则,为 PCB 设计人员提供必须遵循的规则和约定。
    的头像 发表于 01-12 11:06 1008次阅读
    解读PCB<b class='flag-5'>设计规范</b>

    华为印制电路板(PCB)设计规范

    电子发烧友网站提供《华为印制电路板(PCB)设计规范.pdf》资料免费下载
    发表于 01-02 10:44 13次下载

    印制电路板设计规范

    电子发烧友网站提供《印制电路板设计规范.pdf》资料免费下载
    发表于 01-02 10:37 2次下载

    单通道双输出LED灯光控制触摸芯片DL103W应用之PCB设计规范

    单通道双输出LED灯光控制触摸芯片DL103W应用之PCB设计规范,详细介绍了相关的设计注意事项
    的头像 发表于 12-27 09:12 428次阅读
    单通道双输出LED灯光控制触摸芯片DL103W应用之PCB<b class='flag-5'>设计规范</b>

    EMC设计原则及规范

    MC(Electromagnetic Compatibility)设计规范是确保电子设备在电磁环境中正常工作并减少电磁干扰的重要标准。本规范旨在为电子设备的EMC设计提供指导,以确保其符合相关标准和法规,提高设备的电磁兼容性。
    发表于 12-17 17:36 826次阅读

    #共建FPGA开发者技术社区,为FPGA生态点赞#+2023.11.8+FPGA设计的实践与经验分享

    四:调试技巧 1.添加Probe,在特定信号处插入一个Probe,调试时可以监测这个信号是否符合预期。2.使用Simulation Waveform进行仿真,并对比仿真波形和预期波形 五:设计规范
    发表于 11-08 15:25

    非常详细的PCB设计规范

    非常详细的PCB设计规范
    发表于 10-11 18:06 30次下载

    OpenHarmony应用开发涉及的主要因素与UX设计规范

    一、OpenHarmony应用开发涉及的主要因素 二、OpenHarmony应用开发UX设计规范 UX设计规范的主要内容与部分图标示例 2.OpenHarmony应用设计原则 设计原则,当为
    发表于 09-25 15:03

    开关电源PCB设计规范

    开关电源 PCB 设计规范 一、 安全距离(AC100V~240V) 1, 保险之前标准,基本绝缘的电源距离≥2.5mm,加强绝缘的电源≥3.4mm,不足则开槽,槽宽≥0.8 mm. 2, 保险之后
    的头像 发表于 09-04 17:25 3176次阅读

    FPGA芯片外围电路设计规范和配置过程

    小编在本节介绍FPGA芯片外围电路设计规范和配置过程,篇幅比较大,时钟的设计原则就有17条,伙伴们耐心读一读。
    的头像 发表于 08-15 16:18 3871次阅读
    <b class='flag-5'>FPGA</b>芯片外围电路<b class='flag-5'>设计规范</b>和配置过程

    SMT-PCB拼版设计规范

    SMT-PCB拼版设计规范
    的头像 发表于 06-15 10:59 962次阅读
    SMT-PCB拼版<b class='flag-5'>设计规范</b>

    XILINX FPGA IP之MMCM PLL DRP时钟动态重配详解

    上文XILINX FPGA IP之Clocking Wizard详解说到时钟IP的支持动态重配的,本节介绍通过DRP进行MMCM PLL的重新配置。
    发表于 06-12 18:24 6408次阅读
    XILINX <b class='flag-5'>FPGA</b> IP之MMCM PLL DRP时钟动态重配<b class='flag-5'>详解</b>

    硬件电路设计规范

    01 硬件电路设计规范 1、 详细理解设计需求,从需求中整理出电路功能模块和性能指标要求; 2、 根据功能和性能需求制定总体设计方案,对 CPU 进行选型, CPU 选型有以下几点要求
    的头像 发表于 05-31 09:23 904次阅读
    硬件电路<b class='flag-5'>设计规范</b>