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

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

3天内不再提示

FPGA工程师需要掌握的技能

FPGA设计论坛 ? 来源:未知 ? 2023-01-13 17:40 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


1. 需求核对阶段

1)良好的沟通技能:需要与需求方核对需要的功能及性能,态度很重要,谦逊专业的沟通态度才能对需求理解无偏差,理解错误,后面就可能引起构架的修改。对外团队协作能力很大一部分体现在这里。

2)行业背景知识:需要把需求翻译成FPGA的功能点以及逻辑上的处理流程(流程及需要的数据结构,用硬件的大白话就是大的pipeline流水线功能以及每个功能对应的表项及数据结构)。

2. 总体设计阶段

1)功耗评估:xilinx和altera两家都会提供功耗评估excel,填入使用的IP、逻辑使用量、频率、IO类型、时钟等,可以评估总的功耗大小,以及每一路电源电流的大小预估,这个很重要,是板子能否做稳定的一个重要因素

2)IO设计:电路连接设计相关,把对外设计的接口特别是牵涉到存储器、transceiver相关的接口、IO电平标准、时钟分布都要例化出来,然后编译通过,软件输出csv文件,里面包含了IO的电平标准及外围连接,这一步极大提升做板一次成功率。因为每一代FPGA以及每个系列器件的结构总有些不同,特别是共享PLL,transceiver,存储器的共享模块设计都会有些不同,因此安全做法是把要使用的除LUT和RAM以外的资源例化,然后编译通过,保证外围连接不出错。

3)软硬件接口设计:制定软件要访问FPGA的方式、以及软硬件如何配合、FPGA如何初始化功能。这块需要有经验,不同的应用场合需要设计不同机制。大体可以分为以下几类:

寄存器访问:直接或间接

功能表项的配置

数据、命令、状态的互传:高性能一般要设计DMA,不同应用DMA要求不同。

4)逻辑部分的总体规划:时钟域规划、复位规划、模块划分及模块功能规划、FIFO/RAM使用大小及类型规划、模块间传递接口规划(最好标准化,类似软件API,以后可复用)、编码规则制定。

3. 设计及编码

1)良好的coding规则:主要是命名,命名至少要区分:同步寄存器、跨时钟域寄存器、连线这些信号命名最好在前缀区分,这个在后期下约束时可以用通配符找信号。

2)查找及看懂硬核的使用手册

3)领域内常见算法的实现:比如针对网络:共享缓存设计、各种HASH算法实现、LPM查表算法、各种匹配算法实现。加解密领域,需要把串行算法翻译成硬件并行算法的能力。针对目前流行的神经网络,针对各种网络如何设计高效的数据流入方式,如何进行特征的预处理。

4. 仿真验证

1)仿真平台搭建,看设计大小及是否将来重用,设计大且重用多,考虑UVM这些设计方法及平台搭建。简单的就利用verilog,通过task任务的设计及调用来设计仿真平台。需要掌握testbench设计、仿真工具使用及debug。

2)测试规划及项目抽取,这个是目前大部分FPGA工程师容易忽略的地方,设计要稳定,要系统的进行项目抽取,最好是另一拨人根据自己对规格的理解来系统抽取测试项目,这样完整验证后保证功能大体稳定。而性能测试一般要在实机测试中进行。

5. 后端

物理约束:可以从IO分配的工程中导入。

时序约束

IP的约束导入

其他软件相关的特殊信号的约束(一般通过在代码中用属性表示)

掌握看后端的原理图、器件映射图、出问题时可以在后端把一些网络剪短或连接(ISE之前提供,vivado不知道是否还有这种工具)

6. 调试

掌握调试工具:

一般厂商都会提供:transceiver调试工具测试回环,无码率等。

内部逻辑分析仪使用

存储器调试:各种物理层参数的配置及调试

各种下载方式掌握。

软硬件联调时各种调试命令的设计







扫描二维码获取

更多精彩

FPGA设计论坛




欢迎关注至芯科技

至芯官网:www.zxopen.com

至芯科技技术论坛:www.fpgaw.com

至芯科技淘宝网址:

https://zxopen.taobao.com

至芯科技FPGA初级课程(B站):

https://space.bilibili.com/521850676

至芯科技FPGA在线课程(腾讯课堂):

https://zxopenbj.ke.qq.com/

至芯科技-FPGA 交流群(QQ):282124839

更多资料下载欢迎注册http://www.fpgaw.com




扫码加微信回复加群

邀请您加入FPGA学习交流群




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




点个在看你最好看



原文标题:FPGA工程师需要掌握的技能

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

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

    关注

    1646

    文章

    22097

    浏览量

    620797

原文标题:FPGA工程师需要掌握的技能

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    盘点嵌入式就业所需要技能有哪些?

    良好的沟通能力和团队合作精神,能够与不同领域的工程师协作。 综上所述,嵌入式行业的就业方向丰富多样,不同行业对嵌入式技术的需求也各有侧重。因此,嵌入式工程师需要根据不同的就业方向,学习和掌握
    发表于 08-11 15:43

    电源工程师的核心技能树体系

    电源工程师的核心技能树体系需覆盖从基础理论到专业实践、工具应用及行业适配的全链条能力。以下是系统化的技能框架,按知识层级和应用场景展开,帮助从业者明确能力提升路径: 一、基础理论层:核心知识根基
    的头像 发表于 06-05 09:44 ?929次阅读

    一个优秀的射频测试工程师需要具备哪些技能

    一个优秀的射频测试工程师需要具备哪些技能?在无线技术高速发展的今天,射频(RF)测试工程师是确保通信设备性能与用户体验的关键角色。从复杂的调制方案到无处不在的干扰,从功耗优化到标准合规
    的头像 发表于 05-16 10:08 ?675次阅读
    一个优秀的射频测试<b class='flag-5'>工程师</b><b class='flag-5'>需要</b>具备哪些<b class='flag-5'>技能</b>?

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37

    如何成为一名合格的KaihongOS北向应用开发工程师

    :参加相关的培训、研讨会或会议,不断提升自己的技能。 10. 获得认证 专业认证:如果可能,获取相关的专业认证,这可以增加你的可信度和市场竞争力。 成为一名合格的北向应用开发工程师需要时间和努力,通过不断学习和实践,你将能够
    发表于 04-23 06:46

    硬件工程师手册(全套)

    的性能价格比达至最优。 5、技术开放,资源共享,促进公司整体的技术提升。 §1.2.1 硬件工程师基本素质与技术 硬件工程师掌握如下基本技能: 第一、由需求分析至总体方案、详细设
    发表于 04-22 15:05

    如何成为一名嵌入式软件工程师

    、Java等)和软件开发工具,还需要对硬件的工作原理有深入的理解。 在团队中,嵌入式软件工程师往往扮演着核心角色,他们的工作直接关系到产品的性能、稳定性和用户体验。 02掌握核心技能
    发表于 04-15 14:37

    Allegro工程师能力升级建议 工程师技能如何升级进阶

    根据Cadence认证体系及中国企业需求,Allegro工程师能力分三级,分别是初级、中级、高级工程师。那么这三种工程师技能如何升级进阶? ? 1、初级
    的头像 发表于 03-31 11:39 ?794次阅读

    如何成为嵌入式开发工程师

    如何成为嵌入式开发工程师? 成为嵌入式开发工程师通常需要掌握一系列技能和知识,并且在实践中不断积累经验。以下是一些基本步骤和建议: 1. 基
    发表于 02-19 10:39

    年薪30万的嵌入式工程师,究竟需要掌握哪些技能

    随着智能硬件、物联网、智能汽车、自动化控制等领域的迅速发展,嵌入式工程师的需求也水涨船高。尤其是在全球化和技术加速的时代,嵌入式开发不仅是一个热门行业,还是跨学科技术与创新的交汇点。对于那些具备扎实
    的头像 发表于 01-16 10:59 ?1436次阅读
    年薪30万的嵌入式<b class='flag-5'>工程师</b>,究竟<b class='flag-5'>需要</b><b class='flag-5'>掌握</b>哪些<b class='flag-5'>技能</b>?

    硬件工程师需要掌握的硬件基础知识

    作为一个资深硬件工程师,我们需要掌握一些硬件基础知识,今天总结一下哪些算是基础知识。给学电子方面想从事硬件工作的同学们一点提示。给未走出大学校园的电子方面的学生一些帮助。 ? 工具/原料 万用表
    的头像 发表于 12-02 09:22 ?2055次阅读
    硬件<b class='flag-5'>工程师</b><b class='flag-5'>需要</b><b class='flag-5'>掌握</b>的硬件基础知识

    电力电子工程师拿到50W以上的年薪需要具备哪些技能

    高薪电力电子工程师需要具备的技能
    的头像 发表于 11-05 09:44 ?1030次阅读
    电力电子<b class='flag-5'>工程师</b>拿到50W以上的年薪<b class='flag-5'>需要</b>具备哪些<b class='flag-5'>技能</b>

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    逻辑工程师FPGA 原型验证工程师在工作重点和职责上存在一定的区别: FPGA 算法工程师: 主要关注算法的设计和优化,以在
    发表于 09-23 18:26