cloudFPGA (cF) API  1.0
The documentation of the source code of cloudFPGA (cF)
AxisEth.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2016 -- 2021 IBM Corporation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 
94 #ifndef _AXIS_ETH_H_
95 #define _AXIS_ETH_H_
96 
97 #include "AxisRaw.hpp"
98 #include "AxisArp.hpp"
99 #include "AxisIp4.hpp"
100 
101 
105 typedef ap_uint<48> LE_EthSrcAddr; // Ethernet Source Address
106 typedef ap_uint<48> LE_EthDstAddr; // Ethernet Destination Address
107 typedef ap_uint<48> LE_EthAddress; // Ethernet Source or Destination Address
108 typedef ap_uint<48> LE_EthAddr; // Ethernet Source or Destination Address (a shorter version)
109 typedef ap_uint<16> LE_EthTypeLen; // Ethernet Type or Length field
110 typedef ap_uint<16> LE_EtherType; // Ethernet Type field
111 typedef ap_uint<16> LE_EtherLen; // Ethernet Length field
112 
113 
117 typedef ap_uint<48> EthSrcAddr; // Ethernet Source Address
118 typedef ap_uint<48> EthDstAddr; // Ethernet Destination Address
119 typedef ap_uint<48> EthAddress; // Ethernet Source or Destination Address
120 typedef ap_uint<48> EthAddr; // Ethernet Source or Destination Address
121 typedef ap_uint<16> EthTypeLen; // Ethernet Type or Length field
122 typedef ap_uint<16> EtherType; // Ethernet Type field
123 typedef ap_uint<16> EtherLen; // Ethernet Length field
124 
125 
129 typedef ap_uint<16> LE_Ip4DstAddrHi; // IPv4 Destination Address 16-MSbits (.i.e 31:16)
130 typedef ap_uint<16> LE_Ip4DstAddrLo; // IPv4 Destination Address 16-LSbits (.i.e 15:00)
131 
132 
136 typedef ap_uint<16> Ip4DstAddrHi; // IPv4 Destination Address 16-MSbits (.i.e 31:16)
137 typedef ap_uint<16> Ip4DstAddrLo; // IPv4 Destination Address 16-LSbits (.i.e 15:00)
138 
139 
143 class AxisEth: public AxisRaw {
144 
145  public:
146  AxisEth() {}
147  AxisEth(AxisRaw axisRaw) :
148  AxisRaw(axisRaw.getLE_TData(), axisRaw.getLE_TKeep(), axisRaw.getLE_TLast()) {}
150  AxisRaw(tdata, tkeep, tlast) {}
151  AxisEth(const AxisEth &axisEth) :
152  AxisRaw(axisEth.tdata, axisEth.tkeep, axisEth.tlast) {}
153 
154 
158  // Set the ETH Destination Address
159  void setEthDstAddr(EthAddr addr) { tdata.range(47, 0) = swapMacAddr(addr); }
160  // Get the ETH Destination Address
161  EthAddr getEthDstAddr() { return swapMacAddr(tdata.range(47, 0)); }
162  // Set-Get the 16-MSbits of the ETH Source Address
163  void setEthSrcAddrHi(EthAddr addr) { tdata.range(63, 48) = swapMacAddr(addr).range(15, 0); }
164  ap_uint<16> getEthSrcAddrHi() { return swapWord(tdata.range(63, 48)); }
165  // Set-Get the 32-LSbits of the ETH Source Address
166  void setEthSrcAddrLo(EthAddr addr) { tdata.range(31, 0) = swapMacAddr(addr).range(47, 16); }
167  ap_uint<32> getEthSrcAddrLo() { return swapDWord(tdata.range(31, 0)); }
168  // Set-get the ETH Type/Length
169  void setEthTypeLen(EthTypeLen eTyLe) { tdata.range(47, 32) = swapWord(eTyLe); }
170  EthTypeLen getEthTypelen() { return swapWord(tdata.range(47, 32)); }
171  void setEthertType(EtherType eType) { tdata.range(47, 32) = swapWord(eType); }
172  EtherType getEtherType() { return swapWord(tdata.range(47, 32)); }
173  void setEtherLen(EtherLen eLength) { tdata.range(47, 32) = swapWord(eLength); }
174  EtherLen getEtherLen() { return swapWord(tdata.range(47, 32)); }
175 
176  LE_EthAddr getLE_EthDstAddr() { return tdata.range(47, 0); }
177  ap_uint<16> getLE_EthSrcAddrHi() { return tdata.range(63, 48); }
178  ap_uint<32> getLE_EthSrcAddrLo() { return tdata.range(31, 0); }
179  LE_EtherType getLE_EtherType() { return tdata.range(47, 32); }
180 
181  //-----------------------------------------------------
182  //-- ENCAPSULATED ARP PACKET - Setters and Getters
183  //-----------------------------------------------------
184  // Set-Get the Hardware Type (HTYPE) field
185  void setArpHwType(ArpHwType htype) { tdata.range(63, 48) = swapWord(htype); }
186  ArpHwType getArpHwType() { return swapWord(tdata.range(63, 48)); }
187  // Set-Get the Protocol type (PTYPE) field
188  void setArpProtType(ArpProtType ptype) { tdata.range(15, 0) = swapWord(ptype); }
189  ArpProtType getArpProtType() { return swapWord(tdata.range(15, 0)); }
190  // Set the Hardware Address Length (HLEN) field
191  void setArpHwLen(ArpHwLen hlen) { tdata.range(23, 16) = hlen; }
192  ArpHwLen getArpHwLen() { return tdata.range(23, 16); }
193  // Set-Get Protocol Address length (PLEN) field
194  void setArpProtLen(ArpProtLen plen) { tdata.range(31, 24) = plen; }
195  ArpProtLen getArpProtLen() { return tdata.range(31, 24); }
196  // Set-Get the Operation code (OPER) field
197  void setArpOper(ArpOper oper) { tdata.range(47, 32) = swapWord(oper); }
198  ArpOper getArpOper() { return swapWord(tdata.range(47, 32)); }
199  // Set-Get the 16-MSbits of the Sender Hardware Address (SHA)
200  void setArpShaHi(ArpSendHwAddr sha) { tdata.range(63, 48) = swapMacAddr(sha).range(15, 0);}
201  ArpShaHi getArpShaHi() { return swapWord(tdata.range(63, 48)); }
202  // Set-Get the 32-LSbits of the Sender Hardware Address (SHA)
203  void setArpShaLo(ArpSendHwAddr sha) { tdata.range(31, 0) = swapMacAddr(sha).range(47, 16);}
204  ArpShaLo getArpShaLo() {return swapDWord(tdata.range(31, 0)); }
205  // Set-Get the the Sender Protocol Address (SPA)
206  void setArpSpa(ArpSendProtAddr spa) { tdata.range(63, 32) = swapDWord(spa); }
207  ArpSendProtAddr getArpSpa() {return swapDWord(tdata.range(63, 32)); }
208  // Set-Get the Target Hardware Address (THA)
209  void setArpTha(ArpTargHwAddr tha) { tdata.range(47, 0) = swapMacAddr(tha); }
210  ArpTargHwAddr getArpTha() {return swapMacAddr(tdata.range(47, 0)); }
211  // Set-Get the 16-MSbits of the Target Protocol Address (TPA)
212  void setArpTpaHi(ArpTargProtAddr tpa) { tdata.range(63, 48) = swapDWord(tpa).range(15, 0); }
213  ArpTpaHi getArpTpaHi() { return swapWord(tdata.range(63, 48)); }
214  // Set-Get the 16-LSbits of the Target Protocol Address (TPA)
215  void setArpTpaLo(ArpTargProtAddr tpa) { tdata.range(15, 0) = swapDWord(tpa).range(31, 16); }
216  ArpTpaLo getArpTpaLo() { return swapWord(tdata.range(15, 0)); }
217 
218  LE_ArpHwType getLE_ArpHwType() { return tdata.range(63, 48); }
219  LE_ArpProtType getLE_ArpProtType() { return tdata.range(15, 0); }
220  LE_ArpOper getLE_ArpOper() { return tdata.range(47, 32); }
221  LE_ArpShaHi getLE_ArpShaHi() { return tdata.range(63, 48); }
222  LE_ArpShaLo getLE_ArpShaLo() { return tdata.range(31, 0); }
223  LE_ArpSendProtAddr getLE_ArpSpa() { return tdata.range(63, 32); }
224  LE_ArpTargHwAddr getLE_ArpTha() { return tdata.range(47, 0); }
225  LE_ArpTpaHi getLE_ArpTpaHi() { return tdata.range(63, 48); }
226  LE_ArpTpaLo getLE_ArpTpaLo() { return tdata.range(15, 0); }
227 
228  //-----------------------------------------------------
229  //-- ENCAPSULATED IP4 PACKET - Setters and Getters
230  //-----------------------------------------------------
231 
232  // Set-Get the IP4 Version
233  void setIp4Version(Ip4Version ver) { tdata.range(55, 52) = ver; }
234  Ip4Version getIp4Version() { return tdata.range(55, 52); }
235  // Set-Get the IP4 Internet Header Length
236  void setIp4HdrLen(Ip4HdrLen ihl) { tdata.range(51, 48) = ihl; }
237  Ip4HdrLen getIp4HdrLen() { return tdata.range(51, 48); }
238  // Set-Get the IP4 Type of Service
239  void setIp4ToS(Ip4ToS tos) { tdata.range(63, 56) = tos; }
240  Ip4ToS getIp4ToS() { return tdata.range(63, 56); }
241  // Set the IP4 Total Length
242  void setIp4TotalLen(Ip4TotalLen len) { tdata.range(15, 0) = swapWord(len); }
243  Ip4TotalLen getIp4TotalLen() { return swapWord(tdata.range(15, 0)); }
244  // Set-Get the IP4 Identification
245  void setIp4Ident(Ip4Ident id) { tdata.range(31, 16) = swapWord(id); }
246  Ip4Ident getIp4Ident() { return swapWord(tdata.range(31, 16)); }
247  // Set-Get the IP4 Fragment Offset
248  void setIp4FragOff(Ip4FragOff offset) { tdata.range(47, 40) = offset( 7, 0);
249  tdata.range(36, 32) = offset(12, 8); }
250  Ip4FragOff getIp4FragOff() { return (tdata.range(47, 40) << 8 |
251  tdata.range(36, 32)); }
252  // Set the IP4 Flags
253  void setIp4Flags(Ip4Flags flags) { tdata.range(39, 37) = flags; }
254  // Set-Get the IP4 Time to Live
255  void setIp4TtL(Ip4TtL ttl) { tdata.range(55, 48) = ttl; }
256  Ip4TtL getIp4Ttl() { return tdata.range(55, 48); }
257  // Set-Get the IP4 Protocol
258  void setIp4Prot(Ip4Prot prot) { tdata.range(63, 56) = prot; }
259  Ip4Prot getIp4Prot() { return tdata.range(63, 56); }
260  // Set-Get the IP4 Header Checksum
261  void setIp4HdrCsum(Ip4HdrCsum csum) { tdata.range(15, 0) = swapWord(csum); }
262  Ip4HdrCsum getIp4HdrCsum() {return swapWord(tdata.range(15, 0)); }
263  // Set-Get the IP4 Source Address
264  void setIp4SrcAddr(Ip4Addr addr) { tdata.range(47, 16) = swapDWord(addr); }
265  Ip4Addr getIp4SrcAddr() {return swapDWord(tdata.range(47, 16)); }
266  // Set-Get the IP4 Destination Address
267  void setIp4DstAddrHi(Ip4Addr addr) { tdata.range(63, 48) = swapWord(addr).range(15, 0); }
268  Ip4DstAddrHi getIp4DstAddrHi() { return swapWord(tdata.range(63, 48)); }
269  void setIp4DstAddrLo(Ip4Addr addr) { tdata.range(15, 0) = swapWord(addr).range(31,16); }
270  Ip4DstAddrLo getIp4DstAddrLo() { return swapWord(tdata.range(15, 0)); }
271 
272  LE_Ip4Addr getLE_Ip4SrcAddr() { return tdata.range(63, 32); }
273  LE_Ip4DstAddrHi getLE_Ip4DstAddrHi() { return tdata.range(63, 48); }
274  LE_Ip4DstAddrLo getLE_Ip4DstAddrLo() { return tdata.range(15, 0); }
275 
276 
277  private:
278  // Swap the two bytes of a word (.i.e, 16 bits)
279  ap_uint<16> swapWord(ap_uint<16> inpWord) {
280  return (inpWord.range(7,0), inpWord.range(15, 8));
281  }
282  // Swap the four bytes of a double-word (.i.e, 32 bits)
283  ap_uint<32> swapDWord(ap_uint<32> inpDWord) {
284  return (inpDWord.range( 7, 0), inpDWord.range(15, 8),
285  inpDWord.range(23,16), inpDWord.range(31, 24));
286  }
287  // Swap the six bytes of a MAC address (.i.e, 48 bits)
288  ap_uint<48> swapMacAddr(ap_uint<48> macAddr) {
289  return (macAddr.range( 7, 0), macAddr.range(15, 8),
290  macAddr.range(23, 16), macAddr.range(31, 24),
291  macAddr.range(39, 32), macAddr.range(47, 40));
292  }
293 
294 }; // End of: AxisEth
295 
296 #endif
297 
: A class to access an ARP data chunk transmitted over an AXI4-Stream interface.
: A class to access an IPv4 data chunk transmitted over an AXI4-Stream interface.
: A generic class used by the Network-Transport-Stack (NTS) to to transfer a chunk of data over an AX...
LE_EtherType getLE_EtherType()
Definition: AxisEth.hpp:179
ap_uint< 16 > getEthSrcAddrHi()
Definition: AxisEth.hpp:164
LE_ArpTpaLo getLE_ArpTpaLo()
Definition: AxisEth.hpp:226
LE_Ip4Addr getLE_Ip4SrcAddr()
Definition: AxisEth.hpp:272
Ip4HdrLen getIp4HdrLen()
Definition: AxisEth.hpp:237
void setEthDstAddr(EthAddr addr)
Definition: AxisEth.hpp:159
AxisEth()
Definition: AxisEth.hpp:146
LE_Ip4DstAddrHi getLE_Ip4DstAddrHi()
Definition: AxisEth.hpp:273
LE_ArpProtType getLE_ArpProtType()
Definition: AxisEth.hpp:219
void setArpTpaHi(ArpTargProtAddr tpa)
Definition: AxisEth.hpp:212
void setIp4DstAddrLo(Ip4Addr addr)
Definition: AxisEth.hpp:269
ap_uint< 32 > getEthSrcAddrLo()
Definition: AxisEth.hpp:167
ArpShaHi getArpShaHi()
Definition: AxisEth.hpp:201
ArpTargHwAddr getArpTha()
Definition: AxisEth.hpp:210
void setIp4TtL(Ip4TtL ttl)
Definition: AxisEth.hpp:255
void setEtherLen(EtherLen eLength)
Definition: AxisEth.hpp:173
LE_ArpTargHwAddr getLE_ArpTha()
Definition: AxisEth.hpp:224
void setIp4Version(Ip4Version ver)
Definition: AxisEth.hpp:233
Ip4DstAddrHi getIp4DstAddrHi()
Definition: AxisEth.hpp:268
EtherType getEtherType()
Definition: AxisEth.hpp:172
void setArpProtLen(ArpProtLen plen)
Definition: AxisEth.hpp:194
void setEthertType(EtherType eType)
Definition: AxisEth.hpp:171
void setIp4TotalLen(Ip4TotalLen len)
Definition: AxisEth.hpp:242
Ip4Version getIp4Version()
Definition: AxisEth.hpp:234
EtherLen getEtherLen()
Definition: AxisEth.hpp:174
void setArpSpa(ArpSendProtAddr spa)
Definition: AxisEth.hpp:206
Ip4DstAddrLo getIp4DstAddrLo()
Definition: AxisEth.hpp:270
ap_uint< 32 > getLE_EthSrcAddrLo()
Definition: AxisEth.hpp:178
AxisEth(AxisRaw axisRaw)
Definition: AxisEth.hpp:147
void setIp4SrcAddr(Ip4Addr addr)
Definition: AxisEth.hpp:264
void setIp4Ident(Ip4Ident id)
Definition: AxisEth.hpp:245
LE_ArpHwType getLE_ArpHwType()
Definition: AxisEth.hpp:218
LE_EthAddr getLE_EthDstAddr()
Definition: AxisEth.hpp:176
ArpHwLen getArpHwLen()
Definition: AxisEth.hpp:192
LE_ArpOper getLE_ArpOper()
Definition: AxisEth.hpp:220
ArpProtLen getArpProtLen()
Definition: AxisEth.hpp:195
void setArpProtType(ArpProtType ptype)
Definition: AxisEth.hpp:188
void setIp4HdrCsum(Ip4HdrCsum csum)
Definition: AxisEth.hpp:261
LE_Ip4DstAddrLo getLE_Ip4DstAddrLo()
Definition: AxisEth.hpp:274
AxisEth(const AxisEth &axisEth)
Definition: AxisEth.hpp:151
void setArpOper(ArpOper oper)
Definition: AxisEth.hpp:197
EthTypeLen getEthTypelen()
Definition: AxisEth.hpp:170
Ip4FragOff getIp4FragOff()
Definition: AxisEth.hpp:250
void setIp4DstAddrHi(Ip4Addr addr)
Definition: AxisEth.hpp:267
Ip4Prot getIp4Prot()
Definition: AxisEth.hpp:259
Ip4TotalLen getIp4TotalLen()
Definition: AxisEth.hpp:243
ArpShaLo getArpShaLo()
Definition: AxisEth.hpp:204
Ip4Ident getIp4Ident()
Definition: AxisEth.hpp:246
Ip4Addr getIp4SrcAddr()
Definition: AxisEth.hpp:265
LE_ArpShaHi getLE_ArpShaHi()
Definition: AxisEth.hpp:221
void setArpShaLo(ArpSendHwAddr sha)
Definition: AxisEth.hpp:203
ArpTpaHi getArpTpaHi()
Definition: AxisEth.hpp:213
void setIp4Prot(Ip4Prot prot)
Definition: AxisEth.hpp:258
AxisEth(LE_tData tdata, LE_tKeep tkeep, LE_tLast tlast)
Definition: AxisEth.hpp:149
void setArpTpaLo(ArpTargProtAddr tpa)
Definition: AxisEth.hpp:215
void setEthSrcAddrHi(EthAddr addr)
Definition: AxisEth.hpp:163
LE_ArpTpaHi getLE_ArpTpaHi()
Definition: AxisEth.hpp:225
void setEthSrcAddrLo(EthAddr addr)
Definition: AxisEth.hpp:166
void setArpShaHi(ArpSendHwAddr sha)
Definition: AxisEth.hpp:200
void setIp4FragOff(Ip4FragOff offset)
Definition: AxisEth.hpp:248
EthAddr getEthDstAddr()
Definition: AxisEth.hpp:161
void setEthTypeLen(EthTypeLen eTyLe)
Definition: AxisEth.hpp:169
void setIp4ToS(Ip4ToS tos)
Definition: AxisEth.hpp:239
LE_ArpShaLo getLE_ArpShaLo()
Definition: AxisEth.hpp:222
void setArpHwLen(ArpHwLen hlen)
Definition: AxisEth.hpp:191
ArpTpaLo getArpTpaLo()
Definition: AxisEth.hpp:216
ArpHwType getArpHwType()
Definition: AxisEth.hpp:186
void setArpHwType(ArpHwType htype)
Definition: AxisEth.hpp:185
Ip4TtL getIp4Ttl()
Definition: AxisEth.hpp:256
LE_ArpSendProtAddr getLE_ArpSpa()
Definition: AxisEth.hpp:223
void setArpTha(ArpTargHwAddr tha)
Definition: AxisEth.hpp:209
ArpSendProtAddr getArpSpa()
Definition: AxisEth.hpp:207
ArpOper getArpOper()
Definition: AxisEth.hpp:198
ArpProtType getArpProtType()
Definition: AxisEth.hpp:189
void setIp4HdrLen(Ip4HdrLen ihl)
Definition: AxisEth.hpp:236
void setIp4Flags(Ip4Flags flags)
Definition: AxisEth.hpp:253
ap_uint< 16 > getLE_EthSrcAddrHi()
Definition: AxisEth.hpp:177
Ip4HdrCsum getIp4HdrCsum()
Definition: AxisEth.hpp:262
Ip4ToS getIp4ToS()
Definition: AxisEth.hpp:240
LE_tKeep getLE_TKeep(int leHi=64/8-1, int leLo=0) const
Definition: AxisRaw.hpp:264
LE_tData tdata
Definition: AxisRaw.hpp:173
LE_tData getLE_TData(int leHi=64 -1, int leLo=0) const
Definition: AxisRaw.hpp:260
LE_tKeep tkeep
Definition: AxisRaw.hpp:174
LE_tLast getLE_TLast() const
Definition: AxisRaw.hpp:268
LE_tLast tlast
Definition: AxisRaw.hpp:175
ap_uint< 16 > LE_Ip4DstAddrHi
Definition: AxisEth.hpp:129
ap_uint< 8 > Ip4Prot
Definition: AxisIp4.hpp:164
ap_uint< 16 > ArpProtType
Definition: AxisArp.hpp:96
ap_uint< 48 > LE_EthSrcAddr
Definition: AxisEth.hpp:105
ap_uint< 16 > LE_EtherLen
Definition: AxisEth.hpp:111
ap_uint< 48 > EthAddr
Definition: AxisEth.hpp:120
ap_uint< 4 > Ip4Version
Definition: AxisIp4.hpp:156
ap_uint< 48 > EthAddress
Definition: AxisEth.hpp:119
ap_uint< 48 > ArpSendHwAddr
Definition: AxisArp.hpp:100
ap_uint< 32 > LE_Ip4Addr
Definition: AxisIp4.hpp:149
ap_uint< 32 > LE_ArpSendProtAddr
Definition: AxisArp.hpp:82
ap_uint< 16 > LE_Ip4DstAddrLo
Definition: AxisEth.hpp:130
ap_uint< 8 > ArpProtLen
Definition: AxisArp.hpp:98
ap_uint< 32 > ArpSendProtAddr
Definition: AxisArp.hpp:101
ap_uint< 32 > ArpTargProtAddr
Definition: AxisArp.hpp:103
ap_uint< 64 > LE_tData
Definition: AxisRaw.hpp:122
ap_uint< 16 > EtherLen
Definition: AxisEth.hpp:123
ap_uint< 48 > LE_EthDstAddr
Definition: AxisEth.hpp:106
ap_uint< 16 > LE_ArpProtType
Definition: AxisArp.hpp:77
ap_uint< 48 > EthDstAddr
Definition: AxisEth.hpp:118
ap_uint< 16 > LE_ArpTpaLo
Definition: AxisArp.hpp:89
ap_uint< 48 > LE_EthAddress
Definition: AxisEth.hpp:107
ap_uint< 16 > Ip4DstAddrLo
Definition: AxisEth.hpp:137
ap_uint< 16 > ArpShaHi
Definition: AxisArp.hpp:105
ap_uint< 8 > ArpHwLen
Definition: AxisArp.hpp:97
ap_uint< 64/8 > LE_tKeep
Definition: AxisRaw.hpp:124
ap_uint< 32 > LE_ArpShaLo
Definition: AxisArp.hpp:87
ap_uint< 16 > Ip4Ident
Definition: AxisIp4.hpp:160
ap_uint< 8 > Ip4ToS
Definition: AxisIp4.hpp:158
ap_uint< 32 > Ip4Addr
Definition: AxisIp4.hpp:169
ap_uint< 16 > Ip4HdrCsum
Definition: AxisIp4.hpp:165
ap_uint< 4 > Ip4HdrLen
Definition: AxisIp4.hpp:157
ap_uint< 1 > LE_tLast
Definition: AxisRaw.hpp:125
ap_uint< 48 > LE_EthAddr
Definition: AxisEth.hpp:108
ap_uint< 32 > ArpShaLo
Definition: AxisArp.hpp:106
ap_uint< 16 > LE_ArpTpaHi
Definition: AxisArp.hpp:88
ap_uint< 16 > LE_EthTypeLen
Definition: AxisEth.hpp:109
ap_uint< 48 > LE_ArpTargHwAddr
Definition: AxisArp.hpp:83
ap_uint< 16 > ArpOper
Definition: AxisArp.hpp:99
ap_uint< 48 > ArpTargHwAddr
Definition: AxisArp.hpp:102
ap_uint< 16 > ArpHwType
Definition: AxisArp.hpp:95
ap_uint< 16 > Ip4DstAddrHi
Definition: AxisEth.hpp:136
ap_uint< 16 > ArpTpaLo
Definition: AxisArp.hpp:108
ap_uint< 16 > Ip4TotalLen
Definition: AxisIp4.hpp:159
ap_uint< 16 > LE_EtherType
Definition: AxisEth.hpp:110
ap_uint< 16 > LE_ArpHwType
Definition: AxisArp.hpp:76
ap_uint< 8 > Ip4TtL
Definition: AxisIp4.hpp:163
ap_uint< 48 > EthSrcAddr
Definition: AxisEth.hpp:117
ap_uint< 3 > Ip4Flags
Definition: AxisIp4.hpp:162
ap_uint< 13 > Ip4FragOff
Definition: AxisIp4.hpp:161
ap_uint< 16 > EthTypeLen
Definition: AxisEth.hpp:121
ap_uint< 16 > LE_ArpOper
Definition: AxisArp.hpp:80
ap_uint< 16 > ArpTpaHi
Definition: AxisArp.hpp:107
ap_uint< 16 > EtherType
Definition: AxisEth.hpp:122
ap_uint< 16 > LE_ArpShaHi
Definition: AxisArp.hpp:86