痞子衡嵌入式:MCUBootUtility v3.4发布,支持串行NAND
--
痞子衡维护的 NXP-MCUBootUtility 工具距离上一个大版本(v3.3.0)发布过去 4 个多月了,这一次痞子衡为大家带来了版本升级 v3.4.0,这个版本主要有几个非常重要的更新需要跟大家特别说明一下。
一、v3.4更新记录
Features:
1. 支持下载应用程序进主动启动设备 - FlexSPI NAND接口Flash
2. 支持对启动设备进行全擦操作
Improvements:
1. 支持SDK 2.10及其之后生成的可启动文件作为源文件
2. 添加更多的串行NOR Flash模型
二、几个不可忽视的更新
2.1 支持下载串行NAND
i.MXRT 系列支持的启动设备种类非常丰富,工具已经支持了大部分类型的启动设备,这次新增支持的串行 NAND 是所剩不多的未支持设备类型了。
NAND 相比 NOR 有着容量大、价格便宜的优势,但是因为天然不支持 XiP,所以在 i.MXRT 项目上用得并不广泛。此外 NAND 还分 Raw NAND 和 串行 NAND,前者问世时间更早一些,在 Linux 世界里有一定群众基础,因此即使客户选 NAND 作为启动设备,一般也是 Raw NAND 居多。
为何痞子衡这次花费精力去升级工具支持串行 NAND 呢?当然是来生意了,最近有国外客户选择了用串行 NAND 作为启动设备,但是恩智浦这边相关资料较少,想要搞定启动不太容易,所以痞子衡只能先顶上了,让工具把串行 NAND 第一时间支持起来。
2.2 支持SDK 2.10.x例程
工具设计之初本打算仅支持裸应用程序,即用户只需要关心应用程序本身,不用管 i.MXRT 启动头(FDCB, IVT, BD等),工具会自动添加合适的启动头,但恩智浦 SDK 里的示例例程包含了启动头(见工程选项里的 XIP_BOOT_HEADER_ENABLE=1),所以工具(从 v1.1 版本开始)不得不要去支持可启动应用程序源文件。
工具 v1.1 版本发布之时,当时恩智浦 SDK 版本才 2.3.x,三年过去了,目前 SDK 版本已经升级到了 2.10.x。从 SDK 2.10.x 版本开始,启动头设定有了一些变化,IVT 里的 entry 值从中断向量表首地址变成了复位函数地址,这个变化对工具产生了影响,因此工具需要升级支持 IVT.entry 是复位函数地址的可启动程序。
- Note: 当前功能有一个限制,就是假定应用程序中断向量表是以 0x400 对齐的,因为工具需要根据这个假定来从源程序文件中寻找出中断向量表地址。
2.3 更多的NOR Flash模型
NOR Flash 模型设计是工具的一大特色,之前版本没有把支持的所有厂商型号都罗列出来,只给了一些代表型号。如果模型里没有客户选择的 Flash 型号,很多客户就不知道该选哪个模型了(其实选相近类型即可,不一定需要厂商一致)。这次升级直接就一步到位了,把该加上的模型全部加上,如果有遗漏,欢迎大家给我留言或者提 issue。
- Note: 模型设计的前提是这些 Flash 里均包含 SFDP,鉴于有些厂商手册里标称包含 SFDP,实际却没有的情况,需要选择 Complete FDCB 来支持。
2.4 支持Flash全擦操作
工具本身也是一个基于 i.MXRT 的通用 Flash 编程器,我们可以对连接到 i.MXRT 的 Flash 进行任意的读写擦,之前版本的擦除操作主要通过 Sector Erase 和 Block Erase 命令组合实现的,如果客户想将 Flash 全部擦除,花费时间较久。为了提高全擦效率,这次新增了一个 Mass Erase 按钮,即调用 Chip Erase 命令来实现,耗时缩短不少。
至此,这次更新的主要特性便介绍完了。MCUBootUtility项目地址如下。虽然当前版本(v3.4.0)功能已经非常完备,你还是可以在此基础上再添加自己想要的功能。如此神器,还不快快去下载试用?
欢迎订阅
文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。
痞子衡嵌入式:MCUBootUtility v3.4发布,支持串行NAND的更多相关文章
- 痞子衡嵌入式:揭秘i.MXRT1170上串行NOR Flash双程序可交替启动设计
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170上串行NOR Flash双程序可交替启动设计. 在上一篇文章 <i.MXRT1060/1010上串行NOR F ...
- 痞子衡嵌入式:测一测i.MXRT1170 Raw NAND启动时间(从POR到进App的Reset_Handler)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RT1170 Raw NAND启动时间. 关于i.MXRT1170这颗划时代的MCU,痞子衡去年10月在其刚发布的时候, ...
- 痞子衡嵌入式:导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之SFDP
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之SFDP. i.MXRT系列MCU发布已两年多了,基于i.MXR ...
- 痞子衡嵌入式:借助Serial Plot软件测量i.MXRT系列FlexSPI驱动Flash页编程执行时间
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT系列FlexSPI驱动Flash页编程执行时间. 痞子衡之前写过一篇文章 <串行NOR Flash的页编程模式对于量产 ...
- 痞子衡嵌入式:i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad. 最近碰到一个客户,他们在 i.MX ...
- 痞子衡嵌入式:MCUBootUtility v3.0发布,开始支持LPC, Kinetis啦
-- 痞子衡维护的NXP-MCUBootUtility工具距离上一个版本(v2.4.0)发布过去2个半月了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,NXP-MCUBootUtil ...
- 痞子衡嵌入式:MCUBootUtility v3.5发布,支持串行NOR的ECC及双程序启动
-- 痞子衡维护的 NXP-MCUBootUtility 工具距离上一个大版本(v3.4.0)发布过去半年了,这一次痞子衡为大家带来了版本升级 v3.5.0,这个版本主要有几个非常重要的更新需要跟大家 ...
- 痞子衡嵌入式:MCUBootUtility v3.3发布,可配合SBL项目使用
-- 痞子衡维护的NXP-MCUBootUtility工具距离上一个大版本(v3.0.0)发布过去4个多月了,期间痞子衡其实断断续续做个几个小版本更新,这一次痞子衡为大家带来了稳定版本v3.3.0,顺 ...
- 痞子衡嵌入式:MCUBootFlasher v3.0发布,为真实的产线操作场景而生
-- 痞子衡维护的NXP-MCUBootFlasher工具(以前叫RT-Flash)距离上一个版本(v2.0.0)发布过去一年半以上了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,N ...
随机推荐
- NOIP 模拟 $13\; \text{玄学题}$
题解 题如其名,是挺玄学的. 我们发现每个值是 \(-1\) 还是 \(1\) 只与它的次数是奇是偶有关,而 \(\sum_j^{j\le m}d(i×j)\) 又只与其中有多少个奇数有关 对于 \( ...
- NOIP 模拟 9 考试总结
T1 一道推规律的题,没想出来,暴力打得常数还太大了,挂了不少 题解 T2 这是一道二分题,很巧妙,但是对于想我一样懒得人,那个数据结构就水过去了 (裸的分块加强大的卡长和合适的块的大小可以卡过去) ...
- Git进行clone的时候,报错:remote: HTTP Basic: Access denied fatal: Authentication failed for ...
先执行: git config --system --unset credential.helper 原因:用户名或者密码错: 会提示让重新输入用户名和密码,输入正确的用户名和密码即可! 这样以后发现 ...
- linux 系统文件记录
proc系列 /proc/diskstats # 记录磁盘相关信息 http://ykrocku.github.io/blog/2014/04/11/diskstats/
- DLL-创建DLL
动态链接库的创建 fangyukuan 2010.6.20 编写DLL时的函数与一般的函数方法基本一样.但要对库中的函数进行必要的声明,以说明哪些函数是可以导出的,哪些函数是不可以导出的. 把DLL中 ...
- ProjectEuler 008题
题目: The four adjacent digits in the 1000-digit number that have the greatest product are 9 9 8 9 = 5 ...
- 虚拟dom?diff算法?key?Vue原理的核心三问?打包教你搞定。
为什么需要虚拟DOM 先介绍浏览器加载一个HTML文件需要做哪些事,帮助我们理解为什么我们需要虚拟DOM.webkit引擎的处理流程,如下图所示: 所有浏览器的引擎工作流程都差不多,如上图大致分5步: ...
- 基于源码编译的lnmp架构实现论坛的搭建及memcache的应用
系统环境: RHEL6 x86-64 selinux and iptables disabled LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构 Linux是一类 ...
- Charles-模拟弱网环境
在做弱网测试时,经常需要模拟各种网络环境,Charles恰好也提供了网络限制的功能,我们可以在"Proxy->Throttle Settings"路径下找到它,如下图所示. ...
- Pytest 系列(28)- 参数化 parametrize + @allure.title() 动态生成标题
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 参数化 @pytest.ma ...