44 lines
10 KiB
XML
44 lines
10 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="700.5306px" preserveAspectRatio="none" style="width:311px;height:700px;" version="1.1" viewBox="0 0 311 700" width="311.4368px" zoomAndPan="magnify"><defs/><g><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="208.7031" x="54.1981" y="10.377">A6 STATE — bit mask and blocked participants</text><ellipse cx="148.4381" cy="27.4259" fill="#000000" rx="8.0893" ry="8.0893" style="stroke: none; stroke-width: 0.80892674767118;"/><rect fill="#EDF6FA" height="40.4463" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="40.4463" x="128.2149" y="98.6115"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="128.2149" x2="168.6612" y1="119.922" y2="119.922"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="21.0321" x="137.922" y="113.0331">Zero</text><rect fill="#EDF6FA" height="40.4463" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="50.1535" x="37.6151" y="202.1541"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="37.6151" x2="87.7686" y1="223.4646" y2="223.4646"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="33.9749" x="45.7044" y="216.5757">ReadyA</text><rect fill="#EDF6FA" height="69.0633" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="106.7783" x="11.7294" y="305.6967"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="11.7294" x2="118.5078" y1="327.0072" y2="327.0072"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="29.1214" x="50.5579" y="320.1184">Partial</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="40.4463" x="15.7741" y="341.4288">bits 0x11</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="90.5998" x="15.7741" y="354.65">coordinator Blocked</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="78.4659" x="15.7741" y="367.8712">worker A Blocked</text><rect fill="#EDF6FA" height="42.6209" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="135.0908" x="4.8536" y="437.8592"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="4.8536" x2="139.9443" y1="459.1697" y2="459.1697"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="38.8285" x="52.9847" y="452.2808">ReadyAll</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="118.9122" x="8.8982" y="473.5913">return 0x03 to coordinator</text><rect fill="#EDF6FA" height="42.6209" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="61.4784" x="65.9275" y="543.5697"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="65.9275" x2="127.406" y1="564.8802" y2="564.8802"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="45.2999" x="74.0168" y="557.9914">BarrierAC</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="40.4463" x="69.9722" y="579.3018">bits 0x50</text><rect fill="#EDF6FA" height="42.6209" rx="10.1116" ry="10.1116" style="stroke: #2C7794; stroke-width: 1.21339012150677;" width="81.7016" x="110.823" y="649.2884"/><line style="stroke: #2C7794; stroke-width: 1.21339012150677;" x1="110.823" x2="192.5246" y1="670.5988" y2="670.5988"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="35.5928" x="133.8774" y="663.71">Release</text><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="65.5231" x="114.8676" y="685.0205">all return 0x70</text><ellipse cx="148.4381" cy="222.3773" fill="none" rx="8.0893" ry="8.0893" style="stroke: #000000; stroke-width: 0.80892674767118;"/><ellipse cx="148.8425" cy="222.7818" fill="#000000" rx="4.8536" ry="4.8536" style="stroke: none; stroke-width: 0.80892674767118;"/><!--MD5=[87d9cf4c6d0571cc7324a3d075f0abf6]
|
||
link *start to Zero--><path d="M148.4381,35.8873 C148.4381,48.45 148.4381,73.9635 148.4381,93.2402 " fill="none" id="*start->Zero" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="148.4381,97.2687,151.6738,89.9883,148.4381,93.224,145.2024,89.9883,148.4381,97.2687" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="35.5928" x="149.247" y="70.9689">01 0x00</text><!--MD5=[55732aec1e2a47794d050241ccd2e55a]
|
||
link Zero to ReadyA--><path d="M127.8671,129.9979 C114.447,137.6422 97.4029,149.1532 86.1507,163.3256 C78.3365,173.1703 72.7953,185.9675 69.0743,197.0579 " fill="none" id="Zero->ReadyA" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="67.8609,200.8518,73.1686,194.9103,69.0982,197.001,67.0075,192.9306,67.8609,200.8518" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="51.7713" x="86.9596" y="174.5116">03 set 0x01</text><!--MD5=[96cfe76aef0f7ae8184f03260b75f3ae]
|
||
link ReadyA to Partial--><path d="M63.1044,242.8998 C63.4279,258.601 63.8971,281.0568 64.3016,300.3659 " fill="none" id="ReadyA->Partial" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="64.3825,304.2326,67.472,296.889,64.3016,300.1888,61.0018,297.0184,64.3825,304.2326" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="42.8731" x="64.7141" y="278.0542">04 sync A</text><!--MD5=[afa28759b07e46f56b550034c9ae1ff8]
|
||
link Partial to ReadyAll--><path d="M67.2218,374.9732 C68.3624,393.3682 69.7538,415.7431 70.8054,432.674 " fill="none" id="Partial->ReadyAll" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="71.048,436.5245,73.8193,429.055,70.7936,432.4878,67.3607,429.4621,71.048,436.5245" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="57.4338" x="70.2229" y="410.2166">set READY_B</text><!--MD5=[96308fad8f358abe029012e359ae41d0]
|
||
link ReadyAll to BarrierAC--><path d="M68.9691,480.6352 C67.7557,492.1948 67.416,506.7636 70.7811,519.3019 C72.5607,525.9351 75.5861,532.6088 78.9593,538.6919 " fill="none" id="ReadyAll->BarrierAC" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="80.9736,542.1703,80.1148,534.2497,78.9421,538.6729,74.5189,537.5001,80.9736,542.1703" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="112.4408" x="71.59" y="515.9272">clear READY; set SYNC_C</text><!--MD5=[6ffbc0b0eb025a8ea471f1b15e913e28]
|
||
link BarrierAC to Release--><path d="M102.2807,586.4024 C105.8804,598.1076 111.1061,612.8058 117.6988,625.0206 C121.4199,631.9207 126.1521,638.8937 130.8924,645.2195 " fill="none" id="BarrierAC->Release" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="133.0927,648.0993,131.2509,640.3481,130.6401,644.8831,126.1051,644.2723,133.0927,648.0993" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="65.5231" x="118.5078" y="621.6458">10 set SYNC_B</text><!--MD5=[2f70092d0c86b290121bbb14761f7a65]
|
||
link Release to Zero--><path d="M171.4763,648.9244 C177.4623,641.7654 183.6183,633.4334 188.0755,625.0206 C200.9617,600.6962 205.8719,593.2217 205.8719,565.6939 C205.8719,221.5684 205.8719,221.5684 205.8719,221.5684 C205.8719,194.5017 201.447,186.8573 188.0755,163.3256 C183.8852,155.9482 178.2551,148.7811 172.5603,142.4472 " fill="none" id="Release->Zero" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="169.8503,139.5189,172.4072,147.0645,172.5923,142.4923,177.1645,142.6774,169.8503,139.5189" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="95.4534" x="206.6808" y="410.2166">auto-clear sync mask</text><!--MD5=[1b6f9b11724576e6164d4aba9cf0074a]
|
||
link Zero to *end--><path d="M146.9415,139.3167 C146.2459,150.6012 145.6554,165.0406 146.0113,177.8863 C146.3025,188.3457 146.982,200.2046 147.5482,208.9248 " fill="none" id="Zero->*end" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><polygon fill="#A80036" points="147.8152,212.929,150.5665,205.4522,147.55,208.8931,144.109,205.8765,147.8152,212.929" style="stroke: #A80036; stroke-width: 0.80892674767118;"/><text fill="#000000" font-family="Monospace" font-size="9.7071" lengthAdjust="spacingAndGlyphs" textLength="37.2106" x="146.8202" y="174.5116">11 PASS</text><!--MD5=[2cea5ce2bf49dfaef6d24b304909bc16]
|
||
@startuml
|
||
scale 700 height
|
||
skinparam backgroundColor transparent
|
||
skinparam shadowing false
|
||
skinparam defaultFontName Monospace
|
||
skinparam defaultFontSize 12
|
||
skinparam stateBorderColor #2c7794
|
||
skinparam stateBackgroundColor #edf6fa
|
||
title A6 STATE — bit mask and blocked participants
|
||
[*] - -> Zero : 01 0x00
|
||
Zero - -> ReadyA : 03 set 0x01
|
||
ReadyA - -> Partial : 04 sync A
|
||
Partial : bits 0x11
|
||
Partial : coordinator Blocked
|
||
Partial : worker A Blocked
|
||
Partial - -> ReadyAll : set READY_B
|
||
ReadyAll : return 0x03 to coordinator
|
||
ReadyAll - -> BarrierAC : clear READY; set SYNC_C
|
||
BarrierAC : bits 0x50
|
||
BarrierAC - -> Release : 10 set SYNC_B
|
||
Release : all return 0x70
|
||
Release - -> Zero : auto-clear sync mask
|
||
Zero - -> [*] : 11 PASS
|
||
@enduml
|
||
|
||
PlantUML version 1.2020.02(Sun Mar 01 11:22:07 CET 2020)
|
||
(GPL source distribution)
|
||
Java Runtime: OpenJDK Runtime Environment
|
||
JVM: OpenJDK 64-Bit Server VM
|
||
Java Version: 25.0.4-ea+4-1-Debian
|
||
Operating System: Linux
|
||
Default Encoding: UTF-8
|
||
Language: en
|
||
Country: null
|
||
--></g></svg> |