mirror of
http://172.16.200.102/MOISE/Pattern-Instanciation-On-System-Engineering-Model.git
synced 2025-11-26 02:57:58 +01:00
Initial commit.
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
pattern N_Version_Programming(nb_in, nb_out, nb_comp) {
|
||||
component NVerProg(in i[nb_in], out o[nb_out]) {
|
||||
component dupl[nb_in](in i[1], out o[nb_comp])
|
||||
component comp[nb_comp](in i[nb_in], out o[nb_out])
|
||||
component vote[nb_out]( in i[nb_comp], out o)
|
||||
i -{Transpose}-> dupl.i
|
||||
dupl.o -{Transpose}-> comp.i
|
||||
comp.o -{Transpose}-> vote.i
|
||||
vote.o -{Transpose}-> o
|
||||
}
|
||||
}
|
||||
35
examples/pseim.examples/Test_MoonG_1/result.seimx
Normal file
35
examples/pseim.examples/Test_MoonG_1/result.seimx
Normal file
@@ -0,0 +1,35 @@
|
||||
model result {
|
||||
component System(in i1,in i2,out o1, out o2) {
|
||||
component Sub2(in i,out o)
|
||||
component Sub1(in i1,in i2,out o1,out o2) {
|
||||
component vote_2(in i_1,in i_2,in i_3,out o_1)
|
||||
component vote_1(in i_1,in i_2,in i_3,out o_1)
|
||||
component dupl_2(in i_1,out o_1,out o_2,out o_3)
|
||||
component dupl_1(in i_1,out o_1,out o_2,out o_3)
|
||||
component Sub1_3(in i_1,in i_2,out o_1,out o_2)
|
||||
component Sub1_2(in i_1,in i_2,out o_1,out o_2)
|
||||
component Sub1_1(in i_1,in i_2,out o_1,out o_2)
|
||||
i1 -> dupl_2.i_1
|
||||
i2 -> dupl_1.i_1
|
||||
dupl_2.o_3 -> Sub1_3.i_2
|
||||
dupl_2.o_2 -> Sub1_2.i_2
|
||||
dupl_2.o_1 -> Sub1_1.i_2
|
||||
dupl_1.o_3 -> Sub1_3.i_1
|
||||
dupl_1.o_2 -> Sub1_2.i_1
|
||||
dupl_1.o_1 -> Sub1_1.i_1
|
||||
Sub1_3.o_2 -> vote_2.i_3
|
||||
Sub1_3.o_1 -> vote_1.i_3
|
||||
Sub1_2.o_2 -> vote_2.i_2
|
||||
Sub1_2.o_1 -> vote_1.i_2
|
||||
Sub1_1.o_2 -> vote_2.i_1
|
||||
Sub1_1.o_1 -> vote_1.i_1
|
||||
vote_2.o_1 -> o1
|
||||
vote_1.o_1 -> o2
|
||||
}
|
||||
i1 -> Sub1.i1
|
||||
i2 -> Sub1.i2
|
||||
Sub1.o1 -> Sub2.i
|
||||
Sub1.o2 -> o2
|
||||
Sub2.o -> o1
|
||||
}
|
||||
}
|
||||
29
examples/pseim.examples/Test_MoonG_1/result2.seimx
Normal file
29
examples/pseim.examples/Test_MoonG_1/result2.seimx
Normal file
@@ -0,0 +1,29 @@
|
||||
model result {
|
||||
component System(in i1,in i2,out o1 ) {
|
||||
component Sub2(in i,out o)
|
||||
component Sub1(in i1,in i2,out o1 ) {
|
||||
component vote_1(in i_1,in i_2,in i_3,out o_1)
|
||||
component dupl_2(in i_1,out o_1,out o_2,out o_3)
|
||||
component dupl_1(in i_1,out o_1,out o_2,out o_3)
|
||||
component Sub1_3(in i_1,in i_2,out o_2)
|
||||
component Sub1_2(in i_1,in i_2,out o_2)
|
||||
component Sub1_1(in i_1,in i_2,out o_2)
|
||||
i1 -> dupl_2.i_1
|
||||
i2 -> dupl_1.i_1
|
||||
dupl_2.o_3 -> Sub1_3.i_2
|
||||
dupl_2.o_2 -> Sub1_2.i_2
|
||||
dupl_2.o_1 -> Sub1_1.i_2
|
||||
dupl_1.o_3 -> Sub1_3.i_1
|
||||
dupl_1.o_2 -> Sub1_2.i_1
|
||||
dupl_1.o_1 -> Sub1_1.i_1
|
||||
Sub1_3.o_2 -> vote_1.i_3
|
||||
Sub1_2.o_2 -> vote_1.i_2
|
||||
Sub1_1.o_2 -> vote_1.i_1
|
||||
vote_1.o_1 -> o1
|
||||
}
|
||||
i1 -> Sub1.i1
|
||||
i2 -> Sub1.i2
|
||||
Sub1.o1 -> Sub2.i
|
||||
Sub2.o -> o1
|
||||
}
|
||||
}
|
||||
10
examples/pseim.examples/Test_MoonG_1/source.seimx
Normal file
10
examples/pseim.examples/Test_MoonG_1/source.seimx
Normal file
@@ -0,0 +1,10 @@
|
||||
model source {
|
||||
component System(in i1, in i2, out o1) {
|
||||
component Sub1(in i1, in i2, out o)
|
||||
component Sub2(in i, out o)
|
||||
i1 -> Sub1.i1
|
||||
i2 -> Sub1.i2
|
||||
Sub1.o -> Sub2.i
|
||||
Sub2.o -> o1
|
||||
}
|
||||
}
|
||||
11
examples/pseim.examples/Test_MoonG_1/source2.seimx
Normal file
11
examples/pseim.examples/Test_MoonG_1/source2.seimx
Normal file
@@ -0,0 +1,11 @@
|
||||
model source {
|
||||
component System(in i1, in i2, out o1, out o2) {
|
||||
component Sub1(in i1, in i2, out o1, out o2)
|
||||
component Sub2(in i, out o)
|
||||
i1 -> Sub1.i1
|
||||
i2 -> Sub1.i2
|
||||
Sub1.o1 -> Sub2.i
|
||||
Sub2.o -> o1
|
||||
Sub1.o2 -> o2
|
||||
}
|
||||
}
|
||||
22
examples/pseim.examples/Test_MoonG_1/unfold.seimx
Normal file
22
examples/pseim.examples/Test_MoonG_1/unfold.seimx
Normal file
@@ -0,0 +1,22 @@
|
||||
model unfold {
|
||||
component NVerProg(in i_1,in i_2,out o_1) {
|
||||
component vote_1(in i_1,in i_2,in i_3,out o_1) {}
|
||||
component dupl_2(in i_1,out o_1,out o_2,out o_3) {}
|
||||
component dupl_1(in i_1,out o_1,out o_2,out o_3) {}
|
||||
component comp_3(in i_1,in i_2,out o_1) {}
|
||||
component comp_2(in i_1,in i_2,out o_1) {}
|
||||
component comp_1(in i_1,in i_2,out o_1) {}
|
||||
i_2 -> dupl_2.i_1
|
||||
i_1 -> dupl_1.i_1
|
||||
dupl_2.o_3 -> comp_3.i_2
|
||||
dupl_2.o_2 -> comp_2.i_2
|
||||
dupl_2.o_1 -> comp_1.i_2
|
||||
dupl_1.o_3 -> comp_3.i_1
|
||||
dupl_1.o_2 -> comp_2.i_1
|
||||
dupl_1.o_1 -> comp_1.i_1
|
||||
comp_3.o_1 -> vote_1.i_3
|
||||
comp_2.o_1 -> vote_1.i_2
|
||||
comp_1.o_1 -> vote_1.i_1
|
||||
vote_1.o_1 -> o_1
|
||||
}
|
||||
}
|
||||
41
examples/pseim.examples/Test_MoonG_1/unfold_1.seimx
Normal file
41
examples/pseim.examples/Test_MoonG_1/unfold_1.seimx
Normal file
@@ -0,0 +1,41 @@
|
||||
model unfold_NVerProg {
|
||||
component NVerProg(in i_1,in i_2,out o_1,out o_2) {
|
||||
component vote_2(in i_1,in i_2,in i_3,out o_1) {
|
||||
|
||||
}
|
||||
component vote_1(in i_1,in i_2,in i_3,out o_1) {
|
||||
|
||||
}
|
||||
component dupl_2(in i_1,out o_1,out o_2,out o_3) {
|
||||
|
||||
}
|
||||
component dupl_1(in i_1,out o_1,out o_2,out o_3) {
|
||||
|
||||
}
|
||||
component comp_3(in i_1,in i_2,out o_1,out o_2) {
|
||||
|
||||
}
|
||||
component comp_2(in i_1,in i_2,out o_1,out o_2) {
|
||||
|
||||
}
|
||||
component comp_1(in i_1,in i_2,out o_1,out o_2) {
|
||||
|
||||
}
|
||||
i_2 -> dupl_2.i_1
|
||||
i_1 -> dupl_1.i_1
|
||||
dupl_2.o_3 -> comp_3.i_2
|
||||
dupl_2.o_2 -> comp_2.i_2
|
||||
dupl_2.o_1 -> comp_1.i_2
|
||||
dupl_1.o_3 -> comp_3.i_1
|
||||
dupl_1.o_2 -> comp_2.i_1
|
||||
dupl_1.o_1 -> comp_1.i_1
|
||||
comp_3.o_2 -> vote_2.i_3
|
||||
comp_3.o_1 -> vote_1.i_3
|
||||
comp_2.o_2 -> vote_2.i_2
|
||||
comp_2.o_1 -> vote_1.i_2
|
||||
comp_1.o_2 -> vote_2.i_1
|
||||
comp_1.o_1 -> vote_1.i_1
|
||||
vote_2.o_1 -> o_2
|
||||
vote_1.o_1 -> o_1
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user