• 検索結果がありません。

情報工学教室 重松保弘       伏学院)飯野秀政*

N/A
N/A
Protected

Academic year: 2021

シェア "情報工学教室 重松保弘       伏学院)飯野秀政*"

Copied!
9
0
0

読み込み中.... (全文を見る)

全文

(1)

九州工業大学研究報告(工学)No.41 1980年9月       185

MPL200/Hマイクロプログラムコンパイラ

       (昭和55年5月30日 原稿受付)

情報工学教室 重松保弘

      伏学院)飯野秀政*

       安  在  弘  幸

MPL200/II Microprogram Compiler

       by Yasuhiro SHIGEMATSU        Hidemasa IINO

       Hiroyuki ANZAI

      Abstract

  Amicroprograrn comp刊er has been developed, which translates a microprogram, writtell in ahigh−level microprogramming language MPL 200/II, into microcodes of an user・micropro・

grammable processor of FACOM U−200 L, In this paper、 we provide its detailed constructionl tha亡is phases, data structures and proce…党ing method in each phase.

  The feature of the compiler i5 optimizillg cornpiler . The compiler free microprogrammer from detaned knowledge of the microprogrammable proce割ヨor, which is necessary for the improvement of the e伍ciency of a microprogram. AccoTdingly, the time and the effort for developping an e伍cient microprogram are significantly reduced. To execllte the optimizations efl]ciently, bidir㏄tional linked hst is used as the structllre of the inter而ediate code of a source

mlcroprogram・

      告した㌍

Lまえがき        ところで縞水準罐を実1票にμPの開発に利肘る

 E}換え可能な制御記憶(Wrltable Control Storage}  ためには,高水準言語で記述されたμPを・実行可能な をもつ電子計算機やビットスライス・マイクロプロセッ   目的μPに変換するためのμPコンパイラを開発しなけ サの普及に伴ない,当初は一部のハードウェア設計者の   ればならない。また,μPコンパイラは・効率の良い目的 手にあったマイクロプログラム(μP)技術は,最近では  μPを効率良く生成できなければならない。そこで筆者 一般の利用者へと広く開放されている。また,μPの応用   らは,次の考え方のもとにMPL200/IIμPコンパイラ 分野の拡大や処理内容の多様化,高度化は,μP作成量の   を設計した。

急激な増加をもたらしている。       {1}再帰降下コンパイラ[recllrsi、 e descent compi一  こうしたμP作成量の増加は,一般の機械語の鳩合と     ler)の技法を用いて,解読性や保守性に優れたコン 同様,マイクロプロブラミング(μPh19)に対して高水準     パイラを開発すると7}

言語け8}・1叫・川を導入させる原因となった。筆者らも、書    {2}コンパイラに最適化フェイズをii量け,語数と雲行 換え可能な制御記憶をもづ μP 制御方式計算機 FA・    時間のうえで効率の良い目的μPを生成する・

COM U−200LのμPを記述するために高水準μP記述    (3}構文解析・意昧解析フェイズにおいて生成される 用言語MPL200/IIを盤計し,これについてはすでに報     中閥コー}∫をいくつか用意し,目的(語数最小また       はi爽行時1田最小}に応じて選択できるようにする。

・現在は,タ、田単工璽大言1情督処理黄可セン:P一         ω u−2⑪01.のショートアドレス・ページンダの制

(2)

  約を満足し,かつ効率の低下を招かないようコンパ   (Source Text)を入力してから目的μPが生成されるま   イラで中間コード表現されたμPを修正する。     での主なデータの流れは次のようになる・まず・原テキ  (5}最適化処理などが高速に実行できるよう,μPの   ストは単語解析フェイズで分解され不偏記号表 (Uni・

  中間コード表現におけるデー一タ構造を設計する。    form Symbol Table)に格納される。さらに・不偏記号・

 本論文では,MPL200/IIコンパイラのフェイズ構成,   表の内容(すなわち不偏記号)は次の構文解析 意味解 各フェイズの処理およ酪フェイズで使用するデー酬 析フェイズで解析され源テキストの中間コード(ht…

造について述ぺる。      mediate Code〕 が生成される・中間コードは・行列       (Matrix}と呼ばれる表に連続的に配置される。さらに,

2・マイ知プ゜グラムコンパイラの徽  中間。一ド喘適化フェ㈱こおいて,双方餉リンク

 MPL200/IIμPコンパイラのフェイズ構成と使用す   構造が与えられ、最適化およびページチェックの各フェ る表の入出力関係を図一1に示す。このコンパイラは,6   イズにおける中間コードの動的な操作に適したデータ構 フェイズから構成される。すなわち,単語解折{Lexical  造が形成される。リンク構造を与えられた中間コ・一ドの Analysis〕,構文解析・意味解析 {S)mtax Analysi5・   単位をセル(Cel1)と呼ぶ。中間コードをもとに,コード Semantic Anaiysis),最適化(Optimization),ページ   生成フェイズではアセンブリ言語形式の目的コードを生 チェック(Page Check),コード生成(Code G印era・   成する。これは,続くアセンブル・フェイズの入力とな tion),アセンブル(Assemble)である。各フェイズは,   り, U−200LのIMPL(lnitial Microprogram Load}

機能的にもモジュール的にも,基本的に相互に独立して   μPによって制御記憶に配置可能な形式の目的μPに変 おり,各フェイズの処理は,主記憶上あるいは外部記憶   換される。

(磁気ディスク)上に置かれた表を受け渡すことによっ    以下の章では,各フェイズの処理と使用するデータ構 て継続して実行される。      造について述べる。なお,以下の記述において,マイク       ロ命令(μDのオペランドに指定可能なレジスタ類および       μPの実行順序に直接的な影響を与えるフラグ(carry       flip f|OPなど)をハードウェアリソース(または,単に

3.単語解析フェイズ

      単語解析フェイズでは,MPL200/IIの原テキストを入        力し,これを端記号表(Terminal Symbol Table},リ        ソース表(Resoロrce Table)およびアセンブラ表(As・

       5embler Table〕を参照しながら,トークン{token)と呼        ばれる単語の列に分解する。端記号表には端記号が,リ        ソース表には,リソース名と属性が,およびアセンブラ        表にはニモニックとコードその他が,モれそれ,あらか        じめ格納されている。

      脇識1,鯉,         ついで,各トークンは,それがリテラルまたは識別記          旭帥1        号であって,いまだリテラル表(Literal Table)または

       は,対応する表に登録された後,不偏記号(すなわち・

  函_1 MPL200/rlコンパイラの処理遇程      対応する表中の登録位置を示す固定長のポインタ)に変        摸され,不偏記号表に格納される。

      単語解析フェイズで使用または生成される表と,その 本コンパイラにおいて,MPL200/IIの原テキスト   欄構成を図一2に示す。

(3)

 端己号表       リテラル表      屈性ii受  丁・㊦f臼15押b。1丁島ble        Llter白1 hb1壱       且ttr帖直丁己b]e

  Terロ1n旦1 玉y:±〕01       自n玉¶」直nt   Attr1!〕1」te  LP 凸rτユ Addrtエ,      Polnt【r tO        具ttrLlb臼te   P白 nter to R定玉o、ξrLce.

   dh』r(9)      f1瓦竃d{…L〕    blt{1]      b{t【8⊃       16e門t1「i●「 丁息ble       Llte「 1 了轟b1.

∴滅…已㍑蒜  :1識w㌧

  A5 担5↑er T■ble

       領域表

  怜1国酎c C国e 〒γpe l Ty牌2 Type 3 nd 1朝  甑一叩       』h hble

  char{4) blt川 blt{U blt〔1}bft川 b口【11  bitl )       Pol肌er to    戸o nter to    ,o nter to        Ide五tlf¶.r T皐ble  Att叶』ut■hhh   AnrlbLrte ble   引2t 36

      b t胆[       b|tt81       』 t{旦)

   リソース衷       山e    Re事Ourτe T直ble

      LP表         EX表       SNI表

  聞Ource Hほ  Att「帖岨e       LP T晶1・        ロ㌔ble      甜目山1e

:1:二1;

i羅iiご:::::∵  撒 iiiil ii撒   蕊繋_,  剛融    呈慧

      1&悟tlflerτ凸1e

      出国舶drt 5    P田h口rLロ

  エは おロな  ドロエハにヒダ

      or s5凸Ar●   Ubel h e   、h、,{1, f1.ed{コ)        Id2 Fl村

       ch畠 8}      f|瓦国blnl15〕 Hled blnn5}

       r・tl●直   贈臼鴫    ,o㌔」「    書9 L叫叩   臼【ロ」咋● 口誤「 tt       u貝      1¶      [㌔i■]1

   図一2輔解析フェイズで使用また【培成す      1 ∵咽 哩・一:1:lll1 1       る表とその橋構成        i 1 輌.当    二三需三耐・一・・.一..

        τ【■ 」」ロ  ㌔ ■u  u    虹tp 輪t● ㌔ ●t●

      ■ 旬可●.       』暫尾●.

      t■ P.1† 1・       tu.性]τ・ 1■

       ロ ロバ   らけは     ら ロ    ロコロ い

 4.構文解析・意味解析フェイズ      i      l

       ,引叫●  【■ 司1 「●胞、●     但団 t        リロ  ロ      ユ  れロ

㌘薦と㌫1㌶から不偏言己号 , 酬一備恒璽

      ロ  へ   を入力し,MPL200/IIの構文規則に一致するかどうか調    ラベル表        ぺる。正しい構文であることが認識されると,各種の表     幽山山

r■1朽1倉「 【● ㌔ ¶■r 1■ ,引●■ 1● A1¶■|h1● 1tr U.与r1■ t 11

と中間コードを生成するための活動ルーチン {action    l酬lll 遍1 1ご1㌫ぷ 抽    1   1山r

il》璽1羅㌻薔霊蕊欝…}ソ嘉当灘1

 図3に,このフェイズで使用または生成する主な表と,      図一3 構文解析・意味解析フェイズで使用ま        たは生成する表とモの欄構成

その欄構成を示す。各表の使用目的を,以下に説明する。

 属性表{Attribute Table)は,識別記号とその屈性      F臨岸1‥幽・

      ぱし ち エロ     げ   ロおロエコ

(entry, resource,|itera1のいずれか)の対応関係を      5w口 [。・闇・

       おエゆ  ヒロ   へ

保持するために使用される。また,領域表 〔DOmain       椥; [。・h Table)は,識別記号に対する宣言の有効範囲を保持する       :1〔㌫鷲 伽岡、

ために使用される。次に,例を示す。図一4は,宣言の有       [『叩t叩眺 効範囲を示すためのMPL200/IIの原プログラムの例で      伽【㌫.1臓陸

ある。図一4の主外部手続きEXAMでは・STARTと      図_4 宣言の有効範囲を脱明するためのプロ TRUEは,それぞれ16進定数と10進定数に割付けられて         グラムの例

11叫叫 t川

(4)

いる。これは,内部手続きINPROCにおいても有効であ   では,セルにおけるオペレーション欄とオペランド欄の る。また,STATUSとCOMMANDは, EXAM中で   みが生成される。残りの欄は最適化フェイズで生成され,

は,ともにリソースMB に割付けられているが,   セルの構造が完成する。オペランド欄はオペレーシヨン INPROC内では, FW OとFW 1に割付けられる。    欄の内容によって,その糊構成が決定される。オペレー  図一5は,図一4の例題プログラムを入力したときに生成    ション欄の内容がラベルまたは無条件分岐μ1のとき される各表の内容である。主外部手続き EXAM1および   は,オペランド欄はラペル表へのポインタ欄のみから構 内部手続き11NPROC の宣言の有効範囲は,領域表の第   成される。オペレーション欄が条件分岐型μ1のときは,

1行および第2行で,それぞれ示される。したがって,   オペランド欄は,ラベル表へのポインタ欄と分岐条件欄 EXAM中の文を解析するときは,属性表の第1行から   から構成される。また,その他のオペレーション欄の内 第4行までで示される対応関係が有効であり,一方,   容に対しては,オペランド欄はソース(source)およびデ INPROC中の文を解析するときは,第5行と第6行で示   スティネイション(destination}の2個の欄から構成さ

される対応関係が優先することになる。      れる。

      次に,中間コードの生成過程を例で示す。図6は,

        』 1▲ 1   1M 1山 【H°1       WHILE文の構文規則に活動ルーチンを挿入したもの        である。図一7に示す文が入力されると図一8に示す中間       匂 τ辿      コードが生成される。中間コードは,骨組み(skelton)と        してあらかじめ用意されており,活動ルーチンによって,

       その一部が変更され,出力される。この例では,活動ルー

       {〆r)11虐● ;:● 輪〔LrlL{ 【51冒e●1■b■1]  o畠dltfon> {口ener41■・酉そ、 1e}

       口〕 口』L庁n  {庁rit一甘¶t1●}

   図一5 図4の例題プログラムによって生成さ

      れる各表の内容       田一6 活動ルーチンを含むWHILE文の構文       規則  {…1:活動ルーチン  リテラル表には,μP中に現われるリテラルがすぺて

格納される。しかし,LP表(LP Table)には,μ1によっ         L勺II1【し叩 6PI DO剛 c互o CR1:

て実際に参照される〔μ1のオペランドに指定される)リ      図_7 WHILE文の例 テラルのみが,ピット形式で格納される。LP表中のデー

タは,μPが制御記憶に・一ドさ2tる際に・°一加メモ  ・ ・1t・n    ぬ,,,エ リのLP領域に格納される。       1

図.4の蠣プ・グラムのEXAM中の識男1記号のう  ; ち,TRUEは宣言文によって数値 1〃を割付けられて     4 いるので,その属性は一般にはリテラルであるが,図一5     6 で劇ソースiこなっている・これ}ま U−200Lの1 @ :

スに,常に1を値とする定数レジスタ COOOrが     g 熊されており,これを用いることによって,よ醐率  11 的なμPが得られるからである。       ロ

行 、J(M、t,i。)は酬・一ド(i・t・m・di・・ec・d・)を 1:

格納するために用いられる。中間ゴードの単位はセル     ;1

(Ce1D と呼ばれ,図一3に示すように双方向のリンク     17

{F。,w、,dLi,已よびB・ck・・a・dLi・k)付きリ醐  1;

造をもっている・また・リソースの飴をチェックする  ;i ためのチェックピット都をもっている。これについては,

最適化フ。イズで述べる.構文解枯意味解析フ・イズ   昏8図7破廟す神間・一ドの生成

(5)

チンsave−labelによって()1}が設定される。また,   の型(type 2)は・分岐型のμ1である。第3の型(type generate−whHeによって(}田が設定され,骨組みの   3}は,主記憶や制御記憶へのアクセスおよび機能分岐な 1〜12が出力される。このとき,骨組みの13〜21はス   どに閏するμ1である。また・第4の型(type 4〕は・ロー タックされる。emit−whileは,スタックされた骨組みを   カル記憶に必要な値を設定するためのアセンブラ命令で ポップアップして出力する。      ある。したがって 第4の型からは中間コードは生成さ  ソースμP中に現われるラベルおよびコンパイラ内部   れず,対応する表〔EX表またはSNI i2{}に指定された で生成されるラベルは,すぺてラベル表に登録される。   値が格納される。

また,SSA文が入力されるとSSA表が生成される。     図一9にアセンブラ文の使用例と・それに対して生成さ  4.2. インラインアセンブル処理      れる中間コードを示す。この例からわかるように,アセ  ここでは,高級言語で書かれたプログラムの中に,ア   ンプラ文はIF文と共に中間コードに変換される。また・

センブリ言語で書いたプログラムを組込むインラインア   DC命令は中間コードに変換されない。この例では・DC センブル処理について述べる。      命令のオペランドのニモニックの示すμ1のオペレー  アセンブリ言語で記述したμPは,付録に示すように   シヨンコードがEX表に格納される。たとえば・図 9中

・ASSEMBLER〃と・END〃で囲んで高級言語の中に   の最初のDC命令では,ニモニックAに対するオペレー 組込む。ラペルを定義するときは,ラペルの後に・:・   シヨンコード □1000〃の下位4ビットが・EX表の を置く。またアセンブラ文中の各μ1はフリーフォー   33行目に格納される。

マ。ト(f,,,f。,m、t)で記述でき、その終り}・は・;  なお・EX・1・SNI・1についての説明は省略する(文 を置く。       献13参照)。

 セセンブラ文中に記述するμ1は,その記述形式に    4・3・中間コードの選択

よって4種類の型に分かれる。第1の型{type l}は,    中問コードを生成するとき・同一の文から数種類の中 デ_タ転送および各種の演算に関するμ1である。第2   問コードの生成が可能な場台がある・MPL200/IIコンパ       イラでは,このような場合〜語数が最小となる中間コー       ドと実行時間が最小となる中間コードの2種類を用意       し,利用者による選択を可能にしている。

       次の文は,あるリソース〈Rつの内容を,定数nで示       すピット数だけ右ヘシフトし,リソース<R>に代入す       ることを指定する文である。

      〈R>=<R°> SHR ,1;

       この文に対する中間コードは,図一10に示すように6       種類が考えられる。各中間コードに対するオブジェクト       μPの実行時間と語数を表1に.示す。また,図11には語数       とnの閏係を,図一12には実行時間とnの閏係を,モれそ       れ示す。図一1ユ,図一12における太実線部は、それぞれ語       数最小,実行時間最小となる中間コードを示している。

       これらの中間コードは,いずれも骨紐としてコンパイ       ラに保持されており,利用者の指示に従って選択され,

      ロロいさ

   }         出力される・・ンパイラに対する才旨示は一ンパイ塒

  コ} 加o卯恥晒帥        のジョブ制御文におけるパラメータとして,SPACE〔語

  コユ    ロバ サロロロロロロロロロせり

  ・!一一・  1…・・一一  数最小)またはSPEED{実摘臓小}のいずれかを与

  6」      えることによって行われ.る。なお,中問コードの選択は,

    m 山      現在千シングルシフトおよびダブルシフトのための文に    図一9 アセンプラ文の使用例とその中聞コード      対して行っている。

(6)

皿±い1 @   −(。、已1芸已㎝≒

〔・}SR・1を使用・た酷        一(・一・) (・+・)/212・

、__、} ,v.R、,、㍗   (・−2)i(・+2)/2 2(・+

::::i::::ト::::i::::}・ :÷i)li 1鷲ii 国.・・柏   、b−・‥・2。   一(・−2)14  }2〔・+4}

頴 亡恒  く品 「      袈一1 図10の中間コードの膳数と実行時間

5R    <R》   <R>

(b)SRμ1とSRDμ1を使用した坦台

{c)BCμ1ととSRμ1を使用した坦合

 [d・ハ) n・z問+1      {d㊤2} n早2凸

(d)BCμ1とSRDμ1を使用した坦合

70

60

50

図一10 <R>=<R )SHRn;に対する中間       40     コード

口      30 15   ▽ 一 【a)       ・

ロ  ム ー (b}

   。   〔c〕

11@..{d】      20

10

      ず       ロ

1 ユ5 7911口15       1 3 5 7 9 111コ15

図一11裏1における語数とnの関係のグラフ         図一12表1における実行時間とnの閲係のグ     衷現      ラフ表現

       2に,各チェックビットのもつ機能を示す。また,この

5・最適化乃イズ      フ.イズでは,ラペ、レ表のリストポインタ部姓成され

 最適化フェイズでは,行列中に線形に配置された中間   る。リストポインタは,各ラペルを飛先とする分岐μ1の コ_ドを入力し∴これに双方向のリンク構造を与える。   セルを指示するリスト部を保持し,クロスリファレンス ついで,リソースの競合をチェックするためのチェック   (cross referen〔e}を効率良く行なうために使用される・

ピットを設定する.リソ_スの競合は,このチェックピッ    文献15で述べたμPの有向グラフ表現における各節 ト部礁理滅桁なうことによって検出される。欄 は,1個(・1タイプのセ・レのみからなる)ないし複馴

(7)

(ラペルタイプとμ1タイプのセルの対など)のセルに     き,拘の直接後行節は,;5のみである。

対応している。したがって,各節に対する有向グラフの    回直接先行節がH、であり,かつOP〔刷=BCのと ための操作は,その節に対応する1個ないし複数個のセ     き,拘の直接後行節は,]、と恥である。

」レに対する操作を意味している。      したがって,このような場合,直接後行節を決定する  図13に,μPの有向グラフ表現の例と,セルおよびラベ   ためにH、の直接先行節を一時的に記憶しておかねばな ル表の関係について,簡単な例を示す。         らない。

       n弓 日,I

   niB I       l,,四

    l

       n1       BC戸I    n2 NOP方1      

       n3       n】 £戸1>       1       オ        n}

       n.

{a)μpの有向グラフ表現の例

L占1†州.         d1       図一14 直接先行節によって直接        一      後行節が異る例

    鷲蕊  ト :灘議繋璽1離竃ii

 ll tF・叶  」6      , 1

       ;        属する節,1。から径路をたどる場合は,内部手続きにお        B    占   n1    ける節π,の直接後行節は,1,であり,これは一意に定ま       Nop       n、    る。しかし,内部手続き内の節拘から径路をたどる場       合,n,の直接後行節は不定である。したがって,このよ       うな場合,径路の探索は不可能である。実際には,コン

(b)〔a)の有向グラフの内部データ構追表現        パイラでは,デッドアルゴリズムの適用中にこのような

図_13μPの有向グラフ衷現の例とモの内部      状態が発生すると径路の探索を中止し,デッド状態では    データ構造衷現      ないものとしてデッドアルゴリズムの適用を終える。

 このフェイズにおける最適化処理は,文献15で述べた         酬..、t.川,

最適化技法を,内部データ構造で表現された有向グラフ      幽    螢 に適用することによって行われる。その際,注意しなけ       n・BAL♪1

ればならないのは,デ。ドア,レゴ1協樋用したとき     l n££nt「y

の直接後行節の取出し方法である。すなわち,ある条件      m     i

ll::ll蕊鷲繁:きない場合があ  ±甲

      コ       ロ  第1は,直接先行節を調べなければ直接後行節が決定       」     1

できない胎である。図14に,この例を示す.ここでは,    l nF輌n 励醐後行節としては,・・と,1・が離られる・しか   図一15雌後行蹄不定、な酬

し,実際には,H、の直接先行節によって,次のように直

接後行節は異る。       最適化を行うとき、ここで示したデータ構造は次のよ  {a)直接先行節がH、のとき,}1、の直接後行節はH、   うな利点をもっている。

  のみである。         ω七ルは,コンパクトに設計されているので,主記

 (b)直接先行節が,1,であり,かつOP(,沽=Bのと     憶装置に常駐させることができる。そのため・セル

(8)

の参照が嗣て鞠こ実行できる・    9.あとカ・き

② セルは,双方向のリンク付きリスト構造をもって

  いるので,挿入,削除,交換など,最適化を行なう    本論文では,MPL200/IIμPコンパイラの構成と   ときの動的な構造変更が容易であり,かつ,高速に   ンパイラにおける各フェイズの処理およびデータ構造に  実行できる。       っいて述べた。

〔3}リリ_スの競合のチェックは,チェックピット部  ・ 本コンパイラの設計において最も重点を置いたのは・

  の論理演算で行なえるため,高速に実行できる。    その高速性である。とくに最適化フェイズでは中間コー

(4〕ラペル表のリスト部を用いることによって,その   ドを繰返し走査し.交換,削除,挿入,複写など行なわ   ラペルを飛先とするμ1のセルが容易かっ高速に逆   なければならない。そこで,中間コードを双方向リンク  参照できる。       付きのリスト構造のセルで表現し,かつ・セルは主記憶        に常駐できるようコンパクトに設計した。その結果,

 6.べ_ジチェック・フェイズ      PASCALマシンのエミュレーダ9}の場合・最適化は約        500秒で処理でき,実用上,満足できる効率が得られた。

このフェイズでは・セ・レのリンク付きリ欄i罐  なお,本,ンパイラでは,ASSEMBLER文を含む場 現され坤間・一陪U 2°°Lのショートアドレス @合源則として唖化は適用できない.その融は,飛

ページング}・よる制約を満足するよう変更す O:.こ≡ 先番地がデータ操作{・よって生成され蹴な分岐形式 より・・Pは・実際には中間コードの形式のロでのる @(躰的1、は,SCR}こ飛先番地を示す数値を酬するこ が彌実上・制御記憶に割り付{ナられる・   とによって頒が発生する分岐形式)が存在するためで

本フェイズの処理については文献171こ述ぺたのでこ @ある.

ではこれ以上ふれない。

      謝 辞  7.コード生成フェイズ

      御討論いただいた安在研究室の方々に感謝します。ま  コード生成フェイズでは・中間コードをもとにアセン   た,日頃,御指導いただく九州大学の吉田将教授に感謝

プリ・コードを生成する・中間・一ドはセ・レの並びで表 します。

わされ,中間コードの並びはセルのリンク構造で表わさ れている。したがって,このフェイズでは,セルの順方

向MF。・w・・d Li・k皓どり,識別識やラペ 1)A、,aw、1、1 AR、t:、、:,,㍍.、 F。、nd、,i。。,。・

ル表などを参照しながら,セルの内容をもとにアセンプ    Micr・programmingl P,416, Ac記emic P祀田lnc・・New York リ・・一ドを順次1・繊る・また・アセンブリ゜コー @21駕 、n、 Ullm、。」.D、P,i,ci,1,、.,C.m,il,,D,、

ドの最御・は,・一カルメモ に酬]する抽の定数の 、ig,,,. B。、, Addi,。n.W,、1,, P、b. C。.(197・).

宣言部を生成する。アセンブリ・コードの表記法は,メー    3〕Don。van. J・J・:Sy5terns Programming, P・4B8・McGraw

カーiこよって聞⊇た・Pアセンブラの仕様に台わせ @、;{il:=);、H.、A、、,h.1 l m、、mP,。9,ammi,,1、,.

ている。       guage MPL. AFIPS Conf. Proc. SJCC, PP.159−177〔1971}.

      5}Law5加, H、、U且nd Blomborg, L.:The Da由saab FCPU  8.アセンブル・フェイズ      Microprogr君mmin匡Language, Pr。c、 of ACM SIGPLAN・

       SIGMICRO Interfヨce Meetlng, pp.86−97(1973).

 このフェイズでは,アセンブリ・・一ドを入力し,目 6)仕・…i・h…AMi…P・・9−i・・L・・g・・g・f。・the

的・一ドを生鰯.目的・一ド}±,U−2・・L−1御 =蒜:1:51GPLAN SIGMICR°lnte「f MEeレ

記憶装置中のローダ・プログラムによってWCSにロー    7)Pa且er50n. D, A.:5trum:Structur∈d Micr。pr・gram D已・

阿能嬬註なっている.この目白勺・一ドは,チ・ン ・d・・m・n・S・…mf・・C・・・…Fi・m・・…竺EET「a[5・°

ネ・レ蹴嘘由して,U−20・Lのディスク・フ・イ ,1°=蒜r:°1:謬、瓢 、6}8 Hi、卜1,,d

ルに転送された後,U−200Lのパネル操作によりWCS    L加g岨g£f。r H。ri2。ntal Micr叩rogramming,1EEE Tr自帖・

に・_ドきれ,実行される。       ・…m岬・・v・LC・23・N・』・・P・79ユー8°]〔1974)・

(9)

9)萩原:マイクロプログラミング,P・343,産業図8},頭京{1977〕.    16}重松、飯野,安在:マイクロプログラミング言語MPL200/II,

10〕馬塀.藤本・萩原:MPGマイクロプログラムコンパイラ、情報      九州工大研究報告(工学)、 No.37、 PP.115−]22(1978}.

 処理,voL l, No・LPP・16−25(197B}.       ]7)重松,飯野,安在:MPL 200/II Recur8iΨe Descent Compiler Il)松崎:実用化の試みが始まったマイクロプログラムの最適化、     とモの簡単なコンパイラ記述言藷,情報処理学会諸文誌,、・ol.2⑪,

 日程エレクトロニクス・節185号.PP・76−9王〔1978}.       No,4, PP.346−354{1979〕,

12)三上・房岡1ファームウェア ジェネレータシステムの構成、     18}飯野,松尾,重松,安在:MPL 200/IIコンパイラの拡張一イ  情報処理学会計算機アーキテクチ苧資料32−4(1978).         ンラィンァ七ンブラー,電気四学会九州支部大会論文∬…,p口 且3}FACOM U−200Lマイクロプログラムプロセッサ動作]取扱説     334〔1978}.

 明{輻富士通株式会社、      19)重松,阿南,有川:高水箪マイクロプログラム記述用言語によ 14)重松・安在:オーバーレイ方式によるダイナミックマイクロブ     るエミュレータの記述とその堰適化効果,情報処理学会胎文誌  ログラミングシステム・九州工大研究報告(工学)・No・331 PP     Ψol.21, No、2、 PP.140−148〔1980).

 ユ21−126〔1976L      20)飯野:マイクロプログラミング支援システムの研究,九州工提 15)重松,有川,安在:マイクロプログラミング言語MPL200とそ     大学修±謹文、 P.81{1980).

 の最適化技法,情報処理、Vol.19, No.8, pp.749−757〔1978}.

付録1 アセンプラ文の構文規則      付録2 セルのチェックピット部

       .       O  t 2 34 s 6 7 8 9 1011

ζ昌1 ■がep耳Ut田は}::− 帖 口屯し[良{畠 民1●r−11h■匂1開twctl前, 白口

       ⊇・田▲b・d・fロト11き

u°1帥1e「111L‥口t砿tl。n・:: 【・1・b・b;】耐・ 印cu口・:        セルの示すulが4TのDCIまたはSCIのとき1ま、 DCI4Tまたは

鋼一一・・⑭・1−1−1一

@  

莞璽需羅鷲納される・その{也酬ま蜘条件

ct押書h::・口P㌔句芦巾か.・叩●F 由 1     1P 1P 4哲d口 ⇔.口Pロnnd・

文叩レ::・削1A!山凹1虻151Cl胆1脚1ロロl

   Ul5Ll5賠15LDl臼      lb)

<叩er良超,::・て西 田冗.,       忙1 dP.{1」問 〉::・{開n董t」nt>

{町閑2・::・甜X耐川。n.1 br占蒔Ch}¢1 』 1       [n     虻.{co㎡1tlOn・d直巳b 1

    聞、〈㎝副u hl畠d●e ・      19)

qコL訂、COnd 1竃1字L口1 brロn{h±L r:−  8 1 肌

q。剛t1 }::・11Pμ1[lRlNl 15

qn1■ddm巳P;;・エo叫凹nt}       ¶n

輌 3 ・・ 伝叩t叩1h・t叩ctl脚,1鞭      4」}字』⊥。。・副』』,加b占卯,エ。。。 ,。。ヒ臨.1。b。1 qo寵ml ln 刊etlon,三:・ 岨£01岨Eロ.冒1ロロ.阿.斑τ1日凹.1略T l

         岨【q 5弘1岨[o 1晦51 5c 1岨τOJ略丁 50PRl    (a}〜(c):並列実行によるリソースの競告が発生する。

          ITl剛1・5cc l幽1了・ 皿・[紅1         (f)1  並列尖行に.kってのみSCIは正常に実行される。

         5頸15SA・ 蠣1蝶1阻1S蝋      (g),(h):並列実行によるリソースの競合が発生する。

      (」):  並列実行させろためにSCIのconditio11部を変更 く¶yρ.わ:: 尻ロ・qx.副口5P:轍噂即1       しなくてはならない。

    尻5叫 ハ1噸齢 1}:可戸■1}      0}:  特殊な仲間コードであることを示す。

qx−OP」::・凸1梱凸1κ15匡lo良1川Ol£岨1[瓦

q苦墨dd問朋, ::■ 屯帥 Unt●

oet 7^ 5CI

1草ハ 且ourco or

@・ H且. 5R.

de5tlnロヒ10n

@5iR. IRご

O円ロヒ⊥加・ s口P頁

lb) deロd帥ヒ10h ■ ∧8 oper占U加− 入Rε口 忙1 孟ource ロξLd書3ヒ1∩白tlon 1 0PR o er占 on − s;入

{引 且nv 叩or●clon. D基

le, 自ou工亡草 or do ね白u顛 . H力 Op訂ロ 翻・ 乱耶泊.甘

[n 直ny mCOndltlon ●OP 凸u昏n■自pcr凸uon・ 田:、 5N1

F, 1㌔ H」

Tcc e

19) 五〇u:二凸 {〕r ワ〇urco  ・ OEC

doエtlnユt1ロn ■亡? 艦謡::: 口亡. sr{工j

lh) do耽1 轟u朝 . OPF 撃モ盾獅р撃浮nn ■Op肛泊u口. EC. 5HI a

¶n OPロr晶uon

̀Hハ,凸己.

s.5RO.5LO,

S

口P, 撃?シコdluon ●OP■r 工朝・ oc.εNl q

{細1.ddr●5P::.鞠5Unt>

参照

関連したドキュメント

理工学部・情報理工学部・生命科学部・薬学部 AO 英語基準入学試験【4 月入学】 国際関係学部・グローバル教養学部・情報理工学部 AO

 当図書室は、専門図書館として数学、応用数学、計算機科学、理論物理学の分野の文

関西学院大学には、スポーツ系、文化系のさまざまな課

6月1日 無料 1,984 2,000

関谷 直也 東京大学大学院情報学環総合防災情報研究センター准教授 小宮山 庄一 危機管理室⻑. 岩田 直子

第4版 2019 年4月改訂 関西学院大学

・底部にベントナイトシート,遮水シート ※1 を敷設し,その上に遮水 シート ※1