关闭
关闭
首页 > 嵌入式硬件 > 存储技术

如何从Flash启动嵌入式系统

本文引用地址: http://embed.21ic.com/hardware/storage/201712/49920.html

以Arty A7开发板为例手把手教你实现

在诸多关于MicroBlaze软核处理器的例程中,往往都是使用JTAG下载然后借助SDK执行程序代码。然而无论是在项目展示还是实际应用中,我们都希望我们的设计可以即插即用,免去重复烧写的麻烦和必须使用SDK运行程序的限制。

事实上,为了部署一个真实的系统,需要在没有任何人为操作的情况下从非易失性存储器中启动MicroBlaze处理器并加载程序代码。

本篇文章,我们就围绕这个话题,以Digilent Arty Artix-7开发板为例,教你如何在板载的QSPI Flash中存储比特流配置文件和应用程序。

QSPI有两个主要作用:

配置Artix FPGA

存储应用软件

对于第一个功能,我们在Vivado设计中不需要包含QSPI接口。我们只需要在Vivado配置中更新对QSPI的设置,提供QSPI Flash存储器与FPGA配置管脚的连接。然而,一旦FPGA配置完成并调用MicroBlaze软核处理器,我们则需要在设计中引入与QSPI Flash通信的接口。这个新添加的接口允许引导程序(bootloader)从QSPI Flash存储器中复制应用程序到Arty实际执行的DDR SDRAM存储介质中。

当然,这会引起一个问题,即MicroBlaze bootloader(引导程序)从何而来?

开发bootloader(引导程序)的流程图如下所示:

 

1.jpg

我们的目标是创建一个MCS镜像,它包含了FPGA比特流和应用软件文件,我们要将它烧写到QSPI Flash中。为了实现这个方案我们需要在Vivado和SDK中执行以下步骤:

在已经存在的Vivado MicroBlaze设计中引入(添加)一个QSPI接口。

在Vivado中编辑器件设置,使用Master SPI_4来配置器件,并且将bit文件压缩,构建完成后将应用导出到SDK。

 

2.jpg

在SDK中,基于导出的硬件设计创建一个新的应用工程。在工程创建对话框,选择SREC SPI Bootloader模板。这个选择会创建一个SREC bootloader应用,它会从QSPI Flash中加载主应用程序代码。在构建bootloader ELF之前,我们首先要为应用软件定义对于QSPI基址的地址偏移,在这个示例中为0x600000。我们在blconfig.h中定义这个偏移量。我们还需要更新SREC Bootloader BSP来鉴别正确的串口Flash存储器件。因此重新配置BSP。使用的系列标识号在BSP libsrc目录下的xilisf.h中定义。对于这个应用我们选择类型5,因为Arty板卡使用Micron QSPI器件,它的标识号即为类型5。

 

3.jpg

现在我们在SDK中创建第二个应用工程。这也是我们将使用bootloader加载的应用程序。在这个应用中我们创建了一个简单的“hello world”工程,确保在linker文件中这个程序从DDR SDRAM开始运行。为了创建MCS文件,我们需要应用程序为S-record格式。这个格式以ASCII格式存储二进制信息。(这个格式已经有40年的历史,最初是为8位Motorola 6800微处理器而开发的。)我们可以使用SDK将生成的ELF转换为S-record格式。为了在SDK中生成S-record文件,我们打开bash shell窗口,切换到ELF所在的目录然后输入如下命令:

cmd /c mb-objcopy -O srec .elf .srec

创建好bootloader ELF文件后,现在我们要在Vivado内将比特流(bitstream)文件与bootloader ELF文件合并。这个步骤允许bootloader被加载到MicroBlaze处理器的本地存储空间,并且按照配置运行。因为这个存储空间很小,所以bootloader应用也需要很小才可以。如果你正遇到减小软件应用大小的问题,不妨在增加本地存储内存之前考虑使用编译器优化。

 

4.jpg

创建好bit文件和S-record文件后,我们使用Vivado硬件管理器来增加配置存储器。

 

5.jpg

最后一步是生成统一的MCS文件,包含合并的bitstream(比特流)文件和应用软件。当生成这个文件时,我们需要记住加载应用程序时使用与SREC bootloader相同的偏移量。

 

6.jpg

一旦这个文件构建完成并烧写到QSPI存储中,我们就可以进行测试查看MCS文件的工作情况。将Arty板卡与PC终端建立连接然后按下板卡上的复位(reset)按钮。几秒钟后你就会看到Arty板卡上的“done”LED灯亮起,然后在终端窗口中看到SREC bootloader的执行结果。报告应该显示S-record文件在程序执行前已经从QSPI加载到DDR SDRAM中了。

到这里,我们就有了一个可以部署到我们设计中的MicroBlaze工作系统了。

换一批

延伸阅读

[行业资讯] 中国发改委出手,芯片“超级周期”还能存在多久

中国发改委出手,芯片“超级周期”还能存在多久

中国经济监管机构密切关注手机存储芯片近期价格飙升势头,或将调查可能存在的公司价格操纵行为。 ......

关键字:手机存储 芯片 三星电子

[行业资讯] 紫光现在并没有能力生产DDR4内存

紫光现在并没有能力生产DDR4内存

过去的周末似乎传来了好消息,有网友曝光了紫光生产的DDR4内存,单条4GB,一时间群情激越,仿佛让人看到了内存大降价的希望,不过真相很残酷,这不光是个旧闻,实际上紫光现在并没有能力生产DDR4内存。......

关键字:紫光 DDR4 存储

[行业资讯] SK海力士参与使东芝芯片业务出售再现波折?

SK海力士参与使东芝芯片业务出售再现波折?

知情人士称,中国已经启动了对东芝公司出售存储芯片业务的审查,商务部反垄断官员对SK海力士公司在这笔交易中扮演的角色感到担心。 ......

关键字:东芝 SK海力 存储芯片

[行业资讯] 不想退市,东芝要把电视业务扔了?

不想退市,东芝要把电视业务扔了?

据报道,正在经营重组的东芝公司9日就业绩持续低迷的电脑和电视业务表示,将把退出业务也纳入考虑范围进行彻底调整。为了避免连续两年资不抵债造成摘牌退市的局面,东芝也正在探讨增强主体资本结构,与主要交易银行启动了协调。首席财务官(CFO)平田政善......

关键字:东芝 存储器

[行业资讯] 因出售芯片业务 东芝预计全年亏损

因出售芯片业务 东芝预计全年亏损

东芝预测截至明年3月底的会计年度亏损1100亿日元,之前的预测为盈利2300亿。东芝维持全年的营业利润和营收预测不变,称修改预测是因为分拆芯片业务造成的3400亿日元的税项影响,之前的预测没有包含这个项目。 ......

关键字:东芝 存储器

[新鲜事] Intel 3D XPoint闪存终于揭秘了:20nm制程工艺

Intel 3D XPoint闪存终于揭秘了:20nm制程工艺

Intel、美光发布3D XPoint闪存已经一年多了,号称性能、可靠性是NAND闪存的1000倍,容量密度是后者10倍,各种黑科技秒杀当前的闪存水平。从去年底开始有少量基于3D XPoint闪存的Optane硬盘问世,消费级容量是16/3......

关键字:Intel 3D XPoint闪存 20nm

[趣科技] 美国旧金山路上又现送餐机器人,还在测试中...

美国旧金山路上又现送餐机器人,还在测试中...

自动外卖行业的火热,送餐也跟着成为了热门行业,不少快递员都改行当了送餐员,然而这并不是长久之计。于是,国外有些企业将目光瞄准了机器人。近日消息,据国外媒体报道,继此前Starship Technologies公司的送餐机器......

关键字:外卖 机器人 送餐机器人

[新鲜事] 最新研究表明,太阳系第九行星可能真的存在!

最新研究表明,太阳系第九行星可能真的存在!

今年6月,研究人员发表了一项富有争议的研究报告,声称神秘的太阳系第九行星根本不存在!这项研究是基于为期4年的勘测分析得出的,目前,科学家认为,之前的观测偏差是该“错误论断”的根源所在,最新一项研究推翻了之前的观点,认为太阳系内可能潜在着第九......

关键字:太阳系 海王星 第九行星
条评论

我 要 评 论

网友评论

大家都爱看

  • 华为的优势,就是自家的各种自研芯片

    CPU即中央处理器,是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。它的功能主要是解释计算机指令以及处理计算机软件中的数据。

    2017-08-16
  • 你不知道Ryzen芯片有多火?来看看AMD的股票吧

    据外媒报道,美银美林认为,AMD最新的Ryzen芯片可能会引发一波销售浪潮,进而推动该股继续上涨。它认为AMD股票还有40%以上的上涨空间。

    2017-08-16
  • 国产芯片:厚积薄发,强势崛起

    关于国产芯片,是近几年才有崛起的势头,可是在几年之前,国产芯片还处于“沉睡”的状态,尤其是手机芯片,几乎大部分都依赖进口,而且国外的市场几乎被高通和联发科所垄断,也就展讯还在市场边…

    2017-08-16
  • 为了数据安全 大疆无人机增加隐私飞行功能

    大疆周一表示,在美国陆军因为“网络缺陷”而要求其成员停用大疆无人机后,这家中国无人机制造商将加强无人机的数据安全性。 大疆政策和法务副总裁布伦丹&middot…

    2017-08-15
  • Intel代工 展讯发布14nm SC9853I手机SoC

    SC9853I采用的Intel的14nm FinFET制程,架构为8核64位Airmont架构,主频1.8GHz,GPU为Mali-T820 MP2,号称面向799~1299元档次的手机。…

    2017-08-15