我已经看到过Raspberry Pi的片上系统通常被称为“ BCM2835”(例如在Wikipedia上),但有时也被称为“ BCM2708”(例如Linux SPI驱动程序的源在bcm2708.c中,或在我的其他问题的评论中) )。

哪个是正确的,还是两个都正确-为什么?特别是,如果两者的数据表存在不一致,应将其理解为“更重要”?

#1 楼

实际上,差异是由于硅和芯片封装的指定。最初有一个称为BCM2708的硅芯片,所有初始开发都围绕此完成。 (堆叠是指您将DRAM硅片真正地粘合在处理器顶部,并将键合线放下到基板上)处理器封装的顶部),然后称为BCM2835,这就是当时启用了ARM的设备。

该芯片的更高版本遵循相同的方案,现在共有三块硅,BCM2708,BCM2709和BCM2710以及三个封装BCM2835,BCM2836和BCM2837。

#2 楼

除了Steve的回答,这里还有关于linux驱动程序的git hub问题日志的讨论,讨论如何标记驱动程序。相关文章为:

popcornmix:


从技术上讲2708是该家族,而2835是一个特定的实现。
我们现在知道2835是该系列中唯一可以运行linux的实现(并且不会有该系列的新模型),因此
使用哪种模型可能并不重要,尽管应该使用br一致。树文件2835? (假设如果曾经有另一个可以运行linux的家族模型,则需要一个不同的设备列表)。


评论


另一个评论表明,“ BCM2708是BCM2835的一部分的CPU组件”。一些第一手证据的链接会很好...(此外,我发布了这个问题,因为我想要的东西比我在Google的第一个结果中已经发现的更多)

–akavel
2012年6月29日在11:44



我试图找到一些。博通数据表链接在这里:raspberrypi.org/wp-content/uploads/2012/02/…。但是,它没有参考BCM2708编号。据我所见,这两个数字一起出现的唯一位置是问此类问题的帖子。

–乔恩·埃格顿(Jon Egerton)
2012年6月29日上午11:50

#3 楼

从技术上讲2708是该系列芯片的名称,而2835是Pi中的特定芯片。至于哪个数据表取代另一个数据表,我会选择BCM2835(专用)而不是BCM2708(系列)。

评论


需要强引用。另一个海报暗示“ BCM2708是BCM2835的一部分的CPU组件”。打扰一下,但是我为什么要相信你,而不是他?

–akavel
2012年6月29日12:56



作为“其他发布者”,我想说这是基于内核资源的推测。我也没有确凿的证据……我们确实应该有某种规范的(最好是Broadcomm)源答案。

–玛丽亚·兹维里娜(Maria Zverina)
2012年6月29日13:09



@MariaZverina在这种特殊情况下,任何人都可能无法获得这种规范的信息,因为即使要获得芯片上的全部详细信息也需要NDA。结果,可能需要更实用的方法。让我问一个问题,作为获取问题上下文的手段。由于这个命名问题,您正在尝试做哪些您无法做的事情?

–史蒂夫·罗比拉德(Steve Robillard)
2012年6月29日在16:05



@MariaZverina和akavel我刚在YouTube上看到了这段视频youtube.com/watch?v=5jEVBK7P1GA的Geert van Leuw在谈论Pi中的芯片,他将其称为2835。我认为您会同意它不会变得更好。

–史蒂夫·罗比拉德(Steve Robillard)
2012年7月16日在9:58

#4 楼

值得认识到的是,ARM内核不是SoC的主要部分,而是辅助内核,位于系统MMU后面。主(引导)处理器是VideoCore,它会执行早期初始化,设置系统MMU并引导ARM内核。和外围设备(请参阅Wikipedia的VideoCore SoC表,请注意bcm27xx部件中没有ARM内核)。 bcm2708,而VC3是bcm2707。但是,至少有三个bcm2708修订版(a0,b0,c0),而a0的区别足以使#ifdefs遍历整个地方,并且本身有很多标头。对于“ VC4大岛”也有一个例外,它的主标头未包括在内,但是我不能真正找到它,尽管这一说法是很有趣的。指的是2708(尤其是如果它们是由Broadcom开发的。)仅在ARM子系统和外围设备基地址(即系统MMU配置略有不同)上有所不同,因此似乎很有可能实际上也是基于bcm2708的,但是可用信息非常有限。我想知道是否有人增加了处理bcm2708所隐含的ARM11内核的代码的数量(而实际上它根本不暗示任何ARM内核)。 -A7 doc确认它也基于bcm2708。

评论


我相信BCM2709是ARMv8。 ARMv8是AArch64(ARM-64),这意味着硬件具有扩展,如crc32,pmull,ae,sha1和sha2。

–user50099
16年7月27日在18:34

嗯,你看完我的答案吗? BCM2708仅指SoC的主要部分(VideoCore 4 +外设),而不是ARM。参见例如Broadcom的标题发行版,以了解其包含的内容。然后通过将arm11 / quad-a7 / quad-a53 ARM子系统分别粘贴到其侧面来构造BCM2835 / 6/7(以及许多其他零件)。但是,这与SoC的其余部分无关。

– Matthijs
16年7月29日在10:16

#5 楼

此页面提示我搜索此问题。

请注意cat / proc / cpuinfo命令的响应

...

硬件:BCM2708

版本:1000002

评论


嗯,有趣!虽然,根据其他答案,我认为它仍然无法解决问题-它仍然可以是姓氏,特定的实现名称或其他名称。

–akavel
2012年8月31日13:29