birdcage/docs/K60-refman-vectors/K60-reference-manual_page_529.svg
Ryan Malloy 5252d1d73c Add hardware reference docs (A3981, K60, RYS352A)
Allegro A3981 stepper motor driver: datasheet, KiCad symbols/footprint,
3D model (TSSOP-28). Two per G2 board, SPI-controlled, AUTO microstep.

NXP MK60DN512VLQ10 (Kinetis K60): datasheet and 1300-page reference
manual. Cortex-M4 96MHz MCU running the G2 firmware.

Reyax RYS352A GPS module: datasheet and PAIR command guide.
GPS receiver on the G2 board (used for auto-location/satellite lookup).

All extracted as markdown + page images + vector SVGs for LLM context.
Binary assets (PDFs, PNGs, SVGs, STEP, WRL) stored via git-lfs.
2026-02-14 18:36:42 -07:00

305 lines
43 KiB (Stored with Git LFS)
XML

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" version="1.1" width="612" height="777.60006" viewBox="0 0 612 777.60006">
<defs>
<clipPath id="clip_1">
<path transform="matrix(1,0,0,1,54,54)" d="M.49 .49H251.51V15.51H.49Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_2">
<path transform="matrix(1,0,0,1,54,54)" d="M252.49 .49H503.51V15.51H252.49Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_3">
<path transform="matrix(1,0,0,1,54,70)" d="M.245 .49H251.755V15.505H.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_4">
<path transform="matrix(1,0,0,1,54,70)" d="M252.245 .49H503.755V15.505H252.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_5">
<path transform="matrix(1,0,0,1,54,85.75)" d="M.245 .245H251.755V15.255H.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_6">
<path transform="matrix(1,0,0,1,54,85.75)" d="M252.245 .245H503.755V15.255H252.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_7">
<path transform="matrix(1,0,0,1,54,101.25)" d="M.245 .245H251.755V59.254999H.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_8">
<path transform="matrix(1,0,0,1,54,101.25)" d="M252.245 .245H503.755V59.254999H252.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_9">
<path transform="matrix(1,0,0,1,54,54)" d="M-.25 0-1.20866-1.91732H252.1V0 1.91732H.70866" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_10">
<path transform="matrix(1,0,0,1,54,54)" d="M252-.5H253.91733V16.5H252 250.08267V-.5" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_11">
<path transform="matrix(1,0,0,1,54,54)" d="M252.6 16V17.91732H-.5V16 14.08268H252.6" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_12">
<path transform="matrix(1,0,0,1,54,54)" d="M0 16-1.91732 17.91732V-1.20866L0-.25 1.91732 .70866V14.08268" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_13">
<path transform="matrix(1,0,0,1,54,54)" d="M251.9 0V-1.91732H505.20866L504.25 0 503.29136 1.91732H251.9" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_14">
<path transform="matrix(1,0,0,1,54,54)" d="M504-.25 505.91734-1.20866V17.91732L504 16 502.08268 14.08268V.70866" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_15">
<path transform="matrix(1,0,0,1,54,54)" d="M504.5 16V17.91732H251.4V16 14.08268H504.5" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_16">
<path transform="matrix(1,0,0,1,54,70)" d="M252-.6H253.66733V16.1H252 250.33267V-.6" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_17">
<path transform="matrix(1,0,0,1,54,70)" d="M252.35 15.75V17.41732H-.25V15.75 14.08268H252.35" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_18">
<path transform="matrix(1,0,0,1,54,70)" d="M0 15.85H-1.66732V.4H0 1.66732V15.85" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_19">
<path transform="matrix(1,0,0,1,54,70)" d="M504 .4H505.66734V15.85H504 502.33268V.4" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_20">
<path transform="matrix(1,0,0,1,54,70)" d="M504.25 15.75V17.41732H251.65V15.75 14.08268H504.25" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_21">
<path transform="matrix(1,0,0,1,54,85.75)" d="M252-.35H253.66733V15.85H252 250.33267V-.35" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_22">
<path transform="matrix(1,0,0,1,54,85.75)" d="M252.35 15.5V17.16732H-.25V15.5 13.83268H252.35" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_23">
<path transform="matrix(1,0,0,1,54,85.75)" d="M0 15.6H-1.66732V-.1H0 1.66732V15.6" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_24">
<path transform="matrix(1,0,0,1,54,85.75)" d="M504-.1H505.66734V15.6H504 502.33268V-.1" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_25">
<path transform="matrix(1,0,0,1,54,85.75)" d="M504.25 15.5V17.16732H251.65V15.5 13.83268H504.25" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_26">
<path transform="matrix(1,0,0,1,54,101.25)" d="M252-.35H253.66733V59.75H252 250.33267V-.35" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_27">
<path transform="matrix(1,0,0,1,54,101.25)" d="M252.1 59.5V61.16732H-.95866L-.125 59.5 .70866 57.83268H252.1" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_28">
<path transform="matrix(1,0,0,1,54,101.25)" d="M0 59.625-1.66732 60.45866V-.1H0 1.66732V58.79134" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_29">
<path transform="matrix(1,0,0,1,54,101.25)" d="M504-.1H505.66734V60.45866L504 59.625 502.33268 58.79134V-.1" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_30">
<path transform="matrix(1,0,0,1,54,101.25)" d="M504.125 59.5 504.95866 61.16732H251.9V59.5 57.83268H503.29136" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_31">
<path transform="matrix(1,0,0,1,54,24.56929)" d="M0 0H504V8.50394H0Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_32">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M0 0V-1.61732H166.42002V0 1.61732H0" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_33">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M166.22 0V-1.61732H337.78V0 1.61732H166.22" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_34">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M337.58 0V-1.61732H504V0 1.61732H337.58" clip-rule="evenodd"/>
</clipPath>
</defs>
<path transform="matrix(1,0,0,1,54,54)" d="M0 0H504V112H0Z" fill="#ffffff" fill-rule="evenodd"/>
<g clip-path="url(#clip_1)">
<path transform="matrix(1,0,0,1,54,54)" d="M.5 .5H251.5V15.5H.5Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.5 56.5)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="7.83789" x="114.75 120.753 123.75 128.754">Step</tspan></text>
<g clip-path="url(#clip_2)">
<path transform="matrix(1,0,0,1,54,54)" d="M252.5 .5H503.5V15.5H252.5Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 308.5 56.5)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="7.83789" x="110.502 117 122.004 125.001 127.503 133.002">Action</tspan></text>
<g clip-path="url(#clip_3)">
<path transform="matrix(1,0,0,1,54,70)" d="M.25 .5H251.75V15.5H.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.25 72.5)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0">1</tspan></text>
<g clip-path="url(#clip_4)">
<path transform="matrix(1,0,0,1,54,70)" d="M252.25 .5H503.75V15.5H252.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 308.25 72.5)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0 8.496 11.493 13.491 15.993 20.997002 23.499003 28.503003 33.507005 36.009004 38.511 43.515005 46.017004 48.519 53.523004 58.527006 61.029005 66.528 73.026 79.524 82.026 89.523 94.527 96.525 101.529 104.526 107.028 112.032 117.035999 119.034 121.032 126.035999 130.536 133.038 138.04199 140.04 142.54199">Write 1b to the TCD.major.e_link bit.</tspan></text>
<g clip-path="url(#clip_5)">
<path transform="matrix(1,0,0,1,54,85.75)" d="M.25 .25H251.75V15.25H.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.25 88)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0">2</tspan></text>
<g clip-path="url(#clip_6)">
<path transform="matrix(1,0,0,1,54,85.75)" d="M252.25 .25H503.75V15.25H252.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 308.25 88)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0 6.4980008 11.502001 16.506 21.510003 24.012003 29.016003 34.020006 38.520006 43.020006 45.522005 48.024003 53.028005 58.032007 60.534006 66.033008 72.531009 79.02901 81.531009 89.02801 94.032009 96.03001 101.034008 104.031009 106.533008 111.537 116.541 118.539 120.537 125.541 130.041 132.543 137.547 139.545 142.047">Read back the TCD.major.e_link bit.</tspan></text>
<g clip-path="url(#clip_7)">
<path transform="matrix(1,0,0,1,54,101.25)" d="M.25 .25H251.75V59.25H.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.25 103.5)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0">3</tspan></text>
<g clip-path="url(#clip_8)">
<path transform="matrix(1,0,0,1,54,101.25)" d="M252.25 .25H503.75V59.25H252.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 308.25 103.5)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0 5.499 10.503 15.003 17.505002 20.007002 22.509003 27.513005 32.517007 35.019006 40.518007 47.016008 53.514009 56.016008 63.51301 68.517009 70.51501 75.519008 78.51601 81.018009 86.022 91.026 93.024 95.022 100.026 104.526 107.028 110.025 115.029 120.033 125.036998 130.041 134.541 137.043 139.545 144.045 146.547 151.551 154.053 159.05699 163.55699">Test the TCD.major.e_link request status:</tspan><tspan y="18.83789" x="14.85 24.003 26.505002 29.007002 31.509003 37.008005 43.506006 50.004007 52.506006 60.003007 65.007 67.005008 72.009 75.006008 77.508 82.512 87.516 89.514 91.512 96.516 101.016 103.518 108.774 111.276 116.28 121.284 123.785999 126.287998 128.79 133.79399 138.79799 141.29999 146.30399 150.80399 155.80799 160.81198 168.30898 170.30698 174.80698 177.30898 179.30698 181.30498 186.30898 190.80898 193.31098 198.31497 200.81697 203.31897 208.32297 215.81996 220.82396 223.32596 225.82796 232.32596 237.32996">&#x2022;If TCD.major.e_link = 1b, the dynamic link attempt was</tspan><tspan y="29.83789" x="24.00301 28.50301 33.50701 38.00701 42.50701 47.511014 52.011014 56.511014 59.013013 64.01701 66.015018">successful.</tspan><tspan y="40.83789" x="14.85001 24.00301 26.50501 29.007012 31.509013 37.00801 43.506013 50.004014 52.506013 60.003015 65.00701 67.00501 72.00901 75.00601 77.50801 82.51201 87.51601 89.51401 91.51201 96.51601 101.01601 103.518009 108.774 111.276 116.28 121.284 123.785999 126.287998 128.79 133.79399 138.79799 141.29999 146.30399 148.80599 151.30799 156.31198 163.80898 168.81298 171.31497 176.31897 181.32297 183.82497 188.82897 193.32897 198.33296 203.33696 210.83396 212.83196 217.33196 219.83396 221.83196 223.82996 228.83396">&#x2022;If TCD.major.e_link = 0b, the attempted dynamic link</tspan><tspan y="51.83789" x="24.00301 29.007012 31.005013 36.009016 38.511014 43.515016 48.519018 51.021017 53.523015 58.023015 63.027017 67.527019 72.027019 77.03101 82.03501 87.03901 89.54101 92.53801 95.04001 100.04401 105.048007 107.55 112.05 117.054 122.058 127.062 132.066 137.06999 139.068 141.56999 148.068 153.07199 157.57199 160.07399 165.07799 167.07599 170.07299 175.07698 180.08098 185.08498 189.58498 192.08698 195.08397 200.08797 202.58997 204.58797 207.58496 209.58296 214.58696 219.59096 222.58795">did not succeed (the channel was already retiring).</tspan></text>
<g clip-path="url(#clip_9)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M-.5 0H252.1"/>
</g>
<g clip-path="url(#clip_10)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252-.5V16.5"/>
</g>
<g clip-path="url(#clip_11)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252.6 16H-.5"/>
</g>
<g clip-path="url(#clip_12)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 16.5V-.5"/>
</g>
<g clip-path="url(#clip_13)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M251.9 0H504.5"/>
</g>
<g clip-path="url(#clip_14)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504-.5V16.5"/>
</g>
<g clip-path="url(#clip_15)">
<path transform="matrix(1,0,0,1,54,54)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.5 16H251.4"/>
</g>
<g clip-path="url(#clip_16)">
<path transform="matrix(1,0,0,1,54,70)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252-.6V16.1"/>
</g>
<g clip-path="url(#clip_17)">
<path transform="matrix(1,0,0,1,54,70)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252.35 15.75H-.25"/>
</g>
<g clip-path="url(#clip_18)">
<path transform="matrix(1,0,0,1,54,70)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 15.85V.4"/>
</g>
<g clip-path="url(#clip_19)">
<path transform="matrix(1,0,0,1,54,70)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504 .4V15.85"/>
</g>
<g clip-path="url(#clip_20)">
<path transform="matrix(1,0,0,1,54,70)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.25 15.75H251.65"/>
</g>
<g clip-path="url(#clip_21)">
<path transform="matrix(1,0,0,1,54,85.75)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252-.35V15.85"/>
</g>
<g clip-path="url(#clip_22)">
<path transform="matrix(1,0,0,1,54,85.75)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252.35 15.5H-.25"/>
</g>
<g clip-path="url(#clip_23)">
<path transform="matrix(1,0,0,1,54,85.75)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 15.6V-.1"/>
</g>
<g clip-path="url(#clip_24)">
<path transform="matrix(1,0,0,1,54,85.75)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504-.1V15.6"/>
</g>
<g clip-path="url(#clip_25)">
<path transform="matrix(1,0,0,1,54,85.75)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.25 15.5H251.65"/>
</g>
<g clip-path="url(#clip_26)">
<path transform="matrix(1,0,0,1,54,101.25)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252-.35V59.75"/>
</g>
<g clip-path="url(#clip_27)">
<path transform="matrix(1,0,0,1,54,101.25)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M252.1 59.5H-.25"/>
</g>
<g clip-path="url(#clip_28)">
<path transform="matrix(1,0,0,1,54,101.25)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 59.75V-.1"/>
</g>
<g clip-path="url(#clip_29)">
<path transform="matrix(1,0,0,1,54,101.25)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504-.1V59.75"/>
</g>
<g clip-path="url(#clip_30)">
<path transform="matrix(1,0,0,1,54,101.25)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.25 59.5H251.9"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="145.85" x="0 7.784001 14.784 19.446002 22.946002 26.838002 33.838 37.730005 43.176004 46.676004 51.338 57.554 64.554 71.554 77.770008 83.216 87.108 90.608 94.108 98 105 111.216 114.716 123.270008 132.608 142.716 146.216 150.108 157.108 163.324 169.54001 173.432 176.932 187.824 194.04001 204.932 211.932 216.59401 223.59401 227.09401 233.31002 240.31002 247.31002 251.20201 255.86402 262.864 266.756 270.648 276.864 281.526 285.026 289.688 296.688 301.34999 307.56599 313.78199 319.228 322.728 326.62 333.62 339.836 343.336 351.88999 361.228 371.336 374.836 385.728 391.944 395.836 402.836 407.498 410.998 417.214 424.214 428.106 431.998 438.998 445.998 449.498 456.498 460.38999 464.28199 467.78199 471.67399">For this request, the TCD local memory controller forces the TCD.major.e_link bit to</tspan><tspan y="161.85" x="0 6.2160007 12.432001 17.094002 24.094002 27.594002 34.594 41.594 45.094 51.31 58.31 65.31 68.81 78.918 83.58 87.472 91.364 97.58 103.026 106.526 110.418 117.418 120.918 127.134 130.634 136.85 143.85 150.06601 157.06601 164.06601 170.28202 174.17401 178.83602 184.28202 187.78202 196.33602 205.67401 215.78202 219.28202 229.39002 236.39002 241.05202 248.05202 255.05202 258.552 264.768 269.43 273.322 279.538 284.19999 287.69999 291.59199 298.59199 304.80799 308.69999 312.19999 318.416 325.416 331.632 338.632 345.632 351.848 355.74 360.40199 365.848 369.348 377.90199 387.24 397.348 400.848 407.848 414.848 421.848 428.064 431.564 438.564 442.456 446.348 449.848 453.74 459.186 462.686 468.13203 474.34803 478.24003">zero on any writes to a channel&#x2019;s TCD.word7 after that channel&#x2019;s TCD.done bit is set,</tspan><tspan y="177.85" x="0 3.8920005 10.892 17.892 21.784 28 34.216 38.108 42.000005 49.000005 56.000005 59.500005 63.392007 70.392009 76.60801 80.10801 91.00001 97.21601 101.10801 108.10801 112.77001 116.27001 120.16201 127.16201 134.16202 141.16202 144.66202 148.55402 154.00002 157.50002 163.71602 170.71602 181.60802 188.60802 192.50002 198.71602 202.60802 208.82402">indicating the major loop is complete.</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="HelveticaLTStd" font-weight="bold"><tspan y="202.03672" x="232.554 242.662 253.554 262.108">NOTE</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="218.25" x="72.002 80.556 87.556 93.772 97.272 104.272 109.718 115.934009 120.59601 124.09601 134.988 141.988 147.434 151.326 154.826 161.042 164.934 171.15001 177.36602 182.02802 185.52802 189.42002 196.42002 202.63602 206.13602 214.69002 224.02802 234.13602 237.63602 244.63602 251.63602 258.63603 264.85203 268.35203 275.35203 279.24403 283.13603 286.63603 293.63603 299.85203 304.514 311.514 316.176 322.392 325.892 336 340.662 344.554 348.44599 352.33799 359.33799 366.33799 369.83799 373.72999 380.72999">The user must clear the TCD.done bit before writing the</tspan><tspan y="234.25" x="72.002 80.556 89.894 100.002 103.502 114.394 120.61 124.502 131.502 136.164 139.664 145.88 152.88 156.772 160.664 167.664 174.664 178.164 185.164 189.056 192.948 196.448 199.948 208.502 215.502 221.718 225.218 233.772 243.11 253.218 256.71803 263.71803 270.71803 277.71803 283.93403 287.43403 294.43403 298.32603 302.21803 305.71803 309.61003 315.05604 318.55604 324.77204 328.66404 334.88005 341.09605 345.75804 351.97404">TCD.major.e_link bit. The TCD.done bit is cleared</tspan><tspan y="250.25" x="72.00197 78.21797 85.21797 89.10997 96.10997 107.00197 113.21797 117.10997 121.00197 127.21797 133.43398 137.32598 141.21797 148.21797 151.71797 158.71797 165.71797 169.21797 173.10997 180.10997 186.32598 189.82598 196.04198 206.14998 218.59598 228.70398 232.20398 238.41999 245.41999 252.41999 256.31199 263.31199 269.52799 273.02799 279.244 283.90599 287.79798 294.01399 298.67597 302.17597 308.39198 311.89198 318.10798 325.10798 331.32398 338.32398 345.32398 351.53999 355.43199 358.93199 365.93199 372.14799 379.14799 383.03999 390.03999">automatically by the eDMA engine after a channel begins</tspan><tspan y="266.25" x="72.002 78.218 85.218 91.434009 97.65001 104.65001 108.54201 112.434009 119.434009 126.434009">execution.</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 360.8)" font-size="15" font-family="HelveticaLTStd" font-weight="bold"><tspan y="11.89648" x=".004 8.344001 16.684002 20.854002 29.194005 33.364007 41.704008 45.87401">22.5.7.3</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 122.3833 360.8)" font-size="15" font-family="HelveticaLTStd" font-weight="bold"><tspan y="11.89648" x=".004 10.834001 19.174002 28.339 36.679 50.014 54.184003 62.524003 66.694 75.034008 83.37401 91.71401 96.709018 101.70402 110.04402 115.87902 120.04902 129.21402 137.55402 142.54901 151.714 160.054">Dynamic scatter/gather</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="343.05" x=".00299 7.7869908 14.002991 20.21899 24.11099 28.00299 34.21899 38.88099 42.77299 49.77299 55.98899 59.880994 66.881 73.097 77.759 81.259 85.151 90.597 94.097 97.989 104.989 111.205 114.705 121.705 126.367008 133.367 139.58301 145.79901 151.24501 156.69101 160.19101 167.19101 171.85301 175.35301 181.56902 188.56902 192.46102 199.46102 210.35301 216.56902 220.46102 224.35301 230.56902 236.78502 240.67702 244.56902 251.56902 255.06902 258.96104 265.96104 272.17704 279.17704 283.06904 290.06904 297.06904 300.56904 306.78504 310.28504 317.28504 323.50105 333.60905 337.10905 345.66304 355.00105 365.10905 368.60905 372.50105 379.50105 383.39305 390.39305 393.89305 400.10905 403.60905 409.82505 416.82505 423.04106 430.04106 437.04106 443.25706 447.14906 450.64906 454.14906 458.81105 462.70304 466.20304 472.41905 476.31105 480.20304 487.20304 497.31105">Scatter/gather is the process of automatically loading a new TCD into a channel. It allows</tspan><tspan y="359.05" x=".003 6.2190005 9.719 19.827 32.273004 42.381006 45.881006 52.097005 59.097005 65.313 72.313 79.313 85.52901 89.421009 92.921009 96.813 103.813 107.313 114.313 119.759 125.975009 129.475 140.367 147.367 151.259 155.151 159.043 166.043 169.935 176.151 179.651 188.205 197.543 207.651 213.097 216.989 220.489 224.381 231.381 235.273 240.719 244.219 250.435 257.435 263.651 270.651 274.543 280.759 286.20503 289.70503 295.92103 299.42103 309.52903 321.97505 332.08305 335.58305 341.79905 348.79905 355.01506 362.01506 369.01506 375.23106 379.12306 382.62306 386.51506 393.51506 397.01506 402.46107 408.67707 414.89308 418.78507 422.67707 428.89308 433.55506 437.05506 440.94706 447.94706 454.16307 457.66307 467.77107 480.21708">a DMA channel to use multiple TCDs; this enables a DMA channel to scatter the DMA</tspan><tspan y="375.05" x=".003 7.003 13.219 17.111 23.327 26.827 30.719 37.719 41.219 52.111005 59.111005 63.003007 66.895008 70.787 77.787 81.679 87.895008 91.395008 98.395008 104.61101 110.05701 113.949008 117.841 124.841 131.057 134.949 138.841 145.841 152.841 158.287 161.787 168.787 173.449 176.949 183.949 190.16501 194.057 201.057 207.27301 211.93502 215.43502 219.32701 223.21901 226.71901 231.38101 236.04302 243.04302 253.93502 257.435 268.327 275.327 279.219 283.111 287.003 294.003 297.895 304.111 307.611 313.057 320.057 327.057 331.719 337.935 344.151 349.59703 353.09703 366.31303 373.31303 379.52903 386.52903 390.02903 395.47505 401.69105 407.90705 411.79905 415.69105 421.90705 426.56904 430.46104 437.46104 443.67704 447.56904 454.56904 460.78504 465.44703 468.94703 472.83903">data to multiple destinations or gather it from multiple sources.When scatter/gather is</tspan><tspan y="391.05" x=".00305 6.2190506 13.21905 19.435051 26.435051 30.327052 36.543054 43.543054 47.043054 53.259054 60.259054 67.25905 70.75905 74.65105 81.65105 87.86705 91.36705 97.58305 104.58305 110.79906 117.79906 124.79906 131.01506 134.90706 138.40706 145.40706 151.62306 157.06906 160.56906 165.23107 169.12306 176.12306 180.01506 185.46106 192.46106 198.67707 205.67707 209.17707 213.06906 216.96106 222.40706 225.90706 236.79906 243.01506 246.90706 253.90706 258.56907 262.06907 265.96107 272.96107 279.96107 286.96107 290.46107 293.96107 300.17707 303.67707 310.67707 316.89308 327.00108 330.50108 339.05506 348.39308 358.50108 362.00108 365.89308 371.33909 374.83909 379.50108 385.71708 389.60908 395.82508 402.82508 409.04109 416.04109 419.54109 424.20307 428.86506 435.86506 446.75706 450.25706 455.70307 462.70307 468.14909 472.04109 478.25709">enabled and the channel has finished its major loop, a new TCD is fetched from system</tspan><tspan y="407.05" x=".00305 10.895051 17.111052 28.003052 35.00305 39.66505 46.66505 50.16505 56.38105 63.38105 70.38105 73.88105 77.77305 84.77305 90.98905 97.98905 104.205059 111.205059 114.705059 118.59705 125.59705 129.48906 136.48906 139.98906 143.88106 150.88106 157.09706 160.98906 164.48906 170.70507 177.70507 183.92107 190.92107 197.92107 204.13707 208.02907 212.69107 218.13707 221.63707 228.63707 234.85308 240.29907 246.51508 251.17708 255.06908 262.0691 265.9611 272.9611 277.62309 281.12309 285.01509 292.01509 298.23109 304.44709 308.33909 312.23109 319.23109 326.23109 329.73109 333.62309 340.62309 344.12309 350.33909 360.44709 372.8931 383.0011 386.5011 393.5011 398.1631 405.1631 412.1631 416.82508 423.04109 433.93309 444.82508 451.04109 455.70307 460.36506">memory and loaded into that channel&#x2019;s descriptor location in eDMA programmer&#x2019;s</tspan><tspan y="423.05" x=".00305 10.895051 17.89505 24.89505 31.11105 35.00305 38.50305 42.00305 45.895055 52.895055 59.895055 65.34106 68.84106 73.50306 79.71906 86.71906 90.61106 96.827068 103.04307 106.93507 113.93507 120.93507 124.43507 128.32707 135.32707 141.54308 145.04308 151.25908 158.25908 162.92108 167.58309 173.79909 180.79909 184.69109 188.19109 195.19109 201.40709 206.85309 213.06909 217.7311 221.6231 228.6231 232.51509 239.51509 244.1771">model, thus replacing the current descriptor.</tspan><tspan y="447.44999" x=".00305 9.341051 15.557052 21.773053 27.989052 34.98905 40.43505 46.65105 50.15105 54.043054 61.043054 67.259059 70.759059 77.759059 83.205059 89.42106 94.08306 97.58306 101.47506 106.92106 110.42106 116.63706 120.52906 124.42106 131.42105 141.52906 147.74506 154.74506 158.24506 162.13706 169.13706 172.63706 178.85306 185.85306 192.06906 199.06906 206.06906 212.28507 215.78507 219.67707 226.67707 232.89307 236.39307 242.60907 249.60907 256.60908 261.27107 265.16307 272.16307 279.16307 283.82505 290.04106 293.93305 297.82505 304.82505 311.82505 315.32505 322.32505 329.32505 333.98704 337.87904 344.87904 351.87904 355.37904 361.59504 368.59504 374.81105 381.02705 388.02705 391.91905 395.81105 402.81105 409.81105 413.31105 416.81105 423.02705 426.52705 432.74305 439.74305 446.74305 452.95906 457.62104 463.83705 470.83705 477.05305">Because the user is allowed to change the configuration during execution, a coherency</tspan><tspan y="463.44999" x=".00305 10.895051 17.89505 24.89505 31.11105 35.00305 38.50305 42.395055 47.841054 51.341054 58.341054 64.55705 70.773059 77.773059 83.98906 90.98906 94.48906 97.98906 107.32706 114.32706 121.32706 126.773059 130.66506 137.66506 143.88106 148.54306 152.04306 155.93506 162.93506 169.15106 172.65106 178.09706 184.31307 190.52907 197.52907 203.74507 208.40708 212.29907 219.29907 222.79907 232.90708 239.90708 246.12308 250.78508 257.00108 260.50108 264.39308 271.39308 277.60908 281.10908 288.10908 293.55509 299.7711 304.43309 307.93309 314.14909 318.04109 321.93309 328.14909 339.04109 346.04109 349.93309 355.3791 358.8791 362.7711 369.7711 373.2711 379.4871 386.4871 392.7031 398.9191 405.9191 409.8111 416.0271 419.5271 425.7431 429.2431 436.2431 443.2431 450.2431 456.4591 467.3511 471.2431">model is needed. Consider the scenario where the user attempts to execute a dynamic</tspan><tspan y="479.44999" x=".00305 5.4490506 11.6650509 17.88105 21.77305 25.66505 31.88105 36.54305 40.43505 47.43505 53.65105 57.543054 64.54305 70.759059 75.42106 78.92106 85.92106 92.92106 99.13706 103.799068 110.01507 113.90707 117.799068 124.799068 131.79907 135.29907 142.29907 149.29907 152.79907 159.01508 166.01508 172.23108 179.23108 183.12308 187.01508 194.01508 201.01508 204.51508 208.40708 215.40708 221.62308 225.12308 233.67708 243.01508 253.12308 256.62309 262.83909 269.83909 275.2851 282.2851 285.7851 292.7851 296.6771 300.5691 304.0691 310.2851 314.1771 317.6771 321.5691 328.5691 334.7851 338.2851 343.7311 349.9471 360.8391 367.0551 370.5551 374.4471 378.3391 389.2311 395.4471 398.9471 402.8391 409.8391 416.0551 419.5551 425.77113 435.87913 448.32514 458.43315 461.93315 468.14915 475.14915 482.14915 486.04115 493.04115">scatter/gather operation by enabling the TCD.e_sg bit at the same time the eDMA engine</tspan><tspan y="495.44999" x=".00305 3.8950506 9.341051 12.841051 17.503052 23.719052 27.611052 31.503052 36.16505 40.057054 47.057054 54.057054 57.557054 61.449056 68.44905 74.665058 78.165058 84.38106 91.38106 97.59706 104.59706 111.59706 117.813068 121.70506 125.20506 128.70507 137.25907 144.25907 150.47507 153.97507 162.52907 171.86707 181.97507 185.47507 191.69107 198.69107 204.13707 211.13707 214.63707 224.74507 231.74507 238.74507 242.63707 249.63707 253.13707 260.1371 266.3531 269.8531 275.2991 281.5151 285.4071 288.9071 292.7991 299.7991 303.2991 307.1911 314.1911 320.4071 323.9071 330.9071 335.5691 342.5691 349.5691 354.23109 360.44709 371.33909 382.23109 388.44709 393.10908 397.77107 403.21708 406.71708 417.60908 424.60908 431.60908 437.82508 441.71708 445.21708 448.71708 455.71708 462.71708 466.60908 470.10908 474.00108">is retiring the channel. The TCD.e_sg would be set in the programmer&#x2019;s model, but it</tspan><tspan y="511.44999" x=".00305 10.111051 17.11105 24.11105 28.00305 35.00305 38.50305 45.50305 51.71905 55.21905 62.21905 69.219058 75.43506 79.32706 85.54306 91.75906 96.42107 99.92107 110.02907 117.02907 123.24507 127.13707 134.13707 140.35308 145.01508 148.51508 152.40708 159.40708 165.62308 169.12308 175.33908 181.55509 185.44709 192.44709 198.66309 202.55509 206.05509 211.50109 217.71709 223.93309 227.82509 231.71709 237.93309 242.5951 246.48709 253.48709 259.7031 263.5951 270.5951 276.8111 281.47309 284.97309 289.63508 295.85108 302.85108 309.85108 316.06709 321.5131 325.4051 328.9051 339.0131 345.2291 350.6751 354.1751 361.1751 368.1751 375.1751 382.1751 386.8371 393.0531 400.0531 403.5531 410.5531 416.7691 421.4311 428.4311 433.09309 439.30909 442.80909 446.70109 453.70109">would be unclear whether the actual scatter/gather request was honored before the</tspan><tspan y="527.44998" x=".00305 6.2190506 13.21905 19.435051 26.435051 33.43505 39.65105 43.543054 47.043054 51.70505 57.92105 61.813055 65.705059 70.36706 76.58306 83.58306">channel retired.</tspan><tspan y="551.85" x=".00305 8.55705 18.66505 25.66505 29.16505 40.057054 46.273054 50.165056 57.165056 64.165058 71.165058 76.61105 80.11105 84.773059 91.773059 96.43506 99.93506 103.82706 110.82706 114.719058 120.165058 123.665058 129.88106 136.88106 143.88106 150.09706 154.75907 160.97507 167.97507 174.19107 181.19107 184.69107 195.58307 202.58307 209.58307 215.79907 219.69107 223.19107 229.40708 234.06908 240.28508 243.78508 249.23108 256.23109 263.23109 273.33909 280.33909 283.83909 287.73109 294.73109 298.23109 302.12309 309.12309 315.33909 318.83909 323.50108 330.50108 334.39308 338.28507 345.28507 355.39308 359.28507 366.28507 373.28507 376.78507 382.23109 389.23109 396.23109 401.6771 407.8931 414.1091 418.0011 421.8931 428.8931 435.8931 441.3391 444.8391 448.3391 460.78514 467.00114 470.89314 477.89314 484.89314 491.89314 495.39314">Two methods for this coherency model are shown in the following subsections. Method 1</tspan><tspan y="567.85" x=".00305 7.00305 13.21905 18.66505 22.16505 26.05705 33.057054 39.273054 42.773054 48.98905 55.98905 62.98905 69.205059 76.205059 80.09705 86.31306 93.31306 99.52906 103.02906 110.02906 114.69106 118.19106 122.853069 129.06906 135.28507 142.28507 146.17707 153.17707 160.17707 163.67707 167.56906 174.56906 180.78507 184.28507 195.17707 201.39307 205.28507 212.28507 216.94707 220.44707 224.33907 228.23107 235.23107 242.23107 248.44707 255.44707 258.94709 263.60908 267.50108 273.71708 277.60908 284.60908 288.10908 294.32508 301.32508 308.32508 311.82508 315.71708 322.71708 328.93309 332.43309 338.64909 345.64909 351.0951 358.0951 361.5951 368.5951 372.4871 376.3791 379.8791 389.9871 393.8791 397.7711 404.7711 408.2711 414.4871 417.9871 423.4331 427.3251 434.3251 441.3251 445.2171 451.4331 454.9331 459.5951 465.8111 472.0271 479.0271">has the advantage of reading the major.linkch field and the e_sg bit with a single read.</tspan><tspan y="583.85" x=".00305 7.7870509 14.78705 19.44905 22.94905 29.94905 36.94905 40.841054 47.841054 51.341054 58.341054 65.34105 72.34105 78.55705 89.44905 93.34105 99.55705 103.05705 109.273059 116.273059 122.48906 129.48906 136.48906 142.70507 146.59706 150.09706 153.98906 157.88106 164.88106 171.88106 175.77306 182.77306 189.77306 193.27306 199.48906 206.48906 213.48906 216.98906 222.43506 228.65106 234.86707 238.75907 242.65106 248.86707 253.52907 257.42109 264.42109 270.6371 274.52909 281.52909 287.7451 292.40708 295.90708 300.56907 306.78507 313.78507 320.78507 327.00108 332.44709 336.33909 341.7851 345.2851 348.7851 352.6771 359.6771 365.8931 369.3931 377.94709 387.2851 397.3931 400.8931 404.7851 411.7851 418.0011 424.2171 428.1091 431.6091 442.5011 448.7171 459.6091 466.6091 471.2711">For both dynamic channel linking and scatter/gather requests, the TCD local memory</tspan><tspan y="599.85" x=".00305 6.2190506 13.21905 20.219052 24.111052 28.773053 35.773054 39.665056 43.557058 49.773057 54.435056 57.935056 62.597055 69.59705 74.259059 80.47506 86.69106 92.13706 95.63706 99.52906 106.52906 112.74506 116.24506 124.799068 134.13707 144.24507 147.74507 158.63707 164.85308 168.74507 175.74507 180.40708 183.90708 190.12308 197.12308 201.01508 204.90708 211.90708 218.90708 222.40708 228.62308 235.62308 242.62308 246.12308 254.67708 264.01509 274.12309 277.62309 283.83909 290.83909 296.2851 303.2851 306.7851 313.7851 317.6771 321.5691 327.0151 330.5151 334.4071 341.4071 344.9071 351.1231 357.3391 362.0011 369.0011 372.5011 379.5011 386.5011 390.0011 396.2171 403.2171 410.2171 413.7171 423.8251 428.4871 432.3791 436.2711 442.4871 447.9331 451.4331 455.3251 462.3251 465.8251">controller forces the TCD.major.e_link and TCD.e_sg bits to zero on any writes to a</tspan><tspan y="615.85" x=".00305 6.2190506 13.21905 19.435051 26.435051 33.43505 39.65105 43.543054 48.20505 53.65105 57.15105 65.70505 75.043048 85.15105 88.65105 98.75905 105.75905 110.42105 117.42105 124.42105 127.92105 131.81305 136.47505 139.97505 143.86705 150.86705 157.08306 160.97505 164.47505 170.69106 177.69106 183.90706 190.90706 197.90706 204.12306 208.01506 212.67707 218.12306 221.62306 230.17707 239.51506 249.62306 253.12306 260.12306 267.12306 274.12306 280.33906 283.83906 290.83906 294.73106 298.62306 302.12306 306.01506 311.46107 314.96107 320.40708 326.62309 330.51509 334.01509 337.90708 344.90708 351.90708 355.79908 362.01509 368.23109 372.12309 376.01509 383.01509 390.01509 393.51509 397.40708 404.40708 410.62309 414.12309 425.01509 431.23109 435.12309 442.12309 446.78507 450.28507 454.17707 461.17707 468.17707 475.17707 478.67707 482.56907">channel&#x2019;s TCD.word7 if that channel&#x2019;s TCD.done bit is set indicating the major loop is</tspan><tspan y="631.85" x=".00305 6.2190506 13.21905 24.111052 31.111052 35.00305 41.21905 45.111055 51.327054">complete.</tspan></text>
<g clip-path="url(#clip_31)">
<path transform="matrix(1,0,0,1,54,24.56929)" d="M0 0H504L488 16H0V0Z" fill="#666666"/>
<path transform="matrix(1,0,0,1,54,24.56929)" stroke-width=".8" stroke-linecap="butt" stroke-miterlimit="4" stroke-linejoin="miter" fill="none" stroke="#666666" d="M0 0H504L488 16H0V0Z"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 18)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="26.01031" x="278.955 285.45298 290.95198 295.95597 301.45497 304.45198 309.45597 312.95698 315.45899 320.46299 325.46699 327.969 334.46699 336.969 340.47 345.474 350.478 353.475 355.97703 363.47404 368.47804 376.47904 381.97804 385.47904 390.48304 392.98506 399.48304 404.48704 409.49104 414.49504 419.49903 424.50303 427.00505 433.50303 439.002 444.501 447.49803 450.99903 456.49803 459.00004 461.50205 466.50605 470.00706 472.50907 475.50608 480.51008 487.00807 494.50508 501.00306">Chapter 22 Direct Memory Access Controller (eDMA)</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 734.93869)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="130.01 137.23 142.79 148.34999 151.12999 157.79999 163.90999 170.01999 173.34999 179.45999 185.01999 193.90999 196.68999 199.46999 205.02999 207.80998 215.02999 220.58998 223.91999 229.47998 233.36998 238.92998 245.03998 250.59998 256.15998 258.93998 267.26997 272.82997 278.93995 285.04994 290.60993 293.38993 296.16993 298.94993 306.16993 311.72993 317.28993 320.06993 322.8499 328.4099 331.1899 336.7499 342.8599 348.96989 351.74989 357.30989 362.86988 368.42988">K60 Sub-Family Reference Manual, Rev. 2 Jun 2012</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 751.756)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x=".00401 5.5030105 8.5000109 13.504011 18.50801 23.00801 27.50801 32.512014 34.510015 39.514017 42.016016 48.019014 53.023015 60.520017 62.518018 67.01802 72.02202 77.02602 82.030017 87.03401 91.53401 94.03601 99.04001 102.03701 104.53901 107.04101 109.54301 114.547008 119.047008">Freescale Semiconductor, Inc.</tspan></text>
<text fill="#ff0000" xml:space="preserve" transform="matrix(1 0 0 1 220.32 751.756)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="58.45 65.12 69.01 74.57 77.35 80.13 89.02 91.799999 97.909999 103.46999 107.35999">Preliminary</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 391.68 751.756)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="151.308 156.312 161.316">529</tspan></text>
<text fill="#ff0000" xml:space="preserve" transform="matrix(1 0 0 1 54 763.756)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="180.87 188.65 194.20999 200.31999 205.87999 209.76999 215.32999 218.10999 220.88999 228.10999 234.21999 239.77999 242.55998 248.66999 254.22998 259.78999 265.34999 268.12998 270.90998 277.01997 280.34996 286.45994 290.34996 299.23997 304.79997 308.12995 310.90995 317.01994">General Business Information</tspan></text>
<g clip-path="url(#clip_32)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 0H166.42002"/>
</g>
<g clip-path="url(#clip_33)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M166.22 0H337.78"/>
</g>
<g clip-path="url(#clip_34)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M337.58 0H504"/>
</g>
<g transform="matrix(.26,0,0,.26,0,-.000019073487)">
<image id="image_35" width="288" height="154" xlink:href="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAASAAAACaCAIAAACGxwJwAAAACXBIWXMAAA7EAAAO
xAGVKw4bAAAM5klEQVR4nO2d22sd1xWHDYYaDC0uxaWUlogGAn4wCFroq/8E/wl+
aaFvAj009EBEm0JoSeKA01BTtQ5VLjg4luP2GFxfiyMaxfcYy0ZFvqqyghzZMr4o
RmW6rFMfjs6Z2bMv6zf7zMzvYz3r7Dlnf5rZa63Ze11CCIGxLvYACKkyFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAYwW7vSaZH1OLaTsggnbh74vN//kkx
jl39qh0TM/eKuYi5+8udn3vki1OHT+/WismpnbPzI1HizsLOpYcnWlHMN2kPRrDP
tiXNdZoR3bHpkc///IM//PanWtH45N+dUYxjb5+81fmhv3z/teE//lglXh4dPH76
G5NfrOuHOHN505WZbTfnhhYW9zx6cr6AL9ZASQSTkLtiRKZHlg+u/+vvB0GCvXpo
5snT/0KvQG5ZXR+qKNhfmt+P7lVWXLg6MHN7x+LSOPTrzaI8gkksxftvJE+qzXXX
Pvg2SDCJj899iRv+4qOn4jBIsFf2bI1ukaVp8jy5slLQA3mLUgn2j03RHFsVTOLQ
rpdAgklcW3gMGv7oxGzvx2kJ9vdPvxldHvuQB8giNSuVYBKnBpOnhf4H+j/PBXsw
vmH0tZ+ABHv9yA3E2KfuPEz9OBXBdu0fiO6M392smIxI2QRrOVY8zwWTUMl2pM54
CVkp6Q5clnbiLUiwl0cHPz23Prot3iG3Mt1vu5cSCiZxcQdk2AY6BJPY+8ZWkGAS
sl5SHHjz0kLWB4ULNnb4u9ElCYyZ29i5VE7BJGTGF8lawf6z91s4wWS9pDXqufvL
hg8KFOx3H74UXY/+d6y0gjWLTdyvFUzi2Ds/AgkmcfbWksqouwpfuoId/tfG6G5o
xc25IZUvvJcyC9YsMHHfI9jywfUh2Q6zYCplsYmZe+ZPCRFs9yc/jG6FboAKZSUX
rLDEfY9gElfGNoMEawSXxVILX1qClT23kRpnLm9C5O5LLpjE8YEiEvdpgkkceGsL
SLBGWFnsvcm53L/vLdj+k5ui+4AIRFKx/II1CymOZQi2sG8jTjDvslhW4UtFsMrk
NlJj+evrqvOmGoI18Yn7DMEkTu1+ASRYw6ssZih8qQjWP029iFC/iVVFMIkpVCLo
GdmC+TUBWwrWcC+LGQpf4YL1c1OvSshKTHfiVEiwJjJxny1Y4tUEbC+YU1nMXPgK
FKwsTb2BoZtOrJZgEndPQK7IKFjinu2w16DhUhYzF74CBStXU6936NadKycYKHGf
J5hrE7CTYJZlsdzCV4hgb370YvSpX0xcuDqgOHEqJ1gTk7jPEyxxbAJ2MqFhURaz
KXx5C1bJwpchFHOJVRSsCUjcWwgmYZ/tcBWskVcWsyl8eQtWgaZep1BchlVUsKZ2
4t5OMPsmYA/BDGUxy8KXn2Cvjm2xnJdXZrahQ57fChBMMVlfXcF0HbMTLLFuAvbw
oZFRFrMvfPkJZt/Uq/ZtW/DoyfmFxT3TN7YjBFPMc1RasKZe4t5aMMsmYD/BGmll
MfvCl4dgTk29Ol+1I7JekjubrmDyB7WGV3XBJOY1nqetBZO4+O73cIJ1lcWcCl+u
grnmNhS+Z1/knqMo2KVptbfmayCYSuLeRbDE4pVnbyskZMXVHpdT4ctVsL1Hv+M0
L0O/5ABWVu7pLs+0BlYDwVqOBSYVHQXLbQIOEaxdFnMtfDkJ5tHUqzN5fJElGQWL
F4GJe0fBkrwm4BAxJGTdJY65Fr6cBPNo6tWbQJ6cuaz2Ho3WkGojmMSZ7f5X5C6Y
OdsRKJhEyMNhrmB+Tb16E8gTxWyH1pDqJFgzIHHvLlhibAIOFyw8sgR7Zc9Wv74N
1Tnkw825IQoWO/wS916CJdlNwNHtMgjm3dSrPIvcmZ0foWB9EB6O+Qr2YHxDuQQL
aerVn0iOULD+CI/Eva9gSUYTcHS7UgULPIUIMpdcoGB9E+LY4+sOVxQgWJLWBBzd
rlTBApt6IXPJBQrWT+GUuA8TrLcJOLpdvYLZN/VSMHvKIJj8tYs7II59Zt1yFiZY
0nPuUXS7egULf2EZMpdcoGABGsgNB+GYZeI+WLCuslh0u7oEU9mpFzKXXFDsSNQa
UnkEk8c5kGM2B0AHC5asbQKOblenYFovLEPmkgssNAcIJiydf5acQDiWm7jXECzp
aAKOblenYK5NvX0rmJZddRUsWXUMIVhu4l5JsHa2I7pdbcEUd+qFzCVrFpfGKViw
YILcbUCOGRL3SoIlz5uAo9vVFkzxFCLIXLJG95UwrVGVULBEc7qvCUPiXu8TW9mO
6Ha1BNPdqRcyl+xY/vq64oXUXjABlLjPOgBaVekrY5uj2yXxm32/1t2MDTKX7FDf
NUBrYKUVLCk2ca8q2MK+jdHtknjjb7/qz0npiu7D4aTqDvVlFgyXuO89AFpVsANv
bYluV2P1EVH3pC/IXDKC2PFmsnab3hj6LR5fLyhxrydYqxoW3a6WYLpb9i49PFFM
LC6Nz86PgPZso2BrwRXHOhP3SoK1+zmi29V4nkWs3mnL4VGzjUdzOwZxifu2Y0qC
tbcljW5Xo6PQrJipr0bUbOtsm5bcazshjrUT9xqCdfbUR7erU7DwPvqKRc0Of7Ds
eYcm7jUE63wrLLpdjbXNvnU73sEQ9Tu+yP6lEtB7aKJusGBd7zVHt6tLsLodUGSI
+h3AZy8YLnEflkfpPZ4vul2NnvfBdu0fiD65+yHqd4SsvWAJMnEfEF1vW/anYCrv
XJY9ankIupNgCTJx7xWpuyNGtytVsJocc26Im3NDuipUUTBhfjy6V61YPrg+9djL
6HalCua9p29lQjF/2KKigiWw4phjZB3cHN2uLMECd24rdeimN1pUV7AElri3DsMZ
K9HtyhJM9xXMEoWsvlZWVM/1XqXSgglntkcULGvf7D4XTEK3CbgUcWfBYmsWd6ou
GC5xnxdXxjbjji8anZi9tvAYJ5j3+Q8lDcXu3i6qLliy6ljhScXck5oD3Zi7vyxX
9vG5L0GC1aoJ+NL0IOLhsEUNBEsiJO7bTb0IwZqXFlqXFXgGX+4RsnVoApal16Mn
wScMZ1MPwZJCE/e9G2UrCvb6kRut82NbnL21hBOs8tmOC1cHoHYlNRIsKS5xn3sC
eohgnSegt5D1GEiwajcBy7oL92TYpk6CJUUk7rMKXyqCvTc513tNi4+e4gSrZBOw
PBaCcoa91EywBOtYb1OvomCy3BKXUq/p2NWvQIJVrAlY1Jq5vaOAG1eb+gmGTNz3
NvUqCjYxY5oWsjYDCVaNJuBL04Ny1ypSrRb1EyxZdez4gLpdNrkNb8HePnnLfE0e
ZTF7wcr4yrMssSRm50cWl8aL96pNLQVL9BP3WU29WoK1Cl9mXMti9oIN2zUB6/9M
5aeuggl3TygO0jK34SdYu/BlxrUs5iSYTRMw5GcqOTUWLFFL3D8Y3+Bkl5NgXYUv
M05lMSfBJN786EUK5kq9BROmhsJHaGjqDRest/Blxr4s5irYcF4TMOgnKjW1FywJ
Tdybm3oDBUstfJmxL4t5CGZuAkb8OGWHggUl7nObekMEMxS+zFiWxTwEM2c71H+Z
CkDBVvF1rHWaHkgwc+HLjE1ZzE+w4ewmYMUfpDJQsOe4J+6dCl+uguUWvszYlMW8
BctqAtb6KaoEBevA8QBom6Zeb8FsCl9mcsti3oINZ5ybrvIjVAwKthbrxH3rFCKQ
YJaFLzO5ZbEQwVKbgMPHXD0oWA8Wu2TbN/V6COZU+DJjLouFCDac1gSsMuaKQcHS
yEvc2zf1egjmWvgyYyiLBQo23NMErDjsykDBMshOKobkNnIF8yh8mZG1HE6wriZg
3ZFXAwqWQXbi3qmp10kw78KXmayyWLhgw2tfeVYfeQWgYNmkJe5dm3qdBBMTENch
K7rUspiKYJ1NwIjBlx0KZmRt4t6jqddesMDCl5nUspiKYMMdTcC48ZcXCpZHR+Le
o6nXXjBxAHodsroDCdbOdkDHX1IomAWrB0CnnkKkJZhK4ctMb1lMUbBWEzD6EsoI
RrCpoWdWaMWU8pFNfld06IOfHRj7hVaMTsx2hlbhy8zZW0udH7r76PvvHPy5Vhw9
vb2ASygdvK0TAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSC
EQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSC
EQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAuR/
5TMAQ7zJBDQAAAAASUVORK5CYII="/>
</g>
</svg>