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

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

3天内不再提示

几方面简单说明一下:EDA、IP、编译速速、生态

FPGA技术江湖 来源:FPGA技术江湖 2023-04-03 10:30 次阅读

最近收到了高云寄过来的FPGA板卡,下图:

c85e0486-d1c4-11ed-bfe3-dac502259ad0.png

来源:https://wiki.sipeed.com/hardware/zh/tang/tang-primer-20k/primer-20k.html

FPGA主要参数:

GW2A-LV18PG256C8/I7 逻辑单元(LUT4)20736
寄存器(FF)15552
分布式静态随机存储器S-SRAM(bits)41472
块状静态随机存储器B-SRAM(bits)828K
块状静态随机存储器数目B-SRAM(个)46
乘法器(18x18 Multiplier)48
锁相环(PLLs)4
I/O Bank 总数8
FPGA型号 参数

因为板卡是第三方的,所以不予评价,我们今天主要从下面几方面简单说明一下:EDA、IP、编译速速、生态。

EDA

高云的EDA下载非常简单,从下方网址直接可以下载

http://www.gowinsemi.com.cn/faq.aspx

我这次使用的教育版软件,无需License,但是也会有些限制。

打开界面:

c891f03e-d1c4-11ed-bfe3-dac502259ad0.png

整体和lattice diamond界面类似,这里有个不舒服的地方就是文件没有层级关系,需要综合之后才能在Hierarchy看到层级关系:

c8be210e-d1c4-11ed-bfe3-dac502259ad0.png

这里对于大型或者多文件工程极其不友好,对于继承代码,那简直。。。

在编写完代码后,综合、布局布线界面极其方便,在下面界面可完成。

c8e80410-d1c4-11ed-bfe3-dac502259ad0.png

同时绑定引脚也可以使用两种方式,综合后通过界面分配或者文件物理约束都可:

c8f83060-d1c4-11ed-bfe3-dac502259ad0.png

最后布局布线,点击下图中两个位置都可以打开下载插件:

c9234c82-d1c4-11ed-bfe3-dac502259ad0.png

这个插件可以单独使用无需license,对于小批量生产很方便。

但是这里也有一个小BUG,在打开下载插件时候,这里的文件不一定是你这个工程的文件:

c935f9f4-d1c4-11ed-bfe3-dac502259ad0.png

尤其是在使用逻辑分析仪时候,会重新生成新的二进制文件(新的文件名),而上图的文件位置并不会更新成新的文件,需要重新选择,这两点很容易让你下载到FPGA的目标文件和生成的文件并不是一个文件(调试了好久。。。),这里可以不记忆或者下方提示或者在选择文件位置加一个惊叹号类似的提示。

高云的FPGA还有一个好处就是无需外部FLASH就可以固化启动文件,因为FPGA内部有FLASH(类似Intel CPLD),也可以使用外部FLASH进行双备份,这样即减少了电路复杂度,也减少了成本增加了稳定性。

IP

上面简单介绍了EDA软件(云源软件)的使用,下面看下对于开发者最重要的一部分--IP,一个强大的IP环境可以为开发者节省很多开发时间,我们先看下教育版的IP有多少:

c956e95c-d1c4-11ed-bfe3-dac502259ad0.png

下图就是EDA提供的常规IP,也很丰富,DSP、常用接口、CLOCK、Memory等,因为我用的是教育版EDA,不知道和正版有哪些缺失,不过有些IP我是不能用的,这很正常,差异性服务是未来的趋势。

c973a7d6-d1c4-11ed-bfe3-dac502259ad0.png

这里我们重点关注下面箭头的部分:

c9855e36-d1c4-11ed-bfe3-dac502259ad0.png

做图像处理的应该都理解这几个IP的重要性,其中Video Frame Buffer类似AMD-Xilinx 的“VFIFO”,帧缓存至DDR并且从DDR读取帧数据进行显示或者处理,这大大减少了开发者操作DDR的开发周期。

编译速速

这个我就不多说了,因为本身软件需要做优化的地方比较少(内部主频比较低),所以速度很快,后续大容量、高主频的FPGA出来后速度肯定会降低,目前没办法对比。

生态

这个我就不单独以高云为例了,而是目前国产FPGA,都是一样的,生态环境几乎为零,主要是前期一直以站稳市场为主,没有进行推广,所以生态没建立起来很正常,随着未来的发展,肯定会越来越好~

图像处理平台

关于代码这篇文件不详解,主要应用到DDR+FRAME BUFFER两个IP,详细工程:

https://github.com/sipeed/TangPrimer-20K-example/tree/main/Cam2HDMI

在这个基础上可以做自己的IP添加进去。后续大家有兴趣再详细讲解这个工程。

总结

国产FPGA在发展,目前在价格上优势极其明显,后续的发展还要靠国内的开发者去支持。

虽然目前还有一些BUG,但是还可以忍受。最后就是希望国内的FPGA可以越发展越好~

审核编辑 :李倩

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

    关注

    1626

    文章

    21674

    浏览量

    601939
  • 寄存器
    +关注

    关注

    31

    文章

    5325

    浏览量

    120032
  • eda
    eda
    +关注

    关注

    71

    文章

    2711

    浏览量

    172919

原文标题:总结

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    个quartus IP核的问题来询问一下大神

    /asj_fft_bfp_i_fft_91.vhd" is not available。请问一下是不是我的软件没有破解?或者是这个IP核不能用呢?一下是我的license setup 。求大神帮帮忙,能有什么方法解决不?谢咯
    发表于 08-26 15:33

    第53章 RL-TCPnet之Web服务器的JavaScript实现简单说明

    转帖 本章节主要为大家讲解Web服务器中使用JavaScript的方法。关于JavaScript涉及到的知识点太多,我们就不专门做成教程了,仅简单进行说明并配套个例子,方便大家作为参考。本章教程含
    发表于 01-19 10:23

    从哪几方面去分析CAP消息?

    从哪几方面去分析CAP消息?一方面描述如何根据协议标准中规定的协议消息结构进行解码另一方面结合实际情况探讨CAP消息的统计及呼叫数据记录合成等功能
    发表于 04-09 07:03

    简单说一下W25Qxx芯片

    简单说一下W25Qxx芯片:W25Qxx芯片为Flash芯片,可以实现数据保存,且掉电不丢失。部分AT24Cxx的容量如图,该芯片通过 SPI 总线与 STM32连接 电路如下(原子的): 讲实现
    发表于 12-13 06:06

    简单一下鸿蒙系统中u-boot代码的编译步骤流程

    u-boot在鸿蒙系统中的作用就不说了,这里只简单一下鸿蒙系统中u-boot代码的编译步骤流程。u-boot的源代码部署在://device/hisilicon/third_party/uboot
    发表于 03-29 14:15

    分享一下编译opencv与temgine后端的教程

    1、编译opencv+tengine后端与usb相机不识别的解决方法下载opencv连接开发板,需要个扫描ip的工具,和远程的工具开机前扫一下,开机后扫
    发表于 06-15 18:16

    简单说明一下使用FireflyApi2系统常用的接口

    和使用使用 FireflyApi2 时先检查一下机器的固件是否是最新版本,在[资源下载] 页面找到对应的机型查看固件是否最新,同时也可以同步SDK到最新提交,具体先选择对应机型的[wiki],然后在Android开发
    发表于 08-17 17:17

    DAC-08和DAC-20单电源工作的简单说明

    DAC-08和DAC-20单电源工作的简单说明:
    发表于 06-10 11:02 35次下载
    DAC-08和DAC-20单电源工作的<b class='flag-5'>简单说明</b>

    高清解码器 4U机框产品芯片功能简单说明

    高清解码器 4U机框产品芯片功能简单说明
    发表于 12-27 16:26 0次下载

    简单说明一下Scala语言与其优点

    Scala 是种有趣的语言,是种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行在JVM上,兼容现有的Java程序,集成面向对象编程和函数式编程的各种特性
    发表于 10-10 09:23 6663次阅读

    简单说明一下控温仪它到底该如何使用

    如果单独购买控温仪的话,很多人不知道怎么使用,今天就来说明一下控温仪怎么使用? 1.插入交流电电源220V,将被控制加热的电源线插入控温仪后输出上,将温度传感器插进溶液内。然后打开电源开关,显示窗
    发表于 10-30 11:04 3555次阅读

    基于FPGA板卡的EDAIP编译速速生态介绍

    高云的FPGA还有个好处就是无需外部FLASH就可以固化启动文件,因为FPGA内部有FLASH(类似Intel CPLD),也可以使用外部FLASH进行双备份,这样即减少了电路复杂度,也减少了成本增加了稳定性。
    发表于 04-03 10:27 764次阅读

    记录一下uboot编译的问题

    前几天编译uboot时遇到些问题,先记录一下,linux嵌入式开发还是蛮意思的,要想玩的溜,就必须掌握最基本的uboot、kernel移植、适配、裁剪。
    的头像 发表于 07-21 16:05 826次阅读
    记录<b class='flag-5'>一下</b>uboot<b class='flag-5'>编译</b>的问题

    复旦微智能CPU卡芯片FM1280简单说明

    复旦微智能CPU卡芯片FM1280简单说明
    发表于 10-18 15:33 9次下载

    复旦微安全芯片FM1280简单说明

    复旦微安全芯片FM1280简单说明
    发表于 10-18 15:33 4次下载