エンジニアリング哲学:Sophie Wilson

要点
- 彼女は、地球上のほぼすべての電話に入っている命令セットを設計しました。 Sophie Wilsonは、Acorn Computersにおいて、1983年10月から初代ARM――Acorn RISC Machine――の命令セットを設計し、Steve Furberがハードウェアを構築しました。その仕事から育ったアーキテクチャは、2300億個を超えるチップに搭載され、ARMコアの数は世界の人口を何倍も上回り、世界のスマートフォンの圧倒的多数を動かしています。12
- 徹底した簡潔さが、低消費電力をほとんど偶然の産物にしました。 初代ARMであるARM1は、25,000個に満たないトランジスタしか使わず――同時代の製品のごく一部です――それでいて何倍も大きなマシンを凌駕しました。切り替わるトランジスタがあまりに少なかったため、消費電力はおよそ0.1ワット、Intel 386が必要とした電力のおよそ20分の1でした。この最小限の設計は、速度のため、そしてごく小さなチームという制約のために選ばれたもので、のちにモバイルを制覇する低消費電力は、ほとんど偶然にそこから転がり出てきたのです。34
- 巨人たちを打ち負かした2人のプロジェクト。 WilsonとFurberは、片手で数えられるほどのチームで、競争力ある32ビットプロセッサを設計しました。6502のメーカーで、たった1人のエンジニアが次のCPUに取り組んでいるのを目にし、プロセッサを作るのに大軍は要らないと結論づけたのです。Wilsonは、シリコンが存在するより前に、808行のBBC BASICで命令セット全体をモデル化しました。45
- 彼女はまず、英国の計算機リテラシーを築きました。 ARM以前、WilsonはBBC Microを共同設計し――試作機は1週間足らずで作り上げられました――そして英国の子どもたち一世代にプログラミングを教えた言語、BBC BASICを書きました。(初期のAcornおよびBBCでの仕事は、当初Roger Wilsonという名前で記録されていました。彼女は1994年にトランジションしています。)16
原則
「何かが不可能だと知らないことは、仕事に面白い影響を及ぼします。」 ―― Sophie Wilson6
プロセッサ設計の大半は足し算です。動くマシンから出発し、そこに機能を継ぎ足していく――新しい命令、新しいモード、新しい特殊ケースを。どれもどこかのプログラムの役に立ち、シリコンは安くなり続けるのだから、やらない手はない、というわけです。その結果が、何十年にもわたって複雑さを積み重ねていく命令セットです。追加のたびにデコーダは遅くなり、ハードウェアは大きくなり、次の追加はいっそう難しくなります。Berkeleyの RISC研究と、過酷で実際的な限界とによって研ぎ澄まされたWilsonの直感は、まったく逆の方向に走りました。マシンがどうしてもやらなければならないことから出発し、その荷重を支えていないものはすべて取り除いていく。残ったものが、速くなるほど小さく、正しくなるほど単純で、ごく小さなチームでも実際に作れるほど安価になるまで。4
制約は理論上のものではありませんでした。Acornは小さな英国企業で、ARMチームは事実上2人でした。IntelやMotorolaがこの問題に投入したようなトランジスタ予算も、検証のための大部隊も、彼らには手が届きませんでした。だから簡潔さは様式上の好みではなく――そもそもチップが存在しうる唯一の道だったのです。Wilsonは、ほぼすべての演算が1サイクルで完了し、デコーダは単純なまま保たれ、全体が25,000個に満たないトランジスタに収まる命令セットを設計しました。同等のプロセッサがその5倍から10倍を使っていた時代のことです。3 欠乏が優雅さを強いたのです。
そして、その優雅さは、誰も設計したわけではない配当を生みました。それほど少ないトランジスタしか切り替わらないチップは、ほとんど電流を引きません――初代ARMはおよそ0.1ワットで動き、同時代のIntel 386は2ワット近くを必要としました。3 当時、デスクトップ用のコプロセッサにおいて、低消費電力は物珍しさにすぎませんでした。10年後、バッテリー駆動の電話に本物のコンピュータをどう収めるかが問いとなったとき、その物珍しさは、プロセッサが持ちうる単一で最も価値ある性質であることが判明したのです。設計をその本質まで削ぎ落とせば、ただで手に入った効率が、勝利を決めるものになりうる。
背景
Sophie Wilsonは1957年6月、リーズに生まれ、Harrogate Grammar Schoolに通い、ケンブリッジ大学Selwyn Collegeに進学しました。最初の2年は数学を学び、その後コンピュータ科学へ転じました。1 大学に入る前から、彼女はすでに産業用の電子システムを設計しており、1977年の夏季休暇には、MOS Technology 6502を中心に、マイクロプロセッサ制御の装置――よりによって牛の給餌機――を作っています。その仕事が、彼女を英国マイクロコンピュータ・ブームの中心にあった企業、ケンブリッジのAcorn Computersへと導きました。1
Acornで彼女が最初に足跡を残したのがBBC Microでした。1981年、全国規模の計算機リテラシー計画を進めていたBBCがマシンを必要とし、Acornがその契約を勝ち取りました。Wilsonはその設計に欠かせない存在で――彼女の述懐によれば、試作機は1週間足らずで作り上げられたといいます。16 続いて彼女は、マシンのROMに組み込まれたインタプリタ、BBC BASICを書きました。手書きの浮動小数点ルーチンまで備えたものです。BBC Microは100万台を超えて売れ、その大半が英国の学校に入り、BBC BASICは英国のエンジニア一世代が初めて触れたプログラミング言語となりました。16(WilsonのAcornおよびBBCでの仕事は、当初Roger Wilsonという名前で公表されていました。彼女は1994年にトランジションしています。)1
決定的な章が始まったのは1983年10月、WilsonがAcorn独自のプロセッサ、すなわちAcorn RISC Machine――ARM――の命令セットの設計に着手したときでした。Steve Furberが――3段パイプラインとバレルシフタという――ハードウェアアーキテクチャを率い、一方Wilsonはマシンに何ができるかを定義し、808行のBBC BASICで命令セット全体をシミュレートして、それが動くことを証明しました。5 最初のシリコンであるARM1は、1985年4月26日にVLSI Technologyから届き、一発で動きました――まったく新しいプロセッサとしては、ほとんど前代未聞の結果です。13 最も有名なくだりは、その直後に訪れました。チップの消費電力があまりに少なかったため、開発システムに初めて挿し込まれたとき、自分の電源がきちんと接続されるより前に、I/Oラインを通じて電流を引き込んで動き出したのです。チームは、漏れ電流に等しいもので動くほど倹しいものを作り上げていたのでした。5 WilsonはARMがスピンアウトした後もコンサルタントとして関わり続け、2001年からはElement 14のFirePathプロセッサのチーフアーキテクトとなります――同社はのちにBroadcomに買収されました――。FirePathは、ADSLブロードバンドモデムに用いられた信号処理コアです。1 彼女は2013年に王立協会フェローに選出され、2019年にCBEを授与され、2022年にはDavid Patterson、John Hennessy、Steve FurberとともにCharles Stark Draper賞を分かち合いました。1
仕事
ARM命令セット――より単純で小さなハードウェアで、より多くをこなす
まず命令セットから始めましょう。そこにこそ、Wilsonの原則がシリコンになる瞬間があるからです。プロセッサの命令セットとは、ソフトウェアとの契約です――実行できる演算の完全な一覧です。1980年代初頭の支配的な設計がたどった誘惑は、その一覧を豊かにすることでした。一つ一つが多くの仕事をこなす複雑な命令、あらゆる場面に応じたアドレッシングモード、そのすべてを解釈するためのマイクロコード。Wilsonが採り入れた縮小命令セット(Reduced Instruction Set)の哲学は、その逆に賭けました――小さく規則的な、それぞれ1クロックサイクルで完了する単純な命令の集合のほうが、全体として速く動き、デコードに必要なハードウェアもはるかに少なくて済む、と。4
Wilsonは、ある一つの考えを教科書的なRISCの合意の先まで推し進めました。それがこのアーキテクチャで最も巧妙な点です――ほぼすべての命令での条件付き実行です。従来のプロセッサでは、二つの動作のどちらかを選ぶには、比較に続いて分岐――コード内のある場所か別の場所への飛び越し――が必要でした。分岐はコストが高い。パイプライン化されたプロセッサは、分岐の後の命令をすでにフェッチしデコードし始めているからです。分岐が成立すると、その投機的な仕事は捨てられ、パイプラインが再び満たされるまで停滞します。WilsonのARMでは、ほぼすべての命令が自分自身の4ビットの条件コードを持てるため、命令はその条件が偽であれば単に何もしません。本来なら分岐を必要とする短い条件ロジックの連なりが、分岐のない一直線のコードになります。パイプラインは停滞せず、それを支えるハードウェアはほぼただ同然です――命令ごとに4ビットと、わずかな比較ロジックだけなのですから。24
これがこの哲学のすべてを、一つの機能のうちに表しています。条件付き実行は、独自のトランジスタの山を抱えた巧妙な分岐予測器を足すことによってではなく、既存の命令をほぼ無償でわずかに表現力豊かにすることによって、ボトルネックである分岐を取り除きます。より単純で小さなハードウェアから、より大きな能力を。Wilsonは、設計をシリコンに委ねる前に、このやり方で全体を検証しました。808行のBBC BASICでシミュレータを書き、実在のプログラムが、その想像上のマシンの上でコンパイルされ効率よく動くことを確かめたのです。45 その規律は結果に表れています――25,000個に満たないトランジスタ、そしてファブから戻ってきて一発で動いたシリコンに。3
BBC BASICとBBC Micro
ARMの仕事のいずれよりも前に、Wilsonは英国の計算機リテラシーを育てたマシンと言語を作りました。1980年代初頭にBBCが計算機リテラシー計画(Computer Literacy Project)を立ち上げたとき、参照用のマイクロコンピュータが必要となり、Acornの入札――Wilsonが1週間足らずでまとめ上げるのを助けた試作機――が、1981年に発売されたBBC Microとなりました。16 頑丈で、拡張性があり、教育向けに調整されたそれは100万台を超えて売れ、その大半が英国の学校に入りました。6
マシンの魂はソフトウェアであり、それはWilsonのものでした。彼女は、マシンのROMに焼き込まれたインタプリタBBC BASICを書き、浮動小数点演算ルーチンも手作業で含めました。BBC BASICは家庭用コンピュータの言語としては異例なほど高機能で――構造化されていて速く、好奇心旺盛な生徒がBASICからそのまま6502のマシンコードへ降りていけるインラインアセンブラを備えていました。英国のエンジニア一世代にとって、これは初めて書いた言語であり、コマンドを打つことから、その下にあるプロセッサを理解することへと架ける橋でした。16 その同じ直感――マシンをソフトウェアでモデル化し、命令の側から理解する――こそ、WilsonがのちにARMを設計するために用いたまさにそれでした。彼女は、前のマシンのために自分が書いた当の言語で、プロセッサの命令セットを試作したのです。5
簡潔さによる低消費電力が、いかにモバイルを制覇したか
ここで偶然が歴史になります。ARM1は、デスクトップ向けの高速コプロセッサとして構想され、その小さなトランジスタ数は、速度のためと、2人チームの限界のために選ばれたものでした。低消費電力――同時代のIntel 386が2ワット近くだったのに対し、およそ0.1ワット――は、切り替えるべきシリコンがあまりに少なかったことの副作用でした。3 1985年、商用電源のデスクトップにおいて、その倹しさは脚注にすぎませんでした。5
やがて世界はその形を変えました。1990年代までに、興味深い問いはもはや「机上でどれだけ速いか」ではなく、「バッテリーにどれだけの計算を詰め込めるか」になっていました。そしてその問いにおいて、最も重要だった性質はワットあたりの性能であり――ARMは、ほとんど唯一、生まれつき倹しかったのです。Acornは1990年、この設計をARM Ltdという別会社にスピンアウトしました。チップを売るのではなくアーキテクチャをライセンスするビジネスモデルを掲げてのことです。1 ライセンシーは、小さく、冷たく、効率の良いコアを、電話に、音楽プレーヤーに、ルーターに――バッテリー寿命や熱が壁となるあらゆるものに――組み込むことができました。Wilsonが25,000個に満たないトランジスタまで削ぎ落としたアーキテクチャは、モバイル時代の標準プロセッサとなり、いまや2300億個を超えるARMベースのチップが出荷されています。2 勝ったのは生の速度ではありませんでした。徹底した簡潔さがただで手渡してくれた効率――誰もそれを必要とすると知るより10年も前の効率――だったのです。
FirePath、Broadcom、そして信号処理における第二幕
WilsonはARMで止まりませんでした。アーキテクチャがスピンアウトし、彼女がコンサルタントとして残った後、彼女はElement 14でFirePathのチーフアーキテクトとなりました――Acornから生まれ、2000年にBroadcomに買収された会社です。FirePathは、ADSLブロードバンド向けのデジタル信号処理コアでした。ADSLは、ありふれた銅の電話線の上で高速インターネットを押し進めた技術です。1 DSPの仕事は、汎用CPUの設計とは異なる分野です――作業負荷は容赦ない演算の流れであり、アーキテクチャはその特定の問題でのスループットを軸に形作らねばなりません。Wilsonが、汎用の命令セットと特化型の信号プロセッサの両方で重要な仕事をなしたという事実は、その底にある技能が何か一つの妙技ではなく、作業負荷が本当に求めているものは何かを問い、それ以上のものは作らないという習慣であることを物語っています。1
方法
BBC BASIC、ARM命令セット、FirePathを横断して読むと、同じ手つきが繰り返し現れます。Wilsonの方法は、標語というより、一連の不動の信条です。
荷重を支える部分だけが残るまで取り除く。 際立った習慣は引き算です。ARMは、部品を取り去ることで――命令を、モードを、マイクロコードを――残ったものが、速くなるほど小さく、ごく小さなチームが一発で正しく作れるほど単純になるまで、作られました。この一般的な教訓は、シリコンをはるかに超えて転用できます――最も強い設計はたいてい、最も中身の少ないものであり、その規律は、もう一つ取り除いたら壊れる、というところまで削り続けることにあります。これは命令セットの水準における最小限の価値ある製品です――その仕事を本当に果たす最小のものを出荷する、ということです。4
欠乏に憤るのではなく、欠乏に優雅さを強いさせる。 WilsonにはIntelのトランジスタ予算も検証部隊もありませんでした。そして彼女はそれをハンディキャップとして扱うのではなく、資金潤沢なチームがおそらく作ったであろうものより清潔な何かへとアーキテクチャを駆り立てる力にしました。真剣に受け止められた制約は、設計の道具です。逆の直感――Jim Kellerの「トランジスタはただ」――は、シリコンが潤沢な資源であるときに勝ちます。Wilsonの直感は、それが希少な資源であるときに勝つ。そして自分がどちらの局面にいるのかを知ることこそ、本当の技能なのです。34
シリコンに委ねる前に、ソフトウェアで証明する。 Wilsonは808行のBBC BASICでARM命令セット全体をモデル化し、トランジスタを一つも置く前に、実在のプログラムをそのシミュレーションに対して走らせました。高価で取り返しのつかない工程は最後に来て、安価で素早い反復が先に来ました。これはハードウェアに適用された証拠の関門です――設計が動くと信じるのではなく、動かして見届けるのです。45
コストを足さずに能力を足す。 条件付き実行は、その代表的な手つきです――ほぼ追加のハードウェアなしに分岐のボトルネックを葬る、より表現力豊かな命令。教訓は、わずかな能力のために多くを払う変更ではなく、わずかな複雑さで多くの能力を買う変更を探すこと――これは、John Carmackが固定されたハードウェアから不可能なはずの性能を絞り出すために用いた、同じ手段の経済学です。24
教えるものを作る。 世界中の電話を動かすプロセッサより前に、Wilsonは一つの国の子どもたちにプログラミングを教えた言語を作りました。BBC BASICは、意図して親しみやすくありながら、その下にあるマシンについては誠実でした――BASICからアセンブリへ降りていけたのです。強力なものを、同時に教えられるものにすること。これは稀で過小評価された規律であり、道具が使えるだけでなく学べることをも気にかけるBjarne Stroustrupのような言語設計者たちと共有されています。6
影響の連鎖
彼女を形づくった人々
BerkeleyとStanfordのRISC研究。 縮小命令セットの考え――小さく規則的な単一サイクル命令の集合が、大きく複雑なものに勝るという――は、1980年代初頭の学術的なRISCプロジェクトから生まれ、WilsonとFurberはそれを意図してARMに採り入れました。彼らはこの原則を取り、条件付き実行を加えて教科書の先へ押し進めましたが、単純なほうが速いという根底の賭けは、研究コミュニティのものでした。(形成的影響)
MOS Technology 6502と、たった1人のエンジニア。 Wilsonは6502で腕を磨きました――初期のAcornのマシンとBBC Microの内側にあった、安価で単純なプロセッサです。Acornのチームがそのチップのメーカーを訪れ、事実上1人が次のバージョンを設計しているのを目にしたとき、その教訓は心に刻まれました。CPUを作るのに大軍は要らない、と。その観察が、2人のARMプロジェクトを考えうるものにしたのです。(直接的影響)
Steve Furber。 ARMは真の協働でした。Wilsonが命令セット――マシンに何ができるか――を定義し、Furberがそれをこなすハードウェア、パイプラインとバレルシフタをアーキテクトしました。どちらの半分もチップではない。協働こそがチップなのです。彼らはそのことで、ほぼ40年後にDraper賞を分かち合いました。(直接的影響)
彼女が形づくった人々
現代のあらゆるスマートフォン。 Wilsonが設計し、40年をかけて進化した命令セットは、世界の電話の圧倒的多数と、広大な範囲の組み込み機器のプロセッサです――2300億個を超えるチップ。人々が毎日物理的に手にするものの、これほど多くを形づくったエンジニアはほとんどいません。(分野を定義する影響)
Apple Siliconと、ワットあたり性能の時代。 ARMのライセンスモデルとその効率性は、低消費電力・高性能設計の自然な土台となり、その系譜はすべてのiPhoneのチップ、そしてやがてはApple Silicon搭載のMacへと連なっていきます。モバイルコンピューティングの時代は、このアーキテクチャの倹しさの上に築かれました。
英国のエンジニア一世代。 BBC BASICとBBC Microを通じて、Wilsonは一つの国にプログラミングを教えました。彼女の言語を内に宿した計算機リテラシー計画のマシンは、英国のソフトウェアとハードウェアの才能のきわめて大きな部分にとっての、入り口の通路だったのです。
貫く一本の線
Wilsonは、このシリーズのもう一人の偉大なハードウェアの頭脳の、鏡像です。Jim Kellerは、シリコンこそが安価で潤沢な資源だという賭けのもと、シリコンを惜しみなく使うことで――より広いパイプライン、より多くの実行ユニット、あらゆるボトルネックを葬るためのより多くのトランジスタ――自分のチップを勝たせました。Wilsonは、ほとんど使わないことで自分のチップを勝たせました。25,000個に満たないトランジスタです。小さな英国企業の2人チームにとって、シリコンとエンジニアリングの労力は、ただの資源ではなく希少な資源だったからです。どちらも、それぞれの局面では正しい。そしてここに、このシリーズが何度も巡ってくるひねりがあります――速度と欠乏のために選ばれたWilsonの倹しさが、ARMをモバイル時代のプロセッサにした低消費電力を生み、それは生の性能が築いたどんなものよりも大きな帝国なのです。John Carmackが、与えられた固定のハードウェアを使いこなせと言い、Bjarne Stroustrupが、使わないものには払うなと言うところで、Wilsonはこう言います――ほとんど何も残らなくなるまで取り除け。そしてただで手に入った効率が、勝利を決めるものになりうる。 Kellerは勝つために使い、Wilsonは勝つために蓄えた――そして彼女の蓄えは、2300億個のチップに搭載されて出荷されたのです。(シリーズの架け橋)
ここから私が受け取るもの
Wilsonから私が手放さずにいる教訓は、制約は設計の道具であって、言い訳ではないということです。ARMの物語を「資源がまるでなかったのに、彼らがやってのけたことを見よ」と読むのはたやすい――しかしそれは読み違えです。彼らは制約にもかかわらず成功したのではなく、制約のゆえに成功したのです。トランジスタ予算が乏しい2人のチームには、バロック的なプロセッサは作れません。だから彼らは、単純で単一サイクルの設計へと追いやられ、それが結果として、資金潤沢な代替案より速く、はるかに効率的であることが判明しました。もっと欲しいと自分が願っているのに気づくとき――もっと時間を、もっと計算資源を、もっと余地を――Wilsonのキャリアは、その制約こそが私をより良い設計へと押しやっているのかもしれないと思い出させてくれます。私がそれに憤るのをやめ、その仕事をさせてやりさえすれば。
二つ目の教訓は、まだその価値が見えていない効率についてです。1985年、ARMの低消費電力はほとんど無価値でした――デスクトップ用コプロセッサの脚注です。それが10年後、世界がポケットの中のコンピュータを望んだとき、計算機における最も価値ある性質となりました。Wilsonはスマートフォンを予見したわけではありません。彼女はただ、使う必要のないものは使うまいとしただけで、その規律が積み重なって一つの帝国になったのです。教訓は「未来を予測せよ」ではありません。それはもっと慎ましく、もっと永続する何かです――無駄が無害に見えるときでさえ、資源を無駄にするな。今日は物珍しさに見える倹しさが、明日にはすべてが立つ土台になりうるからです。これは、抑制というレンズを通して読まれた品質こそが唯一の変数です――最も少ないもので成された正しい設計は、決して計画しえなかった何かへと、時を経て熟していくのです。
FAQ
Sophie Wilsonは何を設計しましたか?
Sophie Wilsonは、Acorn Computersにおいて、1983年10月から初代ARMプロセッサ――Acorn RISC Machine――の命令セットを設計し、Steve Furberがハードウェアを構築しました。そのアーキテクチャは今や2300億個を超えるチップに搭載され、世界のスマートフォンの大半を動かしています。ARM以前には、BBC Microを共同設計し、そこに組み込まれた言語BBC BASICを書きました。のちにはElement 14でFirePath DSPのチーフアーキテクトを務め、同社はBroadcomに買収されました。125
初代ARMプロセッサは何個のトランジスタを使いましたか?
初代ARMであるARM1は、25,000個に満たないトランジスタを使いました――数十万個に達した同時代の同等のプロセッサの、ごくわずかな割合です。切り替わるシリコンがあまりに少なかったため、チップが引いた電力はわずか0.1ワットほど、Intel 386が必要とした電力のおよそ20分の1でした。速度のため、そしてごく小さなチームの限界のために選ばれたその最小限のトランジスタ数こそが、のちにARMをモバイル機器で支配的にした低消費電力の効率性の根なのです。34
初代ARMチップが電源を接続せずに動いたというのは本当ですか?
本当で、よく記録されています。最初のARM1シリコンが1985年4月26日にVLSI Technologyから届いたとき、それはテストされた初回で動きました――それ自体が稀な達成です。さらに驚くべきことに、チップの消費電力があまりに少なかったため、開発システムに挿し込まれたとき、自分の電源がきちんと接続されるより前に、I/Oインターフェースを通じて電流を引き込んで動き出したのです。設計は、事実上漏れ電流で動くほど倹しく、これはARMを定義することになる効率性の、早くも現れた偶然の兆しでした。35
ARM命令セットにおける条件付き実行とは何ですか?
条件付き実行は、Wilsonの代表的な設計上の選択の一つです。ほぼすべてのARM命令が4ビットの条件コードを持ち、その条件が真のときにだけ実行され、そうでなければ何もしません。従来のプロセッサでは、動作のどちらかを選ぶには分岐が必要で、成立した分岐は命令パイプラインをフラッシュしてサイクルを無駄にすることがあります。条件付き実行があれば、短い条件ロジックの連なりが、分岐のない一直線のコードになります――ほぼ追加のハードウェアなしに、より大きな能力を、という、ARMの中心にある徹底した効率性です。24
出典
-
“Sophie Wilson,” Wikipedia. 1957年6月リーズ生まれ、Harrogate Grammar School、ケンブリッジ大学Selwyn College(数学、のちコンピュータ科学)。BBC Micro(1981年)の設計に欠かせない存在となり、BBC BASICインタプリタを執筆。1983年10月にARM(Acorn RISC Machine)命令セットの設計に着手。ARM1は1985年4月26日に納品され「一発で動いた」。のちにElement 14でFirePathプロセッサのチーフアーキテクトを務め、同社はBroadcomに買収された。当初はAcorn/BBCでの仕事をRoger Wilsonという名前で公表。1994年にトランジション。栄誉には王立工学アカデミーフェロー(2009年)、Computer History Museumフェロー(2012年)、王立協会フェロー(2013年)、CBE(2019年)、Charles Stark Draper賞(2022年、David Patterson、John Hennessy、Steve Furberと共同受賞)が含まれる。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩
-
“ARM architecture family,” Wikipedia. 「ほぼすべてのARM命令には、4ビットの条件コードセレクタで実装される、プレディケーションと呼ばれる条件付き実行機能がある。」Acorn RISC Machine命令セットはAcorn ComputersのSophie Wilsonによって開発され、ハードウェアはSteve Furberが担当。最初のサンプルは1985年4月26日に初めてテストされたときに正しく動作した。「2300億個を超えるARMチップが製造され……ARMは最も広く使われている命令セットアーキテクチャのファミリーである。」ARM2のトランジスタ数は約30,000個だった。 ↩↩↩↩↩↩
-
“ARM1 – Microarchitectures – Acorn,” WikiChip、および “DEVELOPMENT OF THE ARM CHIP AT ACORN,” University of Maryland(CMSC 411)。初代ARMプロセッサであるARM1は、Sophie WilsonとSteve Furberによって設計され、VLSI Technologyにて3ミクロンプロセスで製造され、1985年4月26日に動作するシリコンを得た――製造された初回で動作した。25,000個に満たないトランジスタを使い、DEC VAX-11/780のおよそ2倍から4倍の性能を達成した。トランジスタ数が少なかったため消費電力はごくわずか――Intel 386の2ワット近くに対し、約0.1ワットだった。 ↩↩↩↩↩↩↩↩↩
-
“Sophie Wilson: ARM And How Making Things Simpler Made Them Faster & More Efficient,” Hackaday(2018年5月8日)、Wilsonの講演を報じたもの。WilsonとFurberは、「CPUがごく小さな命令の集合だけを実行するように作られれば、より速く、より効率的に動きうる」というBerkeley RISCの概念にARMを基づけ、「逆のアプローチを取り、必要とされる最低限の骨組みになるまで部品を取り除き、既存のCPUより単純で消費電力の少ないチップを生み出した」。チームの規模について――6502のメーカーを訪れた際、彼らは「1人がこのCPUの次のバージョンに取り組んでいるのに気づき」、「CPUを設計するのに巨大なチームは要らない」ことを示した。彼らは「BBC Micro上にシミュレータを作り、社内の他の者たちにこのアプローチに価値があると納得させた」。ARMの命令の条件付き実行について言及し、それが「短い分岐をすべて取り除く」と記す。記事はまた、テスト用プロセッサの消費電力を測定した際、CPUが信号線を通じて供給される電力で動いていたため、マルチメータが電力の流れを検出できなかったことも語っている。 ↩↩↩↩↩↩↩↩↩↩↩↩
-
“Happy birthday, ARM1. It is 35 years since Britain’s Acorn RISC Machine chip sipped power for the first time,” The Register(2020年4月27日)。最初のARMマイクロプロセッサは「1985年4月26日午後1時」にVLSI Technology, Inc.から届き、「午後3時には画面に『Hello World, I am ARM』と表示された」。Sophie Wilsonは「この32ビットマイクロプロセッサの命令セットのシミュレーションを808行のBBC BASICで作り上げ」、一方Steve Furberは「3段パイプラインとバレルシフタを特徴とするハードウェアアーキテクチャに専念した」。漏れ電流の逸話について――「最初のARM1チップは必要とする電力があまりに少なかったため、工場から届いた最初の1個をテストのために開発システムに挿し込んだとき、マイクロプロセッサは、自分の電源がきちんと接続されるより前に、IOインターフェースから電流を引き込んで即座に動き出した」。初期のチップは「Intelの80286を上回りながら、より少ない電流しか口にしなかった」。 ↩↩↩↩↩↩↩↩↩
-
“Sophie Wilson,” Computer History Museum(2012年CHMフェロー紹介)。WilsonはSteve FurberとともにBBC Microcomputerを共同設計し(試作機は1週間足らずで完成)、BBC Microのオペレーティングシステムを設計し、BBC BASICインタプリタを執筆。10年のうちに100万台を超えるBBC Microが売れ、英国の学校で広く使われた。彼女は32ビットARM RISCプロセッサアーキテクチャ(1985年)を共同設計し、それは今や数十億の機器で使われている。この紹介には彼女の言葉が記録されている――「何かが不可能だと知らないことは、仕事に面白い影響を及ぼします。」 ↩↩↩↩↩↩↩↩