<?xml version="1.0" encoding="UTF-8"?>
<net name="Data_Transmitter_4Phase" type="iopt-flow">
  <signal id="Ack" x="430" y="145" mode="input" type="boolean" min="0" max="1"/>
  <signal id="InData" x="140" y="400" mode="input" type="range" min="0" max="255" frac="0" value="0" dynamic="none"/>
  <event id="Delay" x="290" y="220" mode="input"/>
  <signal id="OutData" x="455" y="400" mode="output" type="range" min="0" max="255" dynamic="type" frac="0"/>
  <signal id="Req" x="295" y="85" mode="output" type="range" min="0" max="255" dynamic="type" frac="0"/>
  <signal id="Available" x="150" y="295" mode="output" type="range" min="0" max="255" dynamic="type" frac="0"/>
  <signal id="InternalData" x="370" y="400" mode="internal" type="range" min="0" max="255" frac="0" value="0" dynamic="none"/>
  <place id="p017" x="295" y="145" init_marking="0">
    <name off_x="-10" off_y="-10" text="Req+"/>
    <comment off_x="0" off_y="20" text="-"/>
  </place>
  <place id="p018" x="350" y="220" init_marking="0">
    <name off_x="-10" off_y="-10" text="Req-"/>
    <comment off_x="0" off_y="20" text="-"/>
  </place>
  <transition id="t019" x="235" y="145" priority="0">
    <name off_x="-10" off_y="-10" text="t019"/>
    <comment off_x="-10" off_y="20" text="-"/>
  </transition>
  <transition id="t020" x="350" y="145" priority="0">
    <name off_x="-10" off_y="-10" text="t020"/>
    <comment off_x="-10" off_y="20" text="-"/>
  </transition>
  <transition id="t021" x="350" y="295" priority="0">
    <name off_x="-10" off_y="-10" text="t021"/>
    <comment off_x="-10" off_y="20" text="-"/>
  </transition>
  <place id="p022" x="235" y="295" init_marking="1">
    <name off_x="-10" off_y="-10" text="AllowCom"/>
    <comment off_x="0" off_y="20" text="-"/>
  </place>
  <arc id="a024" type="normal" source="t019" target="p017"/>
  <arc id="a025" type="normal" source="p017" target="t020"/>
  <arc id="a026" type="normal" source="t020" target="p018"/>
  <arc id="a027" type="normal" source="p018" target="t021"/>
  <arc id="a028" type="normal" source="t021" target="p022"/>
  <arc id="a029" type="normal" source="p022" target="t019"/>
  <arc id="a030" type="read" source="p017" target="Req"/>
  <arc id="a031" type="read" source="Delay" target="t020"/>
  <arc id="a032" type="read" source="Delay" target="t021"/>
  <operation id="o033" x="415" y="295" rot="180" shape="arrow" size="16">
    <name off_x="-11" off_y="-16" text="o033"/>
    <input off_x="16" off_y="0" name="Ack" id="o033.Ack" type="boolean" min="0" max="1" dynamic="all"/>
    <output off_x="-16" off_y="0" name="out" id="o033.out" type="range" min="-32768" max="32767" dynamic="type" frac="0">
      <expression>
        <operand type="signal" idRef="Ack" neg="true"/>
        <text>NOT(Ack)</text>
      </expression>
    </output>
  </operation>
  <arc id="a034" type="read" source="Ack" target="t020"/>
  <arc id="a035" type="read" source="Ack" target="o033.Ack" c1_x="35" c1_y="10" c2_x="34" c2_y="-5"/>
  <arc id="a036" type="read" source="o033.out" target="t021"/>
  <arc id="a043" type="read" source="InternalData" target="OutData"/>
  <arc id="a047" type="read" source="p022" target="Available"/>
  <event id="Load" x="170" y="145" mode="input"/>
  <arc id="a197" type="read" source="Load" target="t019"/>
  <operation id="o023" x="275" y="400" rot="0" shape="arrow" size="32">
    <name off_x="-27" off_y="-32" text="o023"/>
    <input off_x="-32" off_y="-16" name="t019" id="o023.t019" type="event" dynamic="all"/>
    <input off_x="-32" off_y="0" name="InData" id="o023.InData" type="range" min="0" max="255" dynamic="all" frac="0"/>
    <input off_x="-32" off_y="16" name="InternalData" id="o023.InternalData" type="range" min="0" max="255" dynamic="all" frac="0"/>
    <output off_x="32" off_y="0" name="out" id="o023.out" type="range" min="0" max="255" dynamic="type" frac="0">
      <expression>
        <operand type="signal" idRef="InData"/>
        <operator type="when"/>
        <operand type="sub-expression">
          <operand type="signal" idRef="t019"/>
        </operand>
        <text>InData WHEN (t019)</text>
      </expression>
      <expression>
        <operand type="signal" idRef="InternalData" delay="1"/>
        <text>InternalData[-1]</text>
      </expression>
    </output>
  </operation>
  <arc id="a002" type="read" source="InData" target="o023.InData"/>
  <arc id="a003" type="read" source="InternalData" target="o023.InternalData" view="symbolic"/>
  <arc id="a004" type="read" source="o023.out" target="InternalData"/>
  <arc id="a010" type="read" source="t019" target="o023.t019" view="symbolic"/>
</net>
