问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

树莓派SD卡使用指南:工作原理、连接方式及替代方案详解

创作时间:
作者:
@小白创作中心

树莓派SD卡使用指南:工作原理、连接方式及替代方案详解

引用
CSDN
1.
https://blog.csdn.net/gilbertjuly/article/details/143065923

树莓派作为一款广受欢迎的单板计算机,其启动和存储媒介SD卡的使用一直备受关注。本文将从SD卡的工作原理、树莓派与SD卡的连接方式、推荐的SD卡类型以及替代方案等多个维度,深入探讨这一话题。

SD卡的工作原理是什么

首先要说到NAND,这是一种基于晶体管的逻辑门电路。然后是NAND Flash,这是一种基于NAND的存储结构,但你需要基于某种方式来访问它(读写它)。

比如,可以在PCB上放置一个NAND Flash存储芯片,然后添加一个控制芯片及其接口。如果是USB接口,你就得到一个U盘。如果是SD接口,那就是SD卡了。

图1-U盘或SD卡内部有NAND Flash存储芯片和控制芯片,见参考链接[1]

U盘或者SD卡都是相对简单的设备,这两者主要是接口形态的不同。当你在上面存储信息时,控制器会将信息写入某些固定位置,这可能会损坏NAND Flash,因为他们的写入次数是有限的。

而对于固态硬盘(SSD),其内部的控制器就复杂的多,会做很多资源平衡与调度。并且,SSD中的NAND Flash从工艺加工角度也更为高级,可分为SLC、MLC等,就不展开了。

树莓派与SD卡是怎么连接的?

树莓派4B上装配的是一种更小型化的SD卡,称之为Micro SD卡。与普通SD卡原理类似,但接口有区别,对比示意图如下:

图2-SD卡、Mini SD卡、Micro SD卡接口引脚对比

看起来这些卡的接口都是一种基于Clk+4 Data的总线。由于区别只在于体积和引脚定义,本文不特别区分,统称为SD卡。

关于树莓派4B的主芯片SoC BCM2711与SD卡是如何连接的,这个在官方的原理图上并未显示(阉割版原理图嘛……)。

不过我们可以从树莓派3B上找到一些蛛丝马迹,看下图,树莓派3B主芯片SoC BCM2837与MicroSD卡是直连的:

图3-树莓派3B 主芯片SoC BCM2837与MicroSD卡直连

也可以从官方提供的树莓派4B《bcm2711-peripherals.pdf》中看到一些蛛丝马迹。总之结论就是,对于树莓派4B,主芯片SoC BCM2711是与MicroSD卡直连的。猜测BCM2711内部应该是有SD卡及其总线的外设控制器。

推荐给树莓派用什么类型的SD卡?

存储大厂金士顿(Kingston)写过这么一片文章《Choosing Storage for Raspberry Pi》,出处见参考链接[2]:

图4-金士顿推荐给树莓派用8GB Class 10 UHS 类型的SD卡

其中说到:对于安装Raspbian OS操作系统,SD卡(MicroSD卡)的存储容量至少要8GB。然后对于SD卡的等级,要达到Class 10 UHS-I。

Class 10 UHS-I,如果看下图,也就是10MB/s的水平(但我没看出上述金士顿文章截图说的95MB/s是如何实现的)。

图5-SD卡Class 10 UHS-I等级图

国外http://Tomshardware.com也做过树莓派SD卡读写测试,对于UHS-I的连续写入速度,也就是在10~20MB/s的水平。详情可参见链接[3]。

图6-Tomshardware做树莓派4对于SD卡的读写测试

SD卡有什么代替方案,eMMC?USB?

SD卡的代替方案有eMMC或USB。

先说下eMMC,eMMC和SD卡按照相同的技术标准构建,原理相同。但eMMC的芯片通常采用小型球栅阵列(BGA)封装,是永久焊接在PCB的,不可拆卸。我们在树莓派CM4版本上看到eMMC芯片:

图7-树莓派CM4上的eMMC芯片

http://jeffgeerling.com测试过树莓派CM4上的eMMC读写速率,确实比SD卡要快很多,如你对树莓派存储媒介的读写速率有要求,可以看看它的评测,并考虑用树莓派CM4的版本,详见参考链接[4]。

当然你也可以将树莓派的启动媒介切换到USB上,不过会占用USB口,而且功耗和发热应该也更高,因为会用到USB控制器VLI VL805。具体将树莓派的启动媒介切换到USB的办法网上有很多,我看的是参考链接[5]。

总结

总结一下树莓派上使用SD卡优点:

  • 树莓派SoC能直接控制读写SD卡,不需要额外占用USB口
  • SD卡的卡槽在PCB背面,不影响体积
  • SD卡可以插拔,使得用户可以在PC上烧录操作系统

而SD卡缺点在于:

  • SD卡易坏,特别是买到山寨品牌的时候
  • SD卡易坏,特别是在SD卡需要频繁读写,以及在写操作时发生断电,都会增加SD卡损坏的概率
  • SD卡的读写速度较慢,这个可以考虑用eMMC或者用USB作为代替方案

整体来说,SD卡的优点还是大于缺点,这是为了兼顾开发难易的一种折中。

这不树莓派5也出来了吗,官方推荐的存储媒介仍然是SD卡(MicroSD卡),而且还支持了SD卡的SDR104标准,即更高的时钟频率和读写速率。所以,继续用SD卡吧。

图8-树莓派5B上的MicroSD卡

参考链接

  • [6]《bcm2711-peripherals.pdf》
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号