-
Type:
Task
-
Resolution: resolved
-
Priority:
Minor
-
Component/s: SW
-
None
https://github.com/slaclab/dev-board-examples/tree/master/software/standalone
This will be the example the the Stanford brain scanning guy will want for writing his 100% C++ code. This standalone support will support all of these interfaces that we have in the python implementation:
# DataDev PCIe Card
if ( args.type == 'datadev' ):
vc0Srp = rogue.hardware.axi.AxiStreamDma(args.dev,(args.lane*32)+0,True)
vc1Prbs = rogue.hardware.axi.AxiStreamDma(args.dev,(args.lane*32)+1,True)
# RUDP Ethernet
elif ( args.type == 'eth' ):
# Create the ETH interface @ IP Address = args.dev
rudp = pr.protocols.UdpRssiPack(
host = args.ip,
port = 8192,
packVer = args.packVer,
)
# Map the AxiStream.TDEST
vc0Srp = rudp.application(0); # AxiStream.tDest = 0x0
vc1Prbs = rudp.application(1); # AxiStream.tDest = 0x1
# Legacy PGP PCIe Card
elif ( args.type == 'pgp' ):
vc0Srp = rogue.hardware.pgp.PgpCard(args.dev,args.lane,0) # Registers
vc1Prbs = rogue.hardware.pgp.PgpCard(args.dev,args.lane,1) # Data
# Undefined device type
else:
raise ValueError("Invalid type (%s)" % (args.type) )