前言

与MCU不同,FPGA的资源主要包括:逻辑资源,IO资源,Flash大小,PLL资源,SoC硬核处理器资源等,其中逻辑资源和IO资源是我们主要关心的,本篇文章将介绍,如何通过Microsemi Libero IDE来查看工程的详细资源占用情况。

A2F200M3F的资源

以Microsemi SmartFusion系列A2F200M3F-PQ208为例:

  • 系统门数:200K
  • D触发器数量:4608个
  • RAM Block:8 * 4608 Bit
  • 用户IO:66
  • 差分IO:31
  • PLL:1个,集成在MSS中
  • SoC:ARM Cortex-M3硬核,256KB Flash,64KB SRAM,DMA、IIC、UART、TIMER、PLL
  • 可编程模拟资源:2路ADC,2路DAC

更详细的资源配置,可以查看Datasheet手册:A2F200M3F_Datasheet.pdf

Libero中查看资源占用

以点灯工程为例:LED_Blink,打开工程之后,点击左侧的Compile选项,等待编译完成,会在右侧的窗口输出编译报告,如led_driver_compile_log.rpt文件,里面有详细的资源占用情况:

编译报告(部分):

Compile report:
===============

    Microcontroller Subsystem  Used:      0  Total:      1   (0.00%)
    Fabric                     Used:     87  Total:   4608   (1.89%)
    Fabric IO (W/ clocks)      Used:      3  Total:     66   (4.55%)
    Fabric Differential IO     Used:      0  Total:     31   (0.00%)
    Dedicated Analog IO        Used:      0  Total:     31   (0.00%)
    Dedicated MSS IO           Used:      0  Total:     23   (0.00%)
    GLOBAL (Chip+Quadrant)     Used:      1  Total:     15   (6.67%)
    MSS GLOBAL                 Used:      0  Total:      3   (0.00%)
    On-chip RC oscillator      Used:      0  Total:      1   (0.00%)
    Main Crystal oscillator    Used:      0  Total:      1   (0.00%)
    32 KHz Crystal oscillator  Used:      0  Total:      1   (0.00%)
    RAM/FIFO                   Used:      0  Total:      8   (0.00%)
    User JTAG                  Used:      0  Total:      1   (0.00%)

I/O Function:

    Type                                  | w/o register  | w/ register  | w/ DDR register
    --------------------------------------|---------------|--------------|----------------
    Input I/O                             | 2             | 0            | 0
    Output I/O                            | 1             | 0            | 0
    Bidirectional I/O                     | 0             | 0            | 0
    Differential Input I/O Pairs          | 0             | 0            | 0
    Differential Output I/O Pairs         | 0             | 0            | 0
  • ARM SoC硬核,共1个,使用0个
  • D触发器,共4608个,使用87个,占用1.89%
  • 用户IO,共66个,使用3个,占用4.55%
  • 输入引脚2个,输出引脚1个

资源占用主要看D触发器的占用情况,只要不超过4608,整个工程就可以编译通过,如果超过最大值,工程会报错。

如果是已经编译完成的工程,编译报告文件存放在工程目录下:\LED_Blink\designer\impl1\led_driver_compile_log.rpt

推荐阅读


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

Microsemi Libero使用技巧——查看芯片资源占用情况的更多相关文章

  1. Microsemi Libero使用技巧——FPGA全局网络的设置

    前言 刚开始做Microsemi FPGA+SoC开发时,会用到几个ARM专用的IP Core,功能一复杂起来,就会遇到某些信号如rst_n不能分配到指定的引脚上的情况,IO类型为CLKBUF,并不是 ...

  2. Microsemi Libero使用技巧——使用FlashPro生成stp程序文件

    前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...

  3. Microsemi Libero使用技巧——使用命令行模式下载程序

    前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...

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

    前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...

  5. Microsemi Libero使用技巧——使用第三方编辑器Notepad++

    前言 与Xilinx的ISE和Altera的Quartus一样,Microsemi的编辑器也支持指定第三方编辑器. Microsemi自带的编辑器,没有自动补全功能,也不支持中文注释,非常不好用,为了 ...

  6. 在windows和linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等

    一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&quo ...

  7. Mac 下查看网络端口占用情况

    1.Mac 下查看网络端口占用情况 有的时候关闭了服务器,但是端口还是占用,解决的方法是 kill 掉占用该端口的进程. # 查看 8009 端口的占用情况 $ lsof -i:8009 可以看到,该 ...

  8. Linux:查看磁盘空间占用情况

    Linux:查看磁盘空间占用情况 工作中有时被分配的测试机空间不大,经常遇到磁盘空间占满的情况.排查过程如下: 一.首先使用df -h 命令查看磁盘剩余空间,通过以下图看出/目录下的磁盘空间已经被占满 ...

  9. Linux - 查看端口的占用情况、找出并杀死占用进程的方法

    目录 1 lsof查看端口的占用情况 1.1 命令使用示例 1.2 查看某一端口的占用情况 1.3 杀死某个端口的所有进程 2 netstat查看端口占用情况 2.1 命令使用示例 2.2 查看占用某 ...

随机推荐

  1. js如何衔接css3的多个@keyframes动画?

    css3特效动画,我们在编写页面中经常遇到,而且是在同一个div模块上有多个衔接的不同动画,css中,我们经常使用animation-delay (规定在动画开始之前的延迟)进行处理. 那么,下面分享 ...

  2. iptables filter表案例、iptables nat表应用 使用介绍

    第7周第4次课(5月10日) 课程内容: 10.15 iptables filter表案例10.16/10.17/10.18 iptables nat表应用 扩展1. iptables应用在一个网段 ...

  3. 前端js,如何在结构化与性能中做取舍。

    js发展中的问题 随着前端web技术的发展,js要解决的问题也变得越来越多,越来越复杂. 解决更复杂的问题,需要更好的结构. 解决更复杂的问题,也需要更好的性能. 结构的优化在一定程度上会牺牲性能,同 ...

  4. 使用SSH服务远程管理主机(使用密钥)

    使用ssh服务远程管理主机 SSH是建立在应用层和传输层基础上的安全协议,目的是要在非安全网络上提供安全的远程登录和其他安全网络服务. 通过SSH连接可以远程管理Linux等设备,默认linuxssh ...

  5. 数据挖掘算法(一)--K近邻算法 (KNN)

    数据挖掘算法学习笔记汇总 数据挖掘算法(一)–K近邻算法 (KNN) 数据挖掘算法(二)–决策树 数据挖掘算法(三)–logistic回归 算法简介 KNN算法的训练样本是多维特征空间向量,其中每个训 ...

  6. 记录我的 python 学习历程-Day05 字典/字典的嵌套

    一.字典的初识 为什么要有字典 字典与列表同属容器型数据类型,同样可以存储大量的数据,但是,列表的数据关联性不强,并且查询速度比较慢,只能按照顺序存储. 什么是字典 先说一下什么叫可变与不可变的数据类 ...

  7. [TimLinux] Django 中间件

    1. 定义 中间件是一个钩子框架,深入到django的请求/响应处理过程中.这是一个轻量.底层插件系统,目的是全局修改django的输入或输出.每一个中间件组件都是用来处理特定的功能.例如django ...

  8. 5分钟教你看大神操作keepalived服务

    第11章 高可用服务(keepalived)的配置 11.1 高可用服务的概念 11.1.1 高可用服务总体概念 为了解决单点故障 减轻服务器的压力 11.1.2 高可用keepalived的概念 为 ...

  9. 【Vuejs】351- 带你解析vue2.0的diff算法

    前言 vue2.0加入了virtual dom,有向react靠拢的意思.vue的diff位于patch.js文件中,该算法来源于snabbdom,复杂度为O(n).了解diff过程可以让我们更高效的 ...

  10. ruby 构建API接口流程代码

    来源:https://ruby-china.org/topics/25822 1.创建新项目 rails new api_demo 2.生成控制器: # 我们不需要生成资源文件 $ bundle ex ...