找回密码
 注册
关于网站域名变更的通知
查看: 603|回复: 3
打印 上一主题 下一主题

Altera FPGA 远程升级有关的几个IP的使用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-8-4 09:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
在做在线远程升级的时候,一般需要两步:1、将数据写到外挂的flash中。2重新启动FPGA配置。 不过要做到远程升级,一般需要在原始程序中就考虑到加入远程升级模块,remote updata IP, 在升级的时候才可以启动远程升级功能。! O. d. K" x" n+ b, K
  远程升级之后程序加载的过程:在进行远程升级成功以后,flash中应该会至少存储两个程序,出厂程序和升级程序。两个程序在不同的地址空间中(出厂程序从0X0000开始存储)。在FPGA上电之后,FPGA会加载出厂程序,出厂程序在运行之后,检测到remote updata IP中的一些参数(如配置镜像参数等,remote updata IP部分会介绍到)后,将读取flash中升级程序内容的开始地址指向读取地址,然后触发重新配置(如reconfig信号有效),开始加载重新配置程序。直到无错误的加载完成。也就是整个过程会加载两次程序。
! T5 l) ]( l+ z9 l" X 一、 如何将程序写到flash中。" C+ C. ^' t* f( L" W5 v8 x1 v
    在程序运行过程中,可以通过控制一些IP来将程序写到flash中,这里有两个IP可以使用:EPCS controller,  ASMI .& U$ e0 D5 u' j. ?. S' A
    1、EPCS Controller:
. r6 a$ w$ v3 M# T    该IP在Qsy系统中,一般需要配合NIOS II来使用,需要使用者对ARM的编程有一定的基础。不过Altera 也提供了一些有关epcs操作的API,如读写,擦除等。不过在操作前会读取一下FLASH的ID来确定是EPCS还是EPCQ,或者EPCQL,还有容量是多大的。确定好Flash的类型之后就可以调用API函数对Flash操作了。网上也有例程,如锆石科技的参考例程。不过如果使用的是第三方的flash,而读取的ID不在官方flash的ID列表之后,则就会认为没有flash,也就无法读写操作了(不敢百分百确定的,但是肯定要改程序)。所以需要操作者对ARM的操作有一定的知识。/ w5 l+ L* U) K/ i- ^, C) T  O3 @
    EPCS Controller IP在cyclone IV上使用的时候是需要手动绑定那四个pin的,在cyclone V上是不需要绑定的。
) I* _$ s( }8 u$ N  2、ASMI IP7 X5 ?# t: D( f4 }5 X
    该IP在IP库中,Qsys中也有,可以直接用verilog进行编程控制,网上也有中文文档:ug_altasmi_parallel_CH.pdf 。该文档会介绍如何擦除,读写flash等,只要时序控制好,EPCS/EPCQ/EPCQL的空间地址控制号就可以了。
& l0 I1 h& b2 e% y& C: D) S% b二、 如何打开下载程序文件- }  C1 S& @. c0 z) X
  远程烧录,需要PC等通过串口或网络将程序传给FPGA,程序文件一般是jic/sof/rbf等格式的文件,那么一般软件不能打开也看不到里面的内容,可以使用UltraEdit软件来打开这些文件,而且里面还会有一部分提示。
, j; q  ?; J1 c- C    
! @* F+ |. B( P7 x2 j" _
    但是这个文件会很大,比如16MB,并不是所有的都是有效的信息,我现在也不知道该写哪一些数据到flash中,以后知道了再补充吧。
  J6 F# u( G6 L2 {8 t  1 {/ z0 F% A2 U: Y% m' u! v4 p3 `
三、remote updata IP 0 A% j' p  j/ }; I, y! \& R0 z
  该IP在IP库和Qsys中都有,可以用verilog来控制,建议使用前也要先看下他的说明书,ug_altremote.pdf,里面对寄存器有详细的说明。
8 m6 A# u+ b+ c  R1 d    
9 s/ k, L6 F7 n: z+ b8 n
     
, b) @" G  t9 ?5 s  Y' |  S
: Z, n. D( a7 ~- O. N
  在使用过程其实是读取寄存器或者写寄存器的过程,最后一步reconfig信号就可以了。
6 o5 ^3 a5 z5 ^' N

该用户从未签到

2#
发表于 2021-8-4 10:51 | 只看该作者
程序运行过程中,可以通过控制一些IP来将程序写到flash中$ N1 p- `. w$ m5 b( H2 u1 M

该用户从未签到

3#
发表于 2021-8-4 11:09 | 只看该作者
并不是所有的都是有效的信息
& f" k( J7 a3 H$ `# K

该用户从未签到

4#
发表于 2021-8-4 13:12 | 只看该作者
不敢百分百确定的,但是肯定要改程序
5 Y- F: N& d, Z( Q. \
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-9 22:52 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表