SPI-Flash是什么?使用注意事项及常见问题
一.概念:
SPI:serial peripheral interface
串行接口设备,spi flash 就是通过串行的接口进行操作的flash存储设备
flash按照内部存储结构不同,分为两种:nor flash和nand flash。这里spi flash 属于 nor flash!
spi flash 读写较慢,次数有限制,一般用于不经常更改的存储。
早期Norflash的接口是parallel的形式,即把数据线和地址线并排与IC的管脚连接。但是后来发现不同容量的Norflash不能硬件上兼容(数据线和地址线的数量不一样),并且封装比较大,占用了较大的PCB板位置,所以后来逐渐被SPI(串行接口)Norflash所取代。同时不同容量的SPI Norflash管脚也兼容封装也更小。,至于现在很多人说起NOR flash直接都以SPI flash来代称。
二、SPI FLASH读写介绍
对flash芯片的操作,一般包括对flash芯片的擦除,编程和读取,各大厂商的SPI flash芯片都大同小异,操作命令基本是没什么变化的,当我们拿到一款芯片,要特别注意芯片的容量,操作分区等。
其实,无论是对芯片的擦除,编程还是读取操作,我们大致可以按照以下的套路来:写命令---写地址---写(读)数据。正如以下的时序图一样清晰明了,我们先把片选信号拉低,再依次写指令,地址和数据,就可以对FLASH芯片进行操作。
掌握以上方法,就可以轻松操作SPI flash芯片了,当然,对时序这种底层的操作,还需要不断学习和积累,不论是用FPGA还是MCU,最终都是为了产生时序信号,只要静下来认真理解了它,一切问题就迎刃而解了。
三.注意事项
1.不同的SPI FLASH芯片可能会提供的擦除方式:扇区擦除(4KBytes),半块擦除(32KBytes),块擦除(64KBytes),片擦除。
2.不同的SPI FLASH芯片可能会提供的编程方式(也就是写数据):页编程(256Bytes),扇区编程(4KBytes)。
3.SPI FLASH如果擦除过,在往里面写0xFF这样的数据意义不大,因为它的特性就是擦除后数据就是0xFF。
4.写入flash时,只能把数据(bit)从1该为0。
5.传统的EEPROM的特点就是可以随机访问和修改任何一个字节,可以往每个bit中写入0或1。而写入flash时,只能把数据(bit)从1该为0。但是传统的EEPROM容量因成本的缘故收到限制,绝少有超过有512K的。
6.Nor Flash容量相对小,成本高,基本没坏块,数据线和地址线分开,可以实现随机寻址,读取任何一个字节,擦除任然要按块来擦。NAND FLASH容量大,成本低,坏块经常出现,但可以标记坏块,使软件跳过,数据线和地址线复用,按块擦除按页读取。
四、项目实操中的问题
项目中需要用到SPI flash,在使用这个4MB 的SPI flash中出了三个问题让印象深刻,特记录下来以作提醒
问题1:我们知道SPI flash也分主从模式,一般master都是有MCU等器件担当的,而slave有SPI器件担任,笔者的这个小系统同样如此。
并且MCU是自带有SPI controler,接线方式依然是四线解法,SCK,CS,DO,DI,在看手册的过程因为自己的不注意,看到描述是“user can
decide the SPICS configuration in the master mode,if P_IO_Ctrl[10] set 1, the IOA[12] as GPIO function, if P_IO_Ctrl[10] set 0, the IOA[12] as SPICS hardware function” 我当时没有好好体会这句话的意思,简单的认为我在使用SPI flash之前就k肯定需要把P_IO_Ctrl[10]设置为 0, 其实这是错误的认识。
因为现在是通过MCU对slave SPI器件操作,首先肯定是需要MCU端来选中SPI器件,从master角度来讲,只需要一个GPIO信号线接到slave的CS端,同时输出低电平就相当了选中了这个slave了,之所以如此说法是因为这是从slave角度来说的,相当于MCU现在也作为一个slave,另一个MCU控制这个slave,则这时候SPI 初始化时就需要把 P_IO_Ctrl[10] set 0
问题2:需要一个烧录器向SPI flash中烧写内容,用的是西立特公司的superPro,但烧录步骤错误了,忘记了在编程之前必须要erase,
了解了一下,好像是和nor flash一样的介质,擦除会把所有bit置1,在编程的时候根据需要只可以把相应位置0.
问题3:在使用MCU上一个SPI 控制器接口接SPI flash时,没有交叉连接,即MCU 的DI应该接SPI 的DO,MCU 的DO应该接SPI 的DI。
聚焦NOR Flash芯片研发,「恒烁半导体」推出50nm高速低功耗产品
电子终端产品因内部指令执行、系统数据交换等功能需要,必需配置相应容量的代码存储器,而NOR Flash芯片是其执行此功能的重要元器件。NOR Flash是中低容量Flash(闪存)芯片的主要产品(1Mb-1Gb)。
近年来,NOR Flash芯片在手机、PC、机顶盒、网络设备及物联网设备、AMOLED、TDDI、汽车电子、TWS耳机等领域的应用也越来越广。另外,国际存储巨头纷纷淡出中低容量NOR Flash市场,国内企业也迎来新一轮发展机遇。近期,36氪接触到了一家以NOR Flash为主要产品的芯片企业「恒烁半导体」。
恒烁半导体成立于2015年,是一家致力于设计、研发和生产销售先进半导体芯片、嵌入式闪存器和基于闪存技术存算一体AI芯片的IC设计高新技术企业。公司主要产品包括SPI NOR Flash,MCU,SPI NAND Flash等,其中,NOR Flash主要应用于可穿戴设备、智能音响、安防监控、物联网IoT、泛在电力物联网、汽车电子、消费电子及工业等领域,历史累计出货量超10亿颗。
具体来说,恒烁半导体的主要有两条主要NOR Flash闪存和MCU/存算一体AI两条业务线。NOR Flash方面,恒烁半导体在2016年即实现了量产销售,向全球客户提供通用SPI接口的NOR Flash。2020年4月公司量产了50nm制程128Mb的高速低功耗的NOR Flash存储芯片。
“这是目前国内制程最先进的NOR Flash芯片,50nm制程可减少20%-30%的芯片尺寸,让芯片可以更好地TWS模块和可穿戴产品的要求。”恒烁半导体创始人吕向东告诉36氪。
目前行业内主流NOR Flash产品的工艺节点仍为65nm,领先厂家也均在制程上尝试突破,继华邦推出了58nm系列产品后,2019年,旺宏与兆易创新推出了55nm系列产品。吕向东还透露,恒烁半导体公司之后将陆续在中高容量NOR Flash产品上全面切入50nm或更先进制程。
能做到50nm制程工艺生产芯片,得益于恒烁团队丰富的NOR Flash芯片设计技术经验,在对NOR Flash电路进行了设计优化的同时,还利用新的算法来保证芯片的可靠性,使得芯片可以在缩小单位存储单元面积的同时降低了功耗,也获得了更快的速度。
《2019年物联网行业市场研究报告》报告显示,2019-2022年中国物联网市场复合增长率为9%左右;预计到2022年,中国物联网产业规模将超过2万亿元,中国物联网连接规模将达70亿。
围绕物联网产品应用,恒烁半导体开发了可以满足物联网领域的连接性、安全性、低功耗要求的MCU产品。目前,公司的55nm制程的32位MCU产品已经在2020年4月实现销售,预计全年MCU可贡献千万级收入。
此外,基于NOR Flash的核心技术以及物联网对于产品低能耗等多方面要求,恒烁也正在开发可以直接利用存储器进行运算的存算一体的AI芯片,目前,已经完成了第一款验证芯片的开发,实现视觉、语音和心电图检测等多种AI算法的AI 推理运算。
问及公司未来规划,吕向东告诉36氪,未来恒烁仍将聚焦在Flash这一细分方向上,以物联网为核心目标市场,从制程工艺、容量、应用场景的多方面丰富公司产品线,同时在技术上不断迭代,进一步降低产品功耗、优化性能、降低成本。
团队方面,公司创始人兼CEO吕向东有超25年的存储器设计、产品、管理、市场和销售经验曾在Spansion、美光、英飞凌、TI和NEC存储器部门任技术和高管职务。同时也是一名连续创业者,曾创立隆智半导体,该公司于2012年被美国Spansion公司收购。
据吕向东介绍,恒烁半导体2020年销售和盈利业绩均有大幅提升,销售额和出货量2020年上半年比去年同期增加近100%。目前公司正在积努力的开拓新市场和新产品,为明年冲击科创版打下坚实的基础。
相关问答
SPI 闪存,什么是 SPI 闪存?1、意思是SPIFlash存储器2、SPIFlash(即SPINorFlash)是NorFlash的一种,NORFlash是一种非易失闪存技术,是Intel创建的。1、意思是SPI...
boss芯片对应的哪个芯片?目前电脑主板上使用的bios芯片采用SPINorFlash存储器芯片。SPIFlash(即SPINorFlash)是NorFlash的一种,NORFlash是一种非易失闪存技术,是I...
麻烦哪位老司机,能问一下!!服务专业的 spi 培训优质服务, spi ...[回答]1、SPIFlash(即SPINorFlash)是NorFlash的一种;2、NORFlash根据数据传输的位数可以分为并行(Parallel)NORFlash和串行(SPI)NORF...
iqa15rw是什么型号的flash?IQA15RW是一种闪存芯片型号,由中国的集成电路制造商华邦电子生产。它是一款1.5V的SPINORFlash存储器,具有16Mb(16兆比特)的存储容量。该芯片支持多种读取...
目前在主流主板上的BIOS芯片通常为?目前电脑主板上使用的bios芯片采用SPINorFlash存储器芯片。SPIFlash(即SPINorFlash)是NorFlash的一种,NORFlash是一种非易失闪存技术,是I...
ats3015芯片参数?ATS3015是一款高集成度用于蓝牙音频的单芯片解决方案,ATS3015面向真无线及立体声蓝牙耳机市场,具有高性能、低功耗、低成本等特点。ATS3015参数BTVersionV...
硬件工程师这个行业会没落吗?一、硬件工程师的职责与定位首先,介绍下一个硬件产品的研发流程,如下图所示:公司内所有的岗位是同等重要的,有些公司可能没有研发或者部分研发工作外包。虽...
索爱V80想进行刷新固件,不知道怎么进行了。高手帮一下!我知...[回答]发展需要更多与华芯飞同样的企业,甚至更优秀的方案公司去共同配合,中国芯片技术也必须实现产品化和产业化才能应用于实际当中以提高人们...正如华...
imx6ull多少核?6ULL是一个高功效、高性价比应用处的理器系列,采用单个ArmCortex-A7内核,运行速度高达528MHz。i.MX6ULL应用处理器包括一个集成的电源管理模块,降低了...i...
sc3080s芯片静态参数?能的要求。5.工作电压:2.5V-3.6V;6.工作温度:-40℃~85℃。此外,SC3080S还具有良好的EMC性能,支持多种安全功能,如看门狗、复位保护、安全启动等,可以满足...