精华内容
下载资源
问答
  • 该文档是对FPGA项目开发中的一些必备知识的总结,比较经典,还有一些接口的设计实例
  • FPGA项目经验借鉴

    2020-08-05 04:23:42
    做了5年的FPGA了。手中经历的项目也不在少数...就在此刻又一个FPGA项目宣告结题,好多感受趁着现在还新鲜着,写出来和大家一起分享。不对之处,希望得到大家的指正。另外1234并没有绝对顺序,都是有感而发,随性而写。
  • 您还为找不到合适的FPGA开发工程师心急如焚吗? 您可以找燎原团队! 燎原团队致力于FPGA多核板卡设计开发,可以配合您的开发团队,提供稳定可靠的FPGA解决方案,...星空敏感器图像处理FPGA项目FPGA板卡的功能..

    您还为找不到合适的FPGA开发工程师心急如焚吗?

    汇集了2000G的FPGA学习和研发技术资料,可以免费分享给FPGA技术爱好者,微信:www8928

    您可以找燎原团队!

    燎原团队致力于FPGA多核板卡设计开发,可以配合您的开发团队,提供稳定可靠的FPGA解决方案,现有专职+兼职团队20多位高级工程师,大部分来自科研院所,知名企业的FPGA的专家,欢迎与广大的企业深度合作。

    我们提供完善的FPGA设计开发、嵌入式系统、板卡设计开发等相关解决方案。

    1、提供基于Xilinx/Altera FPGA的高性能计算(HPC)硬件平台、FGPA加速卡,本硬件加速平台基于PCI Express总线,采用超高性能FPGA作为运算节点。在高性能计算(High Performance Computing)上表现出卓越的性能。尤其适合于大规模逻辑运算。具备高性能、低功耗、低成本、可编程的特性。

     2、本平台为自主研发,可以根据用户实际需要进行修改定制。

    合作联系:星星老师,

    微信:www8928

    QQ:275260898

    邮箱:275260898@qq.com

    已经完成交付的项目比较多,以下面的项目为例说明吧

    星空敏感器图像处理FPGA的项目:

    FPGA板卡的功能芯片构成暂且不累述了,Xilinx芯片,咱们直奔FPGA内部逻辑功能模块,该FPGA设计由以下模块组成:

    序号 实现内容 功能描述

    1. 全局复位模块,作用:全局复位,需进行异步复位同步释放;

    2、时钟模块,作用:本模块将输入的40MHZ时钟倍频至60MHZ用于全局时钟

    3、与上位机通讯模块,作用:本模块完成与上位机通信功能,完成1路SYNC信号的滤波采集,滤波可配置;完成1路RTS信号滤波采集,滤波可配置;完成1路UART与上位机进行通信

    4、星时计数模块,作用:完成星时计数功能,通过48位计数器完成星时计数及锁存,通过32位计数器完成SYNC计数及锁存,两个计数器初值可配置;

    5、CCD相机控制,作用:   本模块完成CCD相机配置功能,完成滤波开关的控制,完成CCD相机积分时间设置及生成,CCD参数配置功能

    6、图像接收及处理模块,作用: 本模块完成CCD相机图像接收及存储功能,通过同步串口接收CCD相机数据(全图或窗口图),依据滤波开关状态完成图像滤波及星点提取,依据处理器设置图像数据存储到图像SRAM 中。

    7、图像缓存下传,作用:本模块完成CCD相机图像缓存及下传

    8、制冷器控制,作用:本模块完成制冷器控制,自动完成8路模拟量采集并锁存;通过8位DA输出实现制冷器芯片的控制;

    9、位口输入模块,作用:本模块完成8路位口输入信号采集;

    位口输出模块,作用:本模块完成6路位口输出信号;

    10、脉冲输出模块,作用:  本模块完成两路脉冲输出

    11、图像sram接口模块,作用: 本模块完成2片1Mx16bits容量sram读写操作

    12、配置刷新FPGA测试功能接口模块,作用:        本模块完成1路200ms周期信号输出用于配置刷新FPGA刷新功能测试

    13、与处理器接口模块,作用:本模块完成与处理器接口功能,按FPGA功能逻辑进行译码,输入总线锁存处理,确保时序与处理器同步,输出总线多路选通及三态处理,确保输出到处理器的数据有效且稳定;FPGA时序要考虑处理器工作时开cache;满足处理器接口时序要求,同时考虑总线上的245延时情况;

    以上模块说明仅仅是简单描述,在研发成果交付的时候,提供原理图、版图、源代码,更重要的是代码注释以及研发说明文档,一套完备的交付设计文档的提交,才是真真正正的交付成果。便于后继的升级以及产品维护,一款产品的成功研发,会带来一系列的新产品。我们可以除了完整成果交付之外,还提供长期的技术支持服务,保障产品系统稳定运行。当产品进入稳定运行并通过验收,就可以小批量生产阶段,我们可以提供快捷的量产服务,彻底免除您的后顾之忧。

     

    可以承接的项目类型不断增加,无法一一描述,如果您有FPGA研发需求,请您一定联系我们,竭诚为您服务,即便最后您没有选择我们,您也可以得到我们专业的FPGA方案指导,辅助您快速找到合适的研发团队并交付任务。

      涉及到的任务:

    1. FPGA实现多路MIPI相机CSI的图像采集,图像经过处理后拟合成不同效果的图像输出;图像压缩编码,加密后通过千兆以太网实现网络传输
    2. FPGA外围搭载各种外设的驱动模块编程,实现与高速处理器无缝通信,10路同步串口模块,16组异步串口模块,CAN控制模块,128通道SPI模块自动采集,网络同步时钟模块。

    无论多核板卡的软硬件设计、FPGA内部功能模块的编程,还是板卡整机调试,您都可以找我们,一定竭诚为您服务!

    合作联系:星星老师,微信:www8928,QQ:275260898

    邮箱:275260898@qq.com

     

    展开全文
  • fpga项目经验

    2014-07-13 16:47:17
    fpga学习项目经验,包括modelsim,signaltap等等!
  • FPGA项目 该存储库包含各种小型FPGA项目,这些项目针对Digi-lent生产的廉价(-ish)开发板Arty A7-35t。 该评估板具有Xilinx Artix-7系列(XC7A35TICSG324-1L)FPGA。 有关董事会的更多详细信息,请访问Digilent的...
  • 简单的FPGA项目开发流程,简简单单学会FPGA开发流程,数字时钟
  • fpga项目经验集锦

    2012-10-19 18:35:13
    大虾们多年积累的项目经验,好资料不敢独享,现传上来供大伙共享!
  • 另外,和大多数FPGA加速CNN的项目一样,本项目只能运行推断,不能学习,所以没有后向传播这不怪我,Xilinx自己都已经放弃治疗了。 使用   模块设计上参照了tensorflow。因为使用了全并行的设计,所以没有引入时序...
  • FPGA项目开发必备资料

    2009-07-08 12:06:42
    FPGA项目开发必备资料,是从事FPGA项目开发人员的参考资料
  • 做了5年的FPGA了。手中经历的项目也不在少数...就在此刻又一个FPGA项目宣告结题,好多感受趁着现在还新鲜着,写出来和大家一起分享。不对之处,希望得到大家的指正。另外1234并没有绝对顺序,都是有感而发,随性而写。
  • 开源FPGA基金会的相关项目 硬件基础架构 OpenFPGA项目 屡获殊荣的开源FPGA IP生成器,支持高度可定制的同类FPGA架构Github存储库: : 工装 Verilog到路由(VTR)项目 Verilog到路由(VTR)项目是一项全球性的合作...
  • FPGA项目.rar

    2020-02-14 09:09:52
    利用Verilog VHDL语言实现的流水灯功能,文件上面附带有QuartusII软件中配置的引脚。
  • CrazyBingo开发的一款免费供大家使用的C2Mif程序,用于fpga项目所需的字模转mif文件
  • FPGA 项目基本结构框架图: 分析: Hierachy 可以看到整体的项目 1、 beep_top 文件是项目的顶层文件,也就是最终 编译的文件 下面还有3个子文件: 分别是 beep_test0、beep_test1、sound_lut 三个文件。 其中可以...

    FPGA 项目基本结构框架图:
    在这里插入图片描述
    分析:

    • Hierachy 可以看到整体的项目
    • 1、 beep_top 文件是项目的顶层文件,也就是最终 编译的文件
    • 下面还有3个子文件: 分别是 beep_test0、beep_test1、sound_lut 三个文件。 其中可以看到,在整个文件中:
    • 2、beep_test0、beep_test1 都是调用的 beep_test 模块,相当于调用了两次,然后再内部使用两个定时器模块,只不过是不同的使用功能
    • 3、sound_lut 使用的是 sound_lut 模块,这里使用的模块名称和例化模块(一般不建议使用和设计的模块名称一模一样的名字,这里相对来说不是非常规范,自己设计的时候需要注意)
    展开全文
  • FPGA项目-源码

    2021-02-09 11:09:11
    FPGA项目
  • FPGA项目开发:雷达信号处理:数字下变频 大侠好,今天由“82年的程序媛”本媛给大侠带来产品研发经验分享之雷达信号处理:数字下变频,后续本媛还会继续更新产品项目开发心得,学习心得等,欢迎大家持续关注,话不...

    FPGA项目开发:雷达信号处理:数字下变频

    大侠好,今天由“82年的程序媛”本媛给大侠带来产品研发经验分享之雷达信号处理:数字下变频,后续本媛还会继续更新产品项目开发心得,学习心得等,欢迎大家持续关注,话不多说,上货。

    一、 概述

    数字上下变频是雷达系统中两个重要的模块。在雷达发送端,由于天线的长度有限会影响到电磁波的波长,而波长与信号的频率成反比,故在发送端需要使用数字上变频提高信号的频率;而在雷达的接收端若不进行下变频处理,根据奈奎斯特采样定理,需要使用信号频率2倍的采样率才能准确无误的将信号还原出来,对AD采样速率以及后续FPGA处理信号的速率要求非常高,不利于系统设计,故在接收机端先将射频信号下变频到中频信号,再将中频信号下变频到零中频信号,方便后续对信号的处理。

    本次设计同样是通过在simulink搭建模型并通过matlab仿真得到正确设计后生成IP核的形式来实现数字下变频的功能。

    二、 原理

    数字下变频的基本原理如下图所示:

    数字下变频主要包括下混频和滤波抽取两部分,下面分别介绍:

    1、 下混频:

    现实中,信号是一个实的窄带信号,可表示为,如下表达式:

    经AD采样后,变成数字信号:

    通过混频技术,可得到信号的正交变量,数字信号正交混频可表示为:

    频率变换是一种常用的数字信号处理算法,对于1/4信号采样率频率变化,有一种简单的实现方法,下面结合实例进行介绍:

    首先,原始信号进入FPGA后,得到4路数据,分别用d0,d1,d2,d3表示,然后对信号进行下变频。

    这里采样率fs=1.2GHz,本振频率fc=300M,满足fc=fs/4的关系,可以采用下面高效方式进行混频的实现:

    所以混频可做如下简化处理:

    通过下混频我们分别得到I路和Q路两路实数据,分别表示如下:

    将I路和Q路分别用I0,I1,I2,I3,和Q0,Q1,Q2,Q3来表示,I路混频后得到如下序列:

    I0 = d0*(1);I1 = d1*(0);I2 = d2*(-1);I3 = d3*(0)

    Q路混频后得到如下序列:

    Q0 = d0*(0);Q1 = d1*(-1);Q2 = d2*(0);Q3 = d3*(1)

    最后我们得到了2路300M的复数据即

    I0*(1),Q1*(-1),I2*(-1),Q3*(1)。

    2、多相滤波

    正交混频后经过低通滤波,滤除掉多余的频率,避免抽取造成的频谱混叠。这里将滤波和抽取同时进行。对于因果的FIR系统,其方程可简化为:

    其中M为滤波器系数的长度。如果采用多路并行处理,设N为FIR滤波并行的路数,则:

    其中滤波采用并行滤波结构,单路实现采用多相结构,8路并行多相滤波结构如下图所示:

    三、 实现

    结构框图如下图所示:

    其中din为输入的8路有效数据,输出为8路的dout。

    模型搭建的框图如下图

    然后对模型进行仿真,我们在matlab中生成一个中心频率为500M,带宽800M的chirp信号作为模型的输入,输入信号频谱如下图:

    然后对输入信号进行下变频,其中采样率为2G,输入信号通过模型之后得到一个零中频信号,中心频率为0M,带宽为800M,信号频谱如下图:

    今天本媛就说到这里,后续继续和大侠一起分享,欢迎关注“82年的程序媛”本媛,江湖偌大,继续闯荡,加油!

    【QQ交流群】

    群号:173560979,进群暗语:FPGA技术江湖粉丝。

    多年的FPGA企业开发经验,各种通俗易懂的学习资料以及学习方法,浓厚的交流学习氛围,QQ群目前已有1000多名志同道合的小伙伴,无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有。

    【微信交流群】

    现微信交流群已建立09群,人数已达数千人,欢迎关注“FPGA技术江湖”微信公众号,可获取进群方式。

    后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

    江湖偌大,继续闯荡,愿大侠一切安好,有缘再见!

    展开全文
  • 每秒帧数 FPGA 项目的代码示例。 FLIR_LEPTON 用于从 FPGA 与 Flir Lepton 对话的基本模块。 ###TFT_LCD 我用来在 Adafruit 的 TFT LCD 上绘图的一个简单的小驱动程序:[ ]
  • 全书从实用的角度出发,通过大量工程实例,详细介绍了FPGA项目程序设计的方法与技巧。全书共分为4篇25章,第1篇为FPGA基础知识篇,简要介绍了FPGA硬件结构、 VHDL语言编程基础,以及FPGA常用开发工具等;第2篇为FPGA...
  • FPGA-chip-design:CMU 2021年Spring18725 Cozy-Fabric FPGA项目
  • 这是MiSTer FPGA项目以及使用Arduino Pro Micro接受USB HID游戏杆的任何其他设备的街机控制器项目。 该项目还可用于创建NeoGeo / Atari / Commodore / Amiga控制器到USB适配器。 围绕此项目构建的街机控制器或...
  • 基于FPGA项目式技能培养的“电子信息”课程体系改革与探讨.pdf
  • 一位工程师的FPGA项目开发经验总结

    千次阅读 2016-08-08 16:46:37
    但是这对项目来说是不行的,所以测试,verification,一定要旁人来做。  3. 多点时间思考。出现问题后,不要急着修改。要思考推测可能的原因,想清楚后把这些可能的原因都用debug pin或者chipscope引出来。 ...
    1. 要和人配合。以我们做
    硬件
    
    工程师
    为例,测试的时候一般都需要
    软件
    的配合,一个对硬件来说无比复杂的工作,可能在软件工程师看来就是几行简单的
    代码
    。所以要和人配合,多听听别人的意见,这样必然可以产生新的 know-how,从而加快测试和
    开发
    的速度,退一步讲,至少没有坏处。
    

      2. 测试还是要别人来做。开发者看待自己的产品有如看待自己,大多是没有勇气去发现缺点的。一是源自自尊心,二是为了避免额外的工作。所以就算有问题,如果不严重就藏着掖着。但是这对项目来说是不行的,所以测试,verification,一定要旁人来做。

      3. 多点时间思考。出现问题后,不要急着修改。要思考推测可能的原因,想清楚后把这些可能的原因都用debug pin或者chipscope引出来。

      4. 注意复用已有的debug pin。很多时候,在测试过程中产生了一大堆测试 信号 ,但是时间一长就忘了复用。实际上,当一个问题产生的时候,通过反复观察已有的debug-pin或许足以发现问题根源,而无需再引出新的pin,并浪费时间去综合和PAR。

      5.  仿真 加时序足矣。数字 电路 在时钟同步的 设计 原则下,其 功能 通过simulation就可以验证。simulation的结果和PAR后产生的 FPGA -image 完全等价。当然FPGA也要遵循同样的设计原则,即时钟同步。所以对于PAR的结果首先就要确保其时钟同步的特性。体现为寄存器之间的path必须在一个 时钟周期内完成。(当然有其他约束的例外。)同时要满足FPGA器件的setup和hold要求。一旦出现timing-error必须通过各种途径消除 error,因为error的存在,意味着时钟同步的大前提已经被破坏,这时,simulation取得的结果和FPGA是不等价的,继续测试也毫无意义 了。

      6. 注意不可控的 接口 部 分。FPGA内部的寄存器之间的timing完全可以通过PAR报告来确认是否有问题。但是和外界的接口部分却充满了疑问。我们一般通过假定的 input-delay和output-delay来对接口部分进行约束。由于从一开始就施加的是假定的delay,所以即使没有timing- error,其结果也存在诸多疑问。以我正在进行的测试为例, 模块 内 部loopback测试完全正常,但是一过cable,传到对方FPGA,则马上产生很多误码。由于simulation没有问题,所以必然是我们的某个 假定出现了问题,尤其是时钟同步的假定会得不到满足。这时候,就要想尽一切办法,使接口也满足假定的条件,或者调整设计,将不理想的接口adapting 成理想的接口。

      7. 向直接上司汇报情况,寻求各种可能的许可。懒得向直接上司汇报情况时,万一出现进度或者结果不符,所有责任都需要本人承担。如果提前向上司汇报情况并取得 许可,则一切后果都在可控范围内。比如,工作繁忙时又被派给新的任务,则不能一味逆来顺受。应该向上司说明困难,并提前想好一个可行的 解决 方案 供上司参考。

      8. 外部接口是最大障碍。如前所述,FPGA内部如果timing没有问题的话,一般和仿真结果是一致的,问题是外部的接口,包括cable连线等,不在我们 确切控制的范围内,比如其延时特性在40MHz下仍然正常,但是在80MHz时可能出现不可预料的情况。所以应该尽量使用经过验证的“cable- frequency”组合。或者通过设备测量并确认外部接口的延时特性。这样可以进行有针对性的调整。我最近的教训就是花了整整一个月调整并测试内部的结 构,但是仍然失败。结果发现由于cable的问题,80MHz的信号( 数据 +使能+others)无法正常并行传输。如果换成40MHz的信号就通过了。

      9. 综合PR后的结果要和代码等价。前面提到仿真加时序足矣,这里面的前提是PR的结果和原始代码要等价。为了确认这一点,就要把握syn和pr过程中的所有 warning以及error,warning的内容不是完全可以忽略的。要特别关注综合报表中的以下内容:unused ports, removal of redundant logic, latch inference,simulation mismatch等等。在报表中输入关键字查找即可。


    http://bbs.ednchina.com/BLOG_ARTICLE_3018248.HTM

    展开全文
  • FPGA的开发遵循一定的流程,我们要学会站在巨人的肩膀上进行FPGA开发,听取前人的经验,这篇博文摘自《FPGA之道》,一起来学习下作者对于FPGA开发的丰富经验。
  • FPGA项目开发:基于FPGA的伪随机数发生器(附代码) 今天是画师和各位大侠见面了,执笔绘画FPGA江湖,本人写了篇关于FPGA的伪随机数发生器学习笔记,这里分享给大家,仅供参考。 一、概念 随机数是专门的随机试验...
  • fpga项目整理

    千次阅读 2017-01-18 19:46:36
    fpga跟踪 https://github.com/atlab/FPGAEyeTracker Motion-Tracker https://github.com/zephyr834/Motion-Tracker 后续持续更新
  • pmod_ad1_example:在Arty A7 35T开发板上使用Digilent的PMOD AD1进行的简单FPGA项目
  • 利用FPGA技术,编写的一个实现重力感应控制的模拟飞机驾驶游戏;在xilinx ISE环境下编译成功
  • 那么今天学会了第一个fpga项目:倒计时显示。 1.功能: 1)开关控制计数器工作。 当开关作用,led亮并且保持,每隔一秒,计数器开始从16减到0,用数码管显示,并保持。 2.思路: 1)两个分频器,一个给1s钟的倒计时...
  • 正点原子 FPGA代码

    2019-05-12 23:21:06
    正点原子 FPGA代码

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,875
精华内容 7,950
关键字:

fpga项目