アダルト・ヴァイオリン May the force be with you..

2009年6月11日

【不定期連載】 UMLで16ビットCPUを作ろう:第1回 入出力仕様

Filed under: Weblog — い~ぐる @ 8:51 AM


時間があるときだけ、少しずつ進める不定期連載第1回です。
UML2SFLを用いる例題として、16ビットCPUを作ってみることにします。

第1回は、入出力仕様を決めます。アドレスビット数以外はアーキテクチャにあまり依存しない汎用的な仕様にしておきます。(アドレスは、少し多めにビット数を取っているので、多くの16ビットアーキテクチャはこの枠組みでできるのでは?)

5分くらいで、ぱっと作ったので、抜けがあるかもしれませんが・・

UMLのクラス図だと、タイミングを記述できないのが難点ですね。タイミングチャートで表すのがまっとうかと思いますが、残念ながらArgoUMLにはタイミングチャートはないので、各トランザクションの概略はシーケンスチャートで表しましょうか・・。

最近のメモリはいろいろなインタフェースのものがあって、小規模のFPGA内蔵用CPUがメモリコントローラを内蔵するのは得策ではないので、メモリコントローラへの接続に便利なようにインタフェース仕様を決めていきます。

具体的には、メモリトランザクションは、1クロックのコマンド信号にデータ・アドレスを載せて送出することにします。

一方、割り込みや、停止要求は、要求元が取り下げたり、複数の要求元から発生する可能性があるので、レベルセンシティブな信号とするのが良い方法です。

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress