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

2009年4月9日

山中湖からの富士

Filed under: フォトログ — タグ: — い~ぐる @ 11:15 PM

R0010536.JPG
Ricoh R8

UMLからSFLへの変換(XSLT編)

Filed under: Weblog — い~ぐる @ 6:36 PM


小型CPU m8のUML図から、SFLのスケルトンに変換するXSLTスタイルシートを作成した。

図のUMLを自動変換して得られたSFLコードを↓に示す。
データタイプのbitがちと気持ち悪いのだけれど、それ以外は、まぁまぁ、納得できそうなUIではないかと思う。

もちろん、スケルトンができて終りではなく、これが始まりなので、コアコードをどのように開発するかを検討する必要がある。OMGのMDAのように、基本クラスに演算子を全部定義するようなマネはしたくなく、もう少し賢い方法を模索中。

declare m8 {
instrin ack;
instrout mr;
instrout mw;
input datain<8>;
output addr<8>;
output datao<8>;
instr_arg ack ( datain );
}
declare alu8 {
instrin exe;
input op<4>;
input inA<8>;
input inB<8>;
output result<8>;
instr_arg exe ( op,inA,inB );
}
module m8 {
instrin ack;
instrout mr;
instrout mw;
input datain<8>;
output addr<8>;
output datao<8>;
reg_wr acc<8>;
alu8 alu;
reg_wr pc<8>;
instr_arg mr ( addr );
instr_arg mw ( addr,datao );
{
/* common operations */
}
instruct ack {
/* instrin operation */
}
}
module alu8 {
instrin exe;
input op<4>;
input inA<8>;
input inB<8>;
output result<8>;
{
/* common operations */
}
instruct exe {
/* instrin operation */
}
}

Powered by WordPress