

[コンピュータシステムの理論と実装――モダンなコンピュータの作り方](http://www.oreilly.co.jp/books/9784873117126/)
(原書名: The Elements of Computing Systems: Building a Modern Computer from First
Principles) のハードウェア記述言語 (HDL) で記述されたプログラムに応じた回路を生成するアプリケーションを作成しています。

これを作成するにあたり現在構文解析を行っているのですが、これを行うにあたり参考になるサンプルプログラムなどあれば教えていただきたいです。

使用言語は現在Javaを使用しています。


CC BY-SA 3.0
2015-11-17T07:44:16.947
18940
2015-11-17T16:11:17.113
2015-11-17T08:48:43.030
76
13273
question
java
コンピュータシステムの理論と実装におけるハードウェア記述言語の構文解析について


JavaCC を調べてみてはいかがでしょう。

<http://codezine.jp/article/detail/367>


CC BY-SA 3.0
2015-11-17T10:11:32.020
18947
2015-11-17T10:11:32.020
5008
18940
answer


`VHDL`, `Java`, `Parser`
というキーワードで検索すれば見つかるものですが、以下のプロジェクトにVHDLのパーサが実装されているようです。

<https://github.com/gburdell/parser/tree/master/src/parser/vhdl>

参考になるかもしれません。

他にも以下の様なプロジェクトが見つかるのですが、こちらはダウンロードするのにユーザレジストレーションを要求されるので、ちょっと敷居が高いと感じるかもしれません。

<http://home.wtal.de/software-solutions/vhdl-parser/>


CC BY-SA 3.0
2015-11-17T15:37:59.827
18956
2015-11-17T15:37:59.827
208
18940
answer


Javaのパーサージェネレータと言ったら[ANTLR](https://ja.wikipedia.org/wiki/ANTLR)でしょう。文法の定義ファイルから、パーサーのソースを出力してくれます。

メジャーな言語の文法は大概実装されています。VHDL, Verilogともあります。

<https://github.com/antlr/grammars-v4/tree/master/vhdl>


CC BY-SA 3.0
2015-11-17T16:05:21.710
18957
2015-11-17T16:11:17.113
2015-11-17T16:11:17.113
7837
7837
18940
answer