123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package fpga;
- import com.maxeler.maxcompiler.v2.build.EngineParameters;
- //import com.maxeler.maxcompiler.v2.kernelcompiler.Kernel;
- import com.maxeler.maxcompiler.v2.managers.custom.DFELink;
- import com.maxeler.maxcompiler.v2.managers.custom.blocks.KernelBlock;
- import com.maxeler.maxcompiler.v2.managers.custom.stdlib.LMemCommandGroup;
- import com.maxeler.maxcompiler.v2.managers.custom.stdlib.LMemInterface;
- //import com.maxeler.maxcompiler.v2.managers.engine_interfaces.CPUTypes;
- //import com.maxeler.maxcompiler.v2.managers.engine_interfaces.EngineInterface;
- //import com.maxeler.maxcompiler.v2.managers.engine_interfaces.EngineInterface.Direction;
- //import com.maxeler.maxcompiler.v2.managers.engine_interfaces.InterfaceParam;
- import com.maxeler.platform.max5.manager.MAX5CManager;
- public class StreamFMAManager extends MAX5CManager
- {
- //private static final CPUTypes TYPE = CPUTypes.INT32;
- private static final String kernel_name = "StreamFMAKernel";
- public StreamFMAManager(EngineParameters params)
- {
- super(params);
- KernelBlock kernel = addKernel(new StreamFMAKernel(makeKernelParameters(kernel_name)));
- LMemInterface iface = addLMemInterface();
- kernel.getInput("inAT1") <== addStreamFromCPU("inAT1");
- kernel.getInput("inBT1") <== addStreamFromCPU("inBT1");
- //addStreamToCPU("oDataT1") <== kernel.getOutput("oDataT1");
- DFELink inAT2 = iface.addStreamFromLMem("inAT2", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- kernel.getInput("inAT2") <== inAT2;
- DFELink inBT2 = iface.addStreamFromLMem("inBT2", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- kernel.getInput("inBT2") <== inBT2;
- DFELink inAT3 = iface.addStreamFromLMem("inAT3", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- kernel.getInput("inAT3") <== inAT3;
- DFELink inBT3 = iface.addStreamFromLMem("inBT3", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- kernel.getInput("inBT3") <== inBT3;
- DFELink oDataT1 = iface.addStreamToLMem("oDataT1", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- oDataT1 <== kernel.getOutput("oDataT1");
- DFELink oDataT2 = iface.addStreamToLMem("oDataT2", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- oDataT2 <== kernel.getOutput("oDataT2");
- //DFELink oDataT3 = iface.addStreamToLMem("oDataT3", LMemCommandGroup.MemoryAccessPattern.LINEAR_1D);
- //oDataT3 <== kernel.getOutput("oDataT3");
- addStreamToCPU("oDataT3") <== kernel.getOutput("oDataT3");
- }
- public static void main(String[] args)
- {
- StreamFMAManager manager = new StreamFMAManager(new EngineParameters(args));
- manager.build();
- }
- }
|