background image

 

 

AFDX / ARINC 664  

Interface Module 

reference manual 

May 2011

V16.3x Rev. A

AIM GmbH

Sasbacher Str. 2

79111 Freiburg, Germany

 Tel: 

+49-761-45229-0 

 Fax: 

+49-761-45229-33

[email protected]

www.aim-online.com

 

Summary of Contents for AFDX / ARINC 664

Page 1: ...AFDX ARINC 664 Interface Module reference manual May 2011 V16 3x Rev A AIM GmbH Sasbacher Str 2 79111 Freiburg Germany Tel 49 761 45229 0 Fax 49 761 45229 33 sales aim online com www aim online com...

Page 2: ......

Page 3: ...Reference Manual API FDX 2 AyC FDX 2 fdxTap APX GNET 2 4 APU FDX 2 Application Interface Library V16 3x Rev A May 2011 AIM No 60 15900 36 163X A...

Page 4: ...19053 267 982 2600 877 520 1553 salesusa aim online com AIM UK Lincoln Rd Cressex Business Park Bucks HP12 3RB England 44 1494 44 68 44 salesuk aim online com Notice The information that is provided i...

Page 5: ...ection 6 for details 02 01 07 06 2002 M Riedinger See Section 6 for details 2 02 17 07 2002 M Riedinger See Section 6 for details 03 0x 25 10 2002 M Riedinger See Section 6 for details 3 0x 10 01 2003...

Page 6: ...ection 6 for details 14 3x A 15 09 2006 R Heitzmann See Section 6 for details 14 3x B 07 11 2006 M Riedinger See Section 6 for details 14 3x C 31 07 2007 S Riedinger See Section 6 for details 15 0x A...

Page 7: ...l 7 3 2 Platform VME 8 3 3 Error Reporting 9 3 4 Necessary Files and Defines 9 3 5 Files of the FDX High Level Interface 10 3 5 1 Include Files 10 3 5 2 Libraries and Files 10 3 5 3 System Level Drive...

Page 8: ...ticRegsControl 55 4 3 1 5 FdxCmdTxStatus 57 4 3 1 6 FdxCmdTxTrgLineControl 58 4 3 1 7 FdxCmdTxVLControl 59 4 3 2 Generic and Replay Transmitter Functions 60 4 3 2 1 FdxCmdTxQueueCreate 60 4 3 2 2 FdxC...

Page 9: ...ueue Functions 126 4 3 5 1 FdxCmdTxSubQueueCreate 126 4 3 5 2 FdxCmdTxSubQueueDelete 127 4 3 5 3 FdxCmdTxSubQueueWrite 128 4 3 6 Theorie of Generic Transmitter 129 4 4 Receiver Functions 133 4 4 1 Glo...

Page 10: ...mdMonTCBSetup 196 4 4 3 9 FdxCmdMonTrgIndexWordIni 200 4 4 3 10 FdxCmdMonTrgIndexWordIniVL 201 4 4 3 11 FdxCmdMonTrgWordIni 202 4 4 4 Continuous Capture Second Edition Functions 203 4 4 4 1 FdxCmdMonQ...

Page 11: ...s st to or ry y 2 23 31 1 6 1 Modification Function List compared with previous versions 231 6 1 1 Library Administration Functions 231 6 1 2 VME Initialization Functions 231 6 1 3 System Functions 23...

Page 12: ...ns Changes between several versions 233 Table 6 1 6 I Target Independent Administration Functions Changes between several versions 233 Table 6 2 I Document History Details 234 List of Figures Figure 2...

Page 13: ...patible The AFDX High Level Application Interface DLL can be used by each programming tool having the capability of interfacing DLLs 32 Bit Also a dynamic Library for LINUX is available For embedded V...

Page 14: ...renced herein 1 PCI Local Bus Specification Revision 2 1 June 1991 2 AFDX End System Detailed Functional Specification AIRBUS Issue 4 0 Date 24 10 2001 Ref L42D1515045801 3 AFDX Switch Detailed Functi...

Page 15: ...Operating System independent Described within this document Operating System dependent communication Serial Interface System Level Application Level Host Target Target Level Backplane Application Sup...

Page 16: ...Bus Interface Unit RISC Processor Intel XScale 80200 ARM family PSC PCI and System Controller AIM PCI LCA Global RAM Static RAM module Shared between BIU ASP and PCI bus Local ASP RAM Bank 0 used for...

Page 17: ...ovides board functionality to the connected clients To access the hardware from a client it is necessary to run the AIM Network Server ANS on the Server computer The computer which contains the applic...

Page 18: ...m Level Drivers for the applicable operating system communicate with the FDX Target Software by writing command information to the Target Command Array send message Acknowledge information is returned...

Page 19: ...ng command should be performed FdxQueryServerConfig This function returns a list of available resources of one server where a resource can be a board or a physical port of one board To establish targe...

Page 20: ...he following function shall be used Not contained in this document Please refer to Applicable documents 4 AiVMEModuleListBuild To check for valid AMC FDX module use the function AiFdxModuleCheck To ma...

Page 21: ...F H For VME platforms an additional C syntax header files is required AIVME_DEF H The application program must enter the following preprocessor definition e g usually D or D option of the C compiler _...

Page 22: ...VxWorks avi_fdx a Library is delivered in Source Code LynxOS All Library Source Files pre compiled LynxOS Library lib_aim_fdx a makefiles Library is delivered in Source Code 3 3 5 5 3 3 S Sy ys st te...

Page 23: ...ces are divided in board and port resources Table 4 1 I Library Administration Functions Function Description Platform Independent FdxInit Initializes the Interface Library Returns a list of servers F...

Page 24: ...ot ty yp pe e AiReturn FdxDelIntHandler AiUInt32 ul_Handle AiUInt8 uc_Type D Dr ri iv ve er r C Co om mm ma an nd d P Pu ur rp po os se e Uninstalls an user interrupt handler function which has been i...

Page 25: ...connect another server Input None Output TY_FDX_SERVER_LIST ppx_ServerNames Pointer to a pointer to a list of structured elements containing the names of the available servers e g SW PC 06 or 192 168...

Page 26: ...Reference Library Administration Functions c co on ns st t A Ai iU UI In nt t3 32 2 u ul l_ _S St tr ru uc ct tI Id d Element which identifies the type of this structure see FdxCmdFreeMemory Return Va...

Page 27: ...t8 8 u uc c_ _T Ty yp pe e Interrupt Type Defines the type of interrupt which will be connected to the interrupt handler function given in pf_IntFunc 0 uc_Type FDX_INT_MAX Constant Description FDX_INT...

Page 28: ...IST_1_ENTRY x_LWordA AiUInt32 ul_LWordB AiUInt32 ul_LWordC AiUInt32 ul_LWordD AiUInt32 ul_LWordE AiUInt32 ul_LWordF TY_FDX_INTR_LOGLIST_ENTRY TY_LOGLIST x_LWordA typedef union AiUInt32 ul_All struct A...

Page 29: ...yp pe e 0 0x x0 04 4 U Ud dp p I In nt te er rr ru up pt t 0 0x x0 05 5 C Co on nt ti in nu uo ou us s C Ca ap pt tu ur re e I In nt te er rr ru up pt t U UD DF F Update Flag Set to 1 when the interru...

Page 30: ...ransmit package is set STM Logical 1 This interrupt is asserted if a defined condition related to a transmit packet type 1 instruction becomes true GTM Logical 1 This interrupt is asserted if a define...

Page 31: ...X 2 UDP Port Handle Bits 31 0 Capture Buffer pointer shared RAM for Continuous Capture TYPE Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 FDX_INT_TX 3 Transmit Buffer Instruction Base Address...

Page 32: ...Library Administration Functions Word ul_LWordE and ul_LWordF are extensions to get timing information for transmitted frames Both words together are equal to structure TY_FDX_FW_IRIG_TIME Output None...

Page 33: ...ame Name of the PC where the ANS Server AIM Network Server is running e g SW PC 06 or 192 168 0 119 const TY_FDX_CLIENT_INFO px_ClientInfo Pointer to an information structure about the calling client...

Page 34: ...tion PRIVILEGES_ADMIN Administrator Privileges other values for future expansion Output AiUInt32 pul_Handle Unique handle to the resource which can be either a board for board level functions or an Et...

Page 35: ...ul_Handle Driver Command Purpose This function closes the application interface for the specified resource and must be called last in an application program for all opened resources After calling thi...

Page 36: ...of the PC where the ANS Server is running Value Constant Description local Local use of the board SrvName Name of the PC where the ANS Server AIM Network Server is running e g SW PC 06 or 192 168 0 1...

Page 37: ...iChar ac_PortName MAX_STRING_1 AiUInt32 ul_BoardResourceID AiUInt32 ul_StructId AiUInt8 uc_PortNo AiUInt8 uc_PortMode TY_FDX_PORT_RESOURCE AiChar ac_ChnName A special definable name for this port For...

Page 38: ...ote For this version this function can only be used on a local server F FD DX X_ _S SE ER RV VE ER R_ _C CA AL LL LB BA AC CK K_ _F FU UN NC C f f_ _C Ca al ll lb ba ac ck kF Fu un nc ct ti io on n Fu...

Page 39: ...ministration Functions Note The callbackfunction of the Application may not free the memory of the px_ResourceList as it is recommended for the FdxQueryServerConfig function call O Ou ut tp pu ut t n...

Page 40: ...ction returns a list of resources available on that computer Note For this version this function can be used to connect a server If a ac_SrvName other than local is specified this function checks that...

Page 41: ...ac_ResourceInfo MAX_STRING_1 const AiUInt32 ul_StructId TY_RESOURCE_LIST_ELEMENT TY_RESOURCE_LIST_ELEMENT px_Next Pointer to the next list element If this pointer is a NULL pointer this is the last e...

Page 42: ...8 8 l le ev ve el l VME interrupt level which is used for the AIM board A Ai iU UI In nt t8 8 v ve ec ct to or r VME interrupt vector number which is used for the AIM board F FD DX X_ _I IN NT TE ER R...

Page 43: ...pt vector number which is used for the AIM board F FD DX X_ _I IN NT TE ER RR RU UP PT T_ _S SE ET T_ _F FU UN NC C i in nt tS Se et tF Fu un nc ct ti io on n VME systems may have different methods to...

Page 44: ...application specific activities upon the occurrence of an interrupt This function must be of the type FDX_INTERRUPT_FUNC which is defined as follows typedef void FDX_INTERRUPT_FUNC AiUInt8 uc_Module...

Page 45: ...iUInt32 ul_ModuleId P Pu ur rp po os se e This Function checks the specified module to determine if it is an AIM ACI FDX or AMC FDX module I In np pu ut t A Ai iU UI In nt t3 32 2 u ul l_ _M Mo od du...

Page 46: ...ll be reported in the internal resource list This function must be called one time for each cPCI PMC module inside the system The functions AiVMEModuleListBuild to get the Module handle and AiVMEMemor...

Page 47: ...ated one Table 4 2 I System Functions Function Description FdxCmdBoardControl Controls and resets the board operation mode FdxCmdIrigTimeControl Reads and writes the onboard IRIG Time FdxCmdStrobeTrig...

Page 48: ...able crossover if available Port 3 and Port 4 must be connected with a Loop Back cable crossover The resources of the board under test shall be not logged in Note For this version there is only local...

Page 49: ...t can only be done by a privileged user TY_FDX_BOARD_CTRL_IN px_BoardControlIN Pointer to a board control input structure typedef struct AiUInt32 aul_PortConfig FDX_MAX_BOARD_PORTS AiUInt32 aul_PortSp...

Page 50: ...rames containing more than four physical errors or no valid SFD start frame delimiter are silently discarded while capturing AiUInt32 ul_RxVeriMode Flags to configure the receive error Verification Re...

Page 51: ...riMode is set to FDX_BOARD_VERIFICATION_TYPE_DEFINED Figure 4 2 2 1 Rx Verification Data and Mask FDX_BOARD_VERIFICATION_TYPE_AFDX Byte aul_RxVeriData aul_RxVeriMask Hex or Bin Field Identification 0...

Page 52: ...uto Negotiation and bit rate 100Mbit is detected FDX_AUTO_10MBIT Port mode is set to Auto Negotiation and bit rate 10Mbit is detected FDX_AUTO_ERROR No good link detected AiUInt32 aul_PortUsed Each po...

Page 53: ...lMemFree Size of Global Memory in Bytes which is not already allocated AiUInt32 ul_SharedMemFree Size of Shared Memory in Bytes which is not already allocated AiUInt32 ul_RxVeriMode Rx error verificat...

Page 54: ...ble every time FDX_IRIG_WRITE Write the IRIG Time encoder This is not directly applicable if the external IRIG time is used Exceptional when the IRIG Time encoder is looped external to the IRIG Time i...

Page 55: ...y 1 366 AiUInt32 ul_MilliSec 0 999 AiUInt32 ul_MicroSec 0 999 TY_FDX_IRIG_TIME Note The parameters l_Sign ul_MilliSec and ul_MicroSec is not relevant for IRIG Time set Output TY_FDX_IRIG_TIME px_IrigT...

Page 56: ...Command FDX_SYS_STROBE_TRIGGER_OUT 0x00008037 Purpose This function provides a Trigger output strobe on a selectable Trigger Output Line on system command NOTE This function uses a PORT handle as inpu...

Page 57: ...er and a special minor version number typedef struct AiUInt32 ul_MajorVer AiUInt32 ul_MinorVer AiUInt32 ul_BuildNr AiUInt32 ul_MajorSpecialVer AiUInt32 ul_MinorSpecialVer TY_VER_NO TY_FDX_BSP_VERSION...

Page 58: ...i iu u1 LCA Revision Information of the BIU1 TY_VER_NO x_LcaVerB Bi iu u2 LCA Revision Information of the BIU2 TY_VER_NO x_PciLcaVer LCA Revision Information of the PCI LCA AMC only TY_VER_NO x_TcpVer...

Page 59: ...r Windows NT is not compatible with the DLL FDX_BSP_WRONG_SYS_DRV The system driver for Linux is not compatible with the DLL FDX_BSP_WRONG_TARGET_SW The target SW is not compatible with the DLL FDX_BS...

Page 60: ...mes in the queue are transmitted out in the order they were put into the queue The user is able reload data while transmission is running The timing is secured by the IRIG time tag provided for each f...

Page 61: ...resolution bag FdxCmdTxUDPCreatePort Creates a fully described AFDX Comm port for transmission FdxCmdTxUDPChgSrcPort Change source of an UDP port FdxCmdTxSAPCreatePort Create a fully described SAP por...

Page 62: ...pMode AiUInt32 ul_TransmitTime Time duration in ms TY_FDX_TX_CTRL T TY Y_ _F FD DX X_ _E E_ _T TX X_ _S ST TA AR RT T_ _M MO OD DE E e e_ _S St ta ar rt tM Mo od de e Control Parameter for the Transmi...

Page 63: ...n FDX_ESTOP_NOT_USED Ext Stop Mode not used FDX_ESTOP_EXT_TRG Stop Transmission on external Trigger strobe FDX_ESTOP_EXT_TRG_RESTART Stop Transmission on external trigger strobe and allow to continue...

Page 64: ...ion FDX_TX_GENERIC Generic Transmit Mode A List of AFDX Frames with additional Header Information Gap Info etc can be sent from a specified queue cyclically and a specific number of times FDX_TX_REPLA...

Page 65: ...For Transmit functionality the initialized state is as follows No Transmit Queues defined No VL created No UPD Ports created FdxCmdTxControl command has no effect Input TY_FDX_PORT_INIT_IN px_PortInit...

Page 66: ...per board shows how many clients are using the ports at this time This information only includes if the port is used or not For detailed information the function FdxQueryResource can be used Value De...

Page 67: ...TATIC_REGS T TY Y_ _F FD DX X_ _T TX X_ _S ST TA AT TI IC C_ _R RE EG GS S_ _M MA AC C x x_ _T Tx xS St ta at ti ic cR Re eg gs sM MA AC C Sub Structure for MAC Static values typedef struct AiUInt8 uc...

Page 68: ..._ _R RE EG GS S_ _U UD DP P x x_ _T Tx xS St ta at ti ic cR Re eg gs sU UD DP P Sub Structure for UDP Static values typedef struct AiUInt16 uw_UDPDest UDP Destination Port AiUInt16 uw_UDPSrc UDP Sourc...

Page 69: ...TA AT TU US S e e_ _S St ta at tu us s Status information of the Transmitter Value Description FDX_STAT_STOP Transmitter Stopped FDX_STAT_RUN Transmitter Running FDX_STAT_ERROR Transmitter Error FDX_...

Page 70: ...nsmission Mode Input T TY Y_ _F FD DX X_ _T TR RG G_ _L LI IN NE E_ _C CT TR RL L p px x_ _T Tr rg gL Li in ne eC Ct tr rl l This structure defines the Trigger In and Output line routing typedef struc...

Page 71: ...CreateVL or FdxCmdTxCreateHiResVL Input T TY Y_ _F FD DX X_ _T TX X_ _V VL L_ _C CO ON NT TR RO OL L p px x_ _T Tx xV VL LC Co on nt tr ro ol l Pointer to a setup structure for a Virtual Link typedef...

Page 72: ...Purpose This function is used to create a queue of AFDX Frames This Queue is the input for the Generic or Replay Transmit Mode Only one Transmit Queue can be created for one port Input T TY Y_ _F FD...

Page 73: ...Note The parameters uw_TimingType and x_StartTime are only relevant for a reloadable queue and therefore only in Replay Transmission Mode Output T TY Y_ _F FD DX X_ _T TX X_ _Q QU UE EU UE E_ _I IN N...

Page 74: ..._Q QU UE EU UE E_ _S ST TA AT TU US S p px x_ _T Tx xQ Qu ue eu ue eS St ta at tu us s Pointer to an information structure of the transmitter typedef struct TY_FDX_E_TX_QUE_STATUS e_QueueStatus AiUIn...

Page 75: ...re written to the queue and the transmitter is up and running FDX_QUE_CYCL_SENT Reserved These status codes are only applicable if the Replay Transmission Mode A Ai iU UI In nt t3 32 2 u ul l_ _B By y...

Page 76: ...ame typedef struct AiUInt32 ul_Index AiUInt32 ul_Offset AiUInt32 ul_Length AiUInt32 ul_SubQueueHandle TY_FDX_TX_QUEUE_UPDATE AiUInt32 u ul l_ _I In nd de ex x I Index to the frame which shall be updat...

Page 77: ...ection 4 Function Reference Transmitter Functions v vo oi id d p pv v_ _W Wr ri it te eB Bu uf ff fe er r A pointer to byte buffer where the new data is located Output None Return Value Returns FDX_OK...

Page 78: ...it tM Mo od de e Value Description FDX_TX_GENERIC FDX_TX_INDIVIDUAL FDX_TX_FRAME_HEADER_ GENERIC Standard Generic Tx Frame only applicable for Generic Transmit mode Layout of frame header follows the...

Page 79: ...ul_HeaderType and uc_FrameType parameter see following description AFDX Frame AFDX FRAME data to transmit dependent on the Payload Buffer and Payload Generation mode see description below 802 3 defin...

Page 80: ...nt8 uc_PayloadGenerationMode AiUInt32 ul_BufferQueueHandle AiUInt8 uc_ExternalStrobe AiUInt8 uc_PreambleCount AiUInt32 ul_Skew AiUInt8 uc_NetSelect AiUInt8 uc_FrameStartMode AiUInt32 ul_PhysErrorInjec...

Page 81: ...responding timing The PGWT value 20bit specifies the time from the transmission start point of the last frame where the PGWT value is processed to the start point of the current frame with a resolutio...

Page 82: ...ame data out from this entry and switches then to the separate buffer queue Thus the complete MAC Header and the two static bytes of the IP Header are used from this entry and the rest of the frame pa...

Page 83: ...sters Only the MAC header and IP Header and UDP Header needs to be provided as frame data for this frame FDX_TX_FRAME_PGM_IP_FULL The MAC Destination Address Bytes 2 5 the MAC Source Address Bytes 3 5...

Page 84: ...es Note Remaining Data must be provided in separate Buffer Note For Timetag Payload Generation modes the Timetag Format in Payload is started at Byte 44 2 bytes after UDP Checksum BYTE 44 47 Timetag H...

Page 85: ...ed in redundant port operation mode Note If the ul_Skew parameter is set and one redundant frame is delayed this time may be added to ul_InterFrameGap and may exceed maximum value of ul_InterFrameGap...

Page 86: ...ection types The error injection information can be a combination of the following error types Value Description FDX_TX_FRAME_ERR_OFF No Error Injection enabled FDX_TX_FRAME_ERR_CRC CRC Error transmit...

Page 87: ...by interrupt when this Transfer is transmitted The interrupt will be report information in the Interrupt loglist A Ai iU UI In nt t3 32 2 u ul l_ _I In nt tI Id de en nt t With this parameter it is p...

Page 88: ...ubQueues 1 A Ai iU UI In nt t8 8 a au ul l_ _S Su ub bQ Qu ue eu ue eH Ha an nd dl le e F FD DX X_ _M MA AX X_ _T TX X_ _S SU UB B_ _Q QU UE EU UE ES S This parameter is only valid for command FDX_TX_...

Page 89: ...iption Reserved 31 20 reserved 19 CRC error transmitted in this frame 18 Wrong Byte alignment in transmit frame which means that an odd number f nibbles will be transmitted Therefore this error also c...

Page 90: ...he preceding frame and the current frame The Interframe gap is defined in gap time units GTU which are dependent on the transmission speed mode A GTU is time to transmit four data bits which means 40n...

Page 91: ...errupt Loglist Entry FTI 9 Frame Transmitted Interrupt Logical 1 If this bit is set the BIU Processor asserts an interrupt if the current frame was physically transmitted and the Interrupt Loglist Ent...

Page 92: ...d and also which parameters shall be modified typedef struct AiUInt32 ul_SubQueueHandle AiUInt32 ul_Index AiUInt32 ul_ControlType AiUInt32 ul_DisaEna AiUInt32 ul_Size AiUInt32 ul_IFG AiUInt32 ul_PGWT...

Page 93: ...Ai iU UI In nt t3 32 2 u ul l_ _S Si iz ze e This parameter must be initialized if FDX_TX_CTL_SIZE is set to ul_ControlType Total size of the associated frame in Bytes incl CRC Short and Long Frame Er...

Page 94: ...X_TX_CTL_SMODE is set to ul_ControlType Value Description FDX_TX_FRAME_START_IFG Start transmission of this frame if Interframe GAP time has expired see ul_InterFrameGap parameter FDX_TX_FRAME_START_P...

Page 95: ...l AFDX ARINC 664 Application Interface Library 83 Section 4 Function Reference Transmitter Functions R Re et tu ur rn n V Va al lu ue e Returns FDX_OK on success or a negative error code on error Erro...

Page 96: ...ting the command to the transmit queue or sub queue Input AiUInt32 ul_WriteBytes Number of bytes that shall be written to the queue void pv_WriteBuffer Pointer to the data buffer providing the Entries...

Page 97: ...ation of this structure see this function in the chapter Target Independent Administration Functions T TY Y_ _F FD DX X_ _T TX X_ _F FR RA AM ME E_ _A AT TT TR RI IB B x x_ _F Fr ra am me eA At tt tr...

Page 98: ...related parameters for the transmitter typedef struct AiUInt32 ul_VlId AiUInt32 ul_SubVls AiUInt32 ul_Bag AiUInt32 ul_NetSelect AiUInt32 ul_MaxFrameLength AiUInt32 ul_FrameBufferSize AiUInt32 ul_MACS...

Page 99: ...A Ai iU UI In nt t3 32 2 u ul l_ _N Ne et tS Se el le ec ct t Value Description FDX_TX_FRAME_DLY_A Packet on Network A is delayed by the Skew value related to Network B FDX_TX_FRAME_DLY_B Packet on Ne...

Page 100: ...ink related parameters for the transmitter typedef struct AiUInt32 ul_VlId AiUInt32 ul_SubVls AiUInt32 ul_Bag AiUInt32 ul_NetSelect AiUInt32 ul_MaxFrameLength AiUInt32 ul_FrameBufferSize AiUInt32 ul_M...

Page 101: ...it 7 0 0 reserved 0 reserved aa bb A Ai iU UI In nt t3 32 2 u ul l_ _N Ne et tS Se el le ec ct t Value Description FDX_TX_FRAME_DLY_A Packet on Network A is delayed by the Skew value related to Networ...

Page 102: ...o ou un nt t Specifies the number of messages to be written T TY Y_ _F FD DX X_ _S SA AP P_ _B BL LO OC CK K_ _W WR RI IT TE E_ _I IN N_ _M MS SG G p px x_ _S Sa ap pB Bl lo oc ck kW Wr ri it te eM Ms...

Page 103: ...ay should be checked for identification of which message s have failed T TY Y_ _F FD DX X_ _S SA AP P_ _B BL LO OC CK K_ _W WR RI IT TE E_ _O OU UT T_ _R RE ES SU UL LT T p px x_ _S Sa ap pB Bl lo oc...

Page 104: ...EATE_IN px_SapCreateIn Pointer to a structure which describes the SAP port typedef struct AiUInt32 ul_UdpSrc AiUInt32 ul_IpSrc AiUInt32 ul_VlId AiUInt32 ul_SubVlId AiUInt32 ul_UdpNumBufMessages AiUInt...

Page 105: ...NumBufMessages ul_UdpMaxMessageSize If this value is set to zero the onboard target software will set to a default value A Ai iU UI In nt t3 32 2 u ul l_ _U Ud dp pM Ma ax xM Me es ss sa ag ge eS Si i...

Page 106: ..._F FD DX X_ _S SA AP P_ _W WR RI IT TE E_ _I IN N p px x_ _T Tx xS Sa ap pW Wr ri it te eI In n typedef struct AiUInt32 ul_UdpHandle AiUInt32 ul_UdpDst AiUInt32 ul_IpDst AiUInt32 ul_ByteCount void pv_...

Page 107: ...Sa ap pW Wr ri it te eO Ou ut t typedef struct AiUInt32 ul_BytesWritten TY_FDX_SAP_WRITE_OUT A Ai iU UI In nt t3 32 2 u ul l_ _B By yt te es sW Wr ri it tt te en n Number of bytes actually written Mi...

Page 108: ...the data contents of the sampling port Input T TY Y_ _F FD DX X_ _U UD DP P_ _B BL LO OC CK K_ _W WR RI IT TE E_ _I IN N p px x_ _U Ud dp pB Bl lo oc ck kW Wr ri it te eI In n typedef struct AiUInt32...

Page 109: ...the individual writes to the UDP ports has failed The st_ResultCode entries in the output array should be checked for identification of which message s have failed T TY Y_ _F FD DX X_ _U UD DP P_ _B B...

Page 110: ...nt32 ul_UdpSrc Driver Command FDX_TX_UDP_CHG_SRC_PORT 0x0000806A Purpose This function is used to change source of a defined UDP queuing port This function can be used if transmitter is running Input...

Page 111: ...ansmit UDP Port typedef struct AiUInt32 ul_EnableTyp AiUInt32 ul_NetSelect AiUInt32 ul_Skew AiUInt32 ul_ErrorInjectionCount AiUInt32 ul_ErrorInjectionTyp TY_FDX_TX_UDP_CONTROL A Ai iU UI In nt t3 32 2...

Page 112: ...X_FRAME_DLY_B Note This function is only provided in redundant port operation mode A Ai iU UI In nt t3 32 2 u ul l_ _E Er rr ro or rI In nj je ec ct ti io on nC Co ou un nt t This parameter controls t...

Page 113: ...his function can be used only if transmitter is not running Input TY_FDX_UDP_DESCRIPTION px_UdpDescription Pointer to a structure which describes the UDP connection typedef struct AiUInt32 ul_PortType...

Page 114: ...U Ud dp pN Nu um mB Bu uf fM Me es ss sa ag ge es s Number of messages which can be stored by the onboard Target software Size of the local Buffer which should be created by the onboard Target softwar...

Page 115: ...er ul_Bag of function FdxCmdTxCreateVL or FdxCmdTxCreateHiResVL which restrict usage of sampling rate Note This parameter is only applicable for a sampling port Example VL Load VL Bag 1 Sampling Rate...

Page 116: ..._UDP_DESTROY_PORT 0x0000805B Purpose This function is used to destroy the UDP transmit port if it is no longer in use This function is the opposite of function to FdxCmdTxUDPCreatePort and FdxCmdTxSAP...

Page 117: ...transmission is initiated when data is written to a UDP port This function can be used if the transmitter is running or not running For sampling ports this function should be called before the port i...

Page 118: ...A Ai iU UI In nt t3 32 2 p pu ul l_ _B By yt te es sW Wr ri it tt te en n Number of bytes actually written Might be smaller than ul_ByteCount if UDP buffer is full Queuing ports ul_NumBufMessages defi...

Page 119: ...nt32 ul_CurrentIndex AiUInt32 ul_IndexCycleCount TY_FDX_TX_UDP_STATUS A Ai iU UI In nt t3 32 2 u ul l_ _M Ms sg gC Co ou un nt t Counter of messages sent through this UDP port since transmitter was st...

Page 120: ...EXED_WRITE_IN A Ai iU UI In nt t3 32 2 u ul l_ _U Ud dp pH Ha an nd dl le e Handle to an UPD Port where the following data shall be written See description of FdxCmdTxUDPCreatePort A Ai iU UI In nt t3...

Page 121: ...here If this value is FDX_OK all following results are also FDX_OK A Ai iU UI In nt t3 32 2 u ul l_ _M Ms sg gC Co ou un nt t Count of acknowledge messages which follows described by the following str...

Page 122: ..._W WR RI IT TE E_ _I IN N p px x_ _T Tx xV VL LW Wr ri it te eI In n Pointer to a setup structure for a Virtual Link typedef struct AiUInt32 ul_VlId AiUInt32 ul_SubVlId AiUInt32 ul_ByteCount const voi...

Page 123: ...n Number of bytes actually written Might be smaller than ul_ByteCount Return Value Returns FDX_OK on success or a negative error code on error Error Codes FDX_ERR Return Value ul_BytesWritten Descrip...

Page 124: ...te eI In nE Ex x Pointer to a setup structure for a Virtual Link typedef struct AiUInt32 ul_FrameCount TY_FDX_TX_VL_WRITE_FRAME_IN px_TxVLWriteFrameArray TY_FDX_TX_VL_WRITE_IN_EX AiUInt32 ul_FrameCoun...

Page 125: ...r FDX_TX_FRAME_DLY_B Note This function is only provided in redundant port operation mode Note If the ul_Skew parameter is set and one redundant frame is delayed this time may be added to ul_InterFram...

Page 126: ...ro ol l Enable Disable Interrupt on execution of Instruction Value Description FDX_DIS Disable Interrupt on execution of Instruction FDX_ENA Enable Interrupt on execution of Instruction Interrupt is...

Page 127: ...2 u ul l_ _F Fr ra am me es sW Wr ri it tt te en n Number of frames actually written Might be smaller than ul_FrameCount typedef struct AiUInt32 ul_Status TY_FDX_TX_VL_WRITE_OUT_FRAME_INFO A Ai iU UI...

Page 128: ...x_ _T Tx xB Bu uf ff fe er rQ Qu ue eu ue eD De es sc c Structure which describes the Buffer Queue Parameter typedef struct AiUInt32 ul_MaxTransfers AiUInt32 ul_BuffersInQueue AiUInt32 ul_BufferSize...

Page 129: ...3 32 2 u ul l_ _B Bu uf ff fe er rI In nd de ex x This parameter describes initial Buffer Index of the Queue Therefore the value must be in the range between 0 first buffer in queue and the ul_Buffers...

Page 130: ...typedef struct AiUInt32 ul_BuffersInQueue AiUInt32 ul_BufferSize AiAddr pv_BufferQueueStart TY_FDX_TX_BUF_QUEUE_INFO A Ai iU UI In nt t3 32 2 u ul l_ _B Bu uf ff fe er rs sI In nQ Qu ue eu ue e Effect...

Page 131: ..._FREE Purpose This function frees a Transmit Buffer Queue in the BIU associated memory Global Ram Input T TY Y_ _F FD DX X_ _F FW W_ _B BU UF F_ _H HD DL L x x_ _T Tx xB Bu uf ff fe er rQ Qu ue eu ue...

Page 132: ...t t3 32 2 u ul l_ _S St ta ar rt tI In nd de ex x Start Index of the buffer queue in BIU associated memory which describes the start location to read data from This value must not exceed the maximum n...

Page 133: ...o a data buffer to write the read the data to This pointer must point to a host allocated memory location big enough to store ul_BytesToRead Bytes A Ai iU UI In nt t3 32 2 p pu ul l_ _B By yt te es sR...

Page 134: ...ion of FdxCmdTxBufferQueueAlloc A Ai iU UI In nt t3 32 2 u ul l_ _S St ta ar rt tI In nd de ex x Start Index of the buffer queue in BIU associated memory which describes the start location to write da...

Page 135: ...here the data to write is provided This pointer must point to a host allocated memory location providing enough memory to write ul_BytesToWrite Bytes from A Ai iU UI In nt t3 32 2 p pu ul l_ _B By yt...

Page 136: ...Alloc T TY Y_ _F FD DX X_ _T TX X_ _B BU UF F_ _Q QU UE EU UE E_ _C CT TR RL L p px x_ _T Tx xB Bu uf ff fe er rQ Qu ue eu ue eC Ct tr rl l Structure which describes the Buffer Queue Control Parameter...

Page 137: ...f ff fe er rQ Qu ue eu ue eD De es sc c Structure which describes the Buffer Queue Parameter typedef struct AiUInt32 ul_BuffersInQueue AiUInt32 ul_BufferSize AiUInt32 ul_BufferQueueMode AiUInt32 ul_Bu...

Page 138: ...T TX X_ _S SU UB B_ _Q QU UE EU UE E_ _C CR RE EA AT TE E_ _I IN N p px x_ _T Tx xS Su ub bQ Qu ue eu ue eC Cr re ea at te eI In n typedef struct AiUInt32 ul_QueueSize TY_FDX_TX_SUB_QUEUE_CREATE_IN A...

Page 139: ...eueHandle Driver Command FDX_TX_SUB_QUEUE_DELETE Purpose In difference to the main Transmit queue the Sub Queue must be deleted under control of the user By deleting this queue it should be guarantied...

Page 140: ...er For this write Function the number of bytes to write needs to be specified The entry will always be queued at the end of the transmit sub queue Input AiUInt32 ul_SubQueueHandle Handle to a defined...

Page 141: ...xCmdTxQueueWrite Output None Return Value Returns FDX_OK on success or a negative error code on error Error Codes FDX_ERR 4 4 3 3 6 6 T Th he eo or ri ie e o of f G Ge en ne er ri ic c T Tr ra an ns s...

Page 142: ...ctionality Additionally a Buffer Queue with up to 128 buffers can be defined by user This Buffer Queue can be shared by a arbitrary number of transfers The number must be defined at allocation time of...

Page 143: ...struction Call Sub Queue Frame Data Entry 1 Instruction Return Buffer Queue Ctrl Frame Header Type 1 Buffer Queue Ctrl Frame Header Type 0 Frame Header Type 1 Buffer Queue Ptr Frame Header Type 0 Inst...

Page 144: ...132 Reference Manual AFDX ARINC 664 Application Interface Library Section 4 Function Reference Transmitter Functions THIS PAGE INTENTIONALLY LEFT BLANK...

Page 145: ...e destination of an UDP port FdxCmdRxSAPCreatePort Creates a SAP type connectionless port FdxCmdRxUDPDestroyPort Destroys a UDP connection oriented port FdxCmdRxUDPRead Reads data from an UDP port Fdx...

Page 146: ...the receive port typedef struct AiUInt32 ul_StartMode AiUInt32 ul_GlobalStatisticReset TY_FDX_RX_CTRL A Ai iU UI In nt t3 32 2 u ul l_ _S St ta ar rt tM Mo od de e Control Parameter for the Receiver...

Page 147: ...ter is to control resetting of the statistic parameters in the target described in the output section A Reset always means Reset after read Value Description FDX_RX_GS_RES_NO_CNT Reset nothing FDX_RX_...

Page 148: ...AiUInt32 ul_TrafShapingViolationCount TY_FDX_RX_GLOB_STAT_ERR A Ai iU UI In nt t3 32 2 u ul l_ _P Ph hy ys sE Er rr ro or rC Co ou un nt t Number of physical errors detected A Ai iU UI In nt t3 32 2 u...

Page 149: ...from 1 63 Bytes A Ai iU UI In nt t3 32 2 u ul l_ _M MA AC C6 64 4T To o1 12 27 7C Co ou un nt t Number of frames with length from 64 127 Bytes A Ai iU UI In nt t3 32 2 u ul l_ _M MA AC C1 12 28 8T To...

Page 150: ...oadMode AiUInt32 ul_DefaultCronoMode AiUInt32 ul_GlbMonBufferSize AiUInt32 ul_RerosDefaultOutputPortmap TY_FDX_RX_MODE_CTRL_IN AiUInt32 ul_ReceiveMode There are two modes of operation for a Receiver p...

Page 151: ...ted Port Data Store Mode AiUInt32 ul_DefaultChronoMode There are three possible default Modes if FDX_RX_CHRONO has been selected for the Receive Mode If FDX_RX_VL has been selected for the Receive Mod...

Page 152: ...rt tm ma ap p Reserved Output TY_FDX_RX_MODE_CTRL_OUT px_RxModeControlOut typedef struct AiUInt32 ul_GlbMonBufferSize TY_FDX_RX_MODE_CTRL_OUT AiUInt32 ul_GlbMonBufferSize The adjusted global Monitor M...

Page 153: ...or Receive functionality the initialized state is as follows Global Statistics available All Virtual Links enabled for Activity information Chronological Receive Mode No VLs enabled for capturing No T...

Page 154: ...ed Each port can be used by different clients This array over the maximum count of ports per board shows how many clients are using the ports at this time This information only includes if the port is...

Page 155: ...X X_ _R RX X_ _S ST TA AT TU US S p px x_ _R Rx xS St ta at tu us s typedef AiUInt32 ul_Status AiUInt32 ul_Info TY_FDX_RX_STATUS A Ai iU UI In nt t3 32 2 u ul l_ _S St ta at tu us s Status information...

Page 156: ...L p px x_ _T Tr rg gL Li in ne eC Ct tr rl l This structure defines the Trigger In and Output line routing typedef struct AiUInt32 ul_TrgInLine AiUInt32 ul_TrgOutLine TY_FDX_TRG_LINE_CTRL A Ai iU UI...

Page 157: ..._VLControl A pointer to a structure which describes the Virtual Link related parameters for the receiver typedef struct AiUInt32 ul_VLId AiUInt32 ul_VLRange AiUInt32 ul_EnableMode AiUInt32 ul_PayloadM...

Page 158: ...fer defined with the parameters above In parallel the VL specific counters and global statistic counters are updated The processing of Trigger Control Blocks for the given VL is enabled see FdxCmdMonT...

Page 159: ...er FDX_PAYLOAD_DEFAULT use default Value Note If port oriented functions used only ul_PayloadMode FDX_PAYLOAD_FULL is possible AiUInt32 ul_TCBIndex This value defines the Trigger Control Block TCB Ind...

Page 160: ...FDX_RX_VL_CHECK_SNINTEG Sequence Number Integrity check Sequence numbering of the incoming frames are checked FDX_RX_VL_CHECK_INVPAC Invalid Packet processing All Packets also the erroneous will be pa...

Page 161: ...lowing figure shows the mechanism of this filter AFDX Frame 6 bytes 6 bytes 2 bytes 20 bytes 8 bytes 46 1500 bytes 1byte 4 bytes Dest Adr Src Adr Type IP Header UDP Header Payload SN FCS Filter Positi...

Page 162: ...ata to compare with the result of masking Example Checking for Udp Destination 10 decimal The following settings can be used ul_FilterPosition 36 Udp Destination ul_FilterMask FFFF0000hex mask out UDP...

Page 163: ...truct AiUInt32 ul_VLId AiUInt32 ul_RmdIpp AiUInt32 ul_Ctrl TY_FDX_RX_VL_CTRL_EX AiUInt32 ul_VLId Virtual Link Identifier A value in a range from 0 to 65535 This value is part of the MAC destination ad...

Page 164: ...s frame reception VL Buffer Store mode only applicable in VL oriented Rx mode Mode Description FDX_RX_VL_CYC Cyclic Data Storage VL Buffer related Interrupt control only applicable in VL oriented Rx m...

Page 165: ...p px x_ _V VL LA Ac ct ti iv vi it ty yI In n Structure containing control parameters for the VL Activity command typedef struct AiUInt32 ul_Mode AiUInt32 ul_VLId AiUInt32 ul_MaxReadBytes TY_FDX_RX_VL...

Page 166: ...77 different which VL can be handled by the activity processing of the port T TY Y_ _F FD DX X_ _R RX X_ _V VL L_ _A AC CT TI IV VI IT TY Y p pa ax x _ _V VL LA Ac ct ti iv vi it ty y Pointer to a arr...

Page 167: ...received SFD FDX_LONG_FRAME_ERROR GNET_LONG_FRAME_ERROR Long Frame Received 1518 Bytes LNG FDX_SHORT_FRAME_ERROR GNET_SHORT_FRAME_ERROR Short Frame Received 64 Bytes SHR FDX_VL_FRAME_SIZE_ERROR GNET_V...

Page 168: ...ea ad d Number of VL entries of type TY_FDX_RX_VL_ACTIVITY written to the provided buffer If the provided buffer indicated by variable ul_MaxReadBytes is too small to contain the information for all a...

Page 169: ...ction is only available for APX GNET 2 4 boards Input T TY Y_ _F FD DX X_ _R RX X_ _V VL L_ _H HW W_ _F FI IL LT TE ER R_ _I IN N p px x_ _V VL LH Hw wF Fi il lt te er rI In n Structure containing con...

Page 170: ..._RX_VL_HWF_INSIDE Pass all frames through which are inside the range defined by ul_VlRangeMin and ul_VlRangeMax FDX_RX_VL_HWF_OUTSIDE Pass all frames through which are not inside the range defined by...

Page 171: ...ut the VL hardware filters typedef struct AiUInt32 ul_Ena AiUInt32 ul_NumOfPossibleFilters TY_FDX_RX_VL_SET_HW_FILTER_OUT A Ai iU UI In nt t3 32 2 u ul l_ _E En na a Gives a feedback if this Vl Hardwa...

Page 172: ...ray of structures Each structure describes an individual read operation for a single SAP port The array contains ul_PortCount elements typedef struct AiUInt32 ul_PortCount TY_FDX_BLOCK_READ_IN_PORT px...

Page 173: ...Po or rt tA Ar rr ra ay y typedef struct AiUInt32 ul_UdpHandle AiReturn st_ResultCode AiUInt32 ul_MsgRead void pv_ReadBuffer TY_FDX_BLOCK_READ_OUT_PORT u ul l_ _U Ud dp pH Ha an nd dl le e The handle...

Page 174: ...ul_UdpDst AiUInt32 ul_IpDst AiUInt32 ul_VlId AiUInt32 ul_UdpNumBufMessages AiUInt32 ul_UdpMaxMessageSize TY_FDX_RX_SAP_CREATE_IN A Ai iU UI In nt t3 32 2 u ul l_ _U Ud dp pD Ds st t The UDP destinatio...

Page 175: ...OUT p px x_ _S Sa ap pC Cr re ea at te eO Ou ut t Pointer to a structure which describes the SAP port typedef struct AiUInt32 ul_UdpHandle TY_FDX_RX_SAP_CREATE_OUT A Ai iU UI In nt t3 32 2 u ul l_ _U...

Page 176: ..._SAP_READ_IN A Ai iU UI In nt t3 32 2 u ul l_ _U Ud dp pH Ha an nd dl le e See description of FdxCmdRxSAPCreatePort A Ai iU UI In nt t3 32 2 u ul l_ _M Ms sg gC Co ou un nt t Number of Messages to rea...

Page 177: ...IPSrc AiUInt32 ul_UDPSrcPort AiUInt32 ul_Reserved TY_SAP_BUFFER_HEADER T TY Y_ _F FD DX X_ _F FW W_ _I IR RI IG G_ _T TI IM ME E x x_ _F Fw wI Ir ri ig gT Ti im me e The Firmware IRIG Time Tag informa...

Page 178: ...ver Functions A Ai iU UI In nt t3 32 2 u ul l_ _I IP PS Sr rc c The IP source address of the received message A Ai iU UI In nt t3 32 2 u ul l_ _U Ud dp pS Sr rc c The UDP source port of the received m...

Page 179: ...cifies the number of UDP ports which shall be read from T TY Y_ _F FD DX X_ _B BL LO OC CK K_ _R RE EA AD D_ _I IN N_ _P PO OR RT T p px x_ _U Ud dp pB Bl lo oc ck kR Re ea ad dI In nP Po or rt tA Ar...

Page 180: ...dpHandle AiReturn st_ResultCode AiUInt32 ul_MsgRead void pv_ReadBuffer TY_FDX_BLOCK_READ_OUT_PORT u ul l_ _U Ud dp pH Ha an nd dl le e The handle of the associated UDP port This may be a handle to eit...

Page 181: ...ed UDP port TY_FDX_RX_UDP_CONTROL px_UdpControl Pointer to a UDP control structure typedef struct AiUInt32 ul_NetSelect AiUInt32 ul_InterruptControl TY_FDX_RX_UDP_CONTROL AiUInt32 ul_NetSelect Specifi...

Page 182: ...Function Reference Receiver Functions Output None Return Value R Re et tu ur rn ns s F FD DX X_ _O OK K o on n s su uc cc ce es ss s o or r a a n ne eg ga at ti iv ve e e er rr ro or r c co od de e o...

Page 183: ...UdpHandle AiUInt32 ul_UdpDst Driver Command FDX_RX_UDP_CHG_DEST_PORT 0x00008084 Purpose This function changes the UDP destination of a UDP queuing port It can be used when receiver is running Input Ai...

Page 184: ...ructure which describes the UDP connection typedef struct AiUInt32 ul_PortType struct _quintuplet AiUInt32 ul_UdpSrc AiUInt32 ul_IpSrc AiUInt32 ul_VlId AiUInt32 ul_IpDst AiUInt32 ul_UdpDst x_Quint AiU...

Page 185: ...lated by ul_UdpNumBufMessages ul_UdpMaxMessageSize For sampling ports the number of messages has to be set to 1 For queuing ports an adequate buffer depth has to be provided If this value is set to ze...

Page 186: ...mand FDX_RX_UDP_DESTROY_PORT 0x0000807D Purpose This function is used to destroy the UDP receive port if it is no longer in use This function is the opposite function to FdxCmdRxUDPCreatePort and FdxC...

Page 187: ...mdRxUDPCreatePort and FdxCmdRxSAPCreatePort Output T TY Y_ _F FD DX X_ _R RX X_ _U UD DP P_ _S ST TA AT TU US S p px x_ _U Ud dp pR Rx xS St ta at tu us s Pointer to a structure which contains status...

Page 188: ...u un nt t Number of Messages to read This means the newest ul_MsgCount Entries For a sampling port there is a maximum of one message to read Note For sampling ports the number of messages to read shal...

Page 189: ...r ri ig gT Ti im me e The Firmware IRIG Time Tag information is from the last received message For a queuing port where the messages can be fragmented it is the Time Tag of the last received fragment...

Page 190: ...rr ro or rI In nf fo o Bit 31 16 Bit15 0 Error information as available in FdxCmdMonQueueRead variable uw_ErrorField Queuing ports additional error information IP_REASS_ERROR_SYNC IP_REASS_ERROR_ORDER...

Page 191: ...buffer in the target will be filled one time Then the capturing stops The data will be available after first frame captured Continuous FDX_MON_CONTINUOUS The Monitor buffer in the target will be fille...

Page 192: ...y relevant in single mode It indicates the position in the Monitor buffer where the trigger event shall be located This is used to balance the pre and the post trigger memory A Ai iU UI In nt t3 32 2...

Page 193: ...ollowing states are defined Status Description FDX_MON_OFF Monitor is not running Captured data from a previous capturing session in the buffer is available FDX_MON_WAIT_FOR_TRIGGER Monitor is waiting...

Page 194: ...t3 32 2 u ul l_ _F Fr ra am me es sC Ca ap pt tu ur re ed d Total number of frames captured since start A Ai i_ _U UI In nt t6 64 4_ _U Un ni io on n u u6 64 4_ _B By yt te es sR Re ec co or rd de ed...

Page 195: ...this function Dependant on the capture mode the Frame data will be buffered in a second level queue of the onboard Target Software FDX_MON_CONTINUOUS and FDX_MON_RECORDING In other cases the frames w...

Page 196: ...y on the server where the fdx board is present So drive and path information is related to the server A Ai iU UI In nt t3 32 2 u ul l_ _M Ma ax xF Fi il le eS Si iz ze e Specifies the maximum file siz...

Page 197: ...FER_HEADER structure must be done via FdxProcessMonQueue function Note Data read via FdxCmdMonQueueRead can be directly used for Replay via the FdxCmdTxQueueWrite function if the corresponding Transmi...

Page 198: ...er of overwrites which have occurred in the monitor queue Frames will then be read starting at the current location of the monitor queue write pointer used by the firmware For buffer overflow existing...

Page 199: ...size minus CRC 7 Time Tag High Word TTHW Fixed Entry Header 8 Time Tag Low Word TTLW AFDX Frame Received AFDX FRAME 802 3 defines 64 to 1518 bytes but it may be less or more at Frame size violation ca...

Page 200: ...tore mode 29 27 Which payload store mode is selected for this frame 0 Received frame completely stored 1 Frame Header MAC IP Header and 20 Bytes if IP Payload stored 2 Frame Header MAC IP Header store...

Page 201: ...ence No mismatch SNE 12 not used RS2 13 Traffic Shaping Violation TRS Rest not used A Ai iU UI In nt t3 32 2 u ul l_ _F Fr ra am me eH He ea ad de er rW Wo or rd d_ _1 1 Frame Header Word 1 contains f...

Page 202: ...me tag contains the Microseconds of second seconds of minutes and minutes of hour To get a C structured information of the Time Tag you can use the functions FdxFwIrig2StructIrig Figure 4 4 3 4 2 show...

Page 203: ...e get via the FdxCmdMonQueueControl command T TY Y_ _F FD DX X_ _M MO ON N_ _Q QU UE EU UE E_ _S SE EE EK K_ _I IN N p px x_ _Q Qu ue eu ue eS Se ee ek kI In n Pointer to seek command parameter contro...

Page 204: ...ek kO Ou ut t Pointer to structure of output data typedef struct AiUInt32 ul_ByteOffset TY_FDX_MON_QUEUE_SEEK_OUT A Ai iU UI In nt t3 32 2 u ul l_ _B By yt te eO Of ff fs se et t Byte offset to the se...

Page 205: ...QueueId Queue Identifier Valid Queue Identifiers are get via the FdxCmdMonQueueControl command Output T TY Y_ _F FD DX X_ _M MO ON N_ _Q QU UE EU UE E_ _T TE EL LL L p px x_ _Q Qu ue eu ue eT Te el ll...

Page 206: ...S_ _O OU UT T p px x_ _Q Qu ue eu ue eS St ta at tu us sO Ou ut t Pointer to structure of output data typedef struct TY_FDX_E_MON_STATUS e_Status AiUInt32 ul_FramesToRead AiUInt32 ul_BytesToRead TY_F...

Page 207: ...u ul l_ _ B By yt te es sT To oR Re ea ad d Returns number of Bytes needed to read out the actually number of Frames in Queue This value can be higher than the real number of frame data because each...

Page 208: ...Control Block for APX GNET 2 4 Board For this case some limitations mut be cared fore The main limitation is that there can only ba one hardware TCB per port Input A Ai iU UI In nt t3 32 2 u ul l_ _T...

Page 209: ...e combined with one of the above marked Trigger Modes This is only cabaple for TCB No 1 bacause for this mode only one TCB is available By setting up TCB 1 in this way the The Trigger Logic of the APX...

Page 210: ...FD Frame without valid Start Frame Delimiter received SFD FDX_LONG_FRAME_ERROR GNET_LONG_FRAME_ERROR Long Frame Received 1518 Bytes LNG FDX_SHORT_FRAME_ERROR GNET_SHORT_FRAME_ERROR Short Frame Receive...

Page 211: ...pendencies of the trigger engine and the related commands for setting up the corresponding items Figure 4 4 3 7 1 Trigger Engine Dependencies TCB 0 TCB 1 TCB n next 1 next n next 0 TCB Sequence define...

Page 212: ...igger Control Block Index value See Figure 8 for a diagram of the dependencies and functionality of the trigger engine Input A Ai iU UI In nt t3 32 2 u ul l_ _T TC CB BI In nd de ex xI In ni i This va...

Page 213: ...ies and functionality of the trigger engine Input A Ai iU UI In nt t3 32 2 u ul l_ _V VL LI Id dr r Defines the associated VL identifier A Ai iU UI In nt t3 32 2 u ul l_ _T TC CB BI In nd de ex x This...

Page 214: ...dependencies and functionality of the trigger engine Input T TY Y_ _F FD DX X_ _M MO ON N_ _T TR RG G_ _W WO OR RD D_ _I IN NI I p px x_ _M Mo on nT Tr rg gW Wo or rd dI In n Pointer to a structure w...

Page 215: ...re handling assumes that several buffers will be provided at start time So in case of occurrence of date the Target software can directly write tha data to the provided buffer If a data buffer is fill...

Page 216: ...transfer to the host every quarter buffer is filled Additionally user defined condition for data transfer Timeout Trigger or Host command can be defined By occurrence of one of these user defined con...

Page 217: ...NT T_ _C CA AP P_ _C CA AL LL LB BA AC CK K p pf f_ _C Ca ap pt tu ur re eC Ca al ll lb ba ac ck k Callback function provided by the user for signaling completion of reception of data for one provide...

Page 218: ...T TY Y_ _F FD DX X_ _M MO ON N_ _Q QU UE EU UE E_ _C CT TR RL L_ _O OU UT T p px x_ _Q Qu ue eu ue eC Ct tr rl lO Ou ut t Pointer to structure of output data typedef struct AiUInt32 ul_QueueId AiUInt3...

Page 219: ...OV VI ID DE E_ _M ME EM M p px x_ _M Mo on nC Co on nt tC Ca ap pP Pr ro ov vi id de eM Me em m Pointer to a Continuous Capture Buffer Setup structure to provide Receiver Memory typedef struct AiUInt...

Page 220: ...ze e Size of the provided Memory buffer in Byte The buffers shall have in a minimum a quarter of the used global Monitor Buffer for the BIU firmware in Global RAM The size of this global Monitor Buff...

Page 221: ...nt tC Ca ap pI In nv va al li id da at te eM Me em m Pointer to a Continuous Capture Buffer Setup structure to invalidate a memory block Here the same structure is used as for function FdxCmdMonContCa...

Page 222: ...anual AFDX ARINC 664 Application Interface Library Section 4 Function Reference Receiver Functions O Ou ut tp pu ut t None Return Value Returns FDX_OK on success or a negative error code on error Erro...

Page 223: ...to the previously provided receiver memory This function will initiate transfer of all received and not transferred data up to receiving this command Input T TY Y_ _F FD DX X_ _M MO ON N_ _C CO ON NT...

Page 224: ...tion FdxCmdFreeMemory Frees memory allocated by the Library in the proper manner FdxFwIrig2StructIrig Converts an IRIG time in the format used by the Firmware to a structured format FdxStructIrig2FwIr...

Page 225: ...lt IRIG Time A IRIG Time B add or Result IRIG Time A IRIG Time B sub Calculates with 366 Days Year Input TY_FDX_IRIG_TIME px_IrigTimeA Format see FdxFwIrig2StructIrig function above TY_FDX_IRIG_TIME p...

Page 226: ...an information list or an information array If a pointer to an information list element this must be the pointer to the first entry of the information list The function will release the memory of eac...

Page 227: ...rary Input TY_FDX_FW_IRIG_TIME px_FwIrigTime typedef struct AiUInt32 ul_TtHigh AiUInt32 ul_TtLow TY_FDX_FW_IRIG_TIME A Ai iU UI In nt t3 32 2 u ul l_ _T Tt tH Hi ig gh h Timetag word in firmware forma...

Page 228: ...ute 1 relative positive 1 relative negative only needed for calculation absolute Irig format day 1 366 relative No Irig format day 0 365 AiUInt32 ul_Hour 0 23 AiUInt32 ul_Min 0 59 AiUInt32 ul_Second 0...

Page 229: ...AiUInt8 uc_ExternalStrobe AiUInt8 uc_PreambleCount AiUInt32 ul_Skew AiUInt8 uc_NetSelect AiUInt8 uc_FrameStartMode AiUInt32 ul_PhysErrorInjection AiUInt16 uw_SequenceNumberInit AiUInt16 uw_SequenceNum...

Page 230: ...rary Section 4 Function Reference Target Independent Administration Functions O Ou ut tp pu ut t TY_FDX_TX_FRAME_HEADER px_TxFrameHeader Initialized structure see above Return Value Returns FDX_OK on...

Page 231: ...via the FdxCmdTxQueueWrite function if the corresponding Transmit Port has been configured for Replay This avoids any data processing when using previously captured traffic for Replay Input ul_ReadQu...

Page 232: ..._TIME px_IrigTime IRIG Timecode Library structure typedef struct AiInt32 l_Sign sign 0 absolute 1 relative positive 1 relative negative only needed for calculation absolute Irig format day 1 366 relat...

Page 233: ...IFG_ERROR GNET_SHORG_IFG_ERROR Short Interframe Gap Error 960ns IFG FDX_IP_ERROR GNET_IP_ERROR AFDX IP Framing Error AFDX IP frame specific settings violated IPE FDX_MAC_ERROR GNET_MAC_ERROR AFDX MAC...

Page 234: ...stration Functions AiUInt8 uc_ErrStrSize Size in bytes of the array of characters which will hold the error string after successful translation O Ou ut tp pu ut t AiChar puc_ErrStr Error String writte...

Page 235: ...or rW Wo or rd d Prototype AiReturn GNetTranslateErrorWord AiUInt16 uw_ErrWord AiChar puc_ErrStr AiUInt8 uc_ErrStrSize Driver Command none Purpose This function translates a Firmware specific Error Re...

Page 236: ...mote recording To use this function direct access to the recording file is required This can be achived by mounting the directory as network drive Operating System functionality The recording file is...

Page 237: ...emoved In case of a different index file the index file would be deleted ul_Granularity Defines the granularity how often the percentage should be displayed Valid values are 1 100 This allows to displ...

Page 238: ...an awful job It also returns the pointer to the index table within the file and the length of the file header Input A Ai iH Ha an nd dl le e h_RecordingFile A handle to a recording file For example th...

Page 239: ...grity Checking ID Identifier IFG Inter frame Gap IP Internet Protocol IPP process invalid frames IRIG B Inter Range Instrumentation Group Time Code Format Type B LCA Xilinx Logic Cell Array Field Prog...

Page 240: ...erface Library Section 5 Notes TAP Test Access Point TBD To be defined TCB Monitor Trigger Control Block TFTP Trivial File Transfer Protocol TS Traffic Shaping UDP User Datagram Protocol VL Virtual Li...

Page 241: ...the current frame interrupt a signal from a device attached to a computer or from a program within the computer that causes the main program that operates the computer the operating system to stop an...

Page 242: ...230 Reference Manual AFDX ARINC 664 Application Interface Library Section 5 Notes THIS PAGE INTENTIONALLY LEFT BLANK...

Page 243: ...14 0x FdxInit FdxQueryServerConfig FdxQueryResource FdxInstallServerConfigCallback FdxLogin FdxLogout FdxInstIntHandler D D D FdxDelIntHandler 6 6 1 1 2 2 V VM ME E I In ni it ti ia al li iz za at ti...

Page 244: ...Create FdxCmdTxQueueStatus FdxCmdTxQueueWrite D D D FdxCmdTxQueueUpdate FdxCmdTxQueueControl NEW FdxCmdTxQueueAcyclic NEW FdxCmdTxCreateVL FdxCmdTxCreateHiResVL FdxCmdTxUDPCreatePort D FdxCmdTxUDPChgS...

Page 245: ...tStatus FdxCmdMonCaptureControl FdxCmdMonTCBSetup FdxCmdMonTrgWordIni FdxCmdMonTrgIndexWordIni FdxCmdMonTrgIndexWordIniVL FdxCmdMonGetStatus FdxCmdMonQueueControl FdxCmdMonQueueRead FdxCmdMonQueueSeek...

Page 246: ...cription changed 0 44 Preliminary 15 1 2002 J Schuler FdxCmdVLActivity parameter passed via structures 0 45 Preliminary 24 1 2001 J Schuler Multiplatform issues addressed FdxCmdTxQueueCreate modified...

Page 247: ...1 10 05 02 M Riedinger Chapter 3 1 General New platform added Chapter 5 4 1 Include files Name of include file corrected Prototype of following functions corrected manual and SW Chapter 6 3 4 FdxLogin...

Page 248: ...eCreate Documentation corrected ul_TimingType option only FDX_TX_QUEUE_ABSOLUTE available Chapter 6 5 3 2 FdxCmdTxUDPCreatePort Note about sampling rate added Error in FdxLogin FdxLogout Lynx only cor...

Page 249: ...ion corrected FdxCmdBoardControl note for redundant operation changed Redundant operation supported only for TX V06 0x 02 04 2003 M Riedinger Processed SCR 728 New function FdxReadBspVersion Documenta...

Page 250: ...chronized modified V0090x 30 10 2003 M Riedinger Partnumber included in document Limitation of servers including board increased from 2 to 8 FdxCmdTxUDPCreatePort definition of structure TY_FDX_QUINTU...

Page 251: ...Info FdxCreateRecIndex NEW function described FdxSkipRecFileHeader NEW function described FdxCmdMonQueueControl Description of parameter ac_RecordingFileName added 11 0x A 06 10 2004 J Furgerson Remov...

Page 252: ...r ul_Skew and ul_InterFrameGap extended FdxCmdRxVLControl Description extended FdxMonQueueRead Description extended 14 3x B 07 11 2006 M Riedinger Reference to firmware specification removed R Heitzma...

Reviews: