Microsemi Libero使用技巧——查看芯片资源占用情况
前言
与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

推荐阅读
- Microsemi Libero系列教程(一)——Libero开发环境介绍、下载、安装与注册
- Microsemi Libero系列教程(二)——新建点灯工程
- 东芝开发板驱动OLED模块显示LOGO图片
- 使用系统定时器SysTick实现精确延时微秒和毫秒函数
- 东芝半导体最新ARM开发板——TT_M3HQ开箱评测
- 详解串行通信协议及其FPGA实现
- 我的个人博客:www.wangchaochao.top
- 我的公众号:mcu149

Microsemi Libero使用技巧——查看芯片资源占用情况的更多相关文章
- Microsemi Libero使用技巧——FPGA全局网络的设置
前言 刚开始做Microsemi FPGA+SoC开发时,会用到几个ARM专用的IP Core,功能一复杂起来,就会遇到某些信号如rst_n不能分配到指定的引脚上的情况,IO类型为CLKBUF,并不是 ...
- Microsemi Libero使用技巧——使用FlashPro生成stp程序文件
前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...
- Microsemi Libero使用技巧——使用命令行模式下载程序
前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...
- Microsemi Libero使用技巧——使用FlashPro单独下载程序
前言 在工程代码编译完成之后,如果需要给某个芯片下载程序时,或者是工厂量产烧录程序时,我们不需要把整个工程文件给别人,而只需要把生成的下载文件给别人,然后使用FlashPro就可以单独下载程序文件了. ...
- Microsemi Libero使用技巧——使用第三方编辑器Notepad++
前言 与Xilinx的ISE和Altera的Quartus一样,Microsemi的编辑器也支持指定第三方编辑器. Microsemi自带的编辑器,没有自动补全功能,也不支持中文注释,非常不好用,为了 ...
- 在windows和linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等
一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&quo ...
- Mac 下查看网络端口占用情况
1.Mac 下查看网络端口占用情况 有的时候关闭了服务器,但是端口还是占用,解决的方法是 kill 掉占用该端口的进程. # 查看 8009 端口的占用情况 $ lsof -i:8009 可以看到,该 ...
- Linux:查看磁盘空间占用情况
Linux:查看磁盘空间占用情况 工作中有时被分配的测试机空间不大,经常遇到磁盘空间占满的情况.排查过程如下: 一.首先使用df -h 命令查看磁盘剩余空间,通过以下图看出/目录下的磁盘空间已经被占满 ...
- Linux - 查看端口的占用情况、找出并杀死占用进程的方法
目录 1 lsof查看端口的占用情况 1.1 命令使用示例 1.2 查看某一端口的占用情况 1.3 杀死某个端口的所有进程 2 netstat查看端口占用情况 2.1 命令使用示例 2.2 查看占用某 ...
随机推荐
- js如何衔接css3的多个@keyframes动画?
css3特效动画,我们在编写页面中经常遇到,而且是在同一个div模块上有多个衔接的不同动画,css中,我们经常使用animation-delay (规定在动画开始之前的延迟)进行处理. 那么,下面分享 ...
- iptables filter表案例、iptables nat表应用 使用介绍
第7周第4次课(5月10日) 课程内容: 10.15 iptables filter表案例10.16/10.17/10.18 iptables nat表应用 扩展1. iptables应用在一个网段 ...
- 前端js,如何在结构化与性能中做取舍。
js发展中的问题 随着前端web技术的发展,js要解决的问题也变得越来越多,越来越复杂. 解决更复杂的问题,需要更好的结构. 解决更复杂的问题,也需要更好的性能. 结构的优化在一定程度上会牺牲性能,同 ...
- 使用SSH服务远程管理主机(使用密钥)
使用ssh服务远程管理主机 SSH是建立在应用层和传输层基础上的安全协议,目的是要在非安全网络上提供安全的远程登录和其他安全网络服务. 通过SSH连接可以远程管理Linux等设备,默认linuxssh ...
- 数据挖掘算法(一)--K近邻算法 (KNN)
数据挖掘算法学习笔记汇总 数据挖掘算法(一)–K近邻算法 (KNN) 数据挖掘算法(二)–决策树 数据挖掘算法(三)–logistic回归 算法简介 KNN算法的训练样本是多维特征空间向量,其中每个训 ...
- 记录我的 python 学习历程-Day05 字典/字典的嵌套
一.字典的初识 为什么要有字典 字典与列表同属容器型数据类型,同样可以存储大量的数据,但是,列表的数据关联性不强,并且查询速度比较慢,只能按照顺序存储. 什么是字典 先说一下什么叫可变与不可变的数据类 ...
- [TimLinux] Django 中间件
1. 定义 中间件是一个钩子框架,深入到django的请求/响应处理过程中.这是一个轻量.底层插件系统,目的是全局修改django的输入或输出.每一个中间件组件都是用来处理特定的功能.例如django ...
- 5分钟教你看大神操作keepalived服务
第11章 高可用服务(keepalived)的配置 11.1 高可用服务的概念 11.1.1 高可用服务总体概念 为了解决单点故障 减轻服务器的压力 11.1.2 高可用keepalived的概念 为 ...
- 【Vuejs】351- 带你解析vue2.0的diff算法
前言 vue2.0加入了virtual dom,有向react靠拢的意思.vue的diff位于patch.js文件中,该算法来源于snabbdom,复杂度为O(n).了解diff过程可以让我们更高效的 ...
- ruby 构建API接口流程代码
来源:https://ruby-china.org/topics/25822 1.创建新项目 rails new api_demo 2.生成控制器: # 我们不需要生成资源文件 $ bundle ex ...