(Translated by https://www.hiragana.jp/)
TRONCHIP - Wikipedia コンテンツにスキップ

TRONCHIP

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

TRONCHIP(トロンチップ)とは、TRONプロジェクト一環いっかん設計せっけいされた命令めいれいセットアーキテクチャ(ISA)およびそれを実装じっそうしたマイクロプロセッサである。仕様しよう書籍しょせき[1]およびウェブ[2]公開こうかいされており自由じゆう参照さんしょう使用しようできる。

特徴とくちょう

[編集へんしゅう]

基本きほんスペック

[編集へんしゅう]
  • 32ビット
  • レジスタ本数ほんすう 16

異種いしゅオペランドの演算えんざん

[編集へんしゅう]

従来じゅうらいのプロセッサのおおくは、バイトの加算かさんとワードの加算かさん、といったようなデータがたごとの演算えんざん命令めいれいと、符号ふごう拡張かくちょうとゼロ拡張かくちょう命令めいれいがあった。異種いしゅオペランド同士どうし演算えんざんでは、まずかたそろえてから、演算えんざん実行じっこうし、レジスタちょうよりちいさいかた目的もくてき結果けっかであれば、それをストアするべつ命令めいれい実行じっこうしていた。TRONCHIPでは、オペコード共通きょうつうとし、かた拡張かくちょう方法ほうほう符号ふごうきorゼロ拡張かくちょう)をしめすフィールドをオペランド指示しじつことで、そういった演算えんざんを1命令めいれい指示しじできる。

命令めいれい形式けいしき

[編集へんしゅう]

命令めいれい形式けいしき整理せいりされており、命令めいれいちょう32ビットの一般いっぱんがたと、16ビットの短縮形たんしゅくけいがある。命令めいれい種類しゅるいにより形式けいしきけるのではなく、すべての命令めいれい一般いっぱんがたがあり、よく使つかわれる命令めいれいやオペランドのわせには短縮形たんしゅくけい用意よういされる、という方式ほうしきっている。

高水準こうすいじゅん命令めいれい

[編集へんしゅう]

ビットストリング命令めいれい

[編集へんしゅう]

グラフィックVRAMの操作そうさなどをわずかな命令めいれいすう実現じつげんできる、ビットストリング命令めいれいがある。BTRONなどでの利用りよう想定そうていされていた。

キュー操作そうさ命令めいれい

[編集へんしゅう]

連結れんけつリスト#双方向そうほうこうリスト操作そうさする命令めいれいち、キューの途中とちゅう要素ようそ挿入そうにゅうする操作そうさ、キューから特定とくてい要素ようそはず操作そうさアトミック操作そうさとして実行じっこうできる。これにより、データ構造こうぞう設計せっけいにもよるが、キュー操作そうさにともなうほそつぶのクリティカルセクションの制御せいぎょ省略しょうりゃくできる。

じゅうしん演算えんざん命令めいれい

[編集へんしゅう]

進化しんかじゅうしん表現ひょうげん演算えんざん直接ちょくせつおこなえる命令めいれいがある。

多段ただん間接かんせつアドレッシングモード

[編集へんしゅう]

C言語げんごにおいて、ポインタをデリファレンスするぜんおけ演算えんざん ***p のように複数個ふくすうこいて、メモリを参照さんしょうしてもとにさらにメモリを参照さんしょうできるが、それと同様どうように、TRONCHIPのオペランド指示しじでは、したデータをもと実効じっこうアドレスを算出さんしゅつし、そこからしたデータをさらにアドレッシングにもちいるという操作そうさを、形式けいしきじょう任意にんい回数かいすう反復はんぷくできる。

仕様しようでは任意にんいかい反復はんぷく実装じっそう要求ようきゅうしておらず、反復はんぷく段数だんすう制限せいげんしている実装じっそうおおい。

レベルの定義ていぎ

[編集へんしゅう]

実装じっそうする命令めいれい仮想かそう記憶きおく有無うむなど、実装じっそう範囲はんいのプロファイル意図いとされており、最終さいしゅうてき以下いか仕様しようしょではしめされている。

  • L1R - 最小限さいしょうげん命令めいれいセット
  • L1 - 最小限さいしょうげん命令めいれいセットとメモリ管理かんりユニット
  • L2 - 拡張かくちょう命令めいれいセットとメモリ管理かんりユニット

汎用はんようのプロセッサのおおくはプログラムを実行じっこうちゅうに、なんらかの原因げんいん実行じっこう中断ちゅうだんして処理しょりおこな機構きこうそなえる。原因げんいんとしては、外部がいぶみ、ページ違反いはんれいによる除算じょざん、システムコールなどがあり、例外れいがいみ、トラップ、などとばれ、CPUごと名称めいしょう処理しょり内容ないようことなる。TRONCHIPでは、これらを、例外れいがいException)、Interruput)、トラップTrap)に分類ぶんるい整理せいりし、まとめてEIT処理しょりとした。

  • 例外れいがいException)- 命令めいれい実行じっこうちゅうこるもの、ページ違反いはんとうで、ハンドラから復帰ふっきした場合ばあい当該とうがい命令めいれいさい実行じっこうする
  • Interruput)- プログラムの実行じっこう無関係むかんけいに、外部がいぶ要因よういんこるもの
  • トラップTrap)- システムコール、れいによる除算じょざんとうで、ハンドラから復帰ふっきした場合ばあい当該とうがい命令めいれいつぎ命令めいれいから再開さいかいする

拡張かくちょうせい

[編集へんしゅう]

当初とうしょ設計せっけい時点じてんから64ビットへの拡張かくちょう考慮こうりょされており、データサイズを指示しじするフィールドなどで、64ビットの指示しじ相当そうとうするやビットが予約よやくとされていた。プレフィクス命令めいれい付加ふかやモードの追加ついかなどの変更へんこうをせずに、無理むりなく移行いこうできるようにという設計せっけいであった。

また、メモリ空間くうかんも、アドレス0を起点きてんとして、アドレスの数値すうち2の補数ほすうとみなし、せい方向ほうこうまけ方向ほうこうびているもの、とするモデルとした。これも64ビットしたさいに、32ビットの単純たんじゅん拡張かくちょうとみなせるように、との配慮はいりょである。せいがわをユーザはん空間くうかんまけがわをシステムはん空間くうかんとし、基本きほんてきなメモリ保護ほごもこれを利用りようして定義ていぎされた。

ただし以上いじょう拡張かくちょうせいかんしては、予約よやくされたのみで、実際じっさいにそれを拡張かくちょうした仕様しよう実装じっそうは(2017ねん現在げんざい存在そんざいしていない。

NEC Vシリーズ

[編集へんしゅう]

ほぼどう時期じきに、NEC VシリーズのV60~V80の32ビットシリーズが開発かいはつされている。豊富ほうふなアドレッシングモード、命令めいれいとアドレッシングモードのたか直交ちょっこうせいなどの、いずれもおおくのCISCプロセッサにられる特徴とくちょうだが、そのような共通きょうつうてんがある。一方いっぽうで、レジスタ本数ほんすうが、TRONチップの16ほんたいし、V60けいは32ほんおおくこれはむしろ当時とうじのRISCにられる設計せっけいである。そのためV60けいではレジスタの指定していに5ビットを必要ひつようとすることもあり、命令めいれいフォーマットはまったことなっている(アセンブリ言語げんごでのているかもしれないが、アセンブリ言語げんごでの類似るいじ実際じっさいのチップがているかかとはまった無関係むかんけいである)。TRONチップの命令めいれいは2バイト単位たんいでの可変長かへんちょうで、命令めいれいフォーマットの種類しゅるいすくなくおさえられているのにたいし、V60けいは1バイト単位たんい可変長かへんちょうでフォーマットの種類しゅるいおおい。

特許とっきょ

[編集へんしゅう]

TRONCHIPの設計せっけいにおいては、最初さいしょの2年間ねんかん特許とっきょのチェックのみにあてた、という[3]設計せっけいにおいて回避かいひのためチェックしたとく重要じゅうよう特許とっきょとして、DECによる、バイト可変長かへんちょう命令めいれいVAX)・プログラムカウンタが汎用はんようレジスタでもある(PDPシリーズ、VAX)・スケールインデクスによる修飾しゅうしょく(VAX)、NSによる、外部がいぶアドレシングによるモジュールのサポート(NS32000)、DGによる、アドレスによるリング保護ほごEclipse MVシリーズ)をげている[4][5]

SISCまたはEISC

[編集へんしゅう]

「RISCたいCISC」と業界ぎょうかいジャーナリズムがあおっていた時期じきであったが、坂村さかむらはヘネシーとパターソンによるRISC(R2000Berkeley RISC英語えいごばん)を評価ひょうかしたうえで、

  • リアルタイム応用おうよう指向しこうしているため、たとえ少々しょうしょうおおきな操作そうさをする命令めいれいでもクリティカルな部分ぶぶんでの性能せいのう必要ひつようであればそれをけずることはできない。
  • RISCは使つかやすさを考慮こうりょしていない。アドレッシングが自由じゆうでなければ、コンパイラ最適さいてき実装じっそうむずかしい。
  • RISCではプログラムサイズが増大ぞうだいする。そのため、キャッシュメモリだい容量ようりょうバス高速こうそく必要ひつようになってしまう。

とし、TRONチップは「ノイマンアーキテクチャの究極きゅうきょく」(これは論理ろんり推論すいろんマシンやノイマンがたマシンの喧伝けんでんをうけて)、「CISCの究極きゅうきょく」、「(RとCの)どちらでもなく、SmartのSでSISCまたはElegantのEでEISCとでもいうべきもの」[6]ひとしとしていた。

実装じっそう

[編集へんしゅう]

Gmicroシリーズとして日立製作所ひたちせいさくしょがH32(Gmicro/500)・Gmicro/200、三菱電機みつびしでんきがM32(Gmicro/100・400)、富士通ふじつうがF32(Gmicro/300)を作成さくせいしていたほか、沖電気おきでんきがO32、東芝とうしばがTLCS-90000/TX(TX1、TX2)、松下電器まつしたでんきがMN10400など、各社かくしゃ開発かいはつされた[7]

また、富士通ふじつうによるベクトルプロセッサ(浮動ふどう小数点しょうすうてんプロセッサとはべつμみゅーVPなどのコプロセッサ、メモリやバスのコントローラその周辺しゅうへんチップが同時どうじ各社かくしゃにより開発かいはつ実装じっそうされた。

その

[編集へんしゅう]

おおきな応用おうようさきかんがえられたBTRONプロジェクトが、教育きょういくようへの採用さいよう中止ちゅうし失速しっそくしたこと、RISCをターゲットとしたコンパイラ技術ぎじゅつ発展はってんや、計算けいさん高性能こうせいのうによっておも最適さいてき技術ぎじゅつ実用じつようになったこともあり、あえてCISCを採用さいようする意義いぎうしなわれたこともあって、各社かくしゃとも32ビット以上いじょうのCPUはRISCに集約しゅうやくする方向ほうこう(日立ひたち:SH富士通ふじつう:SPARC日本電気にほんでんき東芝とうしば:MIPS三菱みつびし:M32R)となった。

TRONCHIPの影響えいきょうとしては、つぎのようなものがある。SHの開発かいはつしゃ反面はんめん教師きょうしとして言及げんきゅうしている。いくつかのプロセッサにおいて、EITという事象じしょう分類ぶんるいられる。LDCTX、STCTXなどといったTRONCHIPと共通きょうつうのニモニックを使つかっているプロセッサが(とくにCISCマイクロコントローラに)られる。M32Rの命令めいれいフォーマットにも類似るいじせいられる。

TRONCHIPの採用さいようれいしめす。GMICRO/100が半導体はんどうたい製造せいぞう装置そうち人工じんこう衛星えいせい制御せいぎょ装置そうち使つかわれた。GMICRO/200は宇宙うちゅうせん対策たいさくをしたものがきく7ごう使つかわれた。電話でんわ交換こうかんにGMICRO/300と500が使つかわれた[8]

脚注きゃくちゅう

[編集へんしゅう]
  1. ^ 坂村さかむらけん 1991.
  2. ^ https://web.archive.org/web/20080509195830/www.sakamura-lab.org/TRON/CHIP/top_index.htm
  3. ^ 坂村さかむらけん 1987, p. 130.
  4. ^ 坂村さかむらけん『TRONをつくる』共立きょうりつ出版しゅっぱん、1987ねん、92ぺーじISBN 4320023668OCLC 43168952 
  5. ^ 特許とっきょ番号ばんごうとう詳細しょうさい不明ふめい
  6. ^ 『TRONをつくる』p. 89
  7. ^ 坂村さかむらけん 1999, p. 253.
  8. ^ (坂村さかむらけん 1999) "おわりに" より

参考さんこう文献ぶんけん

[編集へんしゅう]
  • 坂村さかむらけん「TRONチップ(特集とくしゅう 32ビットマイクロプロセッサ)」『コンピュトロール』だい16ごう、コロナしゃ、1986ねん10がつ 
  • 坂村さかむらけん『TRONでわるコンピュータ』日本にっぽん実業じつぎょう出版しゅっぱんしゃ、1987ねんISBN 4534012411OCLC 47401824 
  • 坂村さかむらけん (1988). “TRONチップの設計せっけい思想しそうとアーキテクチャ”. TRONプロジェクト'87-'88. パーソナルメディア. pp. 265-310. ISBN 489362055X. OCLC 674517051 
  • 坂村さかむらけん『トロン仕様しようチップ標準ひょうじゅんハンドブック』パーソナルメディア、1991ねんISBN 4-89362-084-3OCLC 674629515 
  • 坂村さかむらけん へん『トロン仕様しようFPU標準ひょうじゅんハンドブック』パーソナルメディア、1992ねん8がつISBN 4-89362-099-1OCLC 122891553 
  • トロン協会きょうかい ちょ、パーソナルメディア へん『トロン仕様しようチップ標準ひょうじゅんガイドブック』トロン協会きょうかい、1992ねんISBN 4-89362-108-4OCLC 675158628 
  • 『32ビット・マイクロプロセッサ TRON仕様しようチップ活用かつようほう』スペック、1993ねんISBN 4769202717OCLC 675421957 
  • 坂村さかむらけん「TRON仕様しようチップ (<特集とくしゅう>TRONプロジェクトの15ねん)」『情報処理じょうほうしょりだい40かんだい3ごう情報処理じょうほうしょり学会がっかい、1999ねん3がつ15にち、252-257ぺーじNAID 1100027639022009ねん2がつ5にち閲覧えつらん