シングルボードコンピュータ

SBCとは
「シングルボードコンピュータ」とは、ボード単体で動作する(小さな)コンピュータのことを言います。一般的には、秋葉のPCショップで売っているような、「マザーボード」は含みません。
よりわかりやすく雑な表現をするのであれば、
ラズパイみたいな基板
です。
「だいたいそんな感じ」ではありますが、後で述べるようにサイズも仕様も様々です。共通する点としては、
- CPUはスマホやタブレット用のものの流用が主
- USBやLANはついているものが多いが、SATAは珍しい
- (micro)SDやeMMCをメインストレージとするものが多い。 高スペックのCPUを搭載したものにはM.2コネクタがついているものもある
- 電源はだいたい5Vが主でUSB給電のものが多い。丸ストレートコネクタのものは12Vであることもある。消費電力は30Wくらいまで
- OSはLinux系とAndroidが動くものが多い
という感じです。メインストレージがeMMCやM.2が使えるものであれば、一般的なパソコンと同じ程度の安定さを期待することができます。
SBCのフォームファクタ
一言で「ラズパイみたいな基板」と言っても、実は様々なサイズや形状のものがあります。
多くはRaspberry Piを意識していて、だいたいああいった寸法になっています。
「ラズパイサイズ」は通称「クレカサイズ」と呼ばれることがあります。ちょうどクレジットカードとピッタリのサイズではありませんが、だいたいそんな感じのサイズです。
それでは全てがRaspberry Piのケースに納まるかと言えば、同じRaspberry Piであってさえ同じケースに納まりません。ボードのサイズが全く同じもの(結構あります)であっても、各種コネクタの大きさや場所が異なります。そのため、バリエーションに合わせたケースが必要です。
また、全てが「ラズパイサイズ」かと言えば、そうではありません。このサイトで推しているOrange Pi5は、
このような感じになっていて、RaspberryPiとは大きく異なります。ボードの寸法も一回り大きくなっています。ごく雑なサイズ感で言えば、
2.5" HDDと同じくらい
です。
SBCには96boardsというLinaro提唱する規格があります。これによると、85 x 54 x 12が「カードサイズ」であり、拡張として「85 x 100 x 12」があることになっています。Orange Pi 5はいずれも適合していません。
さらに、パソコンからの流れだと、pico ITXという規格があります。これは「100 × 72」だそうです。Orange Pi 5はこれに近い感じです。
このように、ボードのサイズは結構まちまちです。
そして、当然のように、コネクタの構成もまちまちです。USBやLAN、ビデオ等は標準的な規格に準拠していますが、その位置は様々です。カメラや液晶ディスプレイ用のコネクタは、形状まで異なったりしています。同じ形状のコネクタであっても、信号が同じとは限りません。「拡張コネクタ」と称される多ピンのピンヘッダがついているものが多いですが、そのピン数や信号構成は様々です。
というように、パソコンのマザーボードのように、綺麗に標準化されている世界とはまるで異なります。Rock 4C+がRaspberry Pi 4完全互換を自称していますが、そこまでの互換性を主張できるものはごく一部に過ぎません。歴史的商品戦略的な事情で、Raspberry Pi 4と互換性の高いボードは何種類か存在してはいますが、それくらいです。
SBCのCPU
最初にSBCのCPUと言うかSoCはスマホやタブレットの流用が多いと書きました。実際、主にARMアーキテクチャのそういったものを使っているものが多いですが、それに限ったものでもありません。実際に流通しているものであれば、
- IA
- ARM
- MIPS
- RISC-V
があります。普通に使われているCPUのうち存在しないのは、SPARCとかPowerPCとかくらいでしょうか。とは言え、実際に多いのはARMアーキテクチャのものです。
ARMのCPUはCPU単体で市場で出回ることは少ないので、ARM CPUを使いたい時、たとえばAWSのAのつくインスタンス上のアプリを試すには、Macでなければ事実上SBCを使うしかないという状態です。
以下に挙げるのは、最近のSBCでよく使われるCPUと、同じ性能クラスの他のCPUです。Intelの小型PCに使われるCPUとSBCの強い方のCPUは同等の性能クラスで並べることができます。
名前 | メーカー | コア | クロック(GHz) | pass mark(multi) | Geekbench 5 (multi) | ||
---|---|---|---|---|---|---|---|
種類 | 数 | ||||||
BCM2837 | Broadcom | Cortex-A53 | 4 | 1.2 | |||
RK3658 | Rockchip | Cortex-A55 | 4 | 2.0 | 1186 | 492 | |
BCM2711 | Broadcom | Cortex-A72 | 4 | 1.5 | 1375 | 692 | |
RK3399 | Rockchip | Cortex-A72 | 2 | 1.2 | 1378 | 615 | |
Cortex-A53 | 4 | 1.5 | |||||
RK3399-T | Rockchip | Cortex-A72 | 2 | 1.2 | 638 | ||
Cortex-A53 | 4 | 1.0 | |||||
Pentium Gold 4415 | Intel | Kaby Lake-Y | 2 | 1.6 | 1605 | 905 | |
N3450 | Intel | Apollo Lake | 4 | 1.1 | 1913 | 969 | |
J4150 | Intel | Gemini Lake | 4 | 1.5 | 2697 | 1368 | |
Pentium Gold 6500Y | Intel | Amber Lake-Y | 2 | 3.4 | 3203 | 1593 | |
N6000 | Intel | Jasper Lake | 4 | 1.1 | 3816 | 1505 | |
N5105 | Intel | Jasper Lake | 4 | 2.0 | 4041 | 1797 | |
i3-8100T | Intel | Coffee Lake-S | 4 | 3.1 | 5322 | 2447 | |
i5-8265U | Intel | Whiskey Lake-U | 4 | 1.6 | 6108 | 2937 | |
RK3588 | Rockchip | Coretex-A76 | 4 | 2.4 | 6124 | 2235 | |
Coretex-A55 | 4 | 1.8 | |||||
RK3588S | Rockchip | Coretex-A76 | 4 | 2.4 | 6133 | 2269 | |
Coretex-A55 | 4 | 1.8 | |||||
Core i7-1165G7 | Intel | Tiger Lake-UP3 | 4 | 1.2 | 10493 | 4598 |
SBCの種類
SBCの種類が全部挙げることは不可能です。RaspberryPiですらあれだけ種類があるわけですから。
メーカはいくつもあります。そのメーカもどんどん増えている感じです。主には中国メーカが多いようですが、それ以外でもあります。メーカの種類も独立系のところもあれば、半導体メーカの系列会社もあります。また、RISC-Vだとチップベンダとボードメーカが同じなものも少なくありません。さらに、異なるボードベンダが同じボードメーカのボードを別ブランドで出していたりと、あまり名前を聞かないところまで含めると、メーカだけでもいろいろあるとしか言いようがありません。
私(生越)の勝手な判断で分類するなら、
- RaspberryPiよりも小さいもの
- RaspberryPiと互換性があると称するもの
- RaspberryPiよりも強力なもの
という分類をしたいと思います。
と言うのも、RaspberryPiは非常にコストパフォーマンスが良いので、RaspberryPiで足りるものであればRaspberryPiを使っているのが間違いがないからです。情報は成書もネット情報も豊富にありますし、ボードサイズも複数種類あるようになりました。RaspberryPi 4ともなるとCPUもメモリも結構あるので、使い方を選べば十分使うことができます。そういった意味では必要十分なものだと言って良いと思います。また、品薄になっていた時期を除けば十分廉価ですから、ちょっと買ってみるには十分です。そういった意味では、SBCに興味があるけどあまり冒険はしたくないし技術的にもちょっと… という人であれば、RaspberryPiは必要十分です。
その状況にあって、敢えてRaspberryPi以外のSBCを使うメリットがあるものを考えると、
- RaspberryPi(Zero)よりも小さいものが欲しい
- RaspberryPiとほぼ同じだけど、ちょっとした不満に応えて欲しい
- サイズはだいたいそんな感じでいいんだけど、パソコンと同等以上のパワーが欲しい
というようなものではないかと思います。
RaspberryPiより小さいもの
主にサイズの点で、RaspberryPiよりも小さいものを挙げてみます。もちろんこれが全てではありません。また、RapberryPiのZero相当のものも一緒に挙げておきます。
このレンジはかつてはLANコネクタと同じようなサイズというボードがいくつかありましたが、今はRaspberryPi Zero相当のフォームファクタに収束したような感じがします。とは言え、いまだ現行商品として存在していますし、秋葉原のショップで入手できるものがあったりします。用途としては、USB接続のストレージをつないでNASのように使うというものが主なようです。
面白いのは下の表にあるRadxa Zeroで、これは使われているプロセッサも結構強力な上に、メモリもストレージも大きく、さらにWi-Fi6まで対応というちょっと信じられない仕様です。これで技適が通っていたら、いろいろ使いたいことがあるのですけどね。
ボード | CPU | メモリ(GB) | ストレージ | 電源 | Wi-Fi | サイズ | 価格 | |||
---|---|---|---|---|---|---|---|---|---|---|
micro SD | eMMC(GB) | 規格 | 技適 | W | D | |||||
Raspberry Zero 2W | BCM2710A1 | 0.5 | ○ | × | 5V 1.7A | 802.11ac | 007-AH0184 | 65 | 30 | 15 |
Radxa Zero | S905Y2 | 0.5 | ○ | × | USB Type-C | 802.11 b/g/m | 66 | 30 | 20.5 | |
1 | 26.0 | |||||||||
2 | 8 | 802.11ac | 39.0 | |||||||
4 | 16 | 55.0 | ||||||||
32 | 65.0 | |||||||||
64 | 85.0 | |||||||||
128 | 104.0 | |||||||||
MangoPi MQ-Quad | H616 | 1 | ○ | × | USB Type-C | 802.11 b/g/m | × | 65 | 30 | 16.4 |
NanoPi NEO3-LTS | RK3328 | 1 | ○ | × | USB Type-C(5V 1A) | 48 | 48 | 29 | ||
2 | 35 | |||||||||
NanoPi Duo2 | H616 | 0.5 | ○ | × | USB Type-C | 802.11 b/g/m | × | 55 | 25 | 26.0 |
RaspberryPiと同等なもの
前掲のCPUの比較から、RaspberryPi(4)と同程度のものの一覧を挙げます。もちろんこれが全てではありません。
CPUとしては、IntelであればKabyLake程度、RockchipであればRK3399がこれに該当すると思われます。
このレンジのものは、一時期RaspberryPiが入手難であったということで、代替として使える互換性を謳うボードとして出ているものがあります。そして、単に代替品と言うだけではなく、ストレージにeMMC等が使えるというあたりに特色を出しています。
RaspberryPiが入手難であった頃は価格も本来の価格の倍くらいになっていたので、互換品も価格面での競争力がありましたが、今はRaspberryPiの価格も下がっているので、そのために互換品に手を出す必要はなくなりました。そのため、ストレージが強化されている点に意味があると言えるでしょう。
ボード | CPU | メモリ(GB) | ストレージ | 電源 | Wi-Fi | サイズ | 価格 | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
micro SD | eMMC(GB) | M.2 | 規格 | 技適 | W | D | ||||||
Raspberry Pi 4 | BCM2711 | 1 | ○ | × | × | 5V 1.7A | 802.11ac | 007-AH0184 | 85 | 56 | 35 | |
2 | 45 | |||||||||||
4 | 55 | |||||||||||
8 | 75 | |||||||||||
Raspberry Pi 5 | BCM2712 | 4 | ○ | × | × | 5V 5A | 802.11ac | × | 85 | 56 | 60 | |
8 | 80 | |||||||||||
Rock Pi 4C+ | RK3399-T | 4 | ○ | 8, 16, 32, 64, 128 | M2.M 2230 | USB-C 5V 3A | 802.11ac | × | 85 | 54 | 69 | |
Orange Pi 4 LTS | RK3399 | 4 | ○ | 16 | × | 5V 4A | 802.11ac | × | 91 | 56 | 72.9 |
RaspberryPiよりも強力なもの
前掲のCPUの比較から、RaspberryPi(4)よりも強力なCPUを搭載しているものの一覧を挙げます。もちろんこれが全てではありません。
CPUとしては、IntelであればApolloLake以上のもの、RockchipであればRK3588(S)がこれに該当すると思われます。メモリは4GBから最大16GBまであります。ストレージはeMMCやM.2 SSDが使えますので、SDの信頼性で悩むことはなくなりました。
価格はRaspberryPi 4より高価ですが、パフォーマンスやメモリも価格なりとなっています。
ボード | CPU | メモリ(GB) | ストレージ | 電源 | Wi-Fi | サイズ | 価格 | ||||
---|---|---|---|---|---|---|---|---|---|---|---|
micro SD | eMMC(GB) | M.2 | 規格 | 技適 | W | D | |||||
Raspberry Pi 4 | BCM2711 | 1 | ○ | × | × | 5V 1.7A | 802.11ac | 007-AH0184 | 85 | 56 | 35 |
2 | 45 | ||||||||||
4 | 55 | ||||||||||
8 | 75 | ||||||||||
Raspberry Pi 5 | BCM2712 | 4 | ○ | × | × | 5V 5A | 802.11ac | × | 85 | 56 | 60 |
8 | 80 | ||||||||||
NanoPC-T6 | RK3588 | 4 | ○ | 32 | M2.M 2280 | 5.5*2.1mm DC Jack, 12VDC input. | 802.11ac | 110 | 80 | 100 | |
8 | 64 | 120 | |||||||||
16 | 0 | 129 | |||||||||
16 | 256 | 149 | |||||||||
Rock 5A | RK3588S | 4 | ○ | 8, 16, 32, 64, 128 | M2.E 224 | USB-C 9V以上 2A | × | 85 | 56 | £100.8 | |
8 | £122.40 | ||||||||||
16 | £168.00 | ||||||||||
Rock 5B | RK3588 | 4 | ○ | 8, 16, 32, 64, 128 | M2.E 2242 M2.M 2280 |
USB-C 12V以上 2A以上 | × | 100 | 72 | 129 | |
8 | 149 | ||||||||||
16 | 189 | ||||||||||
Orange Pi 5 | RK3588S | 4 | ○ | × | M2.M 2242 (ただしPCIe 1 lane) |
5V 4A | × | 100 | 62 | 68 | |
8 | 83 | ||||||||||
16 | 115 | ||||||||||
32 | |||||||||||
Khadas Edge 2 | RK3588S | 8 | ○ | 32 | × | USB-C 30W | 802.11 ax | 219-229237(?) | 82 | 57.5 | 239 |
16 | 64 | 339 | |||||||||
LattePanda 3 Delta 864 | N5105 | 8 | 64 | 2 | 802.11 ax | × | 125 | 78 | 279 | ||
ZimaBoard 832 | N3450 | 8 | 32 | 12V 3A | 138.7 | 81.4 | 199.9 |
SBCのOS
公式(ボード作成元)が出しているものは、基本的にはLinuxです。ですから、Linuxの各種ディストロが使えます。たいていのボードが、
- Ubuntu
- Armbian
- Debian
が用意されていることが多いようです。また、AndroidやBSD系OSの入るものもあります。
たとえば以下はRock 4でインストールできるOSのリストです。
https://wiki.radxa.com/Rock4/downloads
いろいろなものがあることがわかると思います。
この他にも、OpenWRTに対応しているものもあります。
ごく雑なことを言うなら、Debian派生(要するにUbuntu)とAndroid派生のOSがあれば、普通に使う分には十分ではないでしょうか? Linuxであるならパッケージ管理が違うだけで、ユーザーランドはだいたい似たようなものが使えますから。
開発バックエンド的な使い方だと、Ubuntu Serverだけあれば十分でしょう。AWSでARM系インスタンスを使っている人がローカル開発環境として使うのであれば、これで十分実用になります。
案外に嬉しいのはAndroidです。Google Playストアは使えないことが多いようです(hackはあります)が、いわゆる「野良ストア(サイドローディング)」から入れればいろいろ入手可能です。有料アプリであっても、サイドローディングに対応したベンダだと支払い可能だったりもしますので、特にライセンス上の問題もないでしょう。もっともあくまでも「野良」ですから、危険なものや「いけないもの」もあるかも知れませんので、そこは自己責任ということで。
そのようにすればAndroidで動いているアプリが動かせます。大きな画面で動かすAndroidは結構便利です。家で使うパソコンとしてならこれで十分なのではないかと思うほどです。ご家庭のテレビ(HDMI)につなぐとYouTubeやAmazon Prime Videoが見れるようになるのは、なかなか嬉しいです。要するにAndroid TVになるだけですが、ストレージがいくらでも拡張できるのは良いと思います。
GUIで動かした感じからすると、Linuxで動かした場合とAndroidで動かした場合とでは、相当にパフォーマンスが異なります。Androidではサクサク動いてもLinuxのGUIだと重さを感じることが少なくありません… と言うよりも、それが普通です。色々調べてみると、Androidの描画エンジンはカリカリにチューニングされているのに対し、Linuxの描画エンジンは汎用のFBデバイスだったりすることに依るようです。
使い方を考える時には、こういったOSのクセみたいなものを把握しておく必要があります。