研究課題/領域番号 |
61850061
|
研究機関 | 筑波大学 |
研究代表者 |
板野 肯三 筑波大学, 電子情報工学系, 助教授 (20114035)
|
研究分担者 |
石畑 清 東京大学, 理学部・情報科学科, 助手 (70125988)
白川 友紀 筑波大学, 構造工学系, 助教授 (20112021)
井田 哲雄 筑波大学, 電子情報工学系, 助教授 (70100047)
中田 育男 筑波大学, 電子情報工学系, 教授 (70133022)
佐々 政孝 筑波大学, 電子情報工学系, 助教授 (20016182)
|
キーワード | コンパイル / ハードウェアコンパイラ / ハードウェア字句解析器 / ハードウェアパーサ / 並列意味処理アルゴリズム / 手続き型言語 |
研究概要 |
プログラムの作成の過程で重要な位置を占める道具として、コンパイラなどの言語処理系があるが、一般にコンパイラはその処理速度がおそく、大きなプログラムをコンパイルする場合には、少しの変更に対しても大量の時間を必要とする。そこで、コンパイル時間を普通のソフトウェアのコンパイラに比べ、10から100倍にできるハードウェアのコンパイラを試作して、高速コンパイラが実現できることを実証できることを示した。具体的には、62年度にひきつづき、ハードウェアの製作を行った。ハードウェアは、全体で4つのユニットで構成されており、これをホスト計算機であるSUN4/110Mに接続している。ハードウェアコンパイラのうち、スキャナ(字句解析器)とパーサ(構文解析器)は、専用のハードウェアとして構成した。スキャナは、直接実行型計算機UDECの字句解析プロセッサのハードウェアを簡単にして、構成している。パーサは、YACCの生成するパース制御テーブルを基本的には使用できるように設計されたLR型のパーサとしている。これらのユニットともに、専用ハードウェアではあるが、言語定義にあたる部分を外から設定できるようになっている。意味解析ユニットとコード生成ユニットは、トランスピュータを用いて構成した。とくに、意味解析処理には、並列処理を行うことを前提として、並列意味解析アルゴリズムを設けて試用した。この並列意味処理アルゴリズムでは、もとの言語定義のレベルで属性文法の記述を拡張して、並列意味処理可能な部分を明示的に指定しておき、コンパイル時に、ソースプログラムの解析をしながら、並列意味処理が可能なところを見出して、これを分散させるという方式を採用している。現在、言語としては、PL10に関しては、ほぼ完全に、またPASCALについては一部が処理可能となっている。
|