mirror of
https://github.com/hneemann/Digital.git
synced 2025-09-26 14:31:02 -04:00
If there are to many test results, lines are discarded from the result view. They are still executed.
This commit is contained in:
parent
871187305c
commit
311793d7dd
@ -10,7 +10,7 @@
|
||||
<visualElement>
|
||||
<elementName>Comp7485.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="180" y="-100"/>
|
||||
<pos x="180" y="-20"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Comp7485.dig</elementName>
|
||||
@ -20,12 +20,12 @@
|
||||
<visualElement>
|
||||
<elementName>Comp7485.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="180" y="580"/>
|
||||
<pos x="180" y="500"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="160" y="680"/>
|
||||
<pos x="160" y="600"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -35,7 +35,7 @@
|
||||
<int>0</int>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="160" y="660"/>
|
||||
<pos x="160" y="580"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -45,7 +45,7 @@
|
||||
<int>0</int>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="160" y="700"/>
|
||||
<pos x="160" y="620"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -95,7 +95,7 @@
|
||||
<string>A_0</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="540"/>
|
||||
<pos x="-20" y="500"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -105,7 +105,7 @@
|
||||
<string>A_1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="580"/>
|
||||
<pos x="100" y="520"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -115,7 +115,7 @@
|
||||
<string>A_2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="620"/>
|
||||
<pos x="-20" y="540"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -125,7 +125,7 @@
|
||||
<string>A_3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="660"/>
|
||||
<pos x="100" y="560"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -135,7 +135,7 @@
|
||||
<string>B_0</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="700"/>
|
||||
<pos x="-20" y="640"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -145,7 +145,7 @@
|
||||
<string>B_1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="740"/>
|
||||
<pos x="100" y="660"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -155,7 +155,7 @@
|
||||
<string>B_2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="780"/>
|
||||
<pos x="-20" y="680"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -165,7 +165,7 @@
|
||||
<string>B_3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="820"/>
|
||||
<pos x="100" y="700"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -200,7 +200,7 @@
|
||||
<string>A_4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="200"/>
|
||||
<pos x="-20" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -210,7 +210,7 @@
|
||||
<string>A_5</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="240"/>
|
||||
<pos x="100" y="260"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -220,7 +220,7 @@
|
||||
<string>A_6</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="280"/>
|
||||
<pos x="-20" y="280"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -230,7 +230,7 @@
|
||||
<string>A_7</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="320"/>
|
||||
<pos x="100" y="300"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -240,7 +240,7 @@
|
||||
<string>B_4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="360"/>
|
||||
<pos x="-20" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -260,7 +260,7 @@
|
||||
<string>B_6</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="440"/>
|
||||
<pos x="-20" y="420"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -270,12 +270,12 @@
|
||||
<string>B_7</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="480"/>
|
||||
<pos x="100" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="160" y="0"/>
|
||||
<pos x="160" y="80"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -285,7 +285,7 @@
|
||||
<int>0</int>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="160" y="-20"/>
|
||||
<pos x="160" y="60"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Const</elementName>
|
||||
@ -295,7 +295,7 @@
|
||||
<int>0</int>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="160" y="20"/>
|
||||
<pos x="160" y="100"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -305,7 +305,7 @@
|
||||
<string>A_8</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="-140"/>
|
||||
<pos x="-20" y="-20"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -315,7 +315,7 @@
|
||||
<string>A_9</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="-100"/>
|
||||
<pos x="100" y="0"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -325,7 +325,7 @@
|
||||
<string>A_10</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="-60"/>
|
||||
<pos x="-20" y="20"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -335,7 +335,7 @@
|
||||
<string>A_11</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="-20"/>
|
||||
<pos x="100" y="40"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -345,7 +345,7 @@
|
||||
<string>B_8</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="20"/>
|
||||
<pos x="-20" y="120"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -355,7 +355,7 @@
|
||||
<string>B_9</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="60"/>
|
||||
<pos x="100" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -365,7 +365,7 @@
|
||||
<string>B_10</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="100"/>
|
||||
<pos x="-20" y="160"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
@ -375,7 +375,7 @@
|
||||
<string>B_11</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="100" y="140"/>
|
||||
<pos x="100" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
@ -426,32 +426,32 @@
|
||||
<string>Testdata</string>
|
||||
<testData>
|
||||
<dataString>A_11 A_10 A_9 A_8 A_7 A_6 A_5 A_4 A_3 A_2 A_1 A_0 B_11 B_10 B_9 B_8 B_7 B_6 B_5 B_4 B_3 B_2 B_1 B_0 P<Q P=Q P>Q
|
||||
repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&0xff)) ((n>>8)=(n&0xff)) ((n>>8)>(n&0xff))</dataString>
|
||||
repeat(1<<24) bits(12,n>>12) bits(12,n&0xfff) ((n>>12)<(n&0xfff)) ((n>>12)=(n&0xfff)) ((n>>12)>(n&0xfff))</dataString>
|
||||
</testData>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="580" y="740"/>
|
||||
<pos x="580" y="660"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="300" y="580"/>
|
||||
<p1 x="300" y="500"/>
|
||||
<p2 x="360" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="600"/>
|
||||
<p1 x="320" y="520"/>
|
||||
<p2 x="380" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="340" y="620"/>
|
||||
<p1 x="340" y="540"/>
|
||||
<p2 x="400" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="-100"/>
|
||||
<p1 x="320" y="-20"/>
|
||||
<p2 x="440" y="400"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="300" y="-60"/>
|
||||
<p1 x="300" y="20"/>
|
||||
<p2 x="440" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
@ -466,24 +466,20 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p1 x="360" y="320"/>
|
||||
<p2 x="480" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="320"/>
|
||||
<p2 x="120" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="320"/>
|
||||
<p2 x="180" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="640"/>
|
||||
<p1 x="-20" y="640"/>
|
||||
<p2 x="180" y="640"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="0"/>
|
||||
<p1 x="100" y="0"/>
|
||||
<p2 x="180" y="0"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="260"/>
|
||||
<p1 x="100" y="260"/>
|
||||
<p2 x="180" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
@ -495,40 +491,24 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="480" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="580"/>
|
||||
<p2 x="120" y="580"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="580"/>
|
||||
<p2 x="300" y="580"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="580"/>
|
||||
<p1 x="160" y="580"/>
|
||||
<p2 x="180" y="580"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="200"/>
|
||||
<p2 x="140" y="200"/>
|
||||
<p1 x="100" y="520"/>
|
||||
<p2 x="180" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="-140"/>
|
||||
<p2 x="140" y="-140"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="780"/>
|
||||
<p2 x="120" y="780"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="780"/>
|
||||
<p2 x="180" y="780"/>
|
||||
<p1 x="280" y="520"/>
|
||||
<p2 x="320" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="140"/>
|
||||
<p2 x="140" y="140"/>
|
||||
<p2 x="180" y="140"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="-80"/>
|
||||
<p2 x="180" y="-80"/>
|
||||
<p1 x="160" y="80"/>
|
||||
<p2 x="180" y="80"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="400"/>
|
||||
@ -539,28 +519,12 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="480" y="400"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="720"/>
|
||||
<p2 x="180" y="720"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="80"/>
|
||||
<p2 x="180" y="80"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="-20"/>
|
||||
<p2 x="120" y="-20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="-20"/>
|
||||
<p1 x="-20" y="-20"/>
|
||||
<p2 x="180" y="-20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="660"/>
|
||||
<p2 x="120" y="660"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="660"/>
|
||||
<p2 x="180" y="660"/>
|
||||
<p1 x="280" y="-20"/>
|
||||
<p2 x="320" y="-20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="380" y="340"/>
|
||||
@ -571,11 +535,15 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="180" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="20"/>
|
||||
<p2 x="120" y="20"/>
|
||||
<p1 x="100" y="660"/>
|
||||
<p2 x="180" y="660"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="20"/>
|
||||
<p1 x="280" y="20"/>
|
||||
<p2 x="300" y="20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-20" y="20"/>
|
||||
<p2 x="180" y="20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
@ -587,7 +555,7 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="480" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="280"/>
|
||||
<p1 x="-20" y="280"/>
|
||||
<p2 x="180" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
@ -595,113 +563,81 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="600" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="600"/>
|
||||
<p2 x="320" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="600"/>
|
||||
<p1 x="160" y="600"/>
|
||||
<p2 x="180" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="540"/>
|
||||
<p2 x="140" y="540"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="220"/>
|
||||
<p2 x="620" y="220"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="480"/>
|
||||
<p2 x="140" y="480"/>
|
||||
<p1 x="-20" y="540"/>
|
||||
<p2 x="180" y="540"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="-100"/>
|
||||
<p2 x="320" y="-100"/>
|
||||
<p1 x="280" y="540"/>
|
||||
<p2 x="340" y="540"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="-100"/>
|
||||
<p2 x="120" y="-100"/>
|
||||
<p1 x="-20" y="160"/>
|
||||
<p2 x="180" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="-100"/>
|
||||
<p2 x="180" y="-100"/>
|
||||
<p1 x="160" y="100"/>
|
||||
<p2 x="180" y="100"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="420"/>
|
||||
<p2 x="480" y="420"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="420"/>
|
||||
<p1 x="-20" y="420"/>
|
||||
<p2 x="180" y="420"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="740"/>
|
||||
<p2 x="180" y="740"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="100"/>
|
||||
<p2 x="120" y="100"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="100"/>
|
||||
<p2 x="180" y="100"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="-40"/>
|
||||
<p2 x="180" y="-40"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="680"/>
|
||||
<p2 x="180" y="680"/>
|
||||
<p1 x="100" y="40"/>
|
||||
<p2 x="180" y="40"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="400" y="360"/>
|
||||
<p2 x="480" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="360"/>
|
||||
<p2 x="120" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="360"/>
|
||||
<p2 x="180" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="40"/>
|
||||
<p2 x="180" y="40"/>
|
||||
<p1 x="-20" y="680"/>
|
||||
<p2 x="180" y="680"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="300"/>
|
||||
<p2 x="180" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="300"/>
|
||||
<p2 x="480" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="300"/>
|
||||
<p2 x="180" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="300"/>
|
||||
<p2 x="620" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="620"/>
|
||||
<p1 x="160" y="620"/>
|
||||
<p2 x="180" y="620"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="620"/>
|
||||
<p2 x="340" y="620"/>
|
||||
<p1 x="100" y="560"/>
|
||||
<p2 x="180" y="560"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-20" y="240"/>
|
||||
<p2 x="180" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="240"/>
|
||||
<p2 x="300" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="240"/>
|
||||
<p2 x="120" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="240"/>
|
||||
<p2 x="180" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="580" y="240"/>
|
||||
<p2 x="600" y="240"/>
|
||||
@ -711,100 +647,44 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p2 x="480" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="820"/>
|
||||
<p2 x="140" y="820"/>
|
||||
<p1 x="100" y="180"/>
|
||||
<p2 x="180" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="500"/>
|
||||
<p2 x="300" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-20" y="500"/>
|
||||
<p2 x="180" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-20" y="120"/>
|
||||
<p2 x="180" y="120"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="440"/>
|
||||
<p2 x="180" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="440"/>
|
||||
<p2 x="480" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="440"/>
|
||||
<p2 x="120" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="440"/>
|
||||
<p2 x="180" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="760"/>
|
||||
<p2 x="180" y="760"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="-60"/>
|
||||
<p2 x="300" y="-60"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="-60"/>
|
||||
<p2 x="180" y="-60"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="380"/>
|
||||
<p2 x="480" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="380"/>
|
||||
<p2 x="180" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="60"/>
|
||||
<p1 x="160" y="60"/>
|
||||
<p2 x="180" y="60"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="700"/>
|
||||
<p2 x="120" y="700"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="160" y="700"/>
|
||||
<p2 x="180" y="700"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="80"/>
|
||||
<p2 x="120" y="100"/>
|
||||
<p1 x="-20" y="380"/>
|
||||
<p2 x="180" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="20"/>
|
||||
<p2 x="120" y="40"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="-40"/>
|
||||
<p2 x="120" y="-20"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="-100"/>
|
||||
<p2 x="120" y="-80"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="420"/>
|
||||
<p2 x="120" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="360"/>
|
||||
<p2 x="120" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="300"/>
|
||||
<p2 x="120" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="240"/>
|
||||
<p2 x="120" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="760"/>
|
||||
<p2 x="120" y="780"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="700"/>
|
||||
<p2 x="120" y="720"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="640"/>
|
||||
<p2 x="120" y="660"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="580"/>
|
||||
<p2 x="120" y="600"/>
|
||||
<p1 x="460" y="380"/>
|
||||
<p2 x="480" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="280"/>
|
||||
@ -814,29 +694,5 @@ repeat(1<<16) bits(12,n>>8) bits(12,n&0xff) ((n>>8)<(n&
|
||||
<p1 x="600" y="220"/>
|
||||
<p2 x="600" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="100"/>
|
||||
<p2 x="140" y="140"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="-140"/>
|
||||
<p2 x="140" y="-100"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="440"/>
|
||||
<p2 x="140" y="480"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="200"/>
|
||||
<p2 x="140" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="780"/>
|
||||
<p2 x="140" y="820"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="140" y="540"/>
|
||||
<p2 x="140" y="580"/>
|
||||
</wire>
|
||||
</wires>
|
||||
</circuit>
|
@ -22,12 +22,15 @@ import java.util.NoSuchElementException;
|
||||
* @author hneemann
|
||||
*/
|
||||
public class TestResult {
|
||||
private static final int MAX_RESULTS = 1 << 10;
|
||||
private static final int ERR_RESULTS = MAX_RESULTS * 2;
|
||||
|
||||
private final ArrayList<String> names;
|
||||
private final LineEmitter lines;
|
||||
private final ArrayList<Value[]> results;
|
||||
private boolean allPassed;
|
||||
private Exception exception;
|
||||
private boolean toManyResults = false;
|
||||
|
||||
/**
|
||||
* Creates a new testing result
|
||||
@ -132,13 +135,20 @@ public class TestResult {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
boolean ok = true;
|
||||
for (TestSignal out : outputs) {
|
||||
MatchedValue matchedValue = new MatchedValue(row[out.index], out.value);
|
||||
res[out.index] = matchedValue;
|
||||
if (!matchedValue.isPassed())
|
||||
if (!matchedValue.isPassed()) {
|
||||
allPassed = false;
|
||||
ok = false;
|
||||
}
|
||||
}
|
||||
results.add(res);
|
||||
|
||||
if (results.size() < (ok ? MAX_RESULTS : ERR_RESULTS))
|
||||
results.add(res);
|
||||
else
|
||||
toManyResults = true;
|
||||
}
|
||||
}, new Context());
|
||||
} catch (ParserException e) {
|
||||
@ -176,6 +186,17 @@ public class TestResult {
|
||||
return allPassed;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Indicates if there are to many entries in the table to show.
|
||||
* If there are to many entries, the test results is still correct.
|
||||
*
|
||||
* @return true if there are missing items in the results list.
|
||||
*/
|
||||
public boolean isToManyResults() {
|
||||
return toManyResults;
|
||||
}
|
||||
|
||||
private int getIndexOf(String name) {
|
||||
if (name == null || name.length() == 0)
|
||||
return -1;
|
||||
|
@ -1,10 +1,13 @@
|
||||
package de.neemann.digital.testing.parser;
|
||||
|
||||
import de.neemann.digital.lang.Lang;
|
||||
|
||||
/**
|
||||
* Repeats some inner table rows.
|
||||
* Created by hneemann on 19.04.17.
|
||||
*/
|
||||
public class LineEmitterRepeat implements LineEmitter {
|
||||
private static final int MAX_LOOPS = 1 << 24;
|
||||
|
||||
private final String name;
|
||||
private final int size;
|
||||
@ -16,11 +19,15 @@ public class LineEmitterRepeat implements LineEmitter {
|
||||
* @param name name of the loop variable
|
||||
* @param size number of iterations
|
||||
* @param inner the lines to repeat
|
||||
* @throws ParserException if there are to many iterations
|
||||
*/
|
||||
public LineEmitterRepeat(String name, int size, LineEmitter inner) {
|
||||
public LineEmitterRepeat(String name, int size, LineEmitter inner) throws ParserException {
|
||||
this.name = name;
|
||||
this.size = size;
|
||||
this.inner = inner;
|
||||
|
||||
if (size > MAX_LOOPS)
|
||||
throw new ParserException(Lang.get("err_toManyIterations"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -94,8 +94,6 @@ public class Parser {
|
||||
tok.consume();
|
||||
expect(Tokenizer.Token.OPEN);
|
||||
int count = (int) parseInt();
|
||||
if (count > 1 << 16)
|
||||
throw new ParserException(Lang.get("err_toManyTestEntries"));
|
||||
expect(Tokenizer.Token.CLOSE);
|
||||
list.add(new LineEmitterRepeat("n", count, parseSingleRow()));
|
||||
break;
|
||||
@ -106,8 +104,6 @@ public class Parser {
|
||||
String var = tok.getIdent();
|
||||
expect(Tokenizer.Token.COMMA);
|
||||
count = (int) parseInt();
|
||||
if (count > 1 << 16)
|
||||
throw new ParserException(Lang.get("err_toManyTestEntries"));
|
||||
expect(Tokenizer.Token.CLOSE);
|
||||
list.add(new LineEmitterRepeat(var, count, parseRows(Tokenizer.Token.LOOP)));
|
||||
break;
|
||||
|
@ -485,7 +485,7 @@ Es sind nur {1} Variablen erlaubt, es wurden jedoch {2} gefunden.</string>
|
||||
<string name="err_recursiveNestingAt_N0">Die Schaltung {0} bindet sich selbst ein!</string>
|
||||
<string name="err_minimizationFailed">Das Ergebnis der Minimierung ist nicht korrekt!
|
||||
Sind evtl. die Namen der Variablen nicht eindeutig?</string>
|
||||
<string name="err_toManyTestEntries">Zu viele Einträge in der Testdatenmatrix.</string>
|
||||
<string name="err_toManyIterations">Zu viele Iterationen in einer Schleife.</string>
|
||||
<string name="err_diodeNeedsPullUpResistorAtOutput">Diode benötigt am Ausgang einen PullUp-Widerstand!</string>
|
||||
<string name="err_diodeNeedsPullDownResistorAtOutput">Diode benötigt am Ausgang einen PullDown-Widerstand!</string>
|
||||
<string name="err_testSignal_N_notFound">Testsignal {0} in der Schaltung nicht gefunden!</string>
|
||||
|
@ -475,7 +475,7 @@ allowed are {1} variables but {2} are found.</string>
|
||||
<string name="err_recursiveNestingAt_N0">The circuit {0} imports itself!</string>
|
||||
<string name="err_minimizationFailed">The result of the minimization is not correct!
|
||||
The names of the variables may not be unique.</string>
|
||||
<string name="err_toManyTestEntries">To many entries in the test data matrix.</string>
|
||||
<string name="err_toManyIterations">To many iterations in a loop.</string>
|
||||
<string name="err_diodeNeedsPullUpResistorAtOutput">Diode needs a pull up resistor at its output!</string>
|
||||
<string name="err_diodeNeedsPullDownResistorAtOutput">Diode needs a pull down resistor at its output!</string>
|
||||
<string name="err_testSignal_N_notFound">Test signal {0} not found in the circuit!</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user