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

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

3天内不再提示

Efinity RISC-V IDE入门使用-5

XL FPGA技术交流 2025-07-23 12:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、Efinity工程

io_memoryClk是与存储器接口共用的时钟,需要连接正确。

UART

由于钛金系列是有片上晶振的,所以有些客户可能会选择片上晶振作为SOC的系统时钟或者选择片上晶振作为PLL的参考时钟,再由该PLL的输出时钟作为SOC的系统时钟,但是由于片上晶振频率偏差比较大,所以UART的波特率是不准确的,这也是为什么UART出问题的原因。

FLASH

flash管脚interface设置。

flash出问题也是一个很常见的问题,

之前遇到有客户反馈riscv 烧写到flash启动不了,原因是 riscv 必须要控制flash,因为bootloader会读取flash中的数据用于加载APP;

(2)flash的IO输入输出都要添加IO寄存器,之前遇到有客户不能读写flash的情况。

Instance Name

Ext_flash_clk

Ext_flash_cs

Mode

output

output

I/O Standard

1.8V LVCMOS

1.8V LVCMOS

Connection Type

--

--

Register Option

register

register

Double Data

I/O Option

none

none

Enable Serialization

No

No

Clock Pin Name

soc_clk

soc_clk

Pull Option

-

-

Drive Strenght

4

4

Instance Name

Ext_falsh_dx

Base

Output

Mode

inout

Constant Output

none

I/O Standard

1.8V lvcmos

Register Option

register

Input

Double Dat

none

Connection Type

normal

Enable Serialization

No

Register Option

register

Drive Strength

4

Clock

Clk

Enable Slew Rate

No

Double data

None

Static Delay Setting

0

Pull Option

None

Output Enable

Enable Schmitt

No

Register Option

Register

Enable bus hold

No

Oputput Clock

Static Delay setting

0

Pin Name

Clk

Inverted

No

二、RISCV 工程

自从新版本的Efinity RISC-V IDE发布之后,这直没有时间操作一下,它为RISC-V ' C '和' c++ '软件开发提供了一个完整、无缝的环境;今天终于安装了,但安装自不必多说,一路点击下去就可以了。来体验一把。

2.1 打开IDE自带工程。
(1)首先打开软件。

step1:选择工程的工作空间。如果工作空间长时间不变可以勾选Use this as the default and do not ask agin。

与老版本的区别是,新版本可以将该选择到任何地方。

wKgZO2iAaM6AIm67AAA8wCRMokg103.png

step2:生成sapphire的example。

step2: Import工程。选择Import Projectes... 或者在Project Explorer中右击,然后选择Import... 或者File -> Import.

wKgZO2iAaM6AQ62JAACJ9INM2GA184.pngwKgZO2iAaNOAU3jbAABk4BX1kow155.png

step3:在打开的Import对话框中选择Efinix Projects-> Efinix Makefile Project可以导入。

wKgZO2iAaNOABaneAABXU7mAWD8920.png

step4:选择bsp位置,这里我选择

D:FPGA_Prj9_T120F3241_RISCV_DEMOT120F324_devkitembedded_swefx_socbsp

如果是FreeRTOS的话,两个都要输入。

wKgZO2iAaNOAfKmxAABG_kdJ-oo773.png

setp5:选择下一步,然后勾选相应工程前面的方框,点击finish即可以导入相应的demo工程。

wKgZO2iAaNSAZwNzAABZHJHSNj0381.png

step6:右键选择build Project.

step7:run或者debug。

从2022版本之后,只要把路径转换到soc之后,不需要再设置debug路径

wKgZO2iAaNSAB5YlAAE5R-_iV_c088.png

这里以gpioDemo为例。

wKgZO2iAaNSATFgrAAEp7MCpW0Q602.png

进入debug调试界面。

wKgZO2iAaNSARc3fAADvZVUjs7o116.png

查看串口打印信息,在Window->Show View ->Terminal-> open the termianl。选择Serial Terminal设置相关的串口信息。

wKgZO2iAaNSAP-sjAAC0aXXk6o8947.pngwKgZO2iAaNSAJ6xAAAEHgylua_c372.png

2.2 Debug优化设置

OpenOCD有三个环境变量,DEBUG,BENCH,DEBUG_OG.

wKgZO2iAaNWABD_mAADrSBOU_wg448.png

在IP生成时,可以通过Application Debug Mode设置Debug开关状态,在/embedded_sw/bsp/efinix/EfxSapphireSoc/include/soc.mk

wKgZO2iAaNWAdba6AAI5qrP8mNU969.png

下面是osc.mk关于DEBUG与DEBUG_OG的设置。

wKgZO2iAaNWANyLlAABebr6ydsI602.png

当然也可以在Window -> Preferences进行修改。

wKgZO2iAaNWAXiN1AAIvobx0HAc214.png

或者在工程的makefile中修改

wKgZO2iAaNWAItndAACKd41tqF0375.png

在调试完成后推荐的设置是

DEBUG = NO

DEBUG_OG = NO

BENCH = no/yes[-O3生成的文件会比-Os大,速度会快一点,但是也是个位数百分比的]

2.3 debug问题补充

其实在Debug时经常会报出以下问题:

Error: no device found

Error: unable to open ftdi device with vid 0403, pid 6014, description 'ELITES-232DL', serial '*' at bus location '*'

wKgZO2iAaNWAQCKZAAAftk-Lsas664.png

这个错误其实并不陌生,文档也有一个相关的记录.

目前易灵思的下载器使用的是FTDI的 FT232,FT2232和FT4232方案。下图是FT2232和FT4232芯片的原理图,FT2232有channel 0,1两个通道,在下图已经标出。FT4234有channel 0,1,2,3共4个通道;而ELITES-232DL使用的是FT232,它只有channel 0.所以在使用不同的下载噐方案时,尤其是在对RISCV进行debug时就是使用不同的配置参数;否则就会报上面的错误。

wKgZO2iAaNaABaKgAAE_pydHTFs399.pngwKgZO2iAaNaAL-Z-AAD3-lbscJU378.png

那么怎么区别下载器使用的是什么芯片方案及对应的JTAG channel号呢?这个在打开programmer之后,就可以看到相应的ID.位置如下图所示。而channel号是由易灵思的驱动来指定的,下表中列出JTAG使用的channel号。

wKgZO2iAaNaAOsUVAACdMxE7IG8531.png
FTDI器件 ID JTAG channel
FT232 0403:6014 0
FT2232 0403:6010 1
FT4232 0403:6011 1

在上面的图中我们还把USB Target用红色框框了出来,因为不同的下载器名字是不一样的,也是要修改的。

知道了上面的信息之后,我们就可以很清楚的知道我们的下载器使用的器件情况。

到现在我们可以对上面的报错进行修改了,出现上面的报错时应该怎么样修改呢?这里还要分两种情况,一种是hard jtag,另一种是soft的JTAG。区别在于修改的文件不同。

对于hard jtag,我们需要把embedded_swsoc_xxbspefinixEfxSapphireSocopenocdftdi.cfg(或者ftdi_ti.cfg,其中ftdi.cfg用于trion系列,而ftdi_ti.cfg 用于钛金系列)修改成下载器读出来的名字,这里包括ftdi_device_descftdi_vid_pidftdi_channel三个参数,只需要按照上面的说明配置即可。

wKgZO2iAaNaAKelnAAEjZ-mSpd4863.png

比如以YLS_DL下载器为例,

wKgZO2iAaNeASrQkAAlwTBLck-A482.png它使用的是FT2232的方案。修改结果如图。

wKgZO2iAaNeARgx2AACw7Tipux4260.png

对于soft jtag,老版本的EFinity修改的是c232hm_ddhsl_0.cfg文件,而在2023.1版本的RISCV中已经没有c232hm_ddhsl_0.cfg文件了。代之的是一个external.cfg文件。里面的内部与上面的是一样的。

另外也遇到过修改了上面的问题还是存在问题的,经过确认客户安装的驱动是libusb-win32,可以用zadig的libusbk试试。

wKgZO2iAaNeAGc-uAABf2fd-SPs029.png

2.4、新建工程

File -> New -> Project...

wKgZO2iAaNeASkx1AAA4pq4Jf9U843.png

可以选择Standalone也可以选择FreeRTOS

wKgZO2iAaNeAOLTnAABZ0v0Rddo531.png

三、接口操作

APB3接口

请在公众号中搜索"APB3接口应用"

GPIO

请在公从号中搜索"SOC GPIO操作”

四、逻辑文件与RISCV工程文件合并烧写

在programmer中点击Combine Multiple Image Files。打开Combine Multiple Image Files对话框,

wKgZO2iAaNeATFNSAAAkdBkQopo432.png

选择Generic Image Combination.并选择右侧的“*”添加文件,逻辑文件是生成的hex文件,RISCV工程生成的是bin文件。

wKgZO2iAaNeAebBZAABTTedU2Ug852.png

输入output file 文件名。指定地址,逻辑文件地址为0,

软核的起始地址是大工程中指定的起始文件,最后点击Aplly。

wKgZO2iAaNeAQTrpAABp2jsN-EI173.png

把合成的文件烧写到flash。

最后:

我们会为各种应用提供相应的demo,欢迎关注我们的硬件平台

wKgZO2iAaNiAGfIiAAka5tretWA045.png


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

    关注

    0

    文章

    368

    浏览量

    49216
  • RISC-V
    +关注

    关注

    49

    文章

    2948

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RT-Thread 邀您参与“开放・连接”2026玄铁 RISC-V 生态大会,携手共铸 RISC-V“芯”纪元

    2026年3月24日,由浦东新区人民政府科经委指导,达摩院主办,上海开放处理器产业创新中心、RISC-V工作委员会、中国开放指令(RISC-V)生态联盟联合协办的本届玄铁RISC-V生态大会,将在
    的头像 发表于 03-22 10:05 599次阅读
    RT-Thread 邀您参与“开放・连接”2026玄铁 <b class='flag-5'>RISC-V</b> 生态大会,携手共铸 <b class='flag-5'>RISC-V</b>“芯”纪元

    新思科技VC Formal解决方案在RISC-V验证中的应用

    ——地球上人均 6 颗。从“RISC-V 将无处不在”到“RISC-V,就现在”,RISC-V 已几乎覆盖所有应用。当前,RISC-V 已成功跻身世界主流处理器市场,不再局限于低功耗小
    的头像 发表于 02-24 16:38 799次阅读

    RISC-V不支持 Nx吗?

    RISC-V architecture! · nrwl/nx · Discussion #27915 如果能够支持 RISC-V,那就太好了。目前我无法在我的 VisionFive2 板上
    发表于 02-04 06:27

    为什么RISC-V是嵌入式应用的最佳选择

    最近RISC-V基金会在社交媒体上发文,文章说物联网和嵌入式系统正在迅速发展,需要更高的计算性能、更低的功耗和人工智能。RISC-V是为未来而建的,包括超高效的MCU到高性能应用处理器,RISC-V使开发人员能够设计以下解决方案
    的头像 发表于 11-07 10:09 1839次阅读

    RISC-V B扩展介绍及实现

    B扩展简介 RISCV B扩展指的是RISCV用于位运算加速的一个扩展指令集,目的是使用一条指令实现原本需要2-3条指令才能实现的位操作指令。具体包含内容如下: B扩展就是RISC-V一个可选
    发表于 10-21 13:01

    进迭播客 |「RISC-V 圆桌白话录」首期正式上线!

    进迭播客「RISC-V圆桌白话录」进迭时空全新播客节目「RISC-V圆桌白话录」首期正式上线!节目定位「RISC-V圆桌白话录」是一档聚焦RISC-V芯片世界的
    的头像 发表于 10-16 17:42 1512次阅读
    进迭播客 |「<b class='flag-5'>RISC-V</b> 圆桌白话录」首期正式上线!

    大湾区RISC-V生态全景展示:RISC-V生态发展论坛、开发者Workshop和生态应用专区

    继7月份上海的RISC-V中国峰会之后,中国RISC-V生态和产业发展最新动态将在10月份深圳的湾芯展上全景展示。   RISC-V,这个以开放、简约、模块化重塑处理器架构格局的开源指令集(ISA
    的头像 发表于 10-13 09:18 734次阅读
    大湾区<b class='flag-5'>RISC-V</b>生态全景展示:<b class='flag-5'>RISC-V</b>生态发展论坛、开发者Workshop和生态应用专区

    普华基础软件亮相2025 RISC-V中国峰会

    此前,7月16日至18日,第五届RISC-V中国峰会在上海盛大召开。普华基础软件副总经理兼战略研究院院长张晓先受邀参会,发表《开源小满助力RISC-V软硬协同生态发展》主题演讲,分享了开源小满
    的头像 发表于 07-28 16:51 1347次阅读
    普华基础软件亮相2025 <b class='flag-5'>RISC-V</b>中国峰会

    RISC-V 手册

    以下是关于RISC-V的详细介绍,结合其核心技术特点与当前发展现状:核心概念RISC-V(第五代精简指令集)是一种基于精简指令集(RISC)的开源指令集架构(ISA),由加州大学伯克利分校于2010
    发表于 07-28 16:27 11次下载

    2025新思科技RISC-V科技日活动圆满结束

    新思科技深度参与2025 RISC-V中国峰会并于2025年7月16日举办同期活动“新思科技RISC-V科技日”技术论坛,聚焦“从芯片到系统重构RISC-V创新”主题,议题覆盖当前最前沿的技术领域
    的头像 发表于 07-25 17:31 1604次阅读

    RISC-V 发展态势与红帽系统适配进展

    2025 年 7 月 18 日,在第五届(2025)RISC-V 中国峰会的软件与生态系统分论坛上,红帽软件(北京)有限公司首席软件工程师、RISC-V 国际基金会大使傅炜分享的主题是《红帽在
    发表于 07-18 10:55 4228次阅读
    <b class='flag-5'>RISC-V</b> 发展态势与红帽系统适配进展

    RISC-V 的平台思维和生态思维

    RISC-V 的魅力在于以模块化、开源、开放的指令集为底座,通过平台化技术框架降低芯片与应用开发门槛,并以协同共建的产业生态弥合碎片、加速落地。因此,高通高级副总裁 Leendert van
    发表于 07-17 14:04 4229次阅读

    RISC-V International CEO:RISC-V 应用全面开花,2031 年渗透率将达 25.7%

    7 月 16 日~19 日,第五届(2025)RISC-V 中国峰会在上海张江科学会堂拉开帷幕。峰会设置 1 场主论坛、8 大垂直领域分论坛、多场研习会及多项同期活动。在 7 月 17 日的主论坛上
    发表于 07-17 10:28 3800次阅读
    <b class='flag-5'>RISC-V</b> International CEO:<b class='flag-5'>RISC-V</b> 应用全面开花,2031 年渗透率将达 25.7%

    RISC-V和ARM有何区别?

    在微处理器架构领域,ARM与RISC-V是两个备受关注的体系。ZLG致远电子在推出ARM核心版后,又推出了基于RISC-V的MR6450核心版,这引发了人们对这两种架构差异的深入探讨。ARM
    的头像 发表于 06-24 11:38 2248次阅读
    <b class='flag-5'>RISC-V</b>和ARM有何区别?

    奕斯伟计算亮相2025 RISC-V欧洲峰会

    此前,当地时间2025年5月12日至15日,作为RISC-V全球年度盛会之一,2025 RISC-V欧洲峰会在法国巴黎举行。本次峰会汇聚了产业界、科研机构、学术界以及建设生态系统的多方力量,共筑基于
    的头像 发表于 05-17 16:50 1522次阅读