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
    +关注

    关注

    1646

    文章

    22091

    浏览量

    620396

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    技术资讯 I 面向初级工程师的 PCB 设计规范

    本文要点基本PCB设计规范包括控制电流容量和阻抗,这是防止电弧和串扰的关键。选择适当的过孔类型,综合考虑长宽比、覆盖和塞孔,以确保可靠性。选择材料和层排列,提升信号完整性、热性能和可制造性。对于初级
    的头像 发表于 06-13 16:28 ?850次阅读
    技术资讯 I 面向初级工程师的 PCB <b class='flag-5'>设计规范</b>

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

    原理图设计是产品设计的理论基础,设计一份规范的原理图对设计PCB、跟机、做客户资料具有指导性意义,是做好一款产品的基础。原理图设计基本要求:规范、清晰、准确、易读。因此制定《原理图设计规范》的目的
    的头像 发表于 05-22 11:46 ?317次阅读
    干货!原理图<b class='flag-5'>设计规范</b>133条checklist

    PCB 工艺设计规范

    发表于 04-29 17:17

    技术资料—PCB设计规范

    本 PCB 设计规范包括:PCB 布线与布局、电路设计、机壳、器件选型、系统、线缆与接插件。 按部位分类 技术规范内容 1 PCB 布线与布局 PCB 布线与布局隔离准则:强弱电流隔离、大小
    发表于 04-25 17:24

    133条原理图设计规范checklist

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

    11节PCB实际案例课程+大厂内部PCB设计规范文档(13920字)

    资料介绍 每个课程1个半小时左右,都是讲具体设计案例,非常详细,需要的朋友自取~ 设计规范就更基础一些!尤其对于新手来说,从PCB的设计步骤到阻抗计算、bom分析全部都有涉及,还有一些实用的软件
    发表于 04-02 15:28

    跟着华为学硬件电路设计,华为全套硬件电路设计学习资料都在这里了!

    是无数失败的集合,华为作为遥遥领先的代表,今天就来推荐一下华为全套的电路设计资料。 资料主要包含了数字电路寄存器级电路整理介绍,模拟电路讲座,华为硬件设计规范,华为柔性印制电路板(FPC)设计规,华为
    发表于 03-25 13:59

    本质安全设备标准(IEC60079-11)的理解(四)

    本质安全型电子产品设计规范
    发表于 03-24 09:21 ?1次下载

    268条PCB Layout设计规范(免积分下载)

    本文总结了PCB布线与布局和电路设计总共268条设计规范,供大家参考学习。 获取完整资料可下载附件哦!!!!
    发表于 03-05 16:26

    中兴通讯的PCB设计规范

    中兴通讯的PCB设计规范
    发表于 02-08 15:31 ?7次下载

    GB/T 50034-2024 建设照明设计规范

    当前有效的建筑照明设计规范
    发表于 02-07 15:20 ?16次下载

    华为支付接入规范

    为了确保用户获得良好的支付体验,Payment Kit制定了相关接入设计规范,请开发者遵照执行,具体要求(非强制性)如下: 一、支付方式呈现 涉及支付公司名称,请统一使用:花瓣支付(深圳)有限公司
    发表于 01-23 09:27

    详解FPGA的基本结构

    ZYNQ PL 部分等价于 Xilinx 7 系列 FPGA,因此我们将首先介绍 FPGA 的架构。简化的 FPGA 基本结构由 6 部分组成,分别为可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层
    的头像 发表于 10-25 16:50 ?3522次阅读
    <b class='flag-5'>详解</b><b class='flag-5'>FPGA</b>的基本结构

    110kv变电站设计规范

    110kV变电站设计规范涉及多个方面,包括选址、电气设计、设备选择、安全保护等。以下是根据相关规范和标准整理的一些主要设计规范: 一、总则 目的与范围 :规范适用于电压为35~110k
    的头像 发表于 09-26 09:32 ?5880次阅读

    pcb设计中有哪些常用设计规范

    在PCB(Printed Circuit Board,印刷电路板)设计中,常用的设计规范涉及多个方面,以确保电路板的性能、可靠性、可制造性和可维护性。以下是一些主要的设计规范: 一、电气设计规范
    的头像 发表于 09-02 14:51 ?2880次阅读