ラズパイ3のボードって?

ボードっていうか、チップセットっていうか、SoCって言うの?

いや、SoCであってた。WikiにはSocについて以下のように記載。

Broadcom BCM2837

ラズパイ2も、BCM2837とあるが、メモリマップとか違った

記憶がある。

 

さて、ラズパイ3、BCM2837でググると、以下のサイトとかみつかる。

BCM2837 - Raspberry Pi Documentation

↑ここはそもそも、ラズパイの公式サイトなのかな。

DOCUMENTATION->HARDWARE->RASPBERRYPI->BCM2837とある。

つまりラズパイのハードウェア情報だ。

さて、BCM2837については以下のように説明されている。

・ラズパイ3で使われる、Broadcomのチップである。

・ARMv8 CPUである。

しかし、これだけで何も情報はない。

BCM2835については以下のサイトからリンクが貼られてる。

RPi Hardware - eLinux.org

これは以下のサイトからジャンプしている

RPi Hub - eLinux.org

これは組み込みLinux(Embedded Linux(eLinux)のWikiのラズパイ用ハブらしい。

eLinux.org

ラズパイの情報が得られるのはいいのだが、ほしいのはBCM2837の情報である。

CPUの情報ならARMのサイトがあるらしい。

Cortex-A53プロセッサ - ARM

CoreTex-A53というファミリー名だが、図の中に ARMv8-A 32bit/64bit CPUと

記載されている。なるほど、ARMv8である。

さて、そういえばラズパイ3は32ビットだったか、64ビットだったか。

 

ラズパイ3+64ビットでググると以下のサイトがヒットする。

Raspberry Pi 3を64-bitモードで扱うための現状について調べてみた - /home/tnishinaga/TechMEMO

2016/4/17の日付なので、最新ではフツーに64ビットなのかもしれない。

しかし上記サイトによると、

・CPUアーキテクチャは64ビット対応している(前述Armのサイトにも確かに両対応とある)

・ただし、ファームウェアが対応しておらず、64ビットのraspbianは提供されていなかった。

つまり、CPUは対応していたが、周辺装置が整備されていなかっため、64ビット対応が追い付いていなかった。

さて、それで、である。

別に面白い事も書いてあった。

(ご存じの方も多いと思いますが、とあるが、全然知らなかった)

・Raspbery PIはCPUから起動しない

GPUから起動し、その上で動作するファームウェアが CPUやその他周辺機器の

 初期化を行い、カーネルをメモリにロードして制御を移し、起動する。

なんと、そんなブートもあるんだ。

git.denx.de Git - u-boot.git/commitdiff

uBootのコミットも追跡してるみたい、ふむふむ

↑ここで、カーネルの読み込まれるアドレスの変更が記載されている。

つまり、こういった話が落ち着かないと、BCM2837のデータシートって

出来ないってこと?つまり正規に64ビット化して、メモリマップ等が

落ち着くまで?

 

ラズパイ3自体の公式はココらしい。

Raspberry Pi 3 Model B - Raspberry Pi

ここをみると、1.2GHz 64-bit quad-core ARMv8 CPUとある。

4コアの64ビット。

Interfaceの2016/11で、ラズパイ3、64ビット化の記事があるくらいだから、

まだ正式に64ビット対応していないのだろう。

それはそれとして、このInterface 2016/11は購入してみよう。