cloudFPGA (cF) API
1.0
The documentation of the source code of cloudFPGA (cF)
|
: UDP offload engine. More...
#include "udp.hpp"
Go to the source code of this file.
Macros | |
#define | packetSize 16 |
Functions | |
ap_uint< 4 > | countBits (ap_uint< 8 > bitVector) |
ap_uint< 8 > | length2keep_mapping (ap_uint< 4 > lengthValue) |
ap_uint< 32 > | byteSwap32 (ap_uint< 32 > inputVector) |
ap_uint< 16 > | byteSwap16 (ap_uint< 16 > inputVector) |
void | portTable (stream< ap_uint< 16 > > &rxEng2portTable_check_req, stream< ap_uint< 16 > > &app2portTable_port_req, stream< ap_uint< 16 > > &app2portTable_port_rel, stream< bool > &portTable2app_port_assign, stream< bool > &portTable2rxEng_check_rsp) |
void | inputPathRxEngine (stream< axiWord > &inputPathInputData, stream< ipTuple > &incomingIPaddresses, stream< axiWord > &inputPathIPheader, stream< ap_uint< 16 > > &rxEng2portTable_check_req, stream< bool > &portTable2rxEng_assign, stream< bool > &rxChecksum2rxEngine, stream< axiWord > &inputPathOutputData, stream< metadata > &inputPathOutputMetadata, stream< axiWord > &inputPathPortUnreachable) |
void | stripIpHeader (stream< axiWord > &inputPathInData, stream< axiWord > &strip2inputPath_data, stream< axiWord > &strip2inputPath_IpHeader, stream< ipTuple > &strip2inputPath_IP, stream< axiWord > &strip2rxChecksum) |
void | rxEngineUdpChecksumVerification (stream< axiWord > &dataIn, stream< bool > &udpChecksumOut) |
void | rxEngine (stream< axiWord > &inputPathInData, stream< ap_uint< 16 > > &app2portTable_port_req, stream< ap_uint< 16 > > &app2portTable_port_rel, stream< bool > &portTable2app_port_assign, stream< axiWord > &inputPathOutData, stream< metadata > &inputPathOutputMetadata, stream< axiWord > &inputPathPortUnreachable) |
void | outputPathWriteFunction (stream< axiWord > &outputPathInData, stream< metadata > &outputPathInMetadata, stream< ap_uint< 16 > > &outputpathInLength, stream< ap_uint< 64 > > &packetData, stream< ap_uint< 16 > > &packetLength, stream< metadata > &udpMetadata, stream< ioWord > &outputPathWriteFunction2checksumCalculation) |
void | udpChecksumCalculation (stream< ioWord > &dataIn, stream< ap_uint< 16 > > &udpChecksumOut) |
void | outputPathReadFunction (stream< ap_uint< 64 > > &packetData, stream< ap_uint< 16 > > &packetLength, stream< metadata > &udpMetadata, stream< ap_uint< 16 > > &udpChecksum, stream< axiWord > &outputPathOutData, stream< ipTuple > &outIPaddresses, stream< ap_uint< 16 > > &outputPathReadFunction2addIpHeader_length) |
void | addIpHeader (stream< axiWord > &outputPathRead2addIpHeader_data, stream< ipTuple > &outputPathRead2addIpHeader_ipAddress, stream< axiWord > &outputPathOutData, stream< ap_uint< 16 > > &outputPathReadFunction2addIpHeader_length) |
void | txEngine (stream< axiWord > &outputPathInData, stream< metadata > &outputPathInMetadata, stream< ap_uint< 16 > > &outputpathInLength, stream< axiWord > &outputPathOutData) |
void | udp (stream< ap_uint< 16 > > &openPort, stream< bool > &confirmPortStatus, stream< axiWord > &inputPathInData, stream< axiWord > &inputpathOutData, stream< metadata > &inputPathOutputMetadata, stream< ap_uint< 16 > > &portRelease, stream< axiWord > &outputPathInData, stream< axiWord > &outputPathOutData, stream< metadata > &outputPathInMetadata, stream< ap_uint< 16 > > &outputpathInLength, stream< axiWord > &inputPathPortUnreachable) |
: UDP offload engine.
Copyright 2016 – 2021 IBM Corporation
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Copyright (c) 2015, Xilinx, Inc.
All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
System: : cloudFPGA Component : Shell, Network Transport Stack (NTS) Language : Vivado HLS
: This process implements the original UDP core engine. It is not used by the cloudFPGA system and was replaced by the UDP Offload Engine (UOE).
Definition in file udp.cpp.
void addIpHeader | ( | stream< axiWord > & | outputPathRead2addIpHeader_data, |
stream< ipTuple > & | outputPathRead2addIpHeader_ipAddress, | ||
stream< axiWord > & | outputPathOutData, | ||
stream< ap_uint< 16 > > & | outputPathReadFunction2addIpHeader_length | ||
) |
Definition at line 681 of file udp.cpp.
ap_uint< 16 > byteSwap16 | ( | ap_uint< 16 > | inputVector | ) |
ap_uint< 32 > byteSwap32 | ( | ap_uint< 32 > | inputVector | ) |
ap_uint<4> countBits | ( | ap_uint< 8 > | bitVector | ) |
void inputPathRxEngine | ( | stream< axiWord > & | inputPathInputData, |
stream< ipTuple > & | incomingIPaddresses, | ||
stream< axiWord > & | inputPathIPheader, | ||
stream< ap_uint< 16 > > & | rxEng2portTable_check_req, | ||
stream< bool > & | portTable2rxEng_assign, | ||
stream< bool > & | rxChecksum2rxEngine, | ||
stream< axiWord > & | inputPathOutputData, | ||
stream< metadata > & | inputPathOutputMetadata, | ||
stream< axiWord > & | inputPathPortUnreachable | ||
) |
To here/////
Definition at line 117 of file udp.cpp.
ap_uint<8> length2keep_mapping | ( | ap_uint< 4 > | lengthValue | ) |
void outputPathReadFunction | ( | stream< ap_uint< 64 > > & | packetData, |
stream< ap_uint< 16 > > & | packetLength, | ||
stream< metadata > & | udpMetadata, | ||
stream< ap_uint< 16 > > & | udpChecksum, | ||
stream< axiWord > & | outputPathOutData, | ||
stream< ipTuple > & | outIPaddresses, | ||
stream< ap_uint< 16 > > & | outputPathReadFunction2addIpHeader_length | ||
) |
Definition at line 629 of file udp.cpp.
void outputPathWriteFunction | ( | stream< axiWord > & | outputPathInData, |
stream< metadata > & | outputPathInMetadata, | ||
stream< ap_uint< 16 > > & | outputpathInLength, | ||
stream< ap_uint< 64 > > & | packetData, | ||
stream< ap_uint< 16 > > & | packetLength, | ||
stream< metadata > & | udpMetadata, | ||
stream< ioWord > & | outputPathWriteFunction2checksumCalculation | ||
) |
Definition at line 511 of file udp.cpp.
void portTable | ( | stream< ap_uint< 16 > > & | rxEng2portTable_check_req, |
stream< ap_uint< 16 > > & | app2portTable_port_req, | ||
stream< ap_uint< 16 > > & | app2portTable_port_rel, | ||
stream< bool > & | portTable2app_port_assign, | ||
stream< bool > & | portTable2rxEng_check_rsp | ||
) |
Definition at line 88 of file udp.cpp.
void rxEngine | ( | stream< axiWord > & | inputPathInData, |
stream< ap_uint< 16 > > & | app2portTable_port_req, | ||
stream< ap_uint< 16 > > & | app2portTable_port_rel, | ||
stream< bool > & | portTable2app_port_assign, | ||
stream< axiWord > & | inputPathOutData, | ||
stream< metadata > & | inputPathOutputMetadata, | ||
stream< axiWord > & | inputPathPortUnreachable | ||
) |
Definition at line 481 of file udp.cpp.
void rxEngineUdpChecksumVerification | ( | stream< axiWord > & | dataIn, |
stream< bool > & | udpChecksumOut | ||
) |
void stripIpHeader | ( | stream< axiWord > & | inputPathInData, |
stream< axiWord > & | strip2inputPath_data, | ||
stream< axiWord > & | strip2inputPath_IpHeader, | ||
stream< ipTuple > & | strip2inputPath_IP, | ||
stream< axiWord > & | strip2rxChecksum | ||
) |
Definition at line 269 of file udp.cpp.
void txEngine | ( | stream< axiWord > & | outputPathInData, |
stream< metadata > & | outputPathInMetadata, | ||
stream< ap_uint< 16 > > & | outputpathInLength, | ||
stream< axiWord > & | outputPathOutData | ||
) |
Definition at line 765 of file udp.cpp.
void udp | ( | stream< ap_uint< 16 > > & | openPort, |
stream< bool > & | confirmPortStatus, | ||
stream< axiWord > & | inputPathInData, | ||
stream< axiWord > & | inputpathOutData, | ||
stream< metadata > & | inputPathOutputMetadata, | ||
stream< ap_uint< 16 > > & | portRelease, | ||
stream< axiWord > & | outputPathInData, | ||
stream< axiWord > & | outputPathOutData, | ||
stream< metadata > & | outputPathInMetadata, | ||
stream< ap_uint< 16 > > & | outputpathInLength, | ||
stream< axiWord > & | inputPathPortUnreachable | ||
) |
Definition at line 810 of file udp.cpp.
void udpChecksumCalculation | ( | stream< ioWord > & | dataIn, |
stream< ap_uint< 16 > > & | udpChecksumOut | ||
) |