0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用高速NOR闪存配置FPGA

西西 来源:赛普拉斯 作者:Cliff Zitlaw 2019-02-21 17:01 次阅读

By Cliff Zitlaw, Cypress

作者:Cliff Zitlaw,赛普拉斯

NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得FPGA在工业通信和汽车ADAS(高级驾驶辅助系统)等应用中得到广泛采用。汽车场景中摄像头系统的快速启动时间要求就是很好的一个例子——车辆启动后后视图像在仪表板显示屏上的显示速度是最为突出的设计挑战。

上电后,FPGA立即加载存储于NOR器件中的配置比特流。传输完成后,FPGA转换为活动(已配置)状态。FPGA包括许多配置接口选项,通常包括并行NOR总线和串行外设接口(SPI)总线。支持这些总线的存储器在不同厂商产品之间总是存在微小的不兼容性,增添了采购多款存储器件的困难程度。

全新发布的JEDEC xSPI规范由各大主要NOR闪存厂商联合制定。新标准结束了数十年来NOR闪存厂商独立开发产品、各自为政的局面。虽然存在细微差别,但目前各厂商产品的核心JEDEC xSPI功能已完全相同。JEDEC xSPI规范对总线事务、命令和大量内部功能进行了标准化。结合高吞吐量这一性能,这些下一代闪存可实现全新的应用和功能。例如,赛普拉斯Semper NOR Flash系列符合JEDEC xSPI规范,并提供持续400MB /s读取传输速率,非常适合作为FPGA配置存储器。具体而言,凭借400MB/s的数据速率,容量为128MB(1Gb)的器件,其内容可在320ms内完成传输。

FPGA配置历史回顾

当FPGA首次面世时,可选择的配置存储器是并行EPROM或并行EEPROM产品。随着时间的推移,NOR闪存技术应运而生,同时因其系统内可重复编程性和高性价比而被广泛采用。在第二次革命性转折中,SPI存储器接口在大多数应用中取代了并行NOR接口。今天的SPI存储器产品具有高密度、小封装尺寸和高读取吞吐量,以及最重要的特点——更高效的低引脚数接口。

使用高速NOR闪存配置FPGA

图1 - 千兆位四路SPI(6引脚)和并行NOR(45引脚)接口

图1显示了千兆位SPI器件与千兆位并行NOR的引脚分配的对比。对于一个千兆位存储器,四路串行外设接口(QSPI)器件具有六引脚接口,而并行NOR器件则需要45个引脚。引脚数量的巨大差异导致QSPI器件作为首选配置接口而被广泛采用。QSPI接口允许在不改变器件占用空间的情况下更改密度。

FPGA配置速度

随着工艺节点缩小,FPGA器件得以继续增加可用的可编程逻辑模块数量,进而导致对更高密度和更快速度配置存储器的需求。现代FPGA在配置期间需要加载多达128MB的数据。这些高密度配置比特流需要更长的时间才能从NOR闪存器件传输到FPGA。配置接口不仅针对读取吞吐量进行了优化,还专注于促进不同NOR闪存制造商之间的互操作性。

SPI读取吞吐量

过去几年,从最初以x1模式运行的SPI接口开始,一直到以x4 DDR模式运行的现代QSPI产品,SPI读取吞吐量发生了显著增长。从表1可以看出,下一代闪存器件能够推动SPI总线性能实现又一次跃迁。

表1 - 闪存器件SPI读取吞吐量选项

现代SPI器件能够永久配置为固定的总线宽度和传输类型,可在上电时立即运行。FPGA须支持这一永久配置,以便在上电后立即启动配置过程。

又或者,SPI存储器可在x1模式下退出通电状态,从而允许主机系统(FPGA)查询存储器中的串行闪存可发现参数(SFDP)表中的特性。这一x1模式已成为多家存储器厂商支持的标准功能,并允许FPGA检索有关器件功能的关键信息。一旦检索到器件特性,就可以快速重新配置FPGA存储器控制器和SPI存储器器件,以获得最大的读取性能。

使用高速NOR闪存配置FPGA

图2 - 通电时使用串行闪存可发现参数(SFDP)表配置SPI总线功能

在选用可使用x1、x4或x8总线宽度以及SDR或DDR传输类型运行的下一代闪存设备时,使用集成SFDP表检索关键设备信息将格外重要。所选择的总线宽度和传输类型必须与FPGA上实现的总线接口基础设施保持一致。

双QSPI配置接口

为减少FPGA配置时间,许多现代FPGA允许将配置位流分区至两个QSPI器件(图3)。这两个QSPI器件以并行方式连接,其中位流的低半字节存储在“主”QSPI器件(QSPI_P)中,位流的高半字节存储在“辅助”QSPI器件(QSPI_S)中。这两个器件在加载位流时并行运行,从而有效地使读取数据传输速率提升一倍。

请注意,除共享SCK(串行时钟)线以外,接口在两个器件上基本上是独立的。之所以要共享SCK线,是为了在以并行方式(即同时)读取器件时实现时序偏差最小化。当使用相同目标地址执行相同操作时,可以一次仅对一个器件进行访问,也可以同时对两个器件进行访问。

使用高速NOR闪存配置FPGA

图3 - 双QSPI配置接口(11个引脚)允许配置位流在两个QSPI器件之间进行分区,从而有效地将读取数据传输速率提升一倍。

当大型FPGA器件需要以最快的方式传输大配置(即高密度)配置比特流时,这种11引脚双QSPI配置将具有非常大的优势。

闪存配置

下一代闪存采用x1(主要用于SFDP访问)、x4或x8 IO总线宽度运行,支持SDR或DDR格式传输数据,并且通过使用新的数据选通(Data Strobe)信号以促进高速传输。例如,使用11引脚接口的赛普拉斯Semper NOR闪存八进制配置(图4)。

使用高速NOR闪存配置FPGA

图4 - 低引脚数接口支持SDR或DDR格式的x1、x4或x8 IO总线宽度传输数据。图中显示的是采用11引脚接口的赛普拉斯Semper NOR闪存八进制配置。

这一新的数据通选必须结合到FPGA配置接口中,从而可利用下一代闪存器件的高吞吐量读取性能。数据选通与输出读取数据边缘对齐,其方式与低功耗DDR DRAM器件上的选通方式相同(图5)。数据选通“绘制”数据眼图,并允许FPGA以高时钟频率有效抓取数据。

使用高速NOR闪存配置FPGA

图5 - 具有数据选通功能的x8 DDR读取事务与输出读取数据边缘对齐,使FPGA能够以高时钟频率有效抓取数据。

支持连续读取操作是非常适用于FPGA配置的闪存功能之一。连续读取始于主机(MCU微控制器)或FPGA)置位CS#(CS片选引脚),然后发出读取命令,后跟目标地址。经过多次延迟周期,存储器从目标地址输出数据。如果主机继续切换时钟,则存储器将通过从下一个顺序地址输出数据来响应。只要时钟继续切换,存储器将继续从顺序地址输出数据。这种顺序读取功能可以允许FPGA配置单个读取事务。

AutoBoot(自动启动)是另一项有助于FPGA配置的功能。AutoBoot在通电复位期间从预先配置的目标地址执行自动读取,然后在第一次CS#置位时立即输出数据(图6)。此功能对需要简单配置机制的ASIC(专用芯片)器件也十分有用。一旦CS#解除置位,内存将返回其待命状态,并以正常方式处理后续操作。

使用高速NOR闪存配置FPGA

图6 - 运行中的AutoBoot读取功能(具有3个预热周期)

NOR 闪存器件的写入事务(图7)与标准SPI操作几乎完全相同,但有两点例外。首先,在整个事务期间必须将新的数据选通信号驱动为LOW(低电平)。其次,当配置为DDR操作时,数据被写为字(16b),而非传统SPI产品的字节写编程粒度。

使用高速NOR闪存配置FPGA

图7- NOR 闪存的写入事务需要在整个事务期间将数据选通信号驱动为LOW,并且在配置为DDR操作时将数据写为16位字。

下一代NOR闪存器件可提供满足大规模FPGA应用的高密度和随开即用要求所需的高吞吐量。各大NOR闪存制造厂商都参与了JEDEC xSPI规范的开发,为代工厂商提供了广泛的采购选择。JEDEC xSPI规范涵盖了上述八进制SPI接口以及HyperBus接口,两者均提供400MB/s的读取吞吐量,已实现的读取吞吐量远高于传统SPI产品。为利用高速基础设施,需要对FPGA SPI控制器进行修改。需要考虑的新功能包括DDR数据速率,用于数据抓取的新数据选通引脚和扩展的x8总线接口。此外,一些NOR闪存器件(例如赛普拉斯Semper NOR系列)允许在实施双QSPI配置架构时消除其中一个QSPI器件。在需要进行快速FPGA配置的情况下,以及在执行实时重新配置的FPGA应用中,下一代闪存所提供的性能将具有强大的优势。

关于作者:Cliff Zitlaw拥有长达36年的半导体存储器开发经验,重点关注可以实现在各类应用程序约束范围内优化内存性能总线接口。Cliff是Xicor微处理器串行存储器接口(EEPROM),美光科技(Micron)CellularRAM接口(PSRAM)和赛普拉斯Hyperbus接口(NOR和PSRAM)的发明者。 Cliff是49项与内存功能和用法相关的专利著作者或合著者。闲暇之余,Cliff喜欢烧烤,看电视,或在周六小睡片刻。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1592

    文章

    21209

    浏览量

    592183
  • NOR闪存
    +关注

    关注

    0

    文章

    24

    浏览量

    14500
  • 赛普拉斯
    +关注

    关注

    28

    文章

    391

    浏览量

    87323
收藏 人收藏

    评论

    相关推荐

    NOR闪存前景不妙,SPI NOR闪存困境获胜

    今年NOR闪存营业收入预计从2012年的34.8亿美元降到34.1亿美元。NAND闪存已经成为手机与平板电脑等移动产品所青睐的存储解决方案。甚至在NOR市场内部,两种
    发表于 04-10 16:15 2668次阅读

    EEPROM和NOR闪存之间的差异

    大家好,问候。我一直在使用EEPROM在我的工作生活的印象中EEPROM是用来存储数据不经常使用。如配置参数等。最近,我已经被权力要求,以评估替代NAND闪存,因此,我已经开始看NOR闪存
    发表于 02-14 13:28

    如何连接FPGANOR并行闪存的2个实习引脚?

    你好,我们有一个斯巴达6板。它包含2个内存(闪存)和一个BPI Nor闪存。现在它从2个闪存中启动。但我们想要禁用这两个闪存并编程我们的
    发表于 06-24 08:24

    高速NOR闪存怎么配置FPGA

    NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    发表于 08-02 08:40

    汽车应用怎么选择NOR闪存

    在过去几年里,汽车应用对 NOR 闪存的需求不断增加。NOR 闪存最初应用在信息娱乐和引擎控制等方面。然而,随着汽车电脑化进程的步伐不断加快,NOR
    发表于 08-09 06:31

    如何使用高速NOR闪存配置FPGA

    NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    发表于 10-09 08:26

    使用高速SPI Nor Flash的FPGA配置

    NOR闪存广泛用作FPGA配置设备。FPGA在工业和通信及汽车ADAS应用中的使用取决于NOR
    发表于 09-18 15:18

    如何使用高速NOR闪存配置FPGA

    NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    发表于 05-26 07:00

    如何使用高速NOR闪存FPGA进行配置

    FPGA配置的功能有哪些?FPGA配置速度怎样?如何使用高速NOR
    发表于 08-03 06:51

    FPGA的接口配置如何进行配置

    NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    发表于 09-03 07:00

    NOR闪存/NAND闪存是什么意思

    NOR闪存/NAND闪存是什么意思 NAND闪存芯片和NOR闪存芯片的不同主要表现在: 1
    发表于 03-24 16:34 8227次阅读

    如何使用高速NOR闪存配置FPGA

    NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    的头像 发表于 02-23 10:43 3025次阅读
    如何使用<b class='flag-5'>高速</b><b class='flag-5'>NOR</b><b class='flag-5'>闪存</b><b class='flag-5'>配置</b><b class='flag-5'>FPGA</b>

    串行SPI NOR闪存与并行NOR闪存之间的对比

    NOR闪存由于其可靠的数据存储而已在嵌入式设备中广泛使用了很长时间。对于某些低功耗应用,串行SPI NOR闪存变得比并行NOR
    发表于 03-03 16:36 1622次阅读

    使用高速NOR闪存配置FPGA

    点击上方 蓝字 关注我们 NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得
    的头像 发表于 08-15 13:55 339次阅读
    使用<b class='flag-5'>高速</b><b class='flag-5'>NOR</b><b class='flag-5'>闪存</b><b class='flag-5'>配置</b><b class='flag-5'>FPGA</b>

    使用STARTUPE3对并行NOR闪存进行配置后访问的UltraScale FPGA应用说明

    电子发烧友网站提供《使用STARTUPE3对并行NOR闪存进行配置后访问的UltraScale FPGA应用说明.pdf》资料免费下载
    发表于 09-14 15:18 1次下载
    使用STARTUPE3对并行<b class='flag-5'>NOR</b><b class='flag-5'>闪存</b>进行<b class='flag-5'>配置</b>后访问的UltraScale <b class='flag-5'>FPGA</b>应用说明