Microsemi Libero使用技巧——使用FlashPro单独下载程序

前言

在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了。本文介绍如何从工程目录中提取下载文件,并使用FlashPro软件来单独下载程序。

关于FlashPro

Microsemi FlashPro编程系统是Microsemi的FlashPro软件和硬件编程器的组合。它们可以为PolarFireIGLOO2SmartFusion2RTG4IGLOO?系列ProASIC3系列(包括RT ProASIC3)以及SmartFusionFusionProASIC PLUS旧版和停产闪存FPGA中的所有FPGA提供系统内编程(ISP)。

这里说的FlashPro有两种含义:1.下载器FlashPro 3/4/5,2.下载软件FlashPro。

  • FlashPro5下载器

  • FlashPro 4下载器

  • FlashPro 软件

程序文件的路径

工程目录下,默认会生成一个designer文件夹,打开designer\impl1\led_driver_fp,这个文件夹就是下载程序所需要的FlashPro文件,其中包含pdb程序文件和FlashPro的工程。

也就是说,当需要下载程序时,我们只需要把这个文件夹拷贝给别人就行了,而不用拷贝整个庞大的工程文件夹。

使用FlashPro下载程序文件

1.打开FlashPro软件

在Microsemi软件列表中找到FlashPro并打开,或者在安装目录找到FlashPro程序:F:\Microsemi\Designer\bin\flashpro.exe

2.打开FlashPro工程

选择Open Project,打开工程目录下的FlashPro工程文件:D:\FPGA_Study\Microsemi\Blog\LED_Blink\designer\impl1\led_driver_fp\led_driver.pro

如果已经连接了下载器,会显示下载器的信息,如果没显示,要查看下载器是否连接正确。

3.加载程序文件

默认是没有加载pdb程序文件的,我们需要手动指定。点击Configuration->Load Programming File,加载pdb程序文件。

选择工程目录下的D:\FPGA_Study\Microsemi\Blog\LED_Blink\designer\impl1\led_driver_fp\led_driver.pdb文件

如果加载成功,会在底部显示加载成功的状态信息,并且在右下角会显示当前加载的pdb文件的路径。

4.下载程序

连接FlashPro下载器和开发,点击PROGRAM按钮,就可以下载程序了,会显示下载进度,最后下载成功,会显示RUN PASSED

如果显示红色SCAN CHAIN FAILED或者RUN FAILED,说明下载器和芯片的连接不正常,此时需要检查下载器是否正常,下载器和目标芯片的连接排线是否正常,目标芯片是否供电,USB连接等等。

编程方式配置

FlashPro默认是配置为PROGRAM编程方式,这也是最常用的一种编程方式,主要包括:验证芯片ID,擦除,编程,复位M3等操作,根据pdb文件大小,耗时几十秒,如果我们只想执行其中一项或者几项应该怎么操作呢?

选择Configure Device,进入编程配置选项,可以通过Action下拉来选择进行哪种编程方式。

  • DEVICE_INFO:获取芯片的信息
  • ERASE:擦除FPGA程序和ARM程序
  • READ_IDCODE:读取芯片的ID号
  • RESET_CORTEXM3:复位ARM Cortex-M3硬核

这里有一个经常使用的配置模式,是PROGRAM eNVM选项,这个选项是只给内部的ARM Flash区进行编程,如果我们的工程中用到了M3硬核,这里会显示这个选项。使用这种编程方式的好处就是,如果FPGA配置没有更改,而只修改很小部分的ARM程序,那么就没有必要使用PROGRAM选项,编程时间会很长,如果只使用PROGRAM eNVM编程配置,则速度会非常快。

独立的FlashPro软件安装

FlashPro软件默认是和Libero一起安装,如果想单独安装FlashPro软件,而不想安装体积庞大的Libero也是可以的,不需要注册就可以使用。

官方下载地址:FlashPro v11.9安装包

官网信息:

Starting with Libero SoC v12.0, The FlashPro programming software will no longer be included in the Libero design software nor will it be available in stand-alone mode. Microsemi will be supporting the FlashPro Express v12.0 programming software, which replaces the FlashPro programming software. The last versions of Libero that supports FlashPro are Libero SoC v11.9 and Libero SoC PolarFire v2.3.

中文翻译:

从Libero SoC v12.0开始,FlashPro编程软件将不再包含在Libero设计软件中,也不会以独立模式提供。Microsemi将支持FlashPro Express v12.0编程软件,该软件将替代FlashPro编程软件。支持FlashPro的Libero的最新版本是Libero SoC v11.9和Libero SoC PolarFire v2.3。

从以上官网的说明可以了解到,12.0版本之后的版本将不再包含FlashPro,而只包含Flash Pro Express,这个软件的功能和Flash Pro软件的功能几乎一样。

菊花链拓扑实现多芯片同时编程

通过JTAG协议的菊花链拓扑可以实现多芯片的同时编程,对于同一块PCB上有多块FPGA时,可以节省多个JTAG口所占用的PCB空间。对于嵌入式封闭环境中,有时需要对系统中的FPGA程序进行在线或远程升级,必须将JTAG口引到机箱外,显然这种单JTAG口的菊花链结构是最佳选择。

传统的JTAG下载程序

JTAG菊花链拓扑实现多芯片编程

这种方式虽然好,但是对硬件设计也提出了要求:

  • TMS和TCK的驱动能力

TMS和TCK由于连接了多个器件,所以要求驱动能力要足够,可以采用缓冲器的方式增强驱动能力,当器件较多,通过降低频率,即使不增加缓冲器,也可以提高信号的完整性。

  • TDI到TDO的贯通延时

JTAG协议规定TCK下降沿输出TDI数据有效,并在TCK上升沿采集TDO数据,因此,在整个JTAG链中必须保证TDI至TDO的贯通延时(Propagation Delay)TCPD必须小于TCK的1/2周期TCLK/2,即△T=TCLK/2 –TCPD>0。也就是说,在增加缓冲驱动的情况下,JTAG链路中的芯片总数与每个芯片的TDO延时TDOV(FPGA为TTCKTDO)和TCK频率有关。在芯片总数确定以后,为保证△T>0,可以降低TCK的频率。

将处理器中的JTAG仿真接口连接成菊花链的方式,使用一个JTAG仿真控制器便能访问菊花链中任何一个处理器。如此,只需通过一个JTAG接口便能访问JTAG菊花链中的任何一个器件.但是由于菊花链的串联特性,如果任何一个设备从链路中移走,则链路便断裂开。

Microsemi FlashPro也支持菊花链拓扑方式来进行多芯片编程,但由于手上没有这样连接的硬件,所以没办法进行操作演示,具体的使用方法可以参考FlashPro使用手册:FlashPro 用户手册

FlashPro下载器的其他功能

  • 配合Synopsys Identity Debug实现在线调试
  • 支持多种编程选项:擦除、编程、验证、复位M3、编程M3等
  • 配合Microsemi SoftConsole实现ARM程序的调试和下载
  • 支持导出或运行TCL脚本文件,或通过命令行下载程序
  • 支持菊花链拓扑同时编程多个目标芯片
  • 只更新ARM Cortex-M3的Hex程序
  • 设置编程密钥和AES密钥,增强安全性
  • 导出stp格式单程序文件

以上都是很实用的功能,具体的使用方法可以参考:FlashPro 用户手册,里面介绍的很详细。

本来只想写FlashPro下载程序的部分,没想到这一写就停不下来了。有错误的地方,欢迎指正。

资料下载

推荐阅读


  • 我的个人博客:www.wangchaochao.top
  • 我的公众号:mcu149

原文地址:https://www.cnblogs.com/whik/p/11616134.html

时间: 2024-11-07 19:24:04

Microsemi Libero使用技巧——使用FlashPro单独下载程序的相关文章

Microsemi Libero系列教程(二)——新建点灯工程

前言 上一篇文章,介绍了Microsemi Libero系列教程(一)-Libero开发环境介绍,下载,安装与注册,作为嵌入式开发中的Hello World,点灯是再也基础不过的实验了,通过点灯实验,可以了解芯片GPIO的控制和开发环境IDE新建工程的流程,对于FPGA来说,每个IO口几乎一样,所以本篇文章主要学习一下如何基于Microsemi Libero集成开发环境建立一个示例工程,让一个LED以500ms的频率闪烁,以Microsemi SmartFusion系列FPGA--A2F200M

android 如何单独下载一个项目

起因,"网络"不太好,"比如铁通的就是不如联通的" 每次执行一边repo sync,十分蛋疼,如果不做full build无需全部下载,着急看某个项目的改动可是repo sync会一个不拉的把所有的AOSP项目拉一遍. ...... 废话少说,单刀直入 执行方式 git clone https://android.googlesource.com/platform/frameworks/av 单独下载frameworks/av项目 话说为什么这就是下载framewo

android 怎样单独下载一个项目

起因,"网络"不太好."比方铁通的就是不如联通的" 每次运行一边repo sync,十分蛋疼,假设不做full build无需所有下载,着急看某个项目的修改但是repo sync会一个不拉的把所有的AOSP项目拉一遍. . .. . .. 废话少说,单刀直入 运行方式 git clone https://android.googlesource.com/platform/frameworks/av 单独下载frameworks/av项目 话说为什么这就是下载fram

第3章 如何用DAP仿真器下载程序

第3章     如何用DAP仿真器下载程序 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 3.1 仿真器简介 本书配套的仿真器为Fire-Debugger,遵循ARM公司的CMSIS-DAP标准,支持所有基于Cortex内核的单片机,常见的M3.M4和M7都可以完美支持,其外观见图 31. Fire-Debugger支持下载和在线仿真程序,支持XP/WIN7/WIN8/WIN

跟踪OceanLotus的新下载程序KerrDown

攻击的方法 两种方法将KerrDown下载器传递给目标.一个是使用带有恶意宏的Microsoft Office文档,另一个是包含带有DLL side-loading合法程序的RAR存档 .对于RAR存档文件,用于欺骗目标的文件名都是越南语 * DLL Side-Loading 程序可以指定在运行时加载的DLL https://attack.mitre.org/techniques/T1073/ 恶意文件 两个不同的base64 blob插入到单独的表中,并且字体大小已更改为1. 图 1:诱饵文件

如何使用串口来给STM32下载程序

前言 第一次学习STM32的时候,不知道有调试器这个东西,所以一直是通过串口来给STM32下载程序,下载速度也还算可以,一般是几秒钟完成.后来用了调试器,可以直接在Keil环境下进行下载,而且还可以进行在线调试,所以后来就很少使用串口来下载程序了.前几天在uFUN试用群里看到有几个朋友在使用串口下载程序时,遇到了各种各样的问题,所以在这里简单介绍一下如何通过串口来给STM32下载程序. STM32的启动模式介绍 从STM32参考手册上,可以查阅到,STM32的启动模式,共有下列三种,可以通过BO

Kinetis Design Studio 下使用J-Link下载程序

1.安装J-Link驱动. 在KDS安装目录下已自带J-Link驱动,进入以下目录(以我的为例): C:\Freescale\KDS_1.1.1\segger\USBDriver 将看到CDC.x64.x86三个文件夹,根据自己的系统选择对应的程序,只需两步(以我的为例): 1> 进入CDC文件夹下,运行dpinst_x86.exe,等待安装完成. 2> 进入x86文件夹下,运行DPInst.exe,等待安装完成. 2.建立工程并正确编译工程. 3.使用J-Link下载程序. 1> 单击

FPGA的EPCS 配置的2种方法 FPGA下载程序的方法(EPCS)

使用主动串行配置模式对Cyclone FPGA进行配置前,必须将配置文件写入串行配置器件EPCS.将配置文件写入EPCS的方法有三种: (1)在Quartus II的Programmer中,通过专门与EPCS连接的AS下载接口下载.pof文件到EPCS.不同之处在于将下载线连接到AS接口而不是JTAG接口,选择编程文件时是*.pof而不是*.sof. (2)在Quartus II的Programmer中,使用JTAG接口通过FPGA中间通道间接对EPCS进行编程. (3)使用Nios II ID

php实现在线下载程序安装包功能

在线下载程序安装包可以很方便在服务器端下载各种程序安装包(Discuz!.phpwind.Dedecms.WordPress....等一些常用程序)并存储在服务器,大大减少站长上传程序安装包时间.默认密码13712489797(请编辑本文件第2行修改) 在线下载程序安装包 更新日志:2014/11/02 重新修改了远程文件列表,文件列表不再局限于一个下拉框里;修正密码频繁验证2014/08/14 v1.1和v1.0的区别在于1.1增加了下载完成后会提示是否解压文件 2014/08/11 在线下载