123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <Graph version="2018.3.1" pxg_version="2" maxfile_name="StreamFMA" design_name="StreamFMAKernel" compilation_phase="final-simulation" frequency="100,00">
- <Node criticalPaths="[]" group="[]" id="8" isControl="true" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeInputMappedReg">
- <Output latency="0" name="io_output_force_disabled" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>Scalar input (io_output_force_disabled)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.output(IO.java:836)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:21)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>io_output_force_disabled</Name>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="9" dst_node_input="a" src_node_id="8" src_node_output="io_output_force_disabled" />
- <Node criticalPaths="[]" group="[]" id="9" isControl="true" isVisible="false" pipelineFactor="0.0" powerUsage="N/A" type="NodeNot">
- <Input name="a" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Output latency="0" name="result" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>~</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.output(IO.java:836)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:21)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="11" dst_node_input="output_control" src_node_id="9" src_node_output="result" />
- <Node criticalPaths="[]" group="[]" id="0" isControl="true" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeInputMappedReg">
- <Output latency="0" name="io_a_force_disabled" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>Scalar input (io_a_force_disabled)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:15)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>io_a_force_disabled</Name>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="1" dst_node_input="a" src_node_id="0" src_node_output="io_a_force_disabled" />
- <Node criticalPaths="[]" group="[]" id="1" isControl="true" isVisible="false" pipelineFactor="0.0" powerUsage="N/A" type="NodeNot">
- <Input name="a" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Output latency="0" name="result" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>~</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:15)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="2" dst_node_input="enable" src_node_id="1" src_node_output="result" />
- <Node criticalPaths="[0]" group="[]" id="2" isControl="false" isVisible="true" pipelineFactor="1.0" powerUsage="N/A" type="NodeInput">
- <Input name="enable" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Output latency="5" name="data" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Text>Input(a)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:15)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>a</Name>
- </Node>
- <Edge criticalPaths="[0]" dst_node_id="6" dst_node_input="a" src_node_id="2" src_node_output="data" />
- <Node criticalPaths="[]" group="[]" id="3" isControl="true" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeInputMappedReg">
- <Output latency="0" name="io_b_force_disabled" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>Scalar input (io_b_force_disabled)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:16)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>io_b_force_disabled</Name>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="4" dst_node_input="a" src_node_id="3" src_node_output="io_b_force_disabled" />
- <Node criticalPaths="[]" group="[]" id="4" isControl="true" isVisible="false" pipelineFactor="0.0" powerUsage="N/A" type="NodeNot">
- <Input name="a" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Output latency="0" name="result" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>~</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:16)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="5" dst_node_input="enable" src_node_id="4" src_node_output="result" />
- <Node criticalPaths="[1]" group="[]" id="5" isControl="false" isVisible="true" pipelineFactor="1.0" powerUsage="N/A" type="NodeInput">
- <Input name="enable" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Output latency="5" name="data" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Text>Input(b)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.input(IO.java:630)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:16)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>b</Name>
- </Node>
- <Edge criticalPaths="[1]" dst_node_id="6" dst_node_input="b" src_node_id="5" src_node_output="data" />
- <Node criticalPaths="[0, 1]" group="[]" id="6" isControl="false" isVisible="true" pipelineFactor="1.0" powerUsage="N/A" type="NodeAdd">
- <Input name="a" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Input name="b" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Output latency="1" name="result" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Text>+</Text>
- <ResourceUsage DSPs="0" FFs="32" FMems="0" LUTs="64" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.types.base.DFEVar.add(DFEVar.java:1010)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:19)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[0, 1]" dst_node_id="11" dst_node_input="data" src_node_id="6" src_node_output="result" />
- <Node criticalPaths="[0, 1]" group="[]" id="11" isControl="false" isVisible="true" pipelineFactor="1.0" powerUsage="N/A" type="NodeOutput">
- <Input name="output_control" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Input name="data" type="dfeOffsetFix(32, 0, TWOSCOMPLEMENT)" />
- <Text>Output(output)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.maxcompiler.v2.kernelcompiler.stdlib.core.IO.output(IO.java:836)
- perfmodels.StreamFMAKernel.<init>(StreamFMAKernel.maxj:21)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>output</Name>
- </Node>
- <Node criticalPaths="[]" group="[]" id="16" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeConstantRawBits">
- <Output latency="0" name="value" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>{HWOffsetFix:1, 0, UNSIGNED}\n0x1; 1.0</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Value>1</Value>
- <HexValue>0x1</HexValue>
- <NumericValue>1.0</NumericValue>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="17" dst_node_input="load" src_node_id="16" src_node_output="value" />
- <Node criticalPaths="[]" group="[]" id="26" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeConstantRawBits">
- <Output latency="0" name="value" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>{HWOffsetFix:1, 0, UNSIGNED}\n0x1; 1.0</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Value>1</Value>
- <HexValue>0x1</HexValue>
- <NumericValue>1.0</NumericValue>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="14" dst_node_input="enable" src_node_id="26" src_node_output="value" />
- <Node criticalPaths="[]" group="[]" id="13" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeConstantRawBits">
- <Output latency="0" name="value" type="dfeOffsetFix(49, 0, UNSIGNED)" />
- <Text>{HWOffsetFix:49, 0, UNSIGNED}\n0x1000000000000; 2.81474976710656E14</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Value>1000000000000000000000000000000000000000000000000</Value>
- <HexValue>0x1000000000000</HexValue>
- <NumericValue>2.81474976710656E14</NumericValue>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="14" dst_node_input="max" src_node_id="13" src_node_output="value" />
- <Node criticalPaths="[]" group="[]" id="14" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeCounter">
- <Input name="enable" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Input name="max" type="dfeOffsetFix(49, 0, UNSIGNED)" />
- <Output latency="0" name="count" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Output latency="0" name="wrap" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>Counter(NUMERIC_INCREMENTING)\nInc: 1\nReset: 0\nInit: 0</Text>
- <ResourceUsage DSPs="0" FFs="48" FMems="0" LUTs="48" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Increment>1</Increment>
- <WrapValue>0</WrapValue>
- <InitValue>0</InitValue>
- <CountMode>NUMERIC_INCREMENTING</CountMode>
- <WrapMode>COUNT_LT_MAX_THEN_WRAP</WrapMode>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="15" dst_node_input="input" src_node_id="14" src_node_output="count" />
- <Node criticalPaths="[]" group="[]" id="15" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeStreamOffset">
- <Input name="input" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Output latency="1" name="output" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Text>stream offset: 1</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="17" dst_node_input="data" src_node_id="15" src_node_output="output" />
- <Node criticalPaths="[]" group="[]" id="17" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeOutputMappedReg">
- <Input name="load" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Input name="data" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Text>Scalar output (current_run_cycle_count)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>current_run_cycle_count</Name>
- </Node>
- <Node criticalPaths="[]" group="[]" id="25" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeConstantRawBits">
- <Output latency="0" name="value" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>{HWOffsetFix:1, 0, UNSIGNED}\n0x1; 1.0</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Value>1</Value>
- <HexValue>0x1</HexValue>
- <NumericValue>1.0</NumericValue>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="20" dst_node_input="enable" src_node_id="25" src_node_output="value" />
- <Node criticalPaths="[]" group="[]" id="19" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeConstantRawBits">
- <Output latency="0" name="value" type="dfeOffsetFix(49, 0, UNSIGNED)" />
- <Text>{HWOffsetFix:49, 0, UNSIGNED}\n0x1000000000000; 2.81474976710656E14</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Value>1000000000000000000000000000000000000000000000000</Value>
- <HexValue>0x1000000000000</HexValue>
- <NumericValue>2.81474976710656E14</NumericValue>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="20" dst_node_input="max" src_node_id="19" src_node_output="value" />
- <Node criticalPaths="[]" group="[]" id="20" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeCounter">
- <Input name="enable" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Input name="max" type="dfeOffsetFix(49, 0, UNSIGNED)" />
- <Output latency="0" name="count" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Output latency="0" name="wrap" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>Counter(NUMERIC_INCREMENTING)\nInc: 1\nReset: 0\nInit: 0</Text>
- <ResourceUsage DSPs="0" FFs="48" FMems="0" LUTs="48" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Increment>1</Increment>
- <WrapValue>0</WrapValue>
- <InitValue>0</InitValue>
- <CountMode>NUMERIC_INCREMENTING</CountMode>
- <WrapMode>COUNT_LT_MAX_THEN_WRAP</WrapMode>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="24" dst_node_input="a" src_node_id="20" src_node_output="count" />
- <Node criticalPaths="[]" group="[]" id="22" isControl="true" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeInputMappedReg">
- <Output latency="0" name="run_cycle_count" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Text>Scalar input (run_cycle_count)</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- <Name>run_cycle_count</Name>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="24" dst_node_input="b" src_node_id="22" src_node_output="run_cycle_count" />
- <Node criticalPaths="[]" group="[]" id="24" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeEqInlined">
- <Input name="a" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Input name="b" type="dfeOffsetFix(48, 0, UNSIGNED)" />
- <Output latency="1" name="result" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>==</Text>
- <ResourceUsage DSPs="0" FFs="1" FMems="0" LUTs="2" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- <Edge criticalPaths="[]" dst_node_id="21" dst_node_input="start" src_node_id="24" src_node_output="result" />
- <Node criticalPaths="[]" group="[]" id="21" isControl="false" isVisible="false" pipelineFactor="1.0" powerUsage="N/A" type="NodeFlush">
- <Input name="start" type="dfeOffsetFix(1, 0, UNSIGNED)" />
- <Text>flush on trigger</Text>
- <ResourceUsage DSPs="0" FFs="0" FMems="0" LUTs="0" />
- <OriginStackTrace>com.maxeler.platform.max5.manager.Max5ManagerBase.addKernel(Unknown Source)
- perfmodels.StreamFMAManager.<init>(StreamFMAManager.maxj:13)
- perfmodels.StreamFMAManager.main(StreamFMAManager.maxj:20)</OriginStackTrace>
- </Node>
- </Graph>
|