当前位置:首页 > 新闻资讯 > FPGA之家动态 >

WIN10系统下,用Chisel开发入门FPGA的HelloWorld呼吸灯

时间:2025-02-16      来源:FPGA_UCY 关于我们 0

前言:

前几天看了国科大本科生造芯片那事感觉挺震撼的,然后看了报道了解到他们使用了语言进行芯片开发。据说效率很好,比高效多了。刚好公司有块的-6板子,感觉好奇就想试试用写FPGA试试。

本人一直做STM单片机,PCB专职画图员。没学过FPGA,也没学过,纯兴趣驱动了解用开发FPGA,写此文档纪念一下入门过程。

首先感谢西安前辈提供资料。附上两位前辈资料 首先做为一个FPGA 纯小白,我需要首先明白了解A:是啥,B:开发环境是啥?C:哪能找到一个例程?D:FPGA开发环境是啥?如何下载?以及例程(需要修改LED定义引脚)E:用生成的代码可以直接运行吗?

带着以上问题一个一个学习解决

A:是啥。这个看前辈的博客

第一章 新型敏捷硬件开发语言——和Scala

第二章 Scala入门——让你的代码跑起来。

就能明白大概个意思,然后再百度百度资料应该差不多了。(需说明前辈是用LINUX开发环境,我是用的WIN10,因为查的书,说也可以WIN10开发,IDE用的 IDEA )

B:开发环境

前面说的书为-book,是一个PDF文档,-book:

开发fpa_FPGA开发_开发FPGA

找到其中 1.1.3章节开发环境搭建。

开发FPGA_开发fpa_FPGA开发

OK,按着以上内容下载所需要的软件。

C:哪能找到一个例程?

OK,继续看这本书,这是本好书,Hello world例程书里有了,代码在Git上

开发fpa_FPGA开发_开发FPGA

继续找到了GIT上的-. OK 点击去GIT上 克隆下来,

开发fpa_FPGA开发_开发FPGA

开发FPGA_开发fpa_FPGA开发

好了,找到例程了。现在想想例程怎么编译?生成代码在哪?

书中1.7章节有写

开发fpa_开发FPGA_FPGA开发

书里只写了下的编译生成(请大佬勿拍,我是小白,描述可能不准确)。至于下载到FPGA文档里说要自己动手,不在文档教程内了。

说明:CMD后命令提示符,使用git clone 下的代码是在本地电脑路径

C:\Users\NJSG-DSP\- 下(NJSG-DSP就是你电脑名)

继续cd -/hello-world/

开发FPGA_开发fpa_FPGA开发

继续编译sbt run

开发fpa_开发FPGA_FPGA开发

需要等待很长时间,然后显示成功。(因为我编译过了,所以第二次很快)。

OK,现在找生成的,书中说是Hello.v,百度. v就是文件。

FPGA开发_开发fpa_开发FPGA

嗯,带着无比膜拜无比好奇的心情打开(用文本方式 打开就行)

FPGA开发_开发FPGA_开发fpa

嗯,嗯,嗯,按着我C语言的菜功底,感觉可能还是看不懂,不过没关系,生成的我们暂时不需要看懂,我们先跑例程,先建立一个信心。我现在还是幼稚园阶段。

D:FPGA开发环境是啥?如何下载?以及例程(需要修改LED定义引脚)

好了,有了生成的.v代码文件了。我想偷懒,我不想建立FPGA工程,我现在也不懂建,我想直接移植过去 ,那么开发FPG用什么环境呢?用什么软件?

好了,公司刚好有一块-6开发板,黑金的。淘宝有,感谢黑金,现在教程都做的很好,直接搜AX309,就能找到资料了(老板,广告到这了,你们可以打钱了)

开发FPGA_开发fpa_FPGA开发

开发fpa_FPGA开发_开发FPGA

FPGA开发_开发fpa_开发FPGA

先看01_学习教程之例程篇。的01 02 (03,04,05可以后面再看)

资料里面有DEMO,

开发FPGA_FPGA开发_开发fpa

完成,我就只需要一个。

OK,照着02教程下载一遍,跑通整个过程。(先不要着急直接把生成的直接替换demo 的.v文件,我是小白,我要一步步来,我需要知道 demo以及整个流程没问题了,再继续)

demo例程我就不截图了,就是4个LED流水灯。

看demo代码,用C语言的理解,再看现象感觉有点点理解意思(装懂)

开发fpa_FPGA开发_开发FPGA

对了,我现有FPGA开发IDE是 ISE,因为公司用这个,有问题可以问同事,嘿嘿嘿嘿…

用ISE打开demo工程

FPGA开发_开发fpa_开发FPGA

开发FPGA_开发fpa_FPGA开发

问了同事,ucf就是FPGA引脚时钟配置用的文档,点开看看

开发FPGA_开发fpa_FPGA开发

好了,到这里我有了生成的Hello.v 代码 有了ISE开发环境,FPGA板子,引脚配置。那么下一步就是直接替换.v文件。(直接替换最省事,不用建立工程,以个人理解 ,这些IDE识别文件都是用名字的吧,嘿嘿嘿嘿,)直接打Hello.v拷进demo文档,修改名字替换掉demo里的.v。(两个文档各自做好备份,以备查验对比)

开发FPGA_FPGA开发_开发fpa

重新打开工程。点 会出现许多错误。因为demo是4个灯,时钟名称和复位名称也不一样

开发FPGA_开发fpa_FPGA开发

上面 是黑金demo代码

开发FPGA_开发fpa_FPGA开发

这是生成代码。

好,开始修改。

clock修改为 clk. reset修改为 .

至于 reg[3:0] led 以C理解,好像这是4个灯吧。好像是吧。直接修改 为 led

开发fpa_FPGA开发_开发FPGA

引脚配置里只留一个led,(即LED1,其它不要)

再次点击编译还有错误

FPGA开发_开发fpa_开发FPGA

会提示哪行 有错误,这里的clock和reset也需要修改为demo里面的名称。

开发fpa_开发FPGA_FPGA开发

再次编译。没有错误了,OK,下载。

没反应!!!!准备要哭了,随便点了个开发板上reset按键,哦,哦,哦,LED1居然正常闪了。

看看上面 代码 ,

好像里面代码生成里面有 if(res_n)判断,猜是判断按键吧?那么我把按键直接去掉试试?

好了,在引脚配置里面,把NET rst_n 隐掉。编译,下载…

系统下,用语言开发入门FPGA入门,呼吸灯

OK,LED1(LED0正常闪),代表整个流程没问题了。enjoy…(视频没上传 - -! 晚点补上)


注明:本内容来源网络,不用于商业使用,禁止转载,如有侵权,请来信到邮箱:429562386ⓐqq.com 或联系本站客服处理,感谢配合!

用户登陆

    未注册用户登录后会自动为您创建账号

提交留言