Home
FDM - Cern
Contents
1. Write Value User time ID DAT RP DAT Value and User time Producer time Page 2 10 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions The selected implementation consists in defining a new MPS variable with the with _time_var attribute Processing the variable shows which type it is When the variable is read by the consumer s The time difference between the reception time from the network and the time it is read by the user is supplied with the contents of the variable The contents comprises the value written by the producer followed by four bytes corresponding to the production difference The time difference is also expressed in microseconds When the variable is produced on the network The time difference between the moment it is updated by the producer in the database and the moment it is produced on the network is added to the value of the variable in the four bytes intended for this purpose The four bytes in question may already contain a time difference in the case of bridges for example These time differences are expressed in microseconds The refresh status is automatically calculated in the same way as for a conventional variable Format of variable produced on the network L_DATA LG 7 STATUS L_DATA must be a multiple of 2 The accuracy of the calculation of the two time differences corresponds to a value of 2 Tslot time unit used intern
2. ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 101 Description of user interface primitives 1 68 fdm_change_ messaging acknowledge_type SUMMARY Function for modifying the type of messaging used in transmission mode with or without acknowledgement PROTOTYPE unsigned short fdm_change messaging _acknowledge_ type FDM MESSAGING REF Ptr Messaging enum _FDM MSG ACK TYPE User Msg Ack Type struct _FDM REF Unsigned Long Remote Adr j DESCRIPTION This function makes it possible to indicate context by context whether it is necessary to modify the type of messaging acknowledged or not to be used for transmission For a given context if this function is not called acknowledged messaging will be used if the destination address is an individual address and non acknowledged messaging will be used if it is a group address If this function is called for a context each time a message is transmitted the User Msg Ack Type procedure will be called with the destination address as the input parameter in order to ask which type of messaging is to be used INPUT PARAMETERS Ptr Messaging Pointer to the messaging context User Msg Ack Type User procedure that will be called by FIP DEVICE MANAGER for each message transmitted on this context to find out which type of messaging to be used Description of type FDM_ MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the use
3. FDM MSG USER ERROR FDM DATA LINK ERROR FDM MSG SEND OK No error indication FDM MSG USER ERROR The error type is indicated in the _FDM_MSG_USER_ERROR_LIST field FDM DATA LINK ERROR The error type is indicated inthe _FIP_MSG_SND_REP field enum FDM MSG USER ERROR LIST _FDM_ MSG REPORT OK 0 _FDM_MSG_REPORT MSG NOT ALLOWED _FDM_ MSG REPORT CHANNEL NOT ALLOWED _FDM_MSG_ REPORT _ERR_LG MSG _FDM MSG REPORT ERR _MSG_INFOS _FDM_ MSG REPORT INTERNAL ERROR Page 3 84 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives FDM MSG REPORT OK No indication of an error of this type FDM MSG REPORT MSG NOT ALLOWED Transmission has been requested during operation on pier cee a ee a image 2 FDM MSG REPORT ERR LG MSG FDM MSG REPORT ERR MSG INFOS FDM MSG_TO SEND Nr Of Blocks 0 or FDM MSG REPORT CHANNEL NOT ALLOWED Channel on which transmission took place does not exist Message size error 0 or gt 256 FDM MSG_TO SEND Ptr Blocks NULL FDM MSG REPORT INTERNAL ERROR Problem of access to component User_Signal_ Warning called to provide details enum _FIP MSG SND REP FIP NOACK BAD RP MSG 0x4 FIP ACK NO REC AFTER RETRY 0x2 FIP ACK NEG AFTER RETRY 0x5 FIP ACK NEG NO RETRY Ox7 _FDM_TIME OUT 0x8 FIP NOACK BAD RP MSG Message transmission error if messaging not ackn
4. 80 60 40 20 Start AE_LE AE_LE with 10 variables Free access Conventional access The test above has been performed on a CC117 board Page 4 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Performance levels 1 5 Messaging 1800 Message Read 1600 1400 1200 1000 800 600 400 200 0 0 30 60 90 120 150 180 210 240 1200 Message Write 1000 800 600 400 m m 200 m 0 p en ccc ccc cc scccccccrcccccscsssccssscssccesecssesoeseocsoole 0 30 60 90 120 150 180 210 240 Duration in mi ds uration in microseconds 16 A CC117 Famy2 14 re 12 10 CC117 FdmV4_ Conventional access 8 6 CC117 FdmV4 Free access 4 2 a ae CC121 FdmV4 Conventional 0 NNNEEEENEEEE CC139 FdmV4 Free 0 1 2 No of bytes ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 4 5 Performance levels 1 6 MPS variables 560 Variable Read 490 420 350 280 210 140 70 20 40 60 80 100 120 540 Variable Write 480 420 360 300 240 180 120 60 SS Ss el Ls SENSANENEEEENEEEENENAENEENNNENEHENEC 0 0 20 40 60 Duration in microseconds No of bytes Page 4 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual 80 100 120 CC117 FdmV2 or FdmV4_ Conventional access CC117
5. INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Label Internal macrocycle label Nb Of Lists Number of lists described Nb Of Instructions Number of instructions described Ptr Lists Pointer to a data structure of the PTR_LISTS type described above containing the sequences of identifiers to be circulated Ptr instructions Pointer to a data structure of the PTR_INSTRUCTIONS type described above containing the sequences of instructions to be executed Description of type FDM_REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM BA REF Inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 59 Description of user interface primitives Definition of types PTR_ LISTS et PTR_INSTRUCTIONS typedef struct unsigned short LIST ELEMENT PTR_LISTS typedef struct unsigned short ID unsigned short Frame_Code LIST_ELEMENT typedef struct unsigned short unsigned long PTR_INSTRUCTIONS List Size Ptr List Element ID Frame_ Code Op_ Code List Size Ptr_ List Element Op_Code Paraml1 Size in bytes of the described list Pointer to the list of identifiers Value of the identifier concerned Only the packing identifier cannot be used value 9080H Used to indicate with which type of frame the identifier is to be circula
6. 31 FDM_MSG_ IMAGE 1 The messaging context created can only be used if the AE LEs are operating in Image 1 FDM MSG IMAGE 2 The messaging context created can only be used if the AE LEs are operating in Image 2 FDM_MSG_ IMAGE 1 2 The messaging context created can be used whether the AE LEs are operating in Image 1 or Image 2 Pointer to the user function which will be called by the FIP DEVICE MANAGER to send the user the transmission acknowledgement or the time out if necessary Pointer retransmitted to the user for his private use Pointer retransmitted to the user for his private use Transmission channel number to be used Pointer to the user function that will be called by FIP DEVICE MANAGER to send the user a message received in this context Number of message descriptors received of the FDM_MSG RECEIVED type specified below which can be used to receive messages with the same destination address as that specified below Number of message blocks received of the FDM MSG R DESC type specified below which can be used to receive messages with the same destination address as that specified below If in transmission mode then it is the source address of the message transmitted If in reception mode then it is the destination address of the message received 0 Significant byte Segment of the LSAP of the LSAP If in reception mode then it is the source address of the message received If in transmission mode the
7. Description of user interface primitives 1 24 fdm_mps_var_change_rqa SUMMARY Function for modifying the RQa attribute of a variable PROTOTYPE unsigned short fdm_mps var change RQa FDM MPS VAR REF Ptr MPS VAR ENUM FDM_ FLAGS New_RQa DESCRIPTION This function makes it possible to modify the value of the RQa attribute associated with an MPS variable when it has already been created but the AE LE to which it belongs has not yet started up INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified New _RQa New value of the RQa attribute of the variable identified by Ptr MPS VAR FLAG OFF or FLAG ON Description of type FDM_ MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 40 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 25 fdm_mps_var_change_msga SUMMARY Function for modifying the MSGa attribute of a variable PROTOTYPE unsigned short fdm_mps_var_change_MSGa FDM MPS VAR REF Ptr MPS VAR ENUM FDM FLAGS New_MSGa DESCRIPTION This function makes it possible to modify the value of the MSGa attribute associated with an MPS variable when it has already been created but the
8. The files fdm_os c and fdm_os h provide a set of macros for the operating systems pSOS and VxWorks If you use pSOS or VxWorks and if you want to change these macros or if you use another operating system then you have to change or adapt these macros OS _fdm_sm_create To create the semaphores one call for each OS _fdm_sm_delete To delete the semaphores one call for each OS _fdm_sm_p To take the semaphore needed to protect access to FULLFIP2 OS fdm_sm_v To free the semaphore needed to protect access to FULLFIP2 os _fdm_sm_p bd To take the semaphore needed to protect access to FIP DEVICE MANAGER data base os fdm_sm v bd To free the semaphore needed to protect access to FIP DEVICE MANAGER data base OS_fdm sm p t To take the semaphore needed to protect certain portions of FIP DEVICE MANAGER code OS_fdm sm v t To free the semaphore needed to protect certain portions of FIP DEVICE MANAGER code OS_fdm_sm p_vcom To take the semaphore needed to protect access to the variable free access OS_fdm_sm v _vcom To free the semaphore needed to protect access to the variable free access ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page l 13 General introduction In addition FIP DEVICE MANAGER calls a procedure which enables it to place the processor it is working on into a state of total non preemption It can do this for very short periods of time a few microinstructions to protect itself from certain instance
9. Pointer to a user function which will be called by the FIP DEVICE MANAGER following a transmission request or on reception of acknowledgement of transmission User identification of his application Description of type FDM_ PRESENT LIST typedef struct unsigned char Report unsigned char Nop unsigned char Busl_ P 32 unsigned char Bus2_ P 32 FDM_PRESENT LIST Report VAR_TRANSFERT NO_VAR_TRANSFERT Execution report of the list of equipment present variable read request The list has been received therefore the following two parameters are significant The list of equipment present has not been transferred therefore the following two parameters are not significant ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 11 Description of user interface primitives Busl P Bus2_P Table containing a list of bits indicating that it is present on Channel 1 for each subscriber bit 1 if present Busl P 0 bit 0 Subscriber 0 Busl P 0 bit 7 Subscriber 7 Bus1 P 1 bit 0 Subscriber 8 Bus1 P 1 bit 7 Subscriber 15 Bus1 P 2 bit 0 Subscriber 16 Busl P 31 bit 0 Subscriber 248 Busl P 31 bit 7 Subscriber 255 idem Bus1_P for Channel 2 Description of type FDM_ PRESENCE VAR typedef struct FDM PRESENCE VAR Report VAR_TRANSFERT NO_VAR_TRANSFERT Subscriber Ident_Length BA Status unsigned char Report unsigned char Subscriber unsigned
10. These two callback functions use an input parameter of the FDM_ERROR_CODE type described in the fdm_initialize_network function see Chapter 3 The error warning codes are described in Chapter 5 Page l 12 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 4 3 Interface with the operating system 4 3 1 Management of mutual exclusion This management system involves the mutual exclusion required to protect the following access to the FULLFIP2 circuit which is non reentrant only one user command can be activated at any one time for each FULLFIP2 some means of access to the internal FIP DEVICE MANAGER database certain portions of the FIP DEVICE MANAGER code access to the variables in free access mode This is managed with the help of four different semaphores for each FIP DEVICE MANAGER instance which makes it possible to separate the means of access Flags are used as it involves the appropriate software tools which are the most frequently available when using a real time kernel However they can be replaced by i e the corresponding macro can refer to other mechanisms in order to achieve this mutual exclusion e g masking unmasking tasks using the primitives which call the flags in question These semaphores manipulated by the FIP DEVICE MANAGER primitives are to be provided by the user via a set of macros which he must specify in accordance with his environment
11. This function makes it possible to request the transmission of a message on a messaging context which has already been configured for this purpose INPUT PARAMETERS Ptr Messaging Pointer to a data structure of the FDM_ MESSAGING _ REF type Ptr Msg To Send Pointer to a data structure of the FDM_MSG_ TO SEND type specified by the primitive fdm_messaging fullduplex_create and containing the transmission parameters of the message as well as the reference to the message itself Description of type FDM_ MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM_MSG TO SEND See the primitive fdm_messaging fullduplex_create REPORT This function submits a report as specified by the primitive fdm_stop_ network In the case of a 5 Mbits s network the user message should be greater than 4 bytes ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 97 Description of user interface primitives 1 64 fdm_msg_send_fifo empty Q SUMMARY Activation of processing of message in transmission mode PROTOTYPE void fdm msg send fifo empty FDM_REF Ptr Network Identification DESCRIPTION This function enables the user to activate the effective transmission of a message the request for which has been sent by the fdm_send_message primitive find out about received events regarding acknowledgement of messages the transmission of which has bee
12. Description of user interface primitives 1 53 fdm_read_report SUMMARY Read function of the subscriber report variable PROTOTYPE unsigned short fdm_read_report FDM_REF Ptr_ Network Identification unsigned char Subscriber DESCRIPTION This function is for requesting the subscriber report SM_MPS variable read including itself This is carried out by means of an aperiodic request regarding the variable in question When FIP DEVICE MANAGER will receive the variable it will call the User Report _Prog function This function is a user written function given in the configuration parameter FDM_CONFIGURATION_ SOFT in the fdm_Initialize Network function INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Subscriber Physical address on the network of the subscriber whose report variable is to be read Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network The BA program should contain an aperiodic window instruction SEND_APER ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 77 Description of user interface primitives 1 54 fdm_read_ba_synchronize SUMMARY Read function of the BA sync variable PROTOTYPE unsigned short fdm_read_ba_synchronize FDM REF Ptr Network Identification DESCRIPT
13. FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 4 9 Performance levels Calculation of zone C capacity zone C capacity TVAR TMSGE TMSGR TVAR 160 16 number of MPS variables words TMSGE 16 CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT CONFIGURATION SOFT TMSGR 1024 words Calculation of zone D capacity zone D capacity Nr_Of Tx Buffer Nr_Of Tx Buffer Nr_Of Tx Buffer Nr_Of Tx Buffer Nr_Of Tx Buffer Nr Of Tx Buffer Nr_Of Tx Buffer Nr_Of Tx Buffer Nr_Of Tx Buffer 1000 8 CONFIGURATION SOFT NB_OF DIFFERENT ID PROG BA 3 total number of instructions o y A UW FF WN EBE O Note for a SEND_LIST instruction the actual number of instructions is equal to the number of IDs on the list Calculation of zone E capacity zone E capacity TDATAV TDATAME TDATAMR if FDM_WITH FREE ACCES YES then TDATAV 128 number of variables 1216 words otherwise TDATAV 64 number of variables 704 words endif TDATAME _ 135 CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO CONFIGURATION SO TDATAMR _ 8775 words FT Nr Of Tx Buffer FT Nr Of Tx Buffer FT Nr Of Tx Buffer FT Nr Of Tx Buffer FT Nr Of Tx Buffer FT Nr Of Tx Buffer
14. Label Label name of the program running REPORT This function submits a report as specified by the primitive fdm_stop_network Page 3 70 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 47 fdm_ba_commute_macrocycle SUMMARY Function for changing macrocycle PROTOTYPE unsigned short fdm_ba_commute_macrocycle FDM_BA REF Ptr_BA DESCRIPTION This function makes it possible to change the macrocycle to be run by the local Bus Arbitrator whether active or idle INPUT PARAMETERS Ptr BA Pointer to a data structure of the FDM_ BA REF type Description of type FDM BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 71 Description of user interface primitives 1 48 fdm_ba_external_resync PROTOTYPE unsigned short fdm_ba_external_resync FDM_REF Ptr_ Network Identification DESCRIPTION This function is for sending the Bus Arbitrator functionality an external resynchronisation order INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitiv
15. ZN130 or FIELDUAL in ZN130 mode intervention of FIP DEVICE MANAGER FIELDUAL in new mode controlled by FULLFIP2 FIPCODE no intervention of FIP DEVICE MANAGER therefore no code run on the host micro to do this The FIP DEVICE MANAGER is informed of the type of management selected by means of a compilation option see Chapter 6 Section 3 The database managed by FULLFIP2 FIPCODE can be accessed in two ways both dependent on the hardware architecture See 5 for details via the FULLFIP2 FIPCODE command user interface via access to a memory shared between FULLFIP2 FIPCODE and the host microprocessor The latter thus has direct access to the database containing the objects it must manipulate variables messages etc The FIP DEVICE MANAGER is informed of the type of access selected by means of a compilation option see Chapter 6 Section 3 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 3 General introduction 3 PRESENTATION OF THE FUNCTIONALITY The FIP DEVICE MANAGER Release 4 software functionality includes the following tasks Ensuring system operation This functionality is dedicated to the management of components required to build WorldFIP connection points i e FULLFIP2 medium redundancy circuits and private memories It consists of the following basic functions configure and manage one or N FULLFIP2 components carry out the self tests of the WorldFIP connection p
16. see Chapter 4 Subsection 2 1 e periodic MPS e aperiodic MPS e periodic and aperiodic DLL messaging e ST4 directory containing FIPCODE files that have to be used in your makefile if you needs the following services see Chapter 4 Subsection 2 1 e periodic MPS e aperiodic MPS e periodic and aperiodic DLL messaging e Bus Arbitrator Demos CC116 directory containing one example using an ALSTOM Technology target CC116 117 118 Under this sub directory you can find an example of the user_opt h file ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 6 1 Installation procedure 2 IMPLEMENTATION To implement the software you have to first write the user procedures likely to be used fill in the macros for the interface with the operating system fdm_os c file customise the user_opt h file according to the requirements of the application in question compile all xx c files using the required compiler and the appropriate compilation options build the FIPMAN LIB library this name is given for reference only any other name can be chosen using the appropriate library manager connect the created library to the rest of the software If a 16 bit 80x86 microprocessor is used along with free access operation the compilation model to be used is HUGE Page 6 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Installation procedure 3
17. unsigned short fdm_mps_var_read_loc unsigned short fdm_mps_var_read_universal Page A 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Compatibility FIP DEVICE MANAGER R2 FIP DEVICE MANAGER R4 Short GET _DATA deleted short fdm_mps var_time_read_loc i short fdm_mps var _ time write loc i fdm_generic_time_initialize fdm_generic time read_loc fdm_generic time write loc Short CREATE MACRO CYCLE FDM_BA REF fdm_ba_load_macrocycle_fipconfb Short DEL MACRO CYCLE FDM_BA REF fdm_ba_load_macrocycle manual Short START_BA unsigned short fdm_ba_ delete _macrocycle Short STOP BA unsigned short fdm_ba_start Short FIP BA STATUS unsigned short fdm_ba_stop Short COMMUTE unsigned short fdm_ba_status void RESYNC unsigned short fdm_ba_commute_macrocycle short SET BA PARAMETERS unsigned short fdm_ba_external_resync short SET BA PRIORITY unsigned short fdm_ba_set parameters long SHOW_MACRO CYCLE unsigned short fdm_ba_set_priority deleted int fdm_ba_loaded short READ PRESENT unsigned short fdm_read_present_list short GET PRESENT deleted short READ PRESENCE unsigned short fdm_read_presence short GET PRESENCE deleted short READ IDENT unsigned short fdm_read_ident short GET _IDENT deleted short READ REPORT unsigned short fdm_read_report short GET REPORT unsigned
18. unsigned short fdm_msg ref buffer free FDM MSG RECEIVED Ptr Msg Received DESCRIPTION This function enables the FIP DEVICE MANAGER to free the memory zone that contains a received message descriptor once it is no longer in use INPUT PARAMETERS Ptr Msg Received Pointer to a data structure of the FDM_MSG RECEIVED type Description of type FDM_ MSG _ RECEIVED See the primitive fdm_messaging fullduplex_create REPORT This function submits a report as specified by the primitive fdm_stop_ network The freeing operations must be carried out in the following order 1 fdm_msg data_buffer free 2 fdm_msg ref buffer free Page 3 100 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 67 fdm_msg_data_buffer_free PROTOTYPE unsigned short fdm_msg data_buffer_ free FDM MSG _R_DESC Ptr_ Block DESCRIPTION This function enables the FIP DEVICE MANAGER to free the memory zone that contains a received message once it is no longer in use INPUT PARAMETERS Ptr Block Pointer to a data structure of the FDM_ MSG R_DESC type Description of type FDM_ MSG R_ DESC See the primitive fdm_messaging full duplex _create REPORT This function submits a report as specified by the primitive fdm_stop_ network The freeing operations must be carried out in the following order 1 fdm_msg_ data _ buffer free 2 fdm_msg ref buffer free
19. 1 Diagram of Bus Arbitrator operating modes Energisation BA_STOPPED fdm_ba_stop fdm ba start Start up impossible Time expired or or a fdm_ba_stop local stop or local stop BA_STARTING CD present or 3 packing frames OK BA_IDLE Removal Time expired BA_MSG_WINDOW due to priority BA election BA_WAITING_SYNC inst inst BA_SEND_MSG BA_WAIT_SYNC fdm_ba_external_resync or queue empty BA_SENDING Time expired inst or queue empty BA_SEND_APER BA_SUSPEND Back to user Time expired BA_APER_WINDOW BA WAIT TIME Time expired BA_PENDING ost BA_WAITING_TIME Status description BA_STOPPED The Bus Arbitrator is completely disconnected from the network and is standing by for a re start up command BA_STARTING The user start up command is being processed Three packing frames are transmitted on the network if no activity has been detected beforehand BA_IDLE In this standby status the Bus Arbitrator does not transmit on the network but monitors activity ready to trigger its election procedure should activity on the network cease BA_SENDING The Bus Arbitrator is active and processes BA program instructions such as BA_SEND_ID DAT BA SEND _ID_ MSG and NEXT MACRO BA_WAITING_TIME Status in which the Bus Arbitrator transmits packing frames until the specified time has elapsed This makes it possible to synchronise execution o
20. 37 FDM MPS READ CNF Unsigned Non_Significant 21 unsigned Promptness false roel unsigned Signifiance status _ false 1 unsigned Refresment_false roel FDM MPS READ STATUS ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 45 Description of user interface primitives Report Report of the FDM_MPS_ READ CNF type the possible values of which are _FDM_MPS READ OK correct variable read _FDM_MPS_USER ERROR incorrect read because parameters are wrong or produced variable read incorrect read because one of the statuses is false _FDM_MPS STATUS FAULT Non Significant If 1 the data contained in the zone pointed to by Storage_Buffer are not significant nor are the following three bits Promptness false Prompt status 0 false 1 true Refreshment _false Refresh status 0 false 1 true Significance status false Significance status 0 false 1 true Page 3 46 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 30 fdm_mps_var_read_universal SUMMARY Read function for a universal variable PROTOTYPE unsigned short fdm_mps var _read_universal FDM MPS VAR_REF Ptr MPS VAR DESCRIPTION This function makes it possible to read an MPS variable whether it is local or remote If the variable is remote an aperiodic request is made INPUT PARAMETERS Ptr MPS VAR Pointer to a data struct
21. 4 User Reference Manual Page 6 3 Installation procedure if FDM WITH 1960 YES define SPLX VALUE FOR MASK ALL endif if FDM WITH 68XXX YES define SPLX VALUE FOR MASK ALL endif endif define FDM_WITH_SEMAPHORE define FDM WITH LITTLE INDIAN if FDM WITH LITTLE INDIAN YES define FDM WITH WIN32 define FDM WITH SCOUNIX define FDM WITH MICROSOFT define FDM WITH BORLAND define FDM WITH METAWARE endif define FDM WITH MICROTEC define FDM WITH GNU define FDM WITH SPECIAL USAGE If FDM_WITH_FIPECODE 31 25 is set to YES then FDM can drive a FULLFIP2 component at 31 25 kbits s If FDM_WITH_FIPECODE 1000 is set to YES then FDM can drive a FULLFIP2 component at 1 Mbit s and 2 5 Mbits s If FDM_WITH_FIPECODE_ 5000 is set to YES then FDM can drive a FULLFIP2 component at 5 Mbits s If you have an multi speed application it is possible to set all the above options to YES Use 31 YES YES NO NO NO NO NO YES NO NO You should customise the FIP DEVICE MANAGER library by associating the value YES or NO to each parameter constant described in the user_opt h file The homogeneity of the choices made by the user is systematically checked during compilation Page 6 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Installation procedure OPTIONS EFFECT IF VALUE YES IS SELECTED FDM WITH BA Use of bus arbitrator function FDM_WITH_OPTIMIZED_
22. AE_LE OPERATES WITH IMAGE 1 AE_LE OPERATES WITH IMAGE 2 or variable or mage consumed Sync EVT USER NETWORK USER NETWORK Writes variable and i i Writes variable and corresponding buffer is Nothing transmitted ae ir corresponding buffer is Variable value transmission IMAGE 2 PRODUCED MPS VAR effectively updated in Cr Pan Eng ms effectively updated in on network FULLFIP DB SIPP FULLFIP DB Reads Yere Nalo is last No variable value updating Reads variable value read is Updating of variable value IMAGE 2 CONSUMED MPS VAR ath hee dhe operating even if corresponding when corresponding RP_DAT with previous image 2 last update by network RP_DAT has been received has been received Prompt status false IMAGE 1 Writes variable and Writes variable and d corresponding buffer is Variable value transmission corresponding buffer is Variable value transmission an PRODUCED MPS VAR effectively updated in on network effectively updated in on network IMAGE2 FULLFIP DB FULLFIP DB Writes variable and j k S Writes variable and Nothing transmitted even if corresponding buffer is Variable value transmission corresponding buffer is corresponding ID is AGES PRODUCED MES WAR effectively updated in on network effectively updated in sirian FULLFIP DB FULLFIP DB g IMAGE 1 Reads variable value read is Updating of variable value Reads variable value read is Updating of variable value and CONSUMED MPS VAR last update by network when corresponding RP
23. Address field of the context on which the message is received has been initialised at 1 Remote DLL Address unknown Ref Reference of the context on which the message was received Can be used to transmit a response if the context in question is of the FDM MESSAGING FULLDUPLEX type Page 3 86 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives Description of type FDM MSG R_DESC typedef struct _FDM MSG R_DESC integer Nr_Of Bytes unsigned char Ptr Data struct _FDM MSG R DESC Next_Block unsigned char Data_Buffer 256 FDM_MSG_R_DESC Nr_Of Bytes Number of significant bytes contained in the Data_Buffer block Ptr Data Pointer to the Data_Buffer block containing the data Next_Block Pointer to the next block of the same type is always NULL_PTR in the case of FIP DEVICE MANAGER Data_Buffer Zone intended to hold the received messages REPORT This function produces either a NULL_PTR pointer if it has not been able to run correctly in which case the User Signal Warning function has been called at least once ora pointer toan FDM_ MESSAGING REF type structure Description of type FDM MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 87 Description of user interface primitives 1 58 fdm_messaging to_send_create SUMMARY
24. BA Used for the calculation of election and start up time outs of the startup of the BA see Chapter 2 Subsection 1 4 3 FDM_ WITH MESSAGING Use of messaging services at WorldFIP data link layer level FDM WITH FIPCODE 31 25 Use of specific microcode for 31 25 Kbits s FDM_ WITH FIPCODE_ 1000 Use of specific microcode for 1 Mbyte s FDM_ WITH FIPCODE 5000 Use of specific microcode for 5 Mbytes s FDM_WITH_APER Use of aperiodic messaging services or MPS or SM_MPS even if local report variable is read only FDM_WITH_SM_MPS Use of SM_MPS functions e g remote subscriber report variable read other than production of its own variables which is obligatory FDM_WITH_FIPIO Use of specific FIPIO variable i e to build a FIPIO manager to manage FIPIO agent FDM_ WITH DIAG Use of on line and off line self diagnosis FDM_WITH_ CONTROLS Tests to check validity of all primitive input parameters have been deleted saves space in code FDM_WITH_GT Use of entire time producer redundancy management procedure Production or consumption of time FDM WITH GT ONLY PRODUCED Use of time in production mode only DM_WITH_GT_ ONLY CONSUMED Use of time in consumption mode only FDM_ WITH SUSPEND BA ON DEF In the case of a redundant medium if no activity is detected on a AULT medium then setting this parameter to e NO means that the BA remains active e YES means that the BA priority is set to the lowest value In
25. C so that it can be used in a large number of environments It is also strictly independent of all utilization contexts and contains no assumptions made about the run time model of the user application The user can write the application in C or C The possible implementation in the form of a driver in a given context is the responsibility of the user who integrates the FIP DEVICE MANAGER library into this context However the mechanisms proposed by this library optimize this task thanks for example to an attempt to provide a standard interface with a real time kernel ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page l 1 General introduction FIP DEVICE MANAGER Release 4 can be used to run several FULLFIP2 systems APPLICATION Only if utilization of ZN130 or FIELDDUAL in ZN130 mode 4Azm22z20na lt 2m FIP DEVICE MANAGER REDUNDANCY ARBITRATOR Only if use of FIELDUAL controlled by FIPCODE Page 1 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 2 OVERVIEW OF TARGET HARDWARE CONFIGURATIONS The WorldFIP network connection points managed by FIP DEVICE MANAGER Release 4 can be built in several ways as regards management of medium redundancy and microprocessor access to the database i e variables and messages managed by FIPCODE FULLFIP2 The following components may be used to help in managing medium redundancy see 3 for details
26. DATA Pdu_Type Pdu_Length Network Delay FBuffer REPORT Value of the PDU type field of the frame received Value of the length field of the frame received It is equal to the effective length of the data contained in Rx_Data 7 Sum of the variable transit delays initial delay when user writes the variable production delay consumption delay delay for transfer onto the network in microseconds Array of byte containing the value of the variable This function produces a report of the FDM MPS READ STATUS type as specified by the primitive fdm_mps_ var _read_loc Page 3 48 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 32 fdm_generic_time_initialize SUMMARY Initialisation and start up of the procedure for managing redundancy of the MPS time variable producers ID 9802 and the management of that variable production consumption PROTOTYPE FDM GENERIC TIME REFERENCE fdm_generic_ time_initialize FDM_REF Ptr_ Network Identification Const FDM GENERIC TIME DEFINITION User Definition DESCRIPTION Creation of the MPS time variable the messaging LSAPs required for the time producer redundancy management protocol to be operated and the possible start up of this protocol INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type User Definition Pointer to a data structure
27. FT Nr Of Tx Buffer FT Nr Of Tx Buffer FT Nr Of Tx Buffer 0 1 2 3 4 5 6 7 8 words Page 4 10 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Chapter Error codes 1 ERROR MESSAGES Corresponds to contents of FDM_ERROR_CODE FDM DEFAULT which is of the enum Code Error type F error indicated by User_Signal_Fatal_Error W warning indicated by User Signal Warning in 3rd column of table MNEMONIC CONTEXT PROBABLE CAUSE _NO_ERROR 0x100 _FIPCODE ERROR All primitives 0x201 _TIME OUT All primitives 0x202 _FIPCODE_RESPONSE_IMPOSSIBLE fdm_mps_var_read_loc fdm_mps_var_write_loc fdm_mps_var_write_ universal 0x203 _FIPCODE_FAIL fdm_initialize network 0x204 _INIT_TIMER_FAIL fdm_initialize network 0x205 _INIT_ABORTED fdm_initialize network 0x206 _RN_FAILED fdm_initialize network fdm_ae_le create fdm_mps_var_create fdm_load_macrocycle_ fipconfb fdm_load_macrocycle_ manual fdm_messaging fullduplex_create fdm_messaging_to_send_create fdm_messaging_ to_rec_create 0x207 _SM_FAILED fdm_initialize network 0x208 _CIRCUIT_ACCES_ FAILED fdm_ba_load_macrocycle_ manual fdm_load_macrocycle_ fipconfb fdm_initialize network fdm_messaging to_rec_create fdm_messaging fullduplex_create fdm_messaging to _send_ create 0x209 _ILLEGAL_POINTER fdm_msg_send_fifo_ empty ozoa MEDIUM_EWD_FAILED aa BA W See Fipcode_Report See Fipcode_Report FIPCODE
28. FdmV4_ Free access CC121 FdmV4 Conventional CC139 FdmV4 Free ALS 50278 e en Performance levels 2 MEMORY CAPACITY REQUIRED 2 1 Code size and modularity Modularity is implemented using compilation switches described in Section 3 Chapter 6 The capacities given for reference are those of the libraries i e of the object code obtained for the INTEL 80x86 16 bits target with a BORLAND string Implemented e Periodic MPS Periodic MPS Periodic MPS Periodic MPS Services Periodic DLL Aperiodic MPS Aperiodic MPS messag ng Periodic and Periodic and Aperiodic DLL Aperiodic DLL messaging messaging Bus Arbitrator FIP DEVICE 34 KB 40 KB 51 KB Ee KB MANAGER FIPCODE ae 14KB 20 KB a KB You have to compile You have to compile You have to compile You have to compile the FIPCODE files the FIPCODE files the FIPCODE files the FIPCODE files from ST1 directory from ST2 directory from ST3 directory from ST4 directory see Chapter 6 see Chapter 6 see Chapter 6 see Chapter 6 Two independent options can also be used Autodiag 4 KB Double medium 3 KB This leads to the following maximum and minimum capacities Therefore for a station which has all the functions the total capacity is 117 KB by way of comparison version 2 which has fewer functions has a capacity of 100 KB The minimum set up MPS with common functions has a capacity of 42 KB ALS 50278 e en FIP DEVICE
29. Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network The BA program should contain at least one TEST _P instruction Page 3 74 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 51 fdm_read_presence SUMMARY Read function of the presence variable of a subscriber PROTOTYPE unsigned short fdm_read_presence FDM_REF Ptr_ Network Identification unsigned char Subscriber DESCRIPTION This function is for requesting the subscriber presence SM_MPS variable read including itself This is carried out by means of an aperiodic request regarding the variable in question When FIP DEVICE MANAGER will receive the variable it will call the User_Presence Prog function This function is a user written function given in the configuration parameter FDM_ CONFIGURATION SOFT in the fdm_Initialize Network function INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Subscriber Physical address on the network of the subscriber whose presence variable is to be read Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fd
30. Image 2 Type Communication Type of variable VAR_SYNCHRO Synchronisation variable VAR _ PRODUCED Produced variable VAR_CONSUMED Consumed variable VAR_CONS_PROD Consumed variable on creation but which may then change type Type Scope only used for MPS variables Initialised at 0 for a synchronisation event 0 Remote variable Only universal reads or writes possible The variable must be specified in Image 1 Local variable Local reads and writes can be carried out if the variable is specified in Image or Image 2 The universal reads and writes are possible if the variable is specified in Image 1 Type With Time Var 0 The variable is not a variable with dynamic refresh status Le The variable is a variable with dynamic refresh status see Subsection 1 3 4 2 of Chapter 2 Type Refreshment Used only for communication variables Must be initialised at 0 for a synchronisation event Makes it possible to know if there is a refresh status to be read for a consumed variable 0 no refresh status to be read 1 refresh status to be read Note can only be set to 1 if Type Communication VAR_CONSUMED at the VAR_CONS PROD ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 33 Description of user interface primitives Type Indication Preparation of a transmission indication A SENT or reception indication A_RECEIVE following a network transaction involving this variable
31. Manual ALS 50278 e en Description of user interface primitives 1 27 fdm_mps_var_write_universal SUMMARY Write function of a universal type variable PROTOTYPE unsigned short fdm_mps var write universal FDM MPS VAR_REF Ptr MPS VAR USER_BUFFER_TO_ READ Data_Buffer DESCRIPTION This function makes it possible to write an MPS variable whether it is local or remote If the variable is remote an aperiodic request is made INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_MPS VAR_REF type Data_Buffer Pointer to a read only data structure of indeterminate type Description of type FDM_MPS VAR REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type USER_BUFFER_TO READ Typedef const void USER _BUFFER_TO READ REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 43 Description of user interface primitives 1 28 fdm_mps_var_time_write_loc PROTOTYPE unsigned short fdm_mps var time write loc FDM_ MPS _VAR_REF Ptr MPS VAR unsigned char User Get Value void const unsigned long Delta DESCRIPTION INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_ MPS VAR_REF type User Get Value User function that would be called by FIP DEVICE MANAGER to get the variable value just before writing it i
32. PTR_LISTS Listes BA Ushort sizeof L0 LIST _ELEMENT LO Ushort sizeof L1 LIST _ELEMENT L1 Ushort sizeof L2 LIST _ELEMENT L2 3 Const PTR_INSTRUCTIONS Prg_BA A SEND LIST 0 BA WAIT 5000 SEND LIST 1 SEND LIST 2 TEST P 0 SEND _ APER 200000 SEND MSG 200000 BA WAIT 200000 NEXT MACRO 0 hi FDM BA REF MON BA FDM REF MON RESEAU MON BA fdm_ba_load_macrocycle manual Mon_Reseau 3 10 0 amp Listes BA amp Prg BA A ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 63 Description of user interface primitives 1 41 fdm_ba_delete_macrocycle SUMMARY Function for deleting a macrocycle PROTOTYPE unsigned short fdm_ba_ delete macrocycle FDM BA REF Ptr BA DESCRIPTION This function is for removing a macrocycle from the FULLFIP2 FIPCODE database regardless of how it was loaded INPUT PARAMETERS Ptr BA Pointer to a data structure of the FDM_BA REF type Description of type FDM BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network Page 3 64 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 42 fdm_ba_set_priority Q SUMMARY Function for modifying the priority of a potential Bus Arbitrator PROTOTYPE unsigned short fdm_ba_set_ pri
33. TIME REFERENCE type Prio Value of the priority to be set 0 is the value for the minimum priority 15 is the value for the maximum priority Description of type FDM GENERIC TIME REFERENCE Inside FIP DEVICE MANAGER not manipulated by the user Description of type GT_PRIORITY Typedef struct unsigned Val 4 GT PRIORITY REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 55 Description of user interface primitives 1 37 fdm_generic_time_set_candidate_for_election SUMMARY This function enables the user to include or to exclude the subscriber in the procedure for managing redundancy of the MPS time variable producers ID 9802 PROTOTYPE Unsigned short fdm_generic_time_set_ candidate for election FDM_GENERIC_ TIME REFERENCE Ptr Time Identification enum FDM_ BOOLEAN Etat DESCRIPTION The subscriber is to be included in the procedure if Etat FDM_TRUE and to be excluded from the procedure if Etat FDM FALSE To use this function the compiling switch FDM_WITH_GT must be set to YES INPUT PARAMETERS Ptr Time Identification Pointer to a data structure of the FDM_ GENERIC TIME REFERENCE type Etat FDM_ TRUE or FDM FALSE Description of type FDM GENERIC TIME REFERENCE Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as spec
34. The length of this string is limited by the size of the identification variable and must be within the 2 33 range Pointer to a byte which contains the SMMPS conformity class network management of the equipment The conformity class will be equal to 10H thus a report variable will be created automatically in the two images images 1 amp 2 of the communication database Pointer to a byte table that contains the network management conformity class based on SMS messaging The value of the conformity class is encoded on an unspecified number of bytes between 1 115 limited by the maximum size of the identification variable The first element in the table unsigned 8 bit integer contains the size of this value which can take a value from the 2 116 range Pointer to a byte table which contains the class of conformity to MPS and SubMMS standards data link and physical layer The value of the conformity class is encoded on an unspecified number of bytes between 1 115 and limited by the maximum size of the identification variable The first element in the table unsigned 8 bit integer contains the size of this value which can be a value from the 2 116 range Pointer to a string of characters which contains additional supplier specific information about the equipment This string must end with the character 0 The length of this string is limited by the size of the identification variable and must be within the 2 33 ran
35. This primitive can either be called automatically by FIP DEVICE MANAGER or be called by the user from a background task for example The activation type is selected when FIP DEVICE MANAGER is created 1 2 Managing the medium or media of each configured network There are 2 important elements that are used for management of medium redundancy a threshold of medium defaults expressed in of transactions without errors compared to transactions with errors this threshold is set by the Default_Medium_threshold field of the FDM_CONFIGURATION_SOFT structure when you call the fdm_initialize_network function a period of calling an internal procedure called TEST MEDIUM in FDM R2 The fdm_ticks_counter function handles the call of the TEST MEDIUM procedure The period of calling the TEST MEDIUM function is set by the Test Mediums Ticks field of the FDM_ CONFIGURATION _SOFT structure when you call the fdm_initialize_network function Subsection 4 6 of Chapter 1 describes how to activate the fdm_ticks_counter function by the real time clock interrupt handler Medium test operation The aim is to avoid using a medium on which too many faults have been detected use a previously unusable medium from which all faults have been eliminated indicate to the user the status of the media i e through which channel s the communication is passing The functional summary of redundancy management executed by the TEST MEDIUM function that i
36. all the parameters of a variable Description of type FDM AE LE REF Inside FIP DEVICE MANAGER not manipulated by the user Definition of type FDM_XAE typedef struct struct unsigned Reserved unsigned Position unsigned Communication unsigned Scope unsigned With Time Var unsigned Refreshment unsigned Indication unsigned Priority unsigned Rqa PrPPRPP PRP PND unsigned MSGa Type unsigned short ID unsigned short Var_Length unsigned long Refreshment _Period unsigned long Promptness Period int Rank struct Page 3 32 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives void User Signal Synchro struct _FDM _REF j void User Signal Asent struct _FDM MPS VAR REF struct _FDM MPS VAR_REF void User Signal Areceived void User Signal Var_ Prod struct _FDM MPS VAR _REF unsigned short void User Signal Var _Cons struct _FDM MPS VAR _REF FDM MPS READ STATUS FDM MPS VAR DATA Signals FDM XAE Type Reserved Unused Must be initialised at 0 Type Position Position of the variable in relation to the different images of the AE LE 0 AE LE single image 1 AE LE double image The variable is only specified in Image 1 2 AE LE double image The variable is only specified in Image 2 3 AE LE double image The variable is specified in Image 1 and
37. and which the user must write The address of this procedure is transmitted to FDM by the function fdm_initialize network field User_Signal_Rec_Msg of FDM _ CONFIGURATION _SOFT structure The User_Signal_Rec_Msg function must activate a task that implements the action below 3 The task activated by the User Signal _Rec_Msg function has to call the fdm_msg_rec_fifo_empty function This call activates FIP DEVICE MANAGER to empty the queue and process the indication 4 FIP DEVICE MANAGER calls the callback procedure provided by the user to inform him of the event The address of this procedure is transmitted to FDM when a messaging context is created by calling the fdm_messaging_fullduplex_create or fdm_messaging_to_rec_create function e field User Msg Rec Proc of FDM MESSAGING _FULLDUPLEX structure in the case of a creation of a messaging context by calling the fdm_messaging_fullduplex_create function e field User Msg Rec_Proc of FDM MESSAGING_TO_REC structure in the case of a creation of a messaging context by calling the fdm_messaging_to_rec_create function Page 1 32 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction Don t call the fdm_msg_rec_fifo_empty function inside the body of the User Signal Rec Msg function The execution context of the fdm_msg_rec_fifo_empty function should be different from the execution context of the User_Signal_Rec_Msg function Example of implementation of the
38. call of fdm_msg_rec_fifo_empty function for example in the case of pSOS FDM_REF Network Identification this handle is returned by the function fdm_initialize_network static unsigned long sm_msg rec semaphore create a task and a semaphore t_create TMRE 100 4096 0 T LOCAL T NOFPU amp TaskMsgRec sm_create SMRE 0 SM LOCAL SM_PRIOR amp sm msg rec User_Signal Rec Msg callback function static void User_Signal_Rec_Msg struct FDM_REF Ref sm_v sm_msg rec free the semaphore gt wake up of the task TaskMsgRec task that call fdm_msg_rec_fifo empty function static void TaskMsgRec void for wait for the next event sm_p sm_msg rec SM_WAIT 0 take the semaphore fdm msg rec_fifo_empty Network_ Identification ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 33 General introduction 4 8 Operating model for the local MPS indications QD GD Periodic MPS indications operational model a Before using this model you have to create a local MPS variable using the function fdm_mps_var_create the field Type Scope of the structure FDM_XAE should be set to 1 the variable is set as a local variable The type of the variable produced consumed etc is set by the Type Communication field of the FDM_XAE structure Don t forget to enable the indications by using the Type Jndication field of the FD
39. char Ident _Length struct unsigned char BA Status unsigned char BA Priority BA_Information Execution report of the presence variable read request The presence variable has been received therefore the following three parameters are significant No transfer of the variable therefore the following two parameters are not significant Number of the subscriber physical address from which the presence variable was requested Length in bytes in the interval 0 256 of the identification variable of the subscriber from which the identification variable was requested Status of Bus Arbitrator function on the subscriber interrogated 000b The subscriber is not a potential Bus Arbitrator 001b The subscriber is a potential Bus Arbitrator but the Bus Arbitrator function has not been started up 010b The subscriber is a potential Bus Arbitrator the Bus Arbitrator function has been started up but the subscriber is not elected active Bus Arbitrator 011b The subscriber is a potential Bus Arbitrator the Bus Arbitrator function has been started up and the subscriber is elected active Bus Arbitrator Page 3 12 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en BA Priority Description of user interface primitives Level of priority in the range 0 15 of the subscriber interrogated 0 corresponds to the maximum level of priority and 15 to the minimum This level of priority is taken int
40. comprises hardware components software components development tools and miscellaneous accessories As part of this FIPWARE FIP DEVICE MANAGER is a function library designed to be borne by products connected to the WorldFIP network to facilitate access The purpose of this document is to describe all the features offered by this software as well as the procedures for implementing and using them Therefore it describes how to use FIP DEVICE MANAGER Version 4 in order to compile it for a specific target using the various compilers use it to initialize a subscriber and configure the communication exchanges use it to implement the bus arbitrator use it to access the MPS variables and to send and receive messages In no case whatsoever may this document be considered a manual for learning the concepts and principles underlying the operation of a WorldFIP network Users of this software must already be familiar with the basic mechanisms of a WorldFIP network FIP DEVICE MANAGER software Version 4 is designed for developers who develop interfaces with their communication application and with their run time environment ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 5 Preface 2 CONTENT OF THIS MANUAL This user manual is broken down as follows Chapter 1 General introduction provides an overview of the software It describes the supported features and the procedures for using the sof
41. connection to equipment present test BA program After execution of the equipment present test BA program the FULLFIP2 system microcode of Bus Arbitrator function decodes a special BA instruction which it uses to tell FIP DEVICE MANAGER via a special event associated with an IT of the IRQ type that it has to process the end of the equipment present test No further BA programs are executed packing frames are transmitted by the system to prevent the election of another BA The interrupt which signals the end of equipment present test to be processed is processed by the fdm_process_its_fip procedure as follows updating of list of equipment present as a function of reply obtained e restoration of channel to pre equipment present test status return to user BA program 1 5 3 2 FIELDUAL in new mode The list of equipment present is created entirely by FIPCODE noting is done by FIP DEVICE MANAGER Page 2 28 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 6 Managing WorldFIP data link layer messages 1 6 1 Introduction The structures of the data and mechanisms used for messaging management are specified so that a complete stack of messages can be developed as easily as possible The principle retained is based on the idea of messaging context Depending on its type a messaging context is used either to transmit to receive or to transmit and receive Each c
42. depends on the bit rate of your network and cannot be changed by the user e elseif FDM WITH OPTIMIZED BA is set to YES then e ifthe optimization level is OPTIMIZE 3 then ETOTPI 0 this value is fixed and cannot be changed by the user e else if the optimization level is STANDARD or OPTIMIZE_1 or OPTIMIZE 2 then e ETOTPI 10000 if the bit rate is 1 Mbit s or 2 5 Mbits s or 5 Mbits s e ETOTPI 50000 if the bit rate is 31 25 kbits s You cannot use the optimization level OPTIMIZE 3 for a double medium topology of your network You can only use it for a single medium topology ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 19 Available Functions 1 5 Managing SM MPS network management variables 1 5 1 Format of network management variables The network management services known as SM MPS come from an MPS specialisation the exchange principles are also based on the buffer transfer service of the FIP data link layer SM_MPS offers several types of specialised variables characterised by values with special syntax and semantics reserved identifiers asin the MPS these variables are handled using special read and write primitives there are limited possibilities for the MPS variables for example there is no associated FIP status Via its FIP DEVICE MANAGER software ALSTOM Technology has chosen to support a variable sub assembly proposed in the standard presence varia
43. dm get image x x T T eae Pa a aes en ee eae dm_mps_var_change_priority dm_mps_var_change prod cons dm_mps_var_ write loc dm_mps_var_time_write_loc dm_mps_var_time_read_loc dm_mps_var_write_ universal dm_mps_var_read_universal dm_generic_time_initialize dm_generic_time_read_loc dm_generic_time_write_loc fdm_generic_time_set_candidate_ for elec ion dm_generic_time_set_priority dm_ generic time delete dm_channel_create dm_channel_ delete dm_change_ channel_nr x x xX x P ae aa as a f x C O Oo a k Ls fai J Oo ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 15 General introduction OS_sm_v OS_sm_vt OS_sm_v_bd QS_sm_v_vcom OS_enter_region OS_sm_p OS_sm_p_t OS_sm_p_bd OS sm_p_vcom OS_leave_region fdm_send_message x x ee ey fdm_msg_send_fifo_empty x x X X 4 3 2 Memory management This management system affects the allocation and freeing of memory zones carried out dynamically by the FIP DEVICE MANAGER It is carried out by means of macros which must be specified by the user in accordance with his environment OS Allocate Memory_Region type PA dim OS Free Memory Region PF Where Memory Region Identification of the memory region used Useful for working with real time operUseless for DOS for example type Name of type of obje
44. hat nthic e ietede ie EER E R TRE 3 19 1 8 fdm process its fipQ ssccce ce sceccecscies ais na ii e A REE RAR A E 3 21 IEE MES e ia aVR process it e O EE LEE T ah EA IN TE Ne NR AI T T T 3 22 140 cfd process at iral oer E T EE EE E ERE E E E E EAR 3 23 LIL fdiiswiteh image a r E a E SE A eens Enia aE iaa 3 24 Tl2 gt fda get images nnen a a aa iis end a i eed Me ae 3 25 1 13 lt fdm change test medium ticki 0 455 802 S aco n E gett ce ee eee E 3 26 T A fdmvaeole cr ate ie neces atk exten eet eee ave BG el a ee ea aay 3 27 115 fd ae le deleteQ sce coeliac EE 3 28 1 16 fdm cae le startsein hee iie ee EEE AE creed atin eee tee ohare 3 29 1 17 fdimiv ae l get state nncs rinnoin e E R E E R EERE dee EEA EA 3 30 118 e 1e E VAE E 0 O AE EE E E E EE EE A he E A E I A 3 31 1 19 fdm mps var create Qs sa noin ea E hea EEEE E EEE a5 EE T O E 3 32 1 20 fdm mps var chang e 1d eceecccceesescessceesceeecesecesecsaecssecaeecaeeeseceeeeeeeeeeeeseecsaecseecaeeeaeeeeeeneeeneeees 3 36 1 21 fdm_mps_ var change periods ccccccceescesscesscesscesecesecseecaeecseeeceeseeeeeecsecaecaecseecaeeeaeeeaeeneeeneeeas 3 37 1 22 fdm mps_var change priority ccceccceescesscesscesecesecesecseecseeeseesescsseenseceeecsaecsaecseecaeeeaeeeaeeneeeneeeas 3 38 1 23 fdm mps var change prod Conse e E E aes ed TEER A 3 39 1 24 fdm mps var change tgal eocen een ee Het nate eat gM can eee So 3 40 1 25 fdm mps var change m
45. length in bytes of the data to be written This size is between 12 120 and must be even for a consumed variable with dynamic refresh status this is the length in bytes of the data to be read This size is between 12 120 and must be even In this case this size does not include the size of the time differential calculated by the consumer but only that of the time differential calculated by the producer Rank Rank of the variable in the AE LE user identification of the variable Refreshment Period Refresh period if the produced variable is expressed in microseconds Promptness Period Promptness period if consumed variable is expressed in microseconds User Signal Synchro User procedure which will be called on reception of a synchronisation variable if the EOC interrupt is configured in level mode User Signal Asent User procedure that will be called on production on the network of a produced local variable if an event is associated with it Page 3 34 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives User Signal Areceive User procedure that will be called on reception from the network of a consumed local variable if an event is associated with it User Signal Var Prod User procedure which will be called on production on the network following a universal type write of this variable if produced variable on expiry of the time out associat
46. msg rec fifo empty Activation of message reception function AE_LE MPS Comprehensive application variable units with their projection on the data link layer fdm_ae_ le create Creation of an AE LE fdm_ae_le delete Deletion of an AE _LE fdm_ae_le start Start up of an AE_LE fdm_ae_le stop Stopping of an AE LE fdm_ae_le get_state Obtaining the state of an AE LE ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 9 General introduction VARIABLES MPS Variables fdm_mps var_create fdm_mps_ var_change_id fdm_mps_ var_change_periods fdm_mps var change priority fdm_mps_ var_change_prod_cons fdm_mps var _change_RQa fdm_mps_ var_change_ MSGa fdm mps var write loc fdm mps var write universal fdm mps var time write loc fdm mps var read loc fdm mps var read universal fdm mps var time read loc Creation of an AE LE Modification of the identifying attribute of a variable Modification of the period attributes of a variable Modification of the priority attribute of a variable Modification of the producer consumer attribute of a variable Modification of the authorized MPS query attribute of a variable Modification of the authorized messaging query attribute of a variable Local variable write Universal variable write Local variable write with time Local variable rea
47. of the report variable therefore the following two parameters are not significant Number of the subscriber physical address from which the identification variable has been requested Number of transactions without errors per unit of time on Channel 1 Number of transactions without errors per unit of time on Channel 2 Number of frames received with errors per unit of time on Channel 1 Number of frames received with errors per unit of time on Channel 2 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 13 Description of user interface primitives Activity Status Bit 0 status of the quality of Channel 1 in transmission 0 Nok 1 Ok mode Bit 1 status of the quality of Channel 2 in transmission O Nok 1 Ok mode Bit 2 status of the quality of Channel 1 in reception mode 0 Nok 1 Ok Bit 3 status of the quality of Channel 2 in reception mode 0 Nok 1 Ok Bit 4 status of the validation of Channel 1 0 invalidated 1 validated Bit 5 status of the validation of Channel 2 0 invalidated 1 validated Bit 6 status of traffic on Channel 1 O no traffic 1 traffic Bit 7 status of traffic on channel 2 O no traffic 1 traffic Bit 8 status of channel 1 O Nok 1 Ok OK if Bit 0 and Bit 2 and Bit 4 and Bit 6 00 Bit 9 status of channel 2 O Nok 1 Ok OK if Bit 1 and Bit 3 and Bit 5 and Bit 7 00 The unit of time used is the interval between two calls of the funct
48. replies that a variable cannot be produced on a produced variable write or that a variable cannot be consumed on a consumed variable read FIPCODE cannot be loaded fdm_ Initialize not called W E E All warnings during fdm_initialize_ network execution are upgraded Problem to allocate or restore memory when a divided memory manager is used Problem to create system flag P roblem with physical access to component Use of memory resources Hardware error If the model of the transmission of messages see Chapter 1 Subsection 4 7 3 is not respected peee p eeeeee PP e ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 5 1 Error codes VALUE MNEMONIC CONTEXT PROBABLE CAUSE 25 0x401 _ALLOCATE_MEMORY_FAULT fdm_initialize network fdm_ae_le create Problem with memory allocation fdm_mps_var_create fdm_load_macrocycle_fipconfb fdm_load_macrocycle_ manual fdm_messaging fullduplex_create fdm_messaging to _send_create fdm_messaging to_rec_create fam ae te start fdm_read_ident fdm_read_report fdm_read_presence _PRIVATE_FULLFIP_RAM_OVERFLOW fdm_initialize network fdm_ae_le create The configuration requested does not fit into the private FULLFIP2 memory available fdm_messaging fullduplex create fdm_messaging to_send_create fdm_messaging to_rec_create fdm_ae_le start fdm_read_ident fdm_read_report fdm_read_presence _FRAME DESCRIPTOR_TABLE OVERFL
49. short fdm_get_local_report 7 unsigned short fdm_read_ba_synchronize short PRINT IDENT deleted void PRINT_MNGR_COPYRIGHT deleted void PRINT MNGR_ACK deleted deleted short ACCEPT_SEGMENT paa E T E short DELETE SEGMENT Aes Bn es t short LSAP MODIFICATION aed FDM_MESSAGING_REF fdm messaging_fullduplex_create FDM_MESSAGING_REF fdm messaging_to_rec_create FDM_MESSAGING_REF fdm messaging_to_send_create unsigned short fdm_messaging_delete deleted short UNLOCK MESSAGE on sa a t short SET CHANNEL QUOTA G F S Shee ae E MODIFICATION unsigned short fdm_channel_create Bz unsigned short fdm_ channel_delete Short ACCEPT_MESSAGE deleted Short CHANNEL ALLOC deleted Short CHANNEL FREE deleted Short SEND MESSAGE unsigned short fdm_send_message ALS 50278 e en unsigned short fdm msg ref buffer free unsigned short fdm_msg data_buffer free unsigned short fdm_change messaging acknowledge _ type Table A 1 Compatibility between Version 2 and Version 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual Page A 3 Compatibility List of modifications between Version 2 and Version 4 Possibility of managing several FULLFIP2s with the same software instance The number of FULLFIP2s which can be managed is not limited by the software itself Deletion of useless obsolete primitives Error processing every time an error can be detected in the code give an
50. structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report of the following type IRQ TO_PROCESS if there is still at least one interrupt to process NO_IRQ_ TO_PROCESS if there are no more interrupts to process ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 23 Description of user interface primitives 1 11 fdm_switch_image SUMMARY Function for switching operation from the AE LEs of one image to the other PROTOTYPE unsigned short fdm_switch_image FDM_REF Ptr_ Network Identification enum IMAGE NR Image_Nr DESCRIPTION This function is for switching operation from the AE LE of one image to the other for all AE LEs of the FIP DEVICE MANAGER instance involved INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Image Nr Identification of the image to which the switch must be made IMAGE_1 or IMAGE 2 Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_network Page 3 24 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 12 fdm_get_image PROTOTYPE enum IMAGE NR fdm_get_image FDM REF Ptr Network Identification DESCRIPTION This
51. the case that this BA is the active BA then the BA is stopped and then started in this case it is possible that another BA will be elected see the Chapter 2 Subsection 1 4 FDM_WITH_BI MEDIUM Medium redundancy management Mandatory if card is double medium FDM WITH REDUNDANCY MGNT FIP DEVICE MANAGER therefore host processor involved manages medium redundancy Otherwise it is managed entirely by FIPCODE FDM_WITH_FIPCODE LINKED FIPCODE is link edited with FIP DEVICE MANAGER as opposed to FIPCODE that is contained in a disk file ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 6 5 Installation procedure OPTIONS EFFECT IF VALUE YES IS SELECTED FDM_WITH_PSOS For options specific to various operating system or execution FDM_WITH_NT contexts FDM_WITH_VXWORKS FDM_WITH_NDIS FDM_WITH_SCOUNIX FDM_WITH_SOLARIS FDM_WITH_RTX FDM WITH DELETERN OVERRIDE Restoration of resources after shutdown caused by pSOS FDM WITH VXWORKS Use with real time monitor VxWORKS FDM_WITH NDIS Use with ALSTOM TECHNOLOGY driver PC NDIS FDM_WITH_ FREE ACCESS Use of free accesses function on system user interface database is in shared memory between the host processor and FULLFIP2 and transactions with the system are reduced to a minimum FDM_WITH_ CHAMP IO Can be used with INTEL type microprocessors when the FULLFIP2 system is located in the I O field as opposed to conventional location in the me
52. to stop the procedure for managing redundancy of the MPS time variable producers ID 9802 and the management of that variable production consumption PROTOTYPE Unsigned short fdm_generic time delete FDM_GENERIC_ TIME REFERENCE Ptr_ Time Identification DESCRIPTION Deletion of the MPS time variable the messaging LSAPs required for the time producer redundancy management protocol to be operated and stopping of this protocol INPUT PARAMETERS Ptr Time Identification Pointer to a data structure of the FDM_ GENERIC TIME REFERENCE type Description of type FDM GENERIC TIME REFERENCE Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 54 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 36 fdm_generic_time_set_priority SUMMARY This function enables the user to define the subscriber priority in the time producer election mechanism PROTOTYPE Unsigned short fdm_generic_time_set_ priority FDM_GENERIC TIME REFERENCE Ptr_ Time Identification GT_ PRIORITY prio DESCRIPTION After initialisation and before calling this function the priority is set to 0 minimum To use this function the compiling switch FDM_WITH_GT must be set to YES INPUT PARAMETERS Ptr Time Identification Pointer to a data structure of the FDM GENERIC
53. true or Channel_x_Down_On_Transmission true and the other channel is valid channel x is invalidated there can be no more transmission or reception on this channel Regardless of their status two channels can never be invalidated at the same time If Channel_x_Down_On_Reception false and Channel_x_Down_On_Transmission false channel x is revalidated Special cases of active Bus Arbitrator If over three consecutive calls of the TEST_MEDIUM procedure both channels have to be invalidated this is never done see above the Bus Arbitrator function ceases to operate Filtering occurs so that the BA is not halted spuriously If both channels have been declared valid over consecutive calls of the TEST MEDIUM procedure the Bus Arbitrator function resumes operation The return to normal is filtered In all other cases there is no change Page 2 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions Indication to the user Updating of bits concerning channel status in report variable See Subsection 5 1 1 of this chapter Some rules should be respected the recommended values for the periodicity of calling TEST MEDIUM are e 100 ms for a 5 Mbits s network e 200 ms for a 2 5 Mbits s network e 500 ms fora 1 Mbit s network e 1 6 s for a 31 25 kbits s network e at least 2 TEST _P instructions should be executed by the Bus Arbitrator between two successive cal
54. user by the network This validity is generated from a maximum consumption period set by the user The status is generated the moment the variable is consumed read on the network If the value of the status is true the value of the variable has been updated within a period of time less than or equal to the specified consumption period REFRESHMENT Refreshment relates to the validity of the value of a variable being made available to the network by a producer user This validity is generated from a maximum production period set by the user The status is generated the moment the variable is produced on the network If the value of the status is true the value of the variable has been updated within a period of time less than or equal to the specified production period SIGNIFICANCE This status is generated the moment the variable is produced on the network If the value of the status is true the value of the variable has been written at least once 1 3 4 2 MPS variables with dynamic refreshment The value of the variable supplied to the WorldFIP network is then handled by the network which delivers to the consumer the length of time this value stays in the producer s local buffer before it is produced to which must be added the time taken to transfer it to the network and the length of time it spent with the consumer before being read Basic diagram Read Value and User time Producer time and Network transfer time Consumer time
55. variable is a configuration parameter of the variable in question Similarly in the case of a remote service the priority of the request is also a configuration parameter of the variable ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 9 Available Functions Access to the MPS variables contained in the AE LE therefore requires the following services Local write Local write of a variable with immediate confirmation Local read Local read of a variable with immediate confirmation Universal read This service makes it possible to read the value of a variable without having to know which type of read service to use This service offers immediate confirmation that execution is possible and delayed confirmation is given with the value of the variable Universal write This service makes it possible to write the value of a variable without having to know which type of write service to use This service offers immediate confirmation that execution is possible with delayed confirmation As far as universal services are concerned the anticipation factor for the same variable is 1 All these services guarantee the integrity of the variable value obtained When read consumed MPS variables may be produced accompanied by a status indicating the transmission validity and production validity of a variable They are PROMPTNESS Promptness relates to the validity of the value of a variable being made available to the
56. 8xxx mask 7 i1960 mask 31 A certain number of development contexts are taken into account as standard by FIP DEVICE MANAGER see options above For all special cases not covered by these options the user must add its own options If they prove to be of general interest and are sent to ALSTOM Technology they could be included in the library as standard FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 6 7 Installation procedure Page 6 8 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Appendix Compatibility A The following table gives the functional compatibility between Version 2 and 4 primitives ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page A 1 Compatibility FIP DEVICE MANAGER R2 FIP DEVICE MANAGER R4 Short INIT_FIP_ DB PRG Short INIT FIP DB FILE Short INIT_FIP_DB PROM Short INIT FIP _DB PRG TST Short INIT FIP DB FILE TST Short INIT FIP DB PROM TST _FDM_REF Initialize FULLFIP_ Network void REMOVE FIP DB void TEST _MEDIUM short VALID MEDIUM void GET COUNTER short FIP ONLINE TEST void SMAP FIP EVT short PROCESS MESSAGE short PROCESS MSG_SENT short PROCESS UPDATE short ACK _ EVENT short ACK _EOC void IT_HTR_FIP unsigned char AE LE CREATE unsigned char AE LE DELETE hort AE LE START hort AE LE STOP hort AE LE SWITCH hort AE LE L
57. AE LE to which it belongs has not yet started up INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified New_MSGa New value of the MSGa attribute of the variable identified by Ptr MPS VAR FLAG OFF or FLAG ON Description of type FDM_ MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 41 Description of user interface primitives 1 26 fdm_mps_var_write_loc SUMMARY Write function of a local MPS variable PROTOTYPE unsigned short fdm_mps_ var write loc FDM MPS VAR_REF Ptr MPS VAR USER_BUFFER_TO_ READ Data_Buffer DESCRIPTION This function makes it possible to write a local MPS variable INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_MPS VAR_REF type Data_Buffer Pointer to a read only data structure of indeterminate type Description of type FDM MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type USER_BUFFER_ TO READ typedef const void USER BUFFER _TO READ REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 42 FIP DEVICE MANAGER Software Version 4 User Reference
58. APTER 2 AVAILABLE FUNCTIONS I DESCRIPTION OF FUNCTIONS a jescccsts cetetedeevcaatdededicceouts eta ate e hoke elece cou eee eee 2 1 1 1 Self testsich ieee rr ian Ra ean eee hea baa nena eh 2 1 1 1 1 AIMS sn hes tents Aik dn he iiie heel naa det naa eet ee eh auhnid Aisin cell det ae hla 2 1 1 1 2 Offline test functions 3 ves ek eee ae RA ee es a E ee ae 2 2 1 1 3 Online test HUNCHONS ier ie sa sec adeateee ye REEE AEPA CEKAO EEEIEE OTE e e SASOETA EEE 2 3 1 2 Managing the medium or media of each configured network ssssssseeesesssrsrserereresssrsrserererreree 2 3 13 Managing AE LE and MPS Variables e E EE E ER R E 1 3 1 ET t EEEE AE ey ieee E S E E E T EE E 1 3 2 Management of AE LE operating modes 1 3 2 1 Diagram of AE LE operating modes 1 3 2 2 Associated functions cccscceeseeseeseeseeseceeeeeeeaeeaeeaeeneearenee eee 1 3 2 3 Setting up and adjusting an AE LE and setting its parameters 00 00 tees eeeecseeseeeeseeeeseeseecseescseeecsesaeeseeeaeeetaees 2 7 1 3 3 Managing two AE LE 1a ess cveiie si c stata dace dds Soeeleayatebiees a ends Gh neers ealesd Neila Races 1 3 4 Managing MPS variables 1 3 4 1 MPS variables c cesceeceeeeeseeeeteeneetenes 1 3 4 2 MPS variables with dynamic refreshment 1 3 4 3 TIME Variables is sieccassvesccesscedccusevevecesvcescoess is 1 3 4 4 Synchronisation variables sienai naa a E E EAE EEE N ET E ER ERR 1 3 5 Managing time variable pr
59. COMMAND transmitted by the active Bus Arbitrator via the SUBMMS messaging service Information_Report e ceases to be an active producer if the contents of the COMMAND so require an active non producing consumer subscriber consumes the MPS time variable ID 9802 the active Bus Arbitrator The messaging addresses retained are 0xA00000 for the address of the Bus Arbitrator group STATUS reception LSAP A000 num segment 0 0xA00100 for the address of potential producers COMMAND reception LSAP 0xA001 num segment 0 OxFy0000 for the address of the COMMAND and STATUS transmitter y physical address of the transmitting subscriber LSAP OxFy00 num segment 0 Page 2 14 The active producer cannot consume the time variable if it is read its value is meaningless The user application is informed when a potential producer becomes an active producer by calling a procedure it supplied to FIP DEVICE MANAGER when the mechanism was started up and initialised The user application on the potential producer side may must continue to update the time variable so that the correct value is produced if it is elected A potential producer which consumes the time variable indicates in STATUS the refresh status value of the variable so that the active Bus Arbitrator can decide to elect another active producer should there be a problem The procedure for managing time producer redundancy is activated periodi
60. COMPILATION PARAMETERS The user can set compilation parameters as configuration options in the file user opt h see example below Contents of user_opt h file define YES 1 define NO 0 define infini 0 define 5 millisecondes 5000 define FDM WITH FIPCODE 31 25 NO define FDM WITH FIPCODE 1000 YES define FDM WITH FIPCODE 5000 YES define FDM WITH APER YES if FDM WITH APER YES define FDM WITH SM MPS YES endif define FDM WITH MESSAGING YES define FDM WITH BA YES define FDM WITH DIAG YES if FDM WITH BA YES define SUSPEND _DELAI _5 millisecondes 5000 define FDM WITH FIPIO YES define FDM WITH OPTIMIZED BA YES endif define FDM WITH CONTROLS YES define FDM WITH GT YES define FDM WITH GT ONLY PRODUCED YES define FDM WITH GT ONLY CONSUMED YES define FDM WITH SUSPEND BA ON DEFAULT NO define FDM WITH BI_MEDIUM YES define FDM WITH REDUNDANCY MGNT YES define FDM WITH FREE ACCESS YES define FDM WITH CHAMP IO YES define FDM WITH DTACK YES define FDM WITH FIPCODE LINKED YES define FDM WITH IRQ EOC ON SAME INTERRUPT YES define FDM WITH 1960 YES define FDM WITH 68XXX YES define FDM WITH DSP YES define FDM WITH X86 YES define FDM WITH PSOS YES define FDM WITH _NT NO define FDM WITH VXWORKS NO define FDM WITH NDIS NO define FDM WITH SOLARIS NO if FDM WITH _PSOS YES define FDM WITH DELETE RN OVERRIDE YES ALS 50278 e en FIP DEVICE MANAGER Software Version
61. DEVICE MANAGER microcode executed by FULLFIP2 WorldFIP communication coprocessor medium redundancy management system kilobits per second kilobytes megabits per second megahertz Manufacturing Periodic aperiodic Services System Management Manufacturing Periodic aperiodic Services FIP DEVICE MANAGER Software Version 4 User Reference Manual Gloss 1 Glossary Gloss 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en
62. E to be loaded into the FULLFIP2 FIPCODE database A shutdown request does the opposite change of operating image s you can switch from one image to another in all states except NON EXISTENT 1 3 2 3 Setting up and adjusting an AE LE and setting its parameters Setting up an AE LE consists in creating all the variables it has to contain along with their associated attributes Setting the parameters of an AE LE consists in modifying the attributes of the variables it contains when the AE LE is in the CONFIGURATION state it has not been started up The attributes which can be modified in this case are authorised aperiodic MPS queries authorised messaging queries priority of aperiodic MPS queries prompt period refresh period value of associated identifier Adjustment of an AE LE consists in modifying the attributes of the variables it contains when the AE LE is in the OPERATION state it has been started up The attributes which can be modified in this case are authorised aperiodic MPS queries authorised messaging queries priority of aperiodic MPS queries prompt period refresh period produced or consumed ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 7 Available Functions 1 3 3 Managing two AE LE images FIP DEVICE MANAGER can manage two images for each AE LE in which the same variables can have different attributes which can be co
63. ELETED_MESSAGE _IMAGE NOT _CONFIGURED fdm_messaging to rec create fdm_messaging fullduplex_create fdm_messaging to_send_create zee eee paajp 2 2222 2 22 0xB01 _GEN_MESSAGING_USER_ACK EMIS fdm messaging_fullduplex_create fdm_messaging_to_send_create User procedure indicating transmission acknowledgement not defined fdm_messaging_to_rec_create 0xB02 _GEN_MESSAGING_USER_ACK_ RECEP fdm_messaging fullduplex_create fdm_messaging to _send_ create User procedure indicating reception not defined fdm_messaging to_rec_create Page 5 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Error codes VALUE MNEMONIC CONTEXT E PROBABLE CAUSE 0xB03 _GEN_ MESSAGING BLOCK DESC ERROR fdm_send_message 0x804 MESSAGING CONTEXT_NOT_TO_SEND oxi0s MESSAGING CONTEXT NOT ALLOWED 0xB06 _GEN_MESSAGING_ALREADY_CONFIGURED fdm_messaging_fullduplex_create fdm_messaging_to_send_create fdm_messaging to_rec_create Attempt to transmit message with 1 0 Context used not of transmission type Message transmission on non existent context LSAP already exists W W W W Reception request of bridge type on its own segment 0xB07 _GEN_MESSAGING_ILLEGAL_SEGMENT fdm_messaging to rec create ee fdm_messaging fullduplex_create a eee Seen Seana E of imerface register bit E of interface register bit E SARR e E E of interface register bit of interfa
64. ESCRIPTION This function is for creating a context for using the FIP DEVICE MANAGER for each network i e FULLFIP2 FIPCODE managed It must be called as many times as there are networks to manage The parameter supplied on output is the reference to be given directly or indirectly each time an operation is to be carried out on the corresponding network INPUT PARAMETERS User Soft Definition User variable of the FDM_CONFIGURATION_SOFT type containing the FIP DEVICE MANAGER parameters relating to database configuration User Hard Definition User variable of the FDM_ CONFIGURATION HARD type containing the FIP DEVICE MANAGER parameters relating to external interfaces User Ident Param User variable of the FDM_ IDENTIFICATION type containing the identification variable parameters Description of type FDM_CONFIGURATION HARD typedef struct Unsigned char K_PHYADR Char MySegment i FDM WITH OPTIMIZED BA YES Unsigned char NumberOfThisBusArbitrator Unsigned char GreatestNumberOfBusArbitrator else Unsigned char Reserved 2 endif if FDM WITH CHAMP IO YES Port type LOC _FIP 8 Port type LOC _FIPDRIVE 4 else Page 3 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Unsigned char Unsigned char endif Description of user interface primitives volatile LOC FIP 8 volatile LOC_FIPDRIVE 4 Unsigned short volatile FREE ACCES ADDRESS void void FDM_ER
65. FDM REF Ref Page 3 7 Description of user interface primitives Type Mode Page 3 8 16 bit word associated with the basic communication configuration The logic OR of the following flags must be carried out to initialize it The flags are defined in fdm h MESSAGE_RECEPTION_AUTHORIZED The message reception queue is automatically created with 64 message descriptors TWO_BUS_MODE Use of a double medium card with a medium redundancy management component ZN130 or FIELDUAL TWO_IMAGE MODE Configuration mode for the communication database operation with two images 1 and 2 EOC_PULSE_MODE Operating mode for the EOC interrupt of FULLFIP2 pulse mode otherwise level mode IMAGE _ 2 STARTUP The active image on start up is Image 2 TEST_RAM_ STARTUP Selection of complete RAM test on start up EXTERNAL TXCK Position the TXCK signal of the FULLFIP2 circuit on input Standard use on output Therefore this flag not used IRQ CONNECTED If the FIP DEVICE MANAGER is compiled with the gt FDM_ WITH_DIAG option set to YES the use of this flag indicates that the FULLFIP2 IRQn interrupt signal test will be carried out during the initialization function self test off line EOC_CONNECTED If the FIP DEVICE MANAGER is compiled with the FDM_WITH_DIAG option set to YES the use of this flag indicates that the FULLFIP2 EOC interrupt signal test will be carried out during the initialisation function self test off lin
66. FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en First issue 12 1996 This edition 01 2001 Meaning of terms that may be used in this document Notice to readers Warning notices are used to emphasize that hazardous voltages currents temperatures or other conditions that could cause personal injury exist or may be associated with use of a particular equipment In situations where inattention could cause either personal injury or damage to equipment a Warning notice is used Caution Caution notices are used where there is a risk of damage to equipment for example Note Notes merely call attention to information that is especially significant to understanding and operating the equipment This document is based on information available at the time of its publication While efforts have been made to be accurate the information contained herein does not purport to cover all details or variations in hardware or software nor to provide for every possible contingency in connection with installation operation or maintenance Features may be described herein which are not present in all systems ALSTOM assumes no obligation of notice to holders of this document with respect to changes subsequently made ALSTOM makes no representation or warranty expressed implied or statutory with respect to and assumes no responsibility for the accuracy completeness sufficiency or usefulness of the inform
67. ION This function is for requesting the BA synchronisation SM_MPS variable read This is carried out by means of an aperiodic request regarding the variable in question The active Bus Arbitrator produces this variable When FIP DEVICE MANAGER will receive the variable it will call the User Synchro BA Prog function This function is a _ user written function given in the configuration parameter FDM_ CONFIGURATION SOFT in the fdm_Initialize Network function INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified by the primitive fdm_stop network The BA program should contain an aperiodic window instruction SEND_APER Page 3 78 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 55 fdm_get_local_report SUMMARY Local report variable read PROTOTYPE unsigned short fdm_get_local_ report FDM REF Ptr Network Identification FDM REPORT VAR Ptr Report Var DESCRIPTION This function enables the user to read the local report variable i e from itself No traffic is generated on the network The value is obtained immediately INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Ptr Report Var Pointer to a data
68. MAGE 2 or FDM MSG IMAGE 1 AND 2 Identifier Identifier corresponds to a produced variable intended to support the transmission channel If this identifier does not exist in any AE LE it is automatically created with the produced attribute Channel Nr Periodic messaging channel number REPORT This function submits a report as specified by the primitive fdm_stop network ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 95 Description of user interface primitives 1 62 fdm_channel_delete SUMMARY Deleting a periodic messaging channel PROTOTYPE unsigned short fdm_channel delete FDM_REF Ptr_ Network Identification unsigned short Channel Nr DESCRIPTION This function is for deleting a periodic messaging channel INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Channel Nr See the fdm_channel_ create primitive Description of type FDM_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network Page 3 96 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 63 fdm_send_message SUMMARY Request to transmit a message PROTOTYPE unsigned short fdm_send_ message FDM MESSAGING REF Ptr_ Messaging FDM MSG _TO SEND Ptr Msg To Send DESCRIPTION
69. MANAGER Software Version 4 User Reference Manual Page 4 7 Performance levels 2 2 Data size The size of the data zone required for FIP DEVICE MANAGER operation size on FULLFIP host microprocessor can be broken down as follows stack size Procedure fdm_initialize network requires the largest stack size approximately 1 KB heap size in KB 2 2 4 for electing time producer 0 1 number of MPS variables 0 1 number of simultaneous active requests for SM_MPS 0 06 number of messaging contexts 0 036 number of received message descriptors 0 268 number of received message blocks 0 012 number of macrocycles The capacities given are those required by FIP DEVICE MANAGER and which it allocates to itself They do not include user capacities buffer containing transmitted messages All dynamic memory allocations made by FIP DEVICE MANAGER are allocated on initialisation or by the object creation primitives 2 3 Memory capacity for FULLFIP2 This is the capacity of the FIPCODE database depending on the set up required The FIPCODE database comprises 5 separate zones Zone A microcode specific data Zone B frame descriptors Zone C variable descriptors queue descriptors for messaging Zone D BA program and associated queues Zone E message and variable data Zone capacity constraints Zone A capacity lt 24 k words Zone B capacity lt 64 k words 192 k words in the case of double image
70. MPS task that call fdm_mps_ fifo empty function static void TaskMPS void for wait the next event sm_p sm_mps SM_WAIT 0 take the semaphore fdm_mps_fifo_empty Network_ Identification Page 1 28 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 4 7 3 Operational model for the transmission of messages CD Message transmission operational model Before using this model you have to create a messaging context by calling the fdm_messaging_fullduplex_create or fdm_messaging_to_send_create function There are 8 channels for the periodic messages Channel 1 to 8 and 1 channel for the aperiodic messages Channel 0 After the creation of a messaging context you can use the following model each time when you want to send a message You don t have to create a new messaging context each time you want to send a message This messaging context can be created once for the entire life of your application At the end when you no longer need to send messages on this messaging context you can delete it by calling fdm_messaging_delete ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 29 General introduction The operational model is the following 1 Allocate a buffer to store the message to transmit The user application request is stored in a queue there is a queue for each channel the request is fdm_send_mes
71. M_XAE structure In the case that you configure the EOC interrupt in pulse mode see Subsection 4 4 then connect your interrupt vector corresponding to the EOC interrupt on a User Interrupt Handler your interrupt handler EOC mode is set by the Type field of the FDM_CONFIGURATION_SOFT structure when you call the fdm_initialize_network function Page 1 34 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction The operational model is the following 1 The indication is received by the FIP DEVICE MANAGER from FIPCODE If the indication is transmission of a produced variable then action 2 is performed reception of a consumed variable then action 2 is performed reception of a synchronisation variable and the EOC interrupt has been configured in level mode then action 2 is performed reception of a synchronisation variable and the EOC interrupt has been configured in pulse mode then action 3 is performed 2 FIP DEVICE MANAGER calls the associated procedure provided by the user to inform him of the indication The address of this procedure which is transmitted to FDM when the MPS variable is created by the function fdm_mps_var_create is field User_Signal_Asent of FDM_XAE structure in case of reception by FDM of an indication on the transmission of a produced variable you can for example in the body of the User_Signal_Asent procedure call the function fdm_mps_var write_loc to writ
72. Must be set to 0 if Type Communication VAR_ SYNCHRO O no indication requested 1 indication requested Type Priority Level of priority of MPS aperiodic requests that can be addressed to the Bus Arbitrator using the identifier associated with that variable Must be at zero if Type Communication VAR_PRODUCED or if Type With Time _Var 1 0 Non urgent dz Urgent Type RQa Authorisation to carry out MPS aperiodic requests using the identifier associated with that variable Must be at 0 if Type Communication VAR_PRODUCED or if Type With Time Var 1 0 MPS aperiodic requests not authorised 1 MPS aperiodic requests authorised Type MSGa Authorisation to carry out messaging aperiodic requests using the identifier associated with that variable Must be at 0 if Type Communication VAR PRODUCED or if Type With Time _Var 1 0 not authorised Authorised ID Value of the identifier associated with the variable This value belongs to one of the following value ranges 0000H y OFFFH 3000H a 8FFFH 9800H os 9FFFH B000H ay FFFFH Var_Length for a single MPS variable this is the length in bytes of the data for the user to read or write This length is between 1 125 if the refresh status is requested 1 126 if it is not In the case of 5 Mbits s the length should be greater than 6 bytes must be initialised at 0 for a synchronisation event for a produced variable with dynamic refresh status this is the
73. OAD nsigned short E LE GET STATE hort GET IMAGE hort AE LE DNLOAD hort AE LE MODIFICATION HNN PE KH DH DM Short WRITE _LOC Short WRITE UNIVERSAL Short READ LOC Short READ UNIVERSAL deleted deleted deleted deleted deleted deleted FDM_REF fdm_initialize network unsigned short fdm_stop_ network void fdm_initialize deleted unsigned short fdm_valid_medium unsigned short fdm_online test unsigned short fdm_process its fip unsigned short fdm_process it _eoc unsigned short fdm_process it _irq const FDM_ VERSION fdm_get_version fdm_msg rec fifo _empty fdm_msg send fifo empty fdm_mps fifo _empty fdm_smmps_fifo_empty deleted deleted void fdm_ticks_ counter fdm_change test medium ticks FDM_ AE LE REF fdm_ae_le create unsigned short fdm_ae_le delete unsigned short fdm_ae_le start unsigned short fdm_ae_le stop unsigned short fdm_switch_image FDM_ MPS VAR_REF fdm_mps_var_create int fdm_ae_le get_state int fdm_get_image deleted deleted unsigned short fdm_mps var change _id unsigned short fdm_mps_ var change periods unsigned short fdm_mps var_change priority unsigned short fdm_mps var change prod_cons unsigned short fdm_mps var change RQa unsigned short fdm_mps var_change MSGa unsigned short fdm_mps var write _loc unsigned short fdm_mps var write universal
74. OW fdm_initialize network Parameter FDM_CONFIGURATION_SOFT NB_OF_ USER fdm_messaging fullduplex create _VARIABLE DESCRIPTOR TABLE OVERFLOW ging_ P _MPS_ VARIABLE is too small fdm_messaging to _send_create VARIABLE TABLE OVERFLOW i oe z a fdm messaging_to_rec_create fdm_ae_le_start fdm_read_ident fdm_read_report fdm_read_presence fdm_create_channel 0x406 _VARIABLE_ALREADY_EXIST Variable has already been defined Contents of FDM_IDENTIFICATION incorrect Contents of FDOM_IDENTIFICATION incorrect FIP DEVICE MANAGER self test 0x408 ILLEGAL IDENTIFICATION_LENGTH 0x409 _INTEGRITY_DATA_BASE FAULT fdm_initialize network fdm_messaging fullduplex_create fdm_messaging to _send_ create fdm_messaging to_rec_create fdm_ae_le start fdm_read_ident fdm_read_report fdm_read_presence txa0a _SYNCHRO_VAR_ALREADY_EXIST osos INDICATION PROG_MISSING 0x40C _CONFLICT_CONFIGURATION fdm_initialize network fdm_ae_le start ie pee eee Sync variable must be unique User_Signal_Asent or User_Signal_Areceive absent FIPIO problem between VCOM and LSAP Variable number declared for AE LE is either lt 1 or gt max Ww Page 5 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Error codes VALUE MNEMONIC CONTEXT E PROBABLE CAUSE WwW 0x502 _GEN_AE_ LE ILLEGAL_STATE fdm_mps_var_ create W AE LE is not ina state where primitive execution is fdm_ae_le start possibl
75. PROTOTYPE FDM MESSAGING REF fdm_messaging to_send_ create FDM_REF Ptr_ Network Identification FDM MESSAGING TO SEND Messaging To Send DESCRIPTION This function is for creating a messaging context that can be used in transmission mode INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Messaging To Send Pointer to a data structure of the FDM MESSAGING TO SEND type Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM_ MESSAGING TO SEND typedef struct enum _FDM MSG IMAGE Position struct void User Msg Ack FDM_ MESSAGING REF FDM MSG TO _SEND void User Qid void User Ctxt unsigned short Channel Nr sending unsigned long Local DLL Address unsigned long Remote DLL Address FDM MESSAGING TO SEND Position _FDM_MSG_IMAGE_1 The messaging context created can only be used if the AE LEs are operating in Image 1 _FDM_MSG IMAGE 2 The messaging context created can only be used if the AE LEs are operating in Image 2 _FDM_MSG IMAGE 1 2 The messaging context created can be used whether the AE LEs are operating in Image 1 or Image 2 Page 3 88 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives User Msg _ Ack Pointer to the user function which will be called by the FIP DEVICE MANAGER to send the user the transmission acknowledgeme
76. Page 3 103 Description of user interface primitives PROCEDURE Reference sent to the FIP DEVICE MANAGER by Called by the FIP DEVICE MANAGER by or during User Signal Synchro User Signal Var Prod User Signal Var Cons User Signal Asent User Signal Areceived User Signal Mode User Get_Value User Set_Value User Msg Rec Proc User Msg Ack Proc User Msg Ack Type fdm_mps_ var_create inthe FDM XAE type parameter fdm_mps var_create inthe F type parameter fdm_mps_ var_create inthe FDM XAE type parameter fdm_mps var_create inthe F type parameter fdm_mps var_create inthe F type parameter fdm_generic_time_initialize in the FDM_GENERIC_ TIME DEFINITION type parameter fdm_mps_var_create inthe FDM_XAI type parameter Fdmgmps_var_create inthe FDM_XAE type parameter fdm_messaging fullduplex create fdm_messaging to rec _create inthe FDM MESSAGING _FULLDUPLEX and FDM_ MESSAGING TO_REC type parameters fdm_messaging fullduplex create fdm_messaging to send _create in the FDM MESSAGING FULLDUPLEX and FDM_ MESSAGING TO_SEND type parameters fdm_change_ messaging acknowledge _ type fdm_generic time give value Unique for all FIP DEVICE MANAGER instances fdm_generic time get value Unique for all FIP DEVICE MANAGER instances Page 3 104 FIP DEVICE MANAGER Software Version 4 User Reference Manual fdm_process_
77. Page l 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction Writing a FIP DEVICE MANAGER application means that you have to call the basic FDM services see Subsection 4 1 of this chapter write the error and warning callback functions see Subsection 4 2 of this chapter adapt if necessary some system dependent objects semaphores mutex etc that FDM code uses see Subsection 4 3 of this chapter write the FULLFIP component interrupt handlers IRQ and EOC see Subsection 4 4 of this chapter write the event callback functions see Subsection 4 5 of this chapter write the real time clock handler see Subsection 4 6 of this chapter implement the mechanisms of the deferred services if you use these services see Subsection 4 7 of this chapter access to the SM_MPS variables e access to the aperiodic MPS variables transmission of messages e reception of messages implement the mechanism for the periodic MPS indications if you create periodic MPS variables see Subsection 4 8 of this chapter ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 7 General introduction 4 1 Description of the basic services The FIP DEVICE MANAGER Release 4 programming interface contains all the equipment required to set up the network s to provide network management facilities and to offer communication services This programming in
78. Pointer to a data structure of the FDM_ MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified Refreshment Period New value of the period to be associated with the variable when it is produced in microseconds Promptness Period New value of the period to be associated with the variable when it is consumed in microseconds Description of type FDM_ MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 37 Description of user interface primitives 1 22 fdm_mps_var_change_priority SUMMARY Function for modifying the priority attribute of a variable PROTOTYPE unsigned short fdm_mps_ var_change priority FDM MPS VAR REF Ptr MPS VAR unsigned New Priority DESCRIPTION This function makes it possible to modify the value of the priority of aperiodic transfer requests which is liable to support an MPS variable INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_ MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified New Priority New value of the priority to be associated with the variable for any aperiodic transfer requests FIFO_URGENT or FIFO_NORMAL Description of type FDM_ MPS VAR_REF In
79. ROR_CODE void FDM_ERROR_CODE MEMORY_RN struct _FDM REF FDM_CONFIGURATION_HARD K_PHYADR My Segment NumberOfThisBusArbitrator GreatestNumberOfBusArbitrator LOC_FIP LOC_FIPDRIVE FREE ACCESS ADDRESS User _Reset_Component User Signal Fatal_ Error User Signal Warning Memory Management_Ref Ptr _Autotests ALS 50278 e en User Reset Component User Signal Fatal_Error Struct _FDM_REF Ref FIP DEVICE MANAGER Software Version 4 User Reference Manual struct _FDM CONFIGURATION HARD User_ Signal Warning Struct _FDM REF Ref Memory Management Ref Ptr Autotests Physical address of the subscriber on the WorldFIP network in the interval 0 255 Number of segment used for messaging other than 0 1 127 0 if not used When FDM WITH OPTIMIZED BA is set to YES in the user opt h file this parameter represents the number of the Bus Arbitrator of your station 0 255 When FDM WITH_OPTIMIZED BA is set to YES in the user opt h file this parameter represents the highest number of the Bus Arbitrators connected on your network Contains the addresses for accessing the FULLFIP2 circuit registers Contains the addresses for accessing the ZN130 circuit or FIELDUAL circuit registers when it is used in ZN130 compatible mode Address of the beginning of the memory zone shared between the host microprocessor and FIPCODE FULLFIP2 if free access mode is used Pointer to
80. URATION SOF parameter F F itialize network DM CONFIGURATION SOF parameter F F itialize network DM CONFIGURATION SOF parameter E F initialize network in the DM CONFIGURATION SOFT type parameter Fdm_initialize network inthe FDM_CONFIGURATION_ SOFT type parameter Fdm_initialize network in FDM_CONFIGURATION_ SOFT Fdm_initialize network in the FDM_CONFIGURATION_ SOFT type parameter FIP DEVICE MANAGER Software Version 4 User Reference Manual fdm_stop_ network Detection of serious errors which lead to shutdown Warning of non serious errors fdm_smmps_ fifo _empty for transmitting the list of equipment present variable value fdm_smmps_ fifo _empty for transmitting the presence variable value fdm_smmps_ fifo _empty for transmitting the identification variable value fdm_smmps fifo empty transmitting the report variable fdm_smmps_ fifo _empty for transmitting the BA sync variable value fdm_process_ its fip for indicating a variable has been transmitted or received following a universal type request fdm_process its fip for indicating an SM MPS variable has been received following a read request fdm_process_ its fip for indicating a message has been received fdm_send_message and fdm_process its fip for indicating a message transmission has been requested or that acknowledgement has been received
81. _DAT last update by network when corresponding RPZDAT IMAGE2 has been received has been received i Reads variable value is last Reads variable value read is UPdating of variable value one received when operating No variable value updating IMAGE1 CONSUMED MPS VAR last update by network When corresponding RP_DAT ith previous image 1 even if corresponding has been received Prompt status false RP_DAT has been received IMAGE 1 Receives sync event when it Takes sync event into Receives sync event when it Takes sync event into account nace CONSUMED SYNC EVT appears account to inform user of it appears to inform user of it Does not receive sync event Does not take sync event into Receives sync event when it Takes sync event into account IMAGE 2 CONSUMED SYNC EVT when it appears account appears to inform user of it Receives sync event when it Takes sync event into Does not receive sync event Does not take sync event into IMAGE 1 CONSUMED SYNC EVT appears account to inform user of it when it appears account Table 2 1 Management of two AE LE images 1 3 4 Managing MPS variables 1 3 4 1 MPS variables There are two types of MPS variable access services Local the variable can be read or written directly in the local database Remote circulation of the variable has to be requested of the Bus Arbitrator via an aperiodic request prior to the read or following the write The type of access service to be used for a given
82. _Priority parameter set by the user in the fdm_ba_set_ parameters function PL priority level Its value is PL Priority Level parameter set by the user in the fdm_ba_set_ priority function BANO bus arbitrator number Its value depends on the FDM_WITH_OPTIMIZED_BA compilation option in the user_opt h file e if FDM_WITH_OPTIMIZED BA is set to NO then e BANO K_PHYADR parameter of the FDM_CONFIGURATION_HARD structure set by the user in the fdm_initialize network function e elseif FDM WITH OPTIMIZED BA is set YES then e BANO NumberOfThisBusArbitrator parameter of the FDM CONFIGURATION_HARD structure set by the user in the fdm_initialize network function Page 2 18 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions ETOTPI execution time in microseconds of the TEST _P instruction of the BA Its value depends on the FDM_WITH_OPTIMIZED_BA compilation option in the user_opt h file and the optimization level STANDARD OPTIMIZE 1 OPTIMIZE 2 and OPTIMIZE 3 set by the fdm_ba_set_ parameters function if FDM WITH _OPTIMIZED_ BA is set to NO then e if the optimization level is OPTIMIZE 3 then ETOTPI 0 this value is constant and cannot be changed by the user e else if the optimization level is STANDARD or OPTIMIZE 1 or OPTIMIZE 2 then ETOTPI 257 T0 where TO is Silence Time Out and depends on the bit rate of your network for details see 1 the ETOTPI value
83. _RAM Dim unsigned short NB OF DIFFERENT ID PROG BA unsigned short Nr_ Of Repeat unsigned short Nr_Of Tx Buffer 9 void User Present List Prog struct _FDM REF Ref FDM PRESENT LIST Ptr Present List unsigned short User_Identification_Prog struct _FDM REF Ref FDM IDENT VAR Ptr Ident Var unsigned short User Report Prog struct _FDM_ REF Ref FDM REPORT VAR Ptr Report Var unsigned short User Presence Prog struct _FDM REF Ref FDM PRESENCE VAR Ptr Presence Var void User Synchro BA Prog struct _FDM REF Ref FDM SYNCHRO BA VAR Ptr_ Synchro BA Var unsigned short Test Medium Ticks unsigned short Time_Out_Ticks unsigned short Time Out_Msg Ticks unsigned short Online Tests Ticks unsigned short Default _Medium_threshold Page 3 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives if FDM WITH BA YES amp amp FDM WITH _FIPIO YES unsigned short Segment _Paramers Ticks endif struct unsigned short TIMER CNT REGISTER unsigned short MODE REGISTER User Responsability void User Signal Mps Aper void User Signal _Smmps void User Signal Send Msg void User Signal Rec Msg void User Ctxt FDM_CONFIGURATION_ SOFT ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual struct _FDM REF Ref struct _FDM REF Ref struct _FDM REF Ref struct _
84. a user procedure which is called to carry out hardware resetting of the component Pointer to the user function which will be called by the FIP DEVICE MANAGER if there is an error Pointer to the user function which will be called by the FIP DEVICE MANAGER if there is a warning signal Pointer to a structure required when using divided memory manager Must be initialised at NULL_PTR if divided memory manager not used Pointer required for interrupt self tests Must always be initialised at NULL PTR The fdm_initialize_network function will provide its value Page 3 5 Description of user interface primitives Description of type FDM_ERROR_CODE typedef struct FDM_ERROR_CODE Fdm_ Default ENUM CODE ERROR Fdm Default union struct unsigned _Ustate 3 unsigned Var State 8 Fipcode_ Report unsigned long Additional Report Information Code of the detected fault on an unsigned integer The list of codes is given in Chapter 5 of this document Additional Report Fipcode Report Supplementary information on Fdm Default when Fdm_ Default is different from 0x100 Supplementary information on Fdm Default when Fdm Default equals 0x100 Errors detected at FIPCODE level Description of type FDM_CONFIGURATION_SOFT typedef struct unsigned short Type enum _FULLFIP_ Mode List Mode unsigned short Tslot unsigned short NB OF USER MPS VARIABLE unsigned short BA Dim unsigned long FULLFIP
85. address of this procedure is transmitted to FDM when a messaging context is created by calling the fdm_messaging_fullduplex_create or fdm_messaging_to_send_create function e field User Msg Ack Proc of the FDM MESSAGING FULLDUPLEX structure in the case of a creation of a messaging context by calling the fdm_messaging_fullduplex_create function e field User Msg Ack Proc of the FDM MESSAGING_TO_SEND structure in the case of a creation of a messaging context by calling the fdm_messaging_to_send_create function Now you can free the allocated buffer used to store the message to transmit Don t call the fdm_msg_send_fifo_empty function inside the body of the User Signal Send Msg function The execution context of the fdm_msg_send_fifo_empty function should be different from the execution context of the User_Signal_Send_Msg function Page 1 30 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction Example of implementation of the call of fdm_msg_send_fifo_empty function for example in the case of pSOS FDM_REF Network Identification this handle is returned by the function fdm_initialize_network static unsigned long sm_msg_send semaphore create a task and a semaphore t_create TMSD 100 4096 0 T LOCAL T NOFPU amp TaskMsgSend sm_create SMSD 0 SM_ LOCAL SM_PRIOR amp sm_msg_ send User_Signal_Send_Msg callback function static void User_Signal_Se
86. ally by the system for example 125us for FULLFIP2 at 64 MHz It follows from the above that if this type of variable is to be managed correctly it must be possible to set it up the producer must be able to write it and the consumer must be able to read it ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 11 Available Functions 1 3 4 3 Time variable The solution adopted consists in changing only the time in an MPS variable produced by the item of equipment with the reference time The time variable is configured automatically if requested at the time of general configuration The variable selected is that associated with identifier 9802H It is created as a variable with dynamic refreshment type The format of this variable is as follows normalised contents 1 in the order PF pf The value of the reference time supplied to the WorldFIP network in the requested form POSIX is handled by the network which delivers to the consumer the length of time this value has stayed in the producer s local buffer before being produced to which must be added the time taken to transfer it to the network and the length of time it stays with the consumer before it is read Thus after a time variable is read the application has an absolute time supplied directly by the FIP DEVICE MANAGER which adds to the value given by the producer and the producer and consumer waiting times When this time variab
87. am eaw ao time unit medium test function call time ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 21 Available Functions Format of counter 4 Medium 2 Voy ST eae TE sak ee und medium during transmission L__ 0 NOK Quality status of medium during reception where 1 OK 0 NOK Channels requested by TEST_MEDIUM where 1 OK or requested 0 NOK or not requested Synthesis on the state of medium Traffic status on medium where 1 OK where 1 traffic 0 NOK 0 no traffic Page 2 22 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 5 1 2 List of equipment present variable The list of equipment present variable or presence monitoring variable is a universal network management variable associated with identifier 9002 H No FIP status is associated with this variable As soon as it is produced the variable is valid and significant However this variable produced by the active Bus Arbitrator is only valid and significant when the Bus Arbitrator has finished updating BYTE BIT Type of PDU Length For channel 1 256 bits For channel 2 256 bits i e 32 bytes subscriber i present on channel x bit number i mode 8 of byte number i div 8 1 Absence the same bit 0 When operation is with a single medium card all the bits on channel 2 are at 0 no subscribers present When oper
88. ar_create function a field of FDM_XAE structure User Signal _Areceived if the event corresponds to the reception of a consumed variable with associated event A_Received The user provides this function to the FDM when he calls the jfdm_mps_var_create function a field of FDM_XAE structure User Signal Var Prod if the event corresponds to the transmission of a produced variable of the universal type or at the time out of the request The user provides this function to the FDM when he calls the fdm_mps_var_create function a field of FDM_XAE structure Processing the EOC handlers EOC in level mode as described in the preceding section will activate FDM wich will call the following user callback function User Signal _Synchro if the event corresponds to the reception of a synchronization variable The user provides this function to the FDM when he calls the fdm_mps_var_create function a field of FDM_XAE structure A more detailed description of the use of these callback functions is given in Subsection 4 7 Page 1 20 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 4 6 Processing real time clock interrupt The hardware environment should have a programmable timer that periodically produces interrupts The user has to connect the interrupt vector to the interrupt handler This operation depends on the user hardware environment and operating system We call the period
89. are Version 4 User Reference Manual Page 13 Page 14 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Chapter General introduction l 1 GENERAL OVERVIEW OF THE SOFTWARE The FIP DEVICE MANAGER software Release 4 designed to operate with the FULLFIP2 coprocessor and Release 6 of its FIPCODE microcode takes the form of a library of primitives to be linked to the user application Run on the host microprocessor of the communication coprocessor it can transform the equipment upon which it is integrated into a WorldFIP subscriber active as a station bus arbitrator or both This library contains all the functions required to manage medium redundancy in the case of a hardware target that integrates the FIELDUAL component All the diagnosis functions of the components belonging to the WorldFIP connection point excluding the transmission reception self test and the functions to check the integrity of the configuration data of the communicating subscriber are performed by this software on start up and the whole time the subscriber is working In relation to the European standard applicable to WorldFIP EN50170 the interface offered by FIP DEVICE MANAGER Release 4 is at the application layer level for bus arbitrating and variable exchange services and at the data link layer level for message exchanges The basic network management functionality is also integrated This library is strictly written in ANSI C and ANSI
90. ation contained herein ALSTOM gives no warranties of merchantability or fitness for purpose In this publication no mention is made of rights with respect to trademarks or tradenames that may attach to certain words or signs The absence of such mention however in no way implies there is no protection Partial reproduction of this document is authorized but limited to internal use for information only and for no commercial purpose However such authorization is granted only on the express condition that any partial copy of the document bears a mention of its property including the copyright statement All rights reserved Copyright 2001 ALSTOM Paris France Page 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Revisions Index Date Nature of revision letter 03 1997 Major updates 04 2000 Update 09 2000 Software revision 4 9 Transmission rate 5 Mbits s 01 2001 Updates throughout the document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 Revisions Page 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Preface 1 PURPOSE OF MANUAL AND DOCUMENTED VERSION This document is the user manual for the FIP DEVICE MANAGER software version 4 This software is one of the components of FIPWARE a comprehensive technological solution for developing connections to the WorldFIP network This FIPWARE developed by ALSTOM Technology
91. ation is with a double medium card but with a single channel validated all the bits on the channel not used are at 0 no subscribers present When operation is in FIPIO mode only the part concerning channel 1 is contained in this variable ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 23 Available Functions 1 5 1 3 Presence variable This variable is linked to one physical allocation identifier per station built in the following way ID 14xy H where xy physical address of the subscriber A station can produce it as soon as it has been powered up in reply to the presence indicator linked to its own station number The active Bus Arbitrator to build the list of equipment present consumes it No FIP status is associated to this variable As soon as it is produced it is always valid and significant Type of PDU Length LG VAR P Identification variable length Reserved 00 non significant BA status priority BA priority yi le le 0 BA not supported 1 BA not eligible 2 BA idle 3 BA active 1 5 1 4 Identification variable The identification identity variable is a variable linked to the physical address of each item of equipment The identifier used is built as follows ID 10xy H where xy physical address of subscriber It may be produced by an item of equipment as soon as it has been powered up in reply to the identification identifier linked t
92. ble each item of equipment sends a data item indicating its presence on the network identity variable each item of equipment can be clearly identified remotely report variable each item of equipment supplies potential users with a set of default counters presence control variable the presence of all the items of equipment can be monitored by one particular item of equipment BA synchronisation variable indicates the current status of the active Bus Arbitrator Page 2 20 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 5 1 1 Report variable This variable is linked to one physical allocation identifier per station built in the following way ID 11xyH where xy physical address of the subscriber It can be produced by an item of equipment as soon as it is powered up in reply to a report identifier linked to its own station number No FIP status is associated with this variable As soon as it is produced it is always valid and meaningful BYTES BITS gt 7 0 Type of PDU Data length Counter of transactions correctly received by Time unit on channel 1 Counter value Counter of transactions correctly received by Time unit on channel 2 Counter value Counter of frames incorrectly received by Time unit on channel 1 Counter value Counter of frames incorrectly received by Time unit on channel 2 Counter value Channel status See below mw ww
93. cally on both the active Bus Arbitrator and on the time producers active or potential The activation period is set when the mechanism is started up and initialised Subscribers which are merely time consumers not potential producers do not produce STATUSES and do not consume COMMANDS FIP DEVICE MANAGER Software Version 4 User Reference Manual consumes the STATUSES transmitted by the time producers potential and active via the SUBMMS messaging service Information_Report builds the COMMAND according to the STATUS contents produces the COMMAND via the SUBMMS messaging service nformation_Report The active producer is designated in a random manner from among the potential producers standing by to be elected ALS 50278 e en Available Functions 1 4 Managing the Bus Arbitrator s 1 4 1 Setting up a Bus Arbitrator program Bus Arbitrator programs may be supplied as FIP DEVICE MANAGER inputs in two different forms identical to that supplied by the BA BUILDER FIPCONFB tool and to that of remote BA loading via SMS simplified to create a manual BA program i e with no tools in a C program The instructions that can be used are as follows SEND LIST Requests that a list of identifiers is transmitted in the form ID_DAT or ID_ MSG SEND_APER Requests that a window is opened to process aperiodic MPS requests SEND_MSG Requests that a window is opened to process aperiodic messaging requests BA_ WAIT Requests internal sy
94. cant byte Segment of the LSAP of the LSAP Ifbit31 1 Remote DLL Address is unknown in general used for broadcast reception from all the stations Ifbit31 0 Remote DLL Address is known i e a message is received only if Local DLL Address and Remote DLL Address correspond to the address field of this message If you write an application that plays the role of a bridge at least 2 networks then you have to set e bit3l 1 e the Segment byte and the 2 bytes describing the LSAP any value Page 3 92 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives Description of type FDM_ MSG RECEIVED See the primitive fdm_messaging fullduplex_create REPORT This function produces either aNULL_PTR pointer if it has not been able to run correctly In this case the User Signal Warning function has been called at least once ora pointer to an FDM_MESSAGING_REF type structure Description of type FDM_ MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 93 Description of user interface primitives 1 60 fdm_messaging delete PROTOTYPE unsigned short fdm_messaging delete FDM MESSAGING REF Ptr_ Messaging DESCRIPTION This function deletes a messaging context INPUT PARAMETERS Ptr Messaging Pointer to the messaging context to be delet
95. cc eeceecesecsecsceesseeseeeeceeeeeeecesecesecsecsaecsuecseecaeeeaeeeeeeneeenreees 3 81 1 58 fdm messaging to send create cceeccesccesecesecssecscecseeeseeeeeeseeeseseseeeeecsecaeceeecseecaeeeseseaeeneeenseees 3 88 159 fd messaging to Tec cr ate Mencia antic cist aves Geeta ea Ne eee an aed ae 3 91 1 60 fd messaging delete rer este eae ee a a E A TA 3 94 tol sfdmischaninel create scicess ssakicnig e aie hie le RA ei a E E E T ES 3 95 1 62 fdm channel delete Qarr airia hades sees histones each denies ede aes ete ei 3 96 1 63 fdr send message nerca rE E A E ad edi cateeeiv E R 3 97 1 64 fdm msg send_fifo empty ce ecccceesceecessceseceeceseceseeeseceseeeeeseceseeeseesaecsaecaecseecesesereeereeereeeeees 3 98 Isaa eia o aeS rec fifo empty O ASP E EEE AE E AE EA 3 99 1 66 fdm msge ref buffer freeOnunannn a a a a a a a a a a R 3 100 1 67 fdm msg data buffer freel eeseeseeseesseserssseersssesresssssteresseseestesersessteresseseesesersteseenesstsresse 3 101 1 68 fdm change messaging acknowledge_typeQ s essssssesesssesessseserseesersessreressesesrssersressesreseeseeses 3 102 2 CALLBACK PRIMITIVES TO BE PROVIDED BY THE USER seesesesessesesesrsrsesrssststsessestsestse 3 103 CHAPTER 4 PERFORMANCE LEVELS I USER PRIMITIVE RUN TIME reien jen i ie E E EE etch dies G NE R An 4 1 1 1 Introd tion sa sen rni e aE T ER E E ER A AN 4 1 1 2 Start up fdm_initialize network primitive essseseesseses
96. ce is created and initialised There are three types of functions complete test of the private FULLFIP2 RAM the aim of this test is to thoroughly test the private FULLFIP2 RAM by checking e PDA 15 0 and PA 19 16 address buses private data e control signals WRn and RDn This is done by using an algorithm known as the count jump method whose sequencing is as follows complete write of the volume e check of this volume test of user interface and certain parts of the core of the system the aim of this test is to carry out an electrical test detection of sticking at 1 or 0 of the user interface by running address bit data and control tests the functional test of the internal hardware indicators and the register and FIFO tests as well as the test of certain parts of the system core which are accessible e Ustate register bit test Bit IC carries out a CLOSE command when no other transaction is in progress Bit FE physical read of more than 128 bytes Bit AE read of FIFO when no other transaction is in progress Bit SV no time out on a function of the physical read or write type by filtering the Busy bit Bit FR FIFO full in write and empty in read Bit IRQ forces generation by FULLFIP2 Bit EOC forces generation by FULLFIP2 user register test Registers UFLAG and VAR_STATE are tested in read and KEY _L KEY _H TIMER L TIMER H in write The general test principle is signature analysis FIPCODE inte
97. ce register bit E of interface register bit of interface register bit FAIL ON_INTERNAL FIFO fdm_initialize network 0xC0B _DIAG_FAIL_ON_INTERNAL_REGISTERS E Internal test of NOK component Joxcoc DIAG FANON INTERNAL TIMERS fam initialize network e Joxcor on Line COMPONENT ACCES FAILED sam ontine est B Joxcor ONLINE TESTRAMFAILED tam ontine test LE _TEST_ON_TICKS_ON_LINE fdm_online_test Automatic self tests in use therefore manual tests 0xD01 _ERR_FIP_DOWNLOAD FILE fdm_initialize network E FIPCODE DAT file cannot be opened ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 5 5 Error codes Page 5 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Chapter Installation procedure 6 1 SOFTWARE SUPPLY The software is supplied on a CD ROM Under Programs Fdm_R4 X you can find the following files and directories FIP DEVICE MANAGER files the following sub directories e ST1 directory containing FIPCODE files that have to be used in your makefile if you need the following services see Chapter 4 Subsection 2 1 e Periodic MPS e ST2 directory containing FIPCODE files that have to be used in your makefile if you need the following services see Chapter 4 Subsection 2 1 e periodic MPS e periodic DLL messaging e ST3 directory containing FIPCODE files that have to be used in your makefile if you need the following services
98. cedure fdm_generic_time_get_value makes this request This ensures the time transmitted is as accurate as possible To use this function the compiling switch FDM_WITH_GT or FDM_ WITH _GT_ONLY PRODUCED must be set to YES INPUT PARAMETERS Ptr Time Identification Pointer to a data structure of the FDM GENERIC TIME REFERENCE type Description of type FDM_ GENERIC TIME REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Section 4 2 of this document Description of the function fdm_generic_time_get_value FDM GENERIC TIME VALUE fdm_generic_time_get_value void The FDM_GENERIC_ TIME VALUE type is described on page 3 51 This procedure must be written by the user to provide the time to be transmitted by the FIP DEVICE MANAGER This is common to type all the FIP DEVICE MANAGER instances ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 51 Description of user interface primitives 1 34 fdm_generic_time_read_loc SUMMARY Time variable read ID 9802H PROTOTYPE FDM MPS READ STATUS fdm_generic_time_read_loc Const FDM_GENERIC_ TIME REFERENCE Ptr_ Time Identification DESCRIPTION This function enables the user to read the value of the time variable i e read the time The time value is transmitted to the caller by FIP DEVICE MANAGER by calling the user written function fdm_generic time _give_ val
99. ch is going to be opened in microseconds End time in relation to beginning of macrocycle Time 0 of the MPS aperiodic window which is going to be opened in microseconds Internal sync time in relation to beginning of macrocycle Time 0 in microseconds Time of end of external sync time out in relation to beginning of macrocycle Time 0 in microseconds Time of end of external sync time out in relation to beginning of macrocycle Time 0 in microseconds ID Frame_Code ID Frame_Code Page 3 61 Description of user interface primitives REPORT This function places either aNULL_PTR pointer if it has not been able to run correctly In this case the User_Signal_ Warning function has been called at least once ora pointer to an FDM_BA_ REF type structure EXAMPLE const LIST ELEMENT LO OxE001 ID DAT const LIST _ELEMENT L1 O0x9802 ID DAT 0x0010 ID DAT 0x0012 ID DAT 0x0013 ID DAT 0x0014 ID DAT 0x0100 ID DAT 0x0101 ID DAT const LIST ELEMENT L2 0x1301 ID MSG 0x1302 ID MSG 0x1303 ID MSG 0x1304 ID MSG 0x1305 ID MSG 0x1306 ID MSG 0x1307 ID MSG 0x1308 ID MSG 0x1309 ID MSG 0x130a ID MSG 0x130b ID MSG Ox130c ID MSG 0x130d ID MSG 0x130e ID MSG 0x130f ID MSG 0x1300 ID MSG Page 3 62 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives
100. cks_counter wait the next interrupt sm _p sm rtc SM_WAIT 0 take the semaphore Page 1 22 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 4 7 Operating model for the deferred services The execution of some services is deferred by FIP DEVICE MANAGER This chapter describes the general model to be followed for the use of deferred services The main objective of this mechanism is to be able to make as far as possible running of the FIP DEVICE MANAGER code independent of the activation context of a service The user can choose the moment and the context to run the processing code of the services requested independently of the moment and the context of the request For the most time consuming services and those that functionally cannot be run immediately each user request or each indication of the lower level i e FIPCODE is placed in a queue and the execution environment is informed of this event The user requests the emptying of the queue i e processing by FIP DEVICE MANAGER whenever he wishes Each request causes all the corresponding queues and all that they contain to be emptied when this is possible in relation to the queues of the lower level Each FIP DEVICE MANAGER instance has its own set of queues Furthermore this technique can easily be taken into account in any real time environment The following services are affected by this mechanism access t
101. containing the initialisation and operating parameters for the time producer redundancy management procedure Definition of type FDM_GENERIC_ TIME DEFINITION typedef struct enum BOOLEAN With Choice Producer enum BOOLEAN With MPS Var_ Produced enum BOOLEAN With _MPS Var Consumed enum _FDM MSG _ IMAGE Image unsigned long Refreshment unsigned long Promptness const unsigned long Delta_Time_Location void User_Signal_Mode const int Sens unsigned short Ticks_Election unsigned short Channel_Nr FDM_GENERIC_TIME DEFINITION ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 49 Description of user interface primitives With_Choice Producer With_MPS Var_ Produced With_MPS Var Consumed Image Refreshment Promptness User Signal Mode Channel Nr Delta_Time_Location Ticks Election Description of type FDM_REF YES Protocol for electing time producer is active NO Protocol for electing time producer is not active YES the time variable can be produced potential producer NO the time variable cannot be produced YES the time variable can be consumed NO the time variable cannot be consumed 1 Time producer redundancy and time can only be managed if the operating image is Image 1 2 Time producer redundancy and time can only be managed if the operating image is Image 2 3 Time producer redundancy and time can be managed whatever the operati
102. ct requested i e of the object which will be contained in the allocated memory zone PA Address of the pointer which will contain the address of the allocated zone dim Size in bytes of zone requested PF Address of the zone to be freed This mechanism enables the FIP DEVICE MANAGER to always dynamically manage the memory it needs while offering the user the opportunity to completely control behavior FIP DEVICE MANAGER only uses these mechanisms during the configuration phases The files fdm_gdm c and fdm_gdm h provide a set of macros for the operating systems pSOS and VxWorks If you use pSOS or VxWorks and if you want to change these macros or if you use another operating system then you have to change or adapt these macros Page 1 16 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en 4 4 General introduction Processing IRQ and EOC interrupts The FULLFIP component issues 2 interrupts IRQ when one of the following events occurs reception or transmission of an MPS universal type variable reception of one of the SM MPS network management variables following a request to read this variable transmission of a produced MPS variable with associated event A_ Sent reception of a consumed MPS variable with associated event A_ Received transmission of a produced MPS variable of the universal type or at the time out of the request reception of a message reception of acknowledgement of tra
103. ction Creation of messaging context to transmit and receive Creation of messaging context to transmit Creation of messaging context to receive Creation of an aperiodic messaging channel Deletion of an aperiodic messaging channel Modification of type of messaging ACK NOACK being transmitted Freeing the part of the memory containing a message received descriptor Freeing the part of the memory containing a message received Request to transmit a message Time variable write Time variable read ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page l 11 General introduction 4 2 Management of the reports and ERROR WARNING callback functions Whenever there is a fault of whatever kind all the user interface primitives return reports with the following standard format FDM_OK if the function was carried out correctly FDM_NOK ifan error is detected except for functions for creating different objects functions implemented in the form of macros fdm_get_ image fdm_ba_loaded functions not associated with a FIP DEVICE MANAGER instance fdm_get_version fdm_initialization fdm_initialize network fdm_ticks counter activation functions fdm_mps_ fifo empty fdm_smmps_ fifo empty fdm_msg_send fifo empty etfdm_msg rec fifo empty Any errors detected by the FIP DEVICE MANAGER primitives are classified in two families WARNING type errors which do not call the correct operat
104. ction has been called at least once ora pointer to an FDM MESSAGING REF type structure Description of type FDM_ MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the user Page 3 90 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 59 fdm_messaging to_rec_create PROTOTYPE FDM MESSAGING REF fdm_messaging to_rec_ create FDM_REF Ptr_ Network Identification FDM MESSAGING TO REC Messaging To Rec DESCRIPTION This function is for creating a messaging context that can be used in reception mode INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Messaging To Rec Pointer to a data structure of the FDM_ MESSAGING TO REC type Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM_ MESSAGING TO REC typedef struct enum _FMD MSG IMAGE Position struct void User Msg Rec Proc FDM MESSAGING REF FDM MSG RECEIVED void User Qid void User Ctxt integer Number Of Msg Desc integer Number Of Msg Block receiving unsigned long Local DLL Address unsigned long Remote DLL Address FDM_MESSAGING TO REC Position _FDM MSG IMAGE 1 The messaging context created can only be used if the AE LEs are operating in Image 1 _FDM_MSG IMAGE 2 The messaging context created can only be used if the AE LEs are operating in Imag
105. d Universal variable write Local variable read with time AE_LE SM MPS All network management variables fdm_read_present_list fdm_read_presence fdm_read_report fdm_read_identification List of equipment present variables read Presence variable read Report variable read Identification variable read BUS ARBITRATOR MACROCYCLE bus arbitrating function and bus arbitrator program fdm_ba_load_macrocycle fipconfb Loading ofa macrocycle built with BA BUILDER fdm_ba_load_macrocycle manual fdm_ba_delete macrocycle fdm_ba_commute_macrocycle fdm_ba_loaded fdm_ba_start fdm_ba_stop fdm_ba_ status fdm_ba_set_parameters fdm_ba_ set priority fdm_ba_external_resync Page 1 10 Loading of a macrocycle built manually Deleting of a macrocycle Changing of a macrocycle Identification variable read Start up of BA function Stopping of BA function BA function status read Initialize BA timer Initialize BA priority External sync request FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en MESSAGING CONTEXT fdm_messaging fullduplex create fdm_ messaging to send create fdm_messaging to _rec_create fdm_channel create fdm_channel delete fdm_change messaging _ acknowledge_type fdm_ msg ref buffer free fdm_msg data_buffer free fdm_msg send message TIME fdm_generic_ time_write_loc fdm_generic time _read_loc General introdu
106. e The logic OR designed to initialize the Type field is to be carried out with the flags corresponding to the options which are to be implemented Obviously the Type field must be initialized at 0 beforehand Mode of transmission on the network Its value must be taken from the following list FIP UTE physical layer WorldFIP IEC 1158 physical layer WORLD_FIP_31 WorldFIP type network using a FULLFIP2 component at the speed of 31 25 kbit s with a 40 MHz clock WORLD_FIP_1000 WorldFIP type network using a FULLFIP2 component at the speed of 1 Mbit s with a 64 MHz clock WORLD _FIP_2500 WorldFIP type network using a FULLFIP2 component at the speed of 5 Mbit s with a 80 MHz clock WORLD_FIP_5000 WorldFIP type network using a FULLFIP2 component at the speed of 2 5 Mbit s with a 80 MHz clock FIP_31 FIP type network using a FULLFIP2 component at the speed of 31 25 kbit s with a 40 MHz clock FAST_FIP_1000 fast FIP type network using a FULLFIP2 component at the speed of 1 Mbit s with a 64 MHz clock FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en oJ LL FIP_2500 FIP_5000 Slow_FIP_1000 FDM_ OTHER Description of user interface primitives FIP type network using a FULLFIP2 component at the speed of 2 5 Mbit s with a 80 MHz clock FIP type network using a FULLFIP2 component at the speed of 5 Mbit s with a 80 MHz clock slow FIP type n
107. e fdm_ae_le_ stop fdm_ae_le delete fdm_mps_var_change_id fdm_mps_var_read_loc fdm_mps_var_write_loc fdm_mps_var_write_ universal fdm_mps_var_read_universal fdm_read_ident HEE EE fdm_read_presence fdm_read_report 0x503 _GEN_AE LE ILLEGAL RANK Rank greater than size of AE LE 0x504 _GEN_AE LE ILLEGAL POSITION fdm_mps_var_create W Variable declared in image 2 if single image configuration 0x505 _GEN_AE LE ILLEGAL MODIFICATION fdm_mps_var_change_ MSGa fdm_mps_var_change_RQa fdm_mps_var_change_ priority fdm_mps_var_change_id fdm_mps_var_change_periods fdm_mps_var_change_ prod_cons 0x50A _GEN_AE LE ILLEGAL CONFIGURATION fdm mps_var_create fdm_generic_time_initialize 0x601 _GEN_BA_CHECKSUM_ERROR oad_macrocycle fipconfb AE LE is not in a state where modification requested can be made Problem creating variable with dynamic refresh Checksum incorrect oad_macrocycle_manua 0x602 _GEN_BA_LIST_ERROR oad_macrocyc oad_macrocyc 0x603 _GEN_BA_ END BA NOT _FOUND oad_macrocyc oad_macrocyc 0x604 _GEN_BA_NOT_ EXISTED INSTRUCTION oad_macrocyc oad_macrocyc 0x605 _GEN_BA_NOT_VALID_ TIME oad_macrocyc oad_macrocyc 0x606 _GEN_BA NOT _ID_IN LIST oad_macrocyc oad_macrocyc _GEN_BA_DEF_DICHO oad_macrocyc Problem with memory allocation Content of a list is incorrect Error in BA program no END_BA Error in BA program use of non existent operating code Error in BA program time parameter incorrect Error in BA
108. e 2 _FDM_MSG IMAGE 1 2 The messaging context created can be used whether the AE LEs are operating in Image 1 or Image 2 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 91 Description of user interface primitives User Msg Rec Proc Pointer to the user function that will be called by FIP DEVICE MANAGER to send the user a message received in this context User Qid Pointer retransmitted to the user for his private use User Ctxt Pointer retransmitted to the user for his private use Number _Of Msg Desc Number of message descriptors received of the FDM_ MSG RECEIVED type see fdm_messaging_fullduplex_create which can be used to receive messages with the same destination address as that specified below Number _Of Msg Block Number of message blocks received of the FDM MSG _R_DESC type see fdm_messaging_fullduplex_create which can be used to receive messages with the same destination address as that specified below Local DLL Address destination address of the message received 30 0 Least Segment of the LSAP of the LSAP If you write an application that plays the role of a bridge at least 2 networks see Chapter 2 Subsection 1 6 4 then you have to set e bit30 1 e Segment byte segment number of the destination address e the 2 bytes describing the LSAP any value Remote DLL Address source address of the message received 31 0 Most Least significant byte signifi
109. e fdm_stop_ network Only if operating in conventional access In the case of free access the function is implemented with a hardware device Page 3 72 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 49 fdm_ba_loaded PROTOTYPE int fdm_ba_loaded FDM BA REF Ptr BA 5 DESCRIPTION This function makes it possible to find out if a Bus Arbitrator program is loaded INPUT PARAMETERS Ptr BA Pointer to a data structure of the FDM_BA REF type Description of type FDM BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces one of the following reports BA_LOADED BA program loaded BA_NOT_LOADED No BA program loaded ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 73 Description of user interface primitives 1 50 fdm_read_present_list SUMMARY Read function of the list of equipment present PROTOTYPE unsigned short fdm_read_present_list FDM_REF Ptr_ Network Identification DESCRIPTION This function is for the SM_MPS list of equipment present variable read request When FIP DEVICE MANAGER will receive the variable it will call the User Present List _Prog function This function is a _ user written function given in the configuration parameter FDM_CONFIGURATION SOFT inthe fdm_Initialize Network function INPUT PARAMETERS Ptr Network
110. e set to 0 the variable is set as a remote variable The operational model is the following 1 The user application request is stored in a queue the requests can be the following e fdm_mps_var_write_universal e fdm_mps_var_read_universal The FIP DEVICE MANAGER activation manager is warned of the fact that one of the queues is not empty by calling a procedure reserved for this purpose which the user must write The address of this procedure is transmitted to FDM by the function fdm_initialize_network field User Signal Mps Aper of FDM_CONFIGURATION_SOFT structure The User Signal _Mps_Aper function must activate a task that implements the action below The task activated by the User_Signal_Mps_Aper function has to call the fdm_mps_fifo_empty function This call activates FIP DEVICE MANAGER to empty the queue and process the request FIP DEVICE MANAGER uses the FIPCODE services to carry out the request When the MPS variable is sent or received then the FULLFIP component issues an IRQ interrupt the IRQ handler has to process the event see Subsection 4 4 Following processing FDM stores the event signaling the production of the MPS variable or the received MPS variable in a queue and calls the User_Signal_Mps_Aper callback function The User_Signal_Mps_Aper callback function must activate a task that implements the action below The task activated by the User_Signal_Smmps function has to call the fdm_mps_fifo_empty functi
111. e your actual value is field User_Signal_Areceived of FDM_XAE structure in case of reception by FDM of an indication on the reception of a consumed variable you can for example in the body of the User_Signal_Areceived procedure call the function fdm_mps_var read_loc is field User_Signal_Synchro of FDM_XAE structure in case of reception by FDM of an indication on the reception of a synchronisation variable and if the EOC interrupt has been configured in level mode 3 FIP DEVICE MANAGER calls the User Interrupt Handler in case of reception of a synchronisation variable and if the EOC interrupt has been configured in the pulse mode ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 35 General introduction 4 9 Create an FDM application To create an FDM application you have to Build FIP DEVICE MANAGER library 1 Adapt the user _opt file choosing the right options to your environment operating system processor compiler type see Chapter 6 3 2 Adapt if necessary some system dependent objects semaphores mutex etc that FDM uses by modifying the files fdm_os c and fdm_os h 3 Adapt if necessary the memory management to your environment The files fdm_gdm c and fdm_gdm h provide a set of macros for operating systems pSOS VxWorks etc 4 Build the fipman lib library you can choose another name if you want Write your application 1 Connect the interrupt vectors to your interrupt hand
112. ed Description of type FDM_ MESSAGING REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop network Page 3 94 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 61 fdm_channel_create SUMMARY Creation of a periodic messaging channel PROTOTYPE unsigned short fdm_channel create FDM_REF Ptr_ Network Identification FDM_ CHANNEL PARAM Ptr_ Channel DESCRIPTION This function is for creating a periodic messaging channel Eight periodic messaging channels numbered from 1 to 8 can be selected When the station receives an ID_MSG frame with an identifier corresponding to a produced variable intended to support a periodic channel it takes the message to be transmitted from the queue associated with this channel INPUT PARAMETERS Ptr Network Identification Pointer toa data structure of the FDM_REF type Ptr Channel Pointer to a data structure of the FDM_CHANNEL PARAM type specified above and containing the transmission channel configuration parameters to be created Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM_CHANNEL PARAM typedef struct enum _FDM MSG IMAGE Position unsigned short Channel Nr unsigned short Identifier FDM_CHANNEL PARAM Position FDM_MSG IMAGE 1 or FDM_ MSG I
113. ed with the previous one User Signal Var_Cons User procedure which will be called on reception from the network following a universal type read of this variable if consumed variable on expiry of the time out associated with the previous one User Get Value User procedure which will be called by the write primitive of a variable with dynamic refresh fdm_mps_var_ time write loc if Type With Time Var 0 This parameter must then be set to NULL_ PTR to request the user to supply the address of the byte table containing the value to be transmitted Definition of type FDM_ MPS VAR DATA typedef struct FDM XAE REF unsigned char Pdu_Type unsigned char Pdu_Length unsigned char Fbouffer 126 FDM_MPS VAR_DATA Pdu_Type Type of PDU 40H for MPS variables 50H for SM_MPS Pdu_Length Length of PDU Equivalent to size of the variable if no refresh status configured size of the variable if refresh status FBuffer 126 Value of the variable in the form of a byte string Definition of type FDM_ MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces either a NULL PTR pointer if it has not been able to run User Signal Warning function has been called at least once ora pointer to an FDM MPS VAR_REF type structure correctly in which case the ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 35 Description of
114. error code which is clearly identified in the user manual and detail as many different errors as possible Whenever possible and significant all functions on the user interface produce reports whose formats are identical Deletion of direct dynamic memory allocation use of a relay which gives the user complete control of memory allocation Modification of FULLFIP2 system access protection management Possibility for user of setting number of IT_HTR_FIP calls to calculate time outs instead of systematically using 100 Deletion of possibility of configuring packing identifier value to be used identifier 0x9080 is used systematically for all networks cf WorldFIP standard Deletion of obligation to periodically call the TEST _MEDIUM primitive this will be done by the equivalent of IT _HTR_FIP which must still be called periodically the frequency of which will be determined by the user at the time of configuration Addition of a new type of AE LE the produced consumed attribute of the variables they contain can be modified during operation FIFO type interface for aperiodic management The value of a universal consumed variable is supplied directly as a parameter of the user function called when it is received deletion of primitive GET_DATA Possibility of creating BA program macrocycles in two formats a FIPCONFB BA_BUILDER compatible format also compatible with previous versions of FIP DEVICE MANAGER or a more use
115. ese values in the calculation of the time outs see Chapter 2 Subsection 1 4 3 e STANDARD corresponds to the calculation of the time outs in compliance with the WorldFIP standard e OPTIMIZE 3 this option can be used only in the case of a single medium network typology Max Subscriber Max value of physical addresses used by subscribers present on the network to optimise the calculation of BA time outs 0 255 Max Priority Max value of the priority of BAs present on the network used to optimise the calculation of BA time outs 0 15 Description of type FDM BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network Page 3 66 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 44 fdm_ba_start0 SUMMARY Function for starting up a potential Bus Arbitrator PROTOTYPE unsigned short fdm_ba_start FDM BA REF Ptr_ Ba DESCRIPTION This function enables a potential Bus Arbitrator to be started up for which a program has already been loaded If necessary it will become the active Bus Arbitrator but only after the Bus Arbitrator election procedure has acted INPUT PARAMETERS Ptr Ba Pointer to a data structure of the FDM_ BA REF type Description of type FDM_BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This f
116. etwork using a FULLFIP2 component at the speed of 1 Mbit s with a 64 MHz clock To set other values than the default ones for the turnaround and silence time In this case you have to set the fields of the User_Responsability structure The default values of the parameters that characterise the transmission on the network are given in the table below l RP a L I i i TL tt i Tl i i lq T2 p a T2 gt Mnemonic Speed Type of frame Minimum Maximum Silence Time delimiters and Turnaround Time Turnaround Time CRC T1 T2 FIP _ 31 31 25 kbits s UTE 424us 440us 4096 us SLOW_FIP_ 1000 1 Mbit s UTE 41 us 115 us 290 us FAST_FIP_ 1000 1 Mbit s UTE 10 us 33 us 150 us FIP_ 2500 2 5 Mbit s UTE 13 5 us 40 us 96 us FIP_5000 5 Mbit s UTE 31 75 us 40 us 92 us WORLD FIP 31 31 25 kbits s IEC 424 us 440 us 4096 us WORLD FIP 1000 1 Mbit s IEC 10 us 33 us 150 us WORLD FIP 2500 2 5 Mbits s IEC 13 5 us 40 us 96 us WORLD _FIP_5000 5 Mbits s IEC 31 75 us 40 us 92 us Table 3 1 Default values for the network transmission Ifthe time variable ID 9802 is used then this time is 72 us Tslot ALS 50278 e en Value of the unit of time used as a basis for all time calculations Its value in microseconds must be selected from the following list 100 400 1000 4000 62 250 625 2500 50 200 500 2000 FIP DEVICE MANAGER Software Version 4 User Reference Manual i
117. f FULLFIP2 40 MHz 234 us if FULLFIP2 64 MHz 188 us if FULLFIP2 80 MHz 1 3 5 Managing time variable producer redundancy Several potential time variable producers can exist on one network segment However at any given moment only one should be the active producer on the network The various subscriber statuses with regard to the time production mechanism are potential time producer active time producer a selected potential producer active non producing consumer active Bus Arbitrator it elects the active producer not involved in time management neither producer nor consumer The principle implemented to manage time producer redundancy is as follows a potentially time producing subscriber consumes the MPS time variable ID 9802 if required periodically transmits its STATUS via the SUBMMS messaging service nformation_Report to the group of potential Bus Arbitrators e consumes a COMMAND transmitted by the active Bus Arbitrator via the SUBMMS messaging service Information_Report becomes an active producer if the contents of the COMMAND so require an active time producing subscriber e produces the MPS time variable ID 9802 e periodically transmits its STATUS via the SUBMMS messaging service nformation_Report to the group of potential Bus Arbitrators ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 13 Available Functions consumes a
118. f Mode WORLD FIP 31 or FIP 31 if Mode FAST_ FIP _1000 or SLOW_ FIP _1000 or WORLDFIP_ 1000 if Mode WORLD FIP_2500 WORLD _FIP_5000 FIP_2500 or FIP_5000 Page 3 9 Description of user interface primitives NB OF USER MPS VARIABLE BA Dim FULLFIP RAM Dim NB_OF DIFFERENT ID PROG BA Nr_ Of Repeat Nr Of Tx Buffer User Present List Prog User Synchro BA Prog User Presence Prog User _Identification_Prog User _Report_Prog Maximum number of MPS variables that will be created for the FDM instance being defined For a station intended to be a Bus Arbitrator this is the maximum size in number of 16 bit words reserved for the arbitrating tables The value must be a multiple of 400H in the range 0 FFFFH Size of the private RAM of the FULLFIP2 component in 16 bit words The value must be between 6000H 100000H Maximum number of different identifiers used in a BA macrocycle Maximum number of repetitions authorised in acknowledged messaging after the initial attempt at the data link layer The value must be between 0 and 3 0 corresponds to only one attempt no repetition and 3 corresponds to 4 attempts i e a maximum of 3 repetitions Number of buffers reserved for message transmission The FIPCODE software makes it possible to consider a maximum of 32 messages for each of the 9 channels Pointer to a user function which will be called by the FIP DEVICE MANAGER after the u
119. f the BA program and set a fixed macrocycle duration BA_WAITING SYNC Status in which the Bus Arbitrator transmits packing frames until the specified time has elapsed or requests user restart up external resynchronisation BA_PENDING Status in which the Bus Arbitrator transmits packing frames until the user asks to take over or the monitoring time elapses BA_APER_WINDOW In this status the Bus Arbitrator processes the urgent and non urgent aperiodic requests stored in its queues It leaves this status when the queues are empty or when the time allocated to the window has elapsed Page 2 16 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions BA_MSG_WINDOW In this status the Bus Arbitrator processes the aperiodic messaging requests stored in its queues It leaves this status when the queue is empty or when the time allocated to the window has elapsed 1 4 2 2 Bus Arbitrator associated functions The functions required to manage the Bus Arbitrator operating modes as defined above are as follows Start up The sequence of actions is as follows launch of a time out known as Start up Time out the value of which is greater than the longest Election Time out possible for the network concerned e if an activity is detected during this period the Bus Arbitrator starts up passing directly to the IDLE status where it activates its election time out e if no activity is detected durin
120. fdm_messaging_to_send_create function and the FDM_MESSAGING_TO_SEND structure a half duplex context used only for the reception of messages see Chapter 3 fdm_messaging_to_rec_create function and the FDM_MESSAGING_TO_REC structure a full duplex context used for the transmission and the reception of messages see Chapter 3 fdm_messaging_fullduplex_create function and the FPDM_MESSAGING_FULLDUPLEX structure ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 31 Available Functions For the bridge functionality you can create a half duplex context used only for message transmission of see Chapter 3 fdm_messaging_to_send_create function and the FPDM_MESSAGING_TO_SEND structure a half duplex context used only for message reception see Chapter 3 fdm_messaging to_rec_create function and the FPDM_MESSAGING_TO_REC structure It is forbidden to create a full duplex context for the bridge functionality The figure shows you an example of how to configure the local and remote addresses of subscribers and of a bridge In the example subscriber 57 of the segment 3 dialogues with subscriber 1 of segment 4 Page 2 32 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Chapter Description of user interface primitives 3 1 PROVIDED PRIMITIVES TO BE CALLED BY THE USER The following conventions have been adopted to describe the primitives the constan
121. fdm_mps_var_write_universal If running on IMAGE 2 fdm_mps_var_read_universal Previous remote access to same variable is still in _REQUEST_RAN_ ALWAYS fdm_mps_var_write_ universal progress fdm_mps_var_read_universal WwW W W _NOT_TIME_ VARIABLE fdm_mps_var_time_read_loc Accessed variable is not a time variable fdm_mps_var_time_write_loc WwW W W _INDICATION_VARIABLE_IN_USE fdm mps_var_write_universal fdm_mps_var_read_universal _BA_STOPPED ON TIME OUT fdm_licks_conter _CHANNEL_ALREADY_EXIST _INVALID_NO_ CHANNEL hannel_ create hannel nr modif Universal access prohibited on variables with Asent ou Areceive Impossible to send potential BA Creation of an existing channel Number of channel specified is lt 1 or gt 8 hannel delete Number of channel specified does not exist _CHANNEL_NOT_CONFIGURED fdm_send_message fdm_channel delete NOT_TX BUFFER ON CHANNEL _NOT_CREATED_CHANNEL_ON_THIS_VARIA fdm_channel_create BLE vere Oe _EXCEEDED_ SEGMENT NUMBER fdm_messaging fullduplex_create fdm_messaging_ to_send_ create No buffer associated with this channel Creation of channel impossible on this ID User procedure indicating message transmission or reception has not been defined Creation of messaging context impossible as concerns segment number possibilities in standard Memory pool for message reception empty Image field missing fdm_messaging to_rec_create _MISSING_MEMORY_D
122. fo_empty function should be different from the execution context of the User_Signal_Smmps function Example of implementation of the call of fdm_smmps_fifo_empty function for example in the case of pSOS FDM_REF Network Identification this handle is returned by the function fdm_initialize_network static unsigned long sm_smmps semaphore create a task and a semaphore t_create TSMP 100 4096 0 T LOCAL T NOFPU amp TaskSMMPS sm_create SSMP 0 SM LOCAL SM_PRIOR amp sm_smmps User_Signal_Smmps callback function static void User_Signal_Smmps struct FDM_REF Ref sm_v sm_smmps free the semaphore gt wake up of the task TaskSMMPS task that call fdm_smmps_ fifo empty function ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 25 General introduction static void TaskSMMPS void for wait for the next event sm_p sm_smmps SM_WAIT 0 take the semaphore fdm_smmps_fifo_empty Network_Identification Page 1 26 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 4 7 2 Operational model for accessing the universal type MPS variables CD Accessing universal type MPS variables operational model Before using this model you have to create a universal type MPS variable by the fdm_mps_var_create function the Type Scope field of the structure FDM_XAE should b
123. fter two TEST_P instructions have been executed This also makes it possible to find out the status of each subscriber channel and detect any latent faults by forcing reception on each channel of all the connected subscribers The list of equipment present is updated as a function of the replies but the list of equipment present variable is only updated after all subscribers whose presence is being tested have been scanned ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 27 Available Functions The active Bus Arbitrator also produces the list of equipment present variables each time the TEST _P instruction is executed The detailed operation of TEST_P instruction processing is as follows Decoding by the FULLFIP2 system microcode of Bus Arbitrator function of a special BA instruction used to tell FIP DEVICE MANAGER via a special event associated with an IT of the IRQ type that it has to carry out the test of equipment present The user BA program is no longer executed packing frames are transmitted by the system to prevent the election of another BA The interrupt which signals the equipment present test to be carried out event is processed by the fdm_process_its_fip procedure as follows e memorising of return address in interrupted BA program e creation and loading of BA program containing instructions for equipment present test positioning of channel to be used if double medium
124. function makes it possible to know which image all the AE LEs of the same FIP DEVICE MANAGER instance are operating on INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report indicating which image is active stating IMAGE 1 if the function has been executed correctly and AE Ls are operating on Image 1 IMAGE 2 if the function has been executed correctly and AE Ls are operating on Image 2 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 25 Description of user interface primitives 1 13 fdm_change_test_medium_ticks PROTOTYPE fdm_change_test_medium_ticks FDM_REF Ptr_ Network Identification unsigned long New_Value DESCRIPTION This function is for modifying the value of the frequency with which the FIP DEVICE MANAGER calls the medium testing function INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type New_Value New value of the frequency for calling the medium testing function Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT None Page 3 26 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 14 fdm_ae le create SUMMARY Function for creatin
125. g an AE LE PROTOTYPE FDM AE LE REF fdm_ae_le create FDM_ REF Ptr Network Identification int Nb_Vcom enum FDM ALLOWED Type DESCRIPTION This function enables an AE LE to be created On creation this AE LE does not contain any variables INPUT PARAMETERS Nb_Vcomr Max number of MPS variables that the AE LE could contain Ptr Network Identification Pointer to a data structure of the FDM_REF type Type CHANGE ALLOWED The P C attribute of the variables contained in this AE LE may be modified CHANGE NOT ALLOWED The P C attribute of the variables contained in this AE LE may not be modified Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces either a NULL PTR pointer if it has not been able to run correctly in which case the User Signal Warning function has been called at least once or a pointer to an FDM AE LE REF type structure inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 27 Description of user interface primitives 1 15 fdm_ae le deleteQ SUMMARY Function for deleting an AE LE PROTOTYPE unsigned short fdm_ae_le delete FDM AE LE REF Ptr AE LE DESCRIPTION This function enables an AE LE to be deleted The AE LE to be deleted must be in CONFIGURATION mode It must not be in OPERATION mode INPUT PARAMETERS Pt
126. g the start up period three packing frames are transmitted If a fault is detected during transmission the Bus Arbitrator returns to the STOPPED status otherwise it passes to the IDLE status where it activates its election time out e when the election period has elapsed and the Bus Arbitrator has not detected any activity on the network it becomes active by executing the required BA program Stop The stop command causes a return to the STOPPED status It is taken into account from any other status External resynchronisation of a macrocycle this command is used to position the user sync pulse that makes the Bus Arbitrator resume execution of the macrocycle Macrocycle switching This function is used to select another macrocycle in order to change the nature of the flow on the network without losing control The change of macrocycle is only effective at the end of the current macrocycle execution 1 4 3 Setting the parameters of the Bus Arbitrator Start up function The sequence of operation for starting up a Bus Arbitrator is described in Subsection 1 4 2 2 of this chapter The start up of a Bus Arbitrator function uses the following two time outs Start up Time out and Election Time out The parameters that are used to calculate these two time outs are set by user with the following functions fdm_initialize network fdm_ba_set_parameters fdm_ba_set_priority ALS 50278 e en FIP DEVICE MANAGER Software Ve
127. ge Description du type FOM SYNCHRO BA VAR typedef struct FDM_SYNCHRO_BA VAR Report VAR_TRANSFERT NO_VAR_TRANSFERT Hi MC Nr Subscriber unsigned char Report unsigned char Hi_MC_Nr unsigned char Subscriber Execution report of the Synchro _BA variable read request The Synchro BA variable has been received therefore the following parameters are significant The Synchro BA variable has not been received therefore the following parameters are not significant High order byte of the BA macrocycle number that is running Physical address of the active Bus Arbitrator that produced the Synchro BA variable ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 15 Description of user interface primitives REPORT The fdm_initialize network primitive returns a pointer to a FDM_REF type structure If initialisation could not take place correctly the NULL_ PTR pointer is returned Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user Page 3 16 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 5 fdm_stop_network SUMMARY Function for stopping deleting a FIP DEVICE MANAGER utilisation context i e stopping the network corresponding to this instance PROTOTYPE void fdm_stop network FDM_REF Ptr_ Network Identification DESCRIPTION This primitive makes
128. ge 1 38 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Chapter Available Functions Z 1 DESCRIPTION OF FUNCTIONS 1 1 Self tests 1 1 1 Aims This function is used to run the In Circuit test of FULLFIP2 and its associated components The test is run in two stages one OFF LINE stage when the equipment is being powered up one ON LINE stage FULLFIP2 configured and connected to the network The limits are those set by the testing possibilities of the FULLFIP2 system possibility of accessing the core of the components There are no line tool tests The following are required adequate coverage has to be established faulty elements have to be detected accurately performance levels have to be reached which do not penalise the user application aspecial microcode must be available for certain tests included in FIPCODE V6 Due to critical sections in the ON LINE test stage the tests are divided into basic blocks whose run time does not affect the user application This breakdown requires that the sequencing of the various tasks be closely monitored ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 1 Available Functions 1 1 2 Offline test functions Offline test functions comprise all the test functions which are called before FULLFIP2 is connected to the network They are included in the test stage when a FIP DEVICE MANAGER instan
129. grity test The aim of the test is to check integrity of the microcode after it has been loaded into the private FULLFIP2 memory Calculating the check sum of each page of microcode and comparing it with the check sum supplied for reference does this check of interrupt lines IRQn and EOC of FULLFIP2 checks that there is no discrepancy between the value of signals IRQn and EOC transmitted by FULLFIP2 and the value seen by the user processor Page 2 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 1 3 Online test functions Online test functions comprise all the test functions which are called after FULLFIP2 has been connected to the network There are four types of functions ON LINE integrity test of FIPCODE calculates check sum of each page of microcode to be tested and compares it with the original A thorough check is carried out page by page partial test of private FULLFIP2 RAM adds a descriptor of a variable and of the corresponding value zone to the FULLFIP2 FIPCODE database The test is carried out in this zone by simulating a variable write using the descriptor The page in question is thus circulated This makes it possible to test the entire private RAM containing the pages used to store variable values or message contents These functions are processed in a primitive which runs through the test blocks one after the other so that the user application is not penalised
130. he list of equipment present variables e management of the presence variable e management of the identification variable e management of the report variable e management of the BA sync variable Managing gt WORLDFIP DATA LINK LAYER messages This functionality enables the data connection layer services to be performed These services provide the user with access to messages at DLL WorldFIP level The functionality consists of the following basic functions configure messaging transmit a message e receive a message Managing the time This functionality consists of the following basic functions e managing election of time variable producer time variable read e time variable write ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 5 General introduction 4 OVERVIEW OF THE INTERFACE WITH THE USER APPLICATION The environment of an application that uses FIP DEVICE MANAGER Release 4 is the following Error Warning CallBack Functions Error CallBack WarningCallBack Function Function vent CallBack Functions Fip Device Manager Release 4 Interrupt Handlers IRQ IRQ amp EOC Handler Handler Handler Deferred Services i RTC Handler H EOC Handler EOC Interrupt if IRQ and EOC are wired to form an OR gate then EOC should be configured in level mode EOC can be configured either in level mode or in pulse mode
131. iation of AE LE objects this class is derived from the Fip_Device_Manager class MPS Var_Prod this class is used for the instantiation of Producer MPS Variables objects this class is derived from the AE_LE class MPS _Var_Cons this class is used for the instantiation of Consumer MPS Variables objects this class is derived from the AE_LE class MPS _Var_Syne this class is used for the instantiation of Synchronisation MPS Variables objects this class is derived from the AE_LE class MPS _Var_Cons_and_Prod this class is used for the instantiation of Producer Consumer MPS Variables objects this class is derived from the class AE_LE MPS Areceive this class is used for the instantiation of periodic MPS Variables with indication objects this class is derived from the AE_LE class ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page B 1 Use with C The fdm h file contains the class definition and implementation for each of the above classes The body of the member functions contains calls to the C functions described in Chapter 3 Demos CC116 sub directory contains an C example Page B 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en AE LE BA DLL FDM FIPCODE FULLFIP2 FIELDUAL kbits s Mbits s MHz MPS SM_MPS ALS 50278 e en Glossary Application Entity Link Entity Bus Arbitrator WorldFIP Bus Arbitrator Data Link Layer FIP
132. icity of the timer interrupt a tick The real time clock interrupt handler has to activate a task Inside the body of this task you have to call the FDM function fdm_ticks_counter The function fdm_ticks_counter manages all the time out aspects of the FIP DEVICE MANAGER The following parameters of the structure FDM_ CONFIGURATION SOFT of the function fdm_initialize_network set the values of the FDM time management aspects e Test Medium_Ticks periodicity in ticks of the call of the internal functionality of medium redundancy management e Time _Out_Ticks number of ticks to trigger a time out it is common to all primitives requiring a time out except messaging e Time _Out_Msg Ticks number of ticks to trigger a time out for messaging e OnLine_Tests_Ticks periodicity in ticks of the call of the internal self test functionality Example of implementation for example in the case of pSOS static unsigned long sm _rtc semaphore create a task and a semaphore t_create TRTC 100 4096 0 T LOCAL T NOFPU amp TaskRTC sm_create SRTC 0 SM_LOCAL SM_PRIOR amp sm rtc RTC interrupt handler static void RTC_handler void sm_v sm_rtc free the semaphore gt wake up of the task TaskRTC task that treats the real time clock interrupt ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 21 General introduction static void TaskRTC void for fdm ti
133. ified in Chapter 1 Subsection 4 2 of this document Page 3 56 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 38 fdm_mps_fifo_empty SUMMARY The user calls this function to activate FIP DEVICE MANAGER for processing the events regarding universal read or write requests for MPS variables PROTOTYPE fdm_mps fifo empty FDM_REF Ptr Network Identification DESCRIPTION This function enables the user to find out the events received regarding universal read or write requests for MPS variables by emptying the corresponding file Activation of this procedure by the user leads to activation by the FIP DEVICE MANAGER of the User_Signal_Var_xxx user procedure xxx cons or prod depending on the case provided it is done on configuration of the variable This function must be called after that the user written function User_Signal_Mps_Aper is called by FIP DEVICE MANAGER INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT None ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 57 Description of user interface primitives 1 39 fdm_ba_load_macrocycle_fipconfbQ PROTOTYPE FDM BA REF fdm_ba_load_macrocycle fipconfb FDM_ REF Ptr Network Identification const unsigned short Prog
134. interrupt to process NO_EOC_IRQ TO PROCESS if there are no more left to process EOC must be configured by level ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 21 Description of user interface primitives 1 9 fdm_process_it_eoc SUMMARY Function for processing EOC interrupt only PROTOTYPE unsigned short fdm_process it _eoc FDM_REF Ptr Network Identification DESCRIPTION This function is for processing EOC interrupts In this case it must be called each time an EOC interrupt occurs if it is configured by level INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report of the following type EOC_TO_ PROCESS if there is still at least one interrupt to process NO_EOC_TO_PROCESS if there are no more interrupts to process Page 3 22 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 10 fdm_process_it_irqQ SUMMARY Function for processing IRQ interrupts only PROTOTYPE unsigned short fdm_process it_irgq FDM REF Ptr Network Identification DESCRIPTION This function is for processing IRQ interrupts In this case it must be called each time an IRQ interrupt occurs INPUT PARAMETERS Ptr Network Identification Pointer to a data
135. ion for testing the mediums using the FIP DEVICE MANAGER cf CONFIGURATION _SOFT Test_ Medium_Ticks Description of type FDM_ IDENTIFICATION typedef struct char char char char char char char char FDM_IDENTIFICATION where Vendor Name Model_ Name Revision Tag_ Name SM MPS Conform SMS_ Conform PMDP_Conform Vendor Field Page 3 14 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Vendor Name Model Name Revision Tag Name SM_MPS Conform SMS_ Conform PMDP_Conform Vendor Field Description of user interface primitives Pointer to a string of characters which contains the name of the equipment supplier This string must end with the character 0 The length of this string is limited by the size of the identification variable and must be within the 2 119 range Pointer to a character string which contains the name of the equipment at the supplier s premises This string must end with the character 0 The length of this string is limited by the size of the identification variable and must be within the 2 119 range Pointer to a character string which contains the revision reference of the supplier s equipment The value of this reference must be between 0 255 Pointer to a character string which contains the Tag Name of the equipment in the context of the user application This string must end with the character 0
136. ion of the FIP DEVICE MANAGER and the WorldFIP connection into question and FATAL ERROR type errors which do When the FIP DEVICE MANAGER detects a FATAL ERROR the User _Signal_Fatal_Error callback function is called The user provides this function to FDM when he calls the fdm_initialize_network function field of FDM_ CONFIGURATION HARD structure see Chapter 3 In this procedure the user must take care to restore all the memory allocated by deleting all the objects created one by one This procedure must end with the fdm_stop_ network function being called which itself calls the user function User_Reset_Composent to reset FULLFIP2 The circuit is thus reset nothing more is transmitted or received from the network and start up can only occur after reconfiguration using fdm_initialize network To do so you must remember to restore if necessary any reserved memory for example in the User Signal Fatal_Error primitive When the FIP DEVICE MANAGER detects a WARNING error the user callback function User Signal Warning is called The user provides this function to FDM when he calls the fdm_initialize_network function field of FDM_CONFIGURATION_HARD structure see Chapter 3 After this function is called FIP DEVICE MANAGER continues in sequence Following the detection of an error WARNING and after the corresponding user function has been called the function concerned immediately sends the Oxffff report to the caller
137. ipment present variable oo eee eseseceseeecneesecseesetecsaesecnevsecaeesesecsaeesnevaeeaeaees 2 27 1 5 3 1 ZN130 or FIELDUAL in compatible mode 00 e E E a i ERA E E RRR 2 27 1 5 3 2 FIELDUAL in new mode 1 6 Managing WorldFIP data link layer messages cccccsceesseesseesceesceeeceeceseceaecaecseecaeeeseeeeeeeeeeneeees 2 29 1 6 1 TintrOd Clini n eare ene e be lv aA EEKE NE A cee Guaeet vena tecdbeeu sicitesede ORA 2 29 1 6 2 Transmission configuration 2ssiacinndcdse aa anaa dation dhed heen lias dis dented hevaeies 2 30 1 6 3 Reception configuration ai sesser pE REEE AEN EAEE NETER hio EENES 2 30 1 6 4 User application that plays the role of a bridge ssnsessesessessesssesssssesresssstsersessesstsersesstsernesseseesessesesees 2 31 CHAPTER 3 DESCRIPTION OF USER INTERFACE PRIMITIVES 1 PROVIDED PRIMITIVES TO BE CALLED BY THE USER seessesssesesesesesesrsesesssststststststststseststses 3 1 1 1 fd imalize a se sccs 8 Les eae kG is eo ELA ed OS tae ES RO es We a 3 1 1 2 fd BEtLAVErSION sis cccscvs 2 leleFesoresa dele a ais kb Rage eata shares ees eee 3 2 L3 Adin ticks counti ea cde acces Hie cok n asd the tod Moule e te Hag Sod Mh eer iy 3 3 LA Stdimreinitialize network seis cca eee RE dee a ee 3 4 1 5 fdini stop metwork sc ciate kek wiih eeeeisiess Aho aches Rees se eR ans 3 17 1 6 fdm online testare an a scien ceded see eens ances en EE E EE 3 18 1 7 fdm valid mediumi 2 ccscs cece
138. it possible to end the use of a FIP DEVICE MANAGER context created by the fdm_initialize network function by restoring all the allocated data memory Each object which is dependent on the context to be deleted must be deleted first AE LE variables messaging etc INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 17 Description of user interface primitives 1 6 fdm_online_test SUMMARY Function for running self diagnosis functions during operation PROTOTYPE unsigned shortfdm_online test FDM_REF Ptr_ Network Identification DESCRIPTION This function enables the FIP DEVICE MANAGER to run a part of the self diagnosis functions during operation each time a call is made This function can be used if CONFIGURATION _SOFT Online Tests Ticks 0 Otherwise it is the FIP DEVICE MANAGER which automatically activates the self tests during operation at a frequency equal to the CONFIGURATION SOFT Online Tests Ticks parameter INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type REPORT This function produces a report that reads FDM_ OK if the function has been carried out correctly FDM_NOK if the function has not been carried out correctly in this case the user fu
139. its fip to indicate hat a sync event has been received fdm_process_ its fip to indicate that a universal variable has been ransmitted fdm_process_its fip to indicate hat a universal variable has been received fdm_process_ its fip to indicate hat a produced variable has been transmitted fdm_process_its_fip to indicate hat a consumed variable has been received Management of time producer redundancy if switching from prod to cons or vice versa fdm_mps var time write loc to request the write value of the variable with dynamic refresh status fdm_mps var time read_loc to give the read value of the variable with dynamic refresh status fdm_msg_rec_fifo_empty to transmit received message fdm_msg_ send fifo empty to transmit received acknowledgement The transmission of a message if this primitive was called for the context concerned fdm_generic time read_loc to give time value fdm_generic time write loc to request time value ALS 50278 e en Chapter Performance levels 4 1 USER PRIMITIVE RUN TIME 1 1 Introduction Performance levels are measured using a CC117 board target with an i960SA microprocessor at 16 MHz with a code generated with no particular optimisation options with a 1 Mbit s network therefore FULLFIP2 64 MHz and pSOS CC121 board ISA board 1 MBytes s with a FULLFIP2 64 MHz 1 Mbit s CC139 board PCI board 132 MBytes
140. l management of the software fdm_initialize Creation of the device fdm_get_version Access to the version of the software fdm_ticks counter Management of internal timing NETWORK a WorldFIP network instance of software to manage it fdm_initialize network Creation and start up of network fdm_stop_ network Deletion of network dm_valid_m dium Initialization of medium redundancy management fdm_ack_ewd_medium Acknowledgment of the Watch dog default fdm_online test Activation of online self tests fdm_process its fip Processing of IRQ and EOC interrupts fdm_process it_irq Processing of IRQ interrupts fdm_ process it _eoc Processing of EOC interrupts fdm_switch_ image Changing the image upon which all the network AE_LEs function fdm_get_image Obtaining the image upon which all the network AE_LEs function fdm_generic time initialize Initialization of time management fdm_generic_ time _set_priority Setting of the subscriber priority in the time producer election mechanism fdm_generic_time_set_candidate_ Including or not including the subscriber in the time producer for _election election mechanism fdm_get_local_report Local report variable read fdm_change_ test _medium_ticks Modification of the medium test run time fdm_mps fifo _empty Emptying of aperiodic MPS events fdm_smmps fifo empty Emptying of SMMPS events fdm msg send fifo empty Activation of message transmission function fdm
141. ld with FIP DEVICE MANAGER but only FIPIO Agent not supplied by ALSTOM Page 2 26 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 5 2 Managing network management variables The operations to be carried out on these variables are as follows Creation they are automatically created by the FIP DEVICE MANAGER for each controlled network when the corresponding FIP DEVICE MANAGER instance is created Initialisation the presence and identification variables are initialised when they are created the identification variable with the values supplied by the user The report variable is initialised by FIP DEVICE MANAGER the first time the medium test function is called The list of equipment present variable is initialised by the active Bus Arbitrator subscriber as the potential network subscribers are scanned however it is not produced until all the subscribers have been scanned at least once Updating the identification variable is never updated The presence variable is updated the last byte as a function of the possible change in characteristics of the local Bus Arbitrator function The report variable is updated each time the medium test function is activated The list of equipment present variable is updated by the active Bus Arbitrator each time a subscriber is scanned Read each of these variables is read by means of a universal read request If the variable to be read is not
142. le is read or written the operations are the same as those for variables with dynamic refresh status see Subsection 1 3 4 2 1 3 4 4 Synchronisation variables Synchronisation variables are used to signal events generated on reception of a frame of the ID_DAT type with no associated RP_DAT This notion eliminates the need for a producer there is no associated user variable is only visible locally The signal mode of the event in question is the mode that consists in being alerted directly by a special physical interrupt signal from the FULLFIP2 system The semantics of this signal are therefore pure sync event reception Page 2 12 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions This mode makes use of the following mechanism the EOC signal from the system is used as an interrupt source it is set on reception of a frame of the ID_DAT type with no associated response if the descriptor of the identifier concerned contains the signal mode parameter set to the corresponding value no additional data are associated with this signal the interrupt is either a pulse lasting approximately 310 ns in which case it needs no external acknowledgement or it operates at various levels and is acknowledged by FIP DEVICE MANAGER after the user procedure used in this context has been called The choice of interrupt type can be configured Pulse duration is 375 us i
143. lers for the IRQ EOC and real time clock 2 Initialize FDM by calling the function fdm_initialize see Chapter 3 3 Create a context for using FDM on a network this context is related to one FULLFIP component e allocate and fill the structures FDM CONFIGURATION HARD FDM CONFIGURATION SOFT and FDM_IDENTIFICATION then call the function fdm_initialize_network see Chapter 3 memorize the returned handle this handle is then used as parameter in the other functions For each FULLFIP component that your FDM has to drive you have to call the fdm_initialize_network function with the right parameters 4 Validate the medium s by calling the function fdm_valid_medium 5 Create and initialise the tasks that will process the interrupts see Subsections Falana h 6lof this chapter 6 Implement the Error Warning callback functions see Subsection 4 2 of this chapter and Chapter 3 for the description of the FDM_ERROR_CODE structure in the fdm_initialize_network function and Chapter 5 for the list of the errors warnings 7 If you want to access the SM MPS variables see Subsection 1 5 of Chapter 2 for their description then follow the model described in Subsection 4 7 1 of this chapter 8 If your application manages MPS variables before creating them you have to create the AE_LE objects see Subsection 1 3 of Chapter 2 by calling the function fdm_ae_le_create see the Chapter 3 9 If you want to send and receive universal type MPS
144. ls of the TEST MEDIUM procedure e the recommended value of the threshold is 5 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 5 Available Functions 1 3 Managing AE LE and MPS variables 1 3 1 General This function is used to manage the operating modes of an AE LE set it up set its parameters adjust it and access the MPS variables it contains The AE LE such as FIP DEVICE MANAGER handling them are unconnected MPS variables associated with their projections on buffers identified by a data link layer identifier 1 3 2 Management of AE LE operating modes 1 3 2 1 Diagram of AE LE operating modes fdm ae le delete fdm _ mps_var_change periods fdm mps_var_change MSGa fdm mps var create fdm mps_ var change RQa fdm_mps_var_ change ID fdm mps_var_ change priority fdm ae le stop fdm ae le start fdm_mps var change periods OPERATION fdm_mps_var_change priority fdm_mps_var_change prod cons Page 2 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 3 2 2 Associated functions The functions required to manage the operating modes of an AE LE as defined above are as follows creation and deletion a creation request creates the envelope which receives all the variables of this AE LE A deletion request deletes the envelope start up and shutdown start up causes the variables contained in the AE L
145. m_stop_ network The BA program should contain an aperiodic window instruction SEND_APER ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 75 Description of user interface primitives 1 52 fdm_read_identification SUMMARY Read function of the subscriber identification variable PROTOTYPE unsigned short fdm_read_identification FDM_REF Ptr_ Network Identification unsigned char Subscriber DESCRIPTION This function is for requesting the subscriber identification SM_ MPS variable read including itself This is carried out by means of an aperiodic request regarding the variable in question When FIP DEVICE MANAGER will receive the variable it will call the User Identification_Prog function This function is a _ user written function given in the configuration parameter FDM_ CONFIGURATION SOFT inthe fdm_Initialize Network function INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Subscriber Physical address on the network of the subscriber whose identification variable is to be read Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network The BA program should contain an aperiodic window instruction SEND_APER Page 3 76 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en
146. mber of ticks to trigger execution of the online self test primitive If it equals 0 then the user is responsible for calling this function Threshold of medium default between two calls of internal function that tests the mediums used to declare medium NOK for reception The value must be given as a percent of transactions without errors compared to transactions with errors Only in FIPIO mode periodicity of the transmission of the Segment Parameters SM_MPS variable by the FIPIO manager Data structure which if the Mode field is FDM_ OTHER makes it possible to configure the internal registers with values compatible with the operating modes of earlier versions which are no longer taken into account with V4 see the FIPCODE User Manual 6 Chapter 2 Subsection 1 1 see description of FIP_Timer_Cnt parameter in FIPCODE User Manual 6 Chapter 2 Subsection 1 1 see description of FIP_Extend Par parameter in FIPCODE User Manual 6 Chapter 2 Subsection 1 1 Pointer to a user function which will be called by the FIP DEVICE MANAGER following reception or transmission of the value of a universa type variable Pointer to a user function which will be called by the FIP DEVICE MANAGER following reception of the value of a network management variable list of equipment present presence report identification or BA sync Pointer to a user function which will be called by the FIP DEVICE MANAGER following reception of a message
147. mbined as follows Produced implies with or without transmission and Consumed implies with or without reception IMAGE 1 IMAGE 2 nil produced nil consumed produced produced produced nil consumed consumed consumed nil pure event pure event nil pure event pure event nil The idea of image 1 and image 2 or Master Slave or Normal Backup as regards the variables of an AE LE is only meaningful in terms of what can be transmitted or received on the network under no circumstances can it refer to what is produced or read by the user The idea of an AE LE image implies the image seen from the network The user has only one image of the AE LEs which comprises all the variables declared in the AE LE regardless of the image seen from the network to which they belong This means that once a variable exists in an AE LE regardless of the image s of the AE LE to which it belongs it is always accessible and in the case of a produced variable in particular it is always updated The following table shows the different possible cases indicating what is happening on the network and what the user can do It should be noted that the transmission or reception indication depends on what is happening on the network and therefore produced or consumed implies with or without a transmission indication Page 2 8 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions Variable Produced MPS
148. mory field FDM_ WITH DTACK Dtack hard signal can be used As opposed to activation by the software of FULLFIP2 Ustate register FR bit test each time the system FILE register is accessed FDM_WITH_IRQ EOC_ON_SAME_INTERRUPT Use of interrupts EOC et IRQ by host microprocessor at the same interrupt level FDM_ WITH LITTLE ENDIAN Data representation in conventional INTEL internal memory FDM_WITH BORLAND For options specific to various compilers FDM_WITH_MICROSOFT FDM_WITH_METAWARE FDM_WITH_GNU FDM_WITH_MICROTEC FDM WITH MSDOS FDM_WITH CAD UL FDM_WITH_DSP For options specific to various microprocessors FDM_WITH_X86 FDM_WITH_ PLX9050 FDM_WITH_ SPECIAL USAGE If the option is set to YES then the user can specify some elements for his application These elements can be defined between a ifdef FDM WITH SPECIAL USAGE and endif couple FDM_WITH_WIN32 For use with Win 32 Table 6 1 FIP DEVICE MANAGER library options Page 6 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Installation procedure There are three constants SUSPEND _DELAT Time out on execution of TEST _P by an active BA If this timeout elapses the BA is stopped If the value equals INFINITY there is no active timeout _5_millisecondes SPLX_VALUE FOR MASKALL Max operating level for an interrupt to be impossible must be ALS 50278 e en greater than max level used Used with certain processors 6
149. n requested by the fdm_send_message primitive line acquired or time out In the second case when the user activates this procedure the FIP DEVICE MANAGER activates the User _Msg_Ack user procedure provided for this purpose on configuration of the messaging context on which the message is sent INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT None Page 3 98 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 65 fdm_msg rec _fifo_empty SUMMARY Activation of processing of message in reception mode PROTOTYPE void fdm msg rec fifo empty FDM_REF Ptr Network Identification DESCRIPTION This function enables the user to find out about received messages after their reception has been acknowledged When the user activates this procedure the FIP DEVICE MANAGER activates the User_ Msg Rec_Proc user procedure provided for this purpose on configuration of the messaging context on which the message was received INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type REPORT None ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 99 Description of user interface primitives 1 66 fdm_msg_ref_buffer_free PROTOTYPE
150. n 6 taken into account which provides significant improvements as regards processing performance levels on user interface and line turnaround time Management of time variable ID9802H and time multi producers ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page A 5 Appendix Use with C B FIP DEVICE MANAGER can be used in a C environment The classes of FDM are the following Fdm_Initialize this class is used for the general initialisation of the FDM timers Fip_Device_Manager this is the root base class it is used for the instantiation of a WorldFIP network connection Bus_Arbitrator this class is used for the instantiation of Bus Arbitrator objects this class is derived from the Fip_Device_Manager class GenericTime this class is used for the instantiation of the MPS time variable object this class is derived from the Fip_Device_Manager class MsgDataLinkFullduplex this class is used for the instantiation of a full duplex message context object this class is derived from the Fip_Device_Manager class MsgDataLinkToSend this class is used for the instantiation of a half duplex transmitting message context object this class is derived from the Fip_Device_Manager class MsgDataLinkToReceive this class is used for the instantiation of a half duplex receiving message context object this class is derived from the Fip_Device_Manager class AE_LE this class is used for the instant
151. n it is the destination address of the message transmitted 31 Most Least significant byte significant byte Segment of the LSAP of the LSAP Ifbit31 1 Remote DLL Address is unknown in general used for broadcast transmission for all the stations and reception from all the stations Ifbit31 0 Remote DLL Address is known i e a message is received only if Local _ DLL Address and Remote _DLL_Address correspond to the address field of this message Page 3 82 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives It is forbidden to configure the station as a bridge at least 2 networks in full duplex mode A station can be configured as a bridge only in half duplex mode see functions fdm_messaging_to_send_create and fdm_messaging_to_rec_create Description of type FDM_ MSG TO SEND typedef struct _FDM MSG TO SEND struct FDM MSG TO SEND Next struct FDM MSG TO SEND Prev integer Nr_Of Blocks FDM_MSG_T_ DESC Ptr Block Unsigned long Local DLL Address unsigned long Remote DLL Address FDM MSG_SEND_ SERVICE REPORT Service Report FDM_ PRIVATE DLI T Fdm Msg T Private FDM_MSG_TO SEND Next Pointer of concatenation on another data structure of the same type front concatenation Prev Pointer of concatenation on another data structure of the same type back concatenation Nr_Of Blocks Number of FDM_MSG_T_ DESC type blocks that make
152. n produces a report that reads AE_LE_NOT_EXIST if the function has been carried out correctly AE LE non existent AE_LE_CONFIG if the function has been carried out correctly AE LE being configured AE_LE_RUNNING if the function has been carried out correctly AE LE in operation Page 3 30 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 18 fdm_ae le stop SUMMARY Function for shutting down an AE LE PROTOTYPE unsigned short fdm_ae_le stop FDM AE LE REF Ptr AE LE DESCRIPTION This function enables an AE LE to be shut down INPUT PARAMETERS Ptr AE LE Pointer to a data structure of the FDM_ AE LE REF type Description of type FDM AE LE REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 31 Description of user interface primitives 1 19 fdm_mps_var_create SUMMARY Function for creating an MPS variable PROTOTYPE FDM MPS VAR REF fdm_mps var_create FDM AE LE REF Ptr AE LE const FDM XAE Var DESCRIPTION This function is for creating a variable and loading it into an AE LE INPUT PARAMETERS Ptr AE LE Pointer to a data structure of the FDM_AE LE REF type Var Pointer to a data structure in the FDM_XAE format describing
153. n the FIPCODE data base This function returns an array of char that contains the variable value to be written This function call is encapsulated between OS Enter Region and OS Leave Region calls So the execution time of these user written functions must be as short as possible Delta Pointer to the constant representing the time differential already provided by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 44 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 29 fdm_mps_var_read_loc SUMMARY Read function of a local variable PROTOTYPE FDM MPS READ STATUS fdm_mps_ var _read_loc FDM MPS VAR_REF Ptr MPS VAR FDM MPS VAR DATA Storage Buffer j DESCRIPTION This function makes it possible to read a local variable obtaining in return the value read and any MPS status INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_ MPS VAR_REF type Storage Buffer Pointer to a data structure of the FDM MPS VAR DATA type Definition of type FDM_ MPS VAR DATA See primitive fdm_mps_var_create Description of type FDM MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report of the FDM_ MPS READ STATUS type Definition of type FDM MPS READ STATUS typedef struct FDM_ MPS READ STATUS Enum Report
154. nchronisation SYN_WAIT Requests external synchronisation NEXT MACRO Reloops the macrocycle TEST P Requests a test of subscribers present END BA Denotes the end of a BA program The behaviour of the NEXT MACRO instruction depends on the bit rate of the network at 31 25 kbits s after the NEXT MACRO instruction and the end of the macrocycle a time T composed of Silences and Stuffing will elapse This time depends on the FDM_WITH_OPTIMIZED_ BA compilation option in the user_opt h file if FDM WITH _OPTIMIZED_ BA is set to NO then T MAX_ Subscriber 2 T0 6260 where e MAX Subscriber parameter is set by the user in the fdm_ba_set_ parameters function e TO is Silence Time Out and its value is 4096 ms for details see 1 if FDM WITH _OPTIMIZED_ BA is set to YES then T GreatestNumberOfBusArbitrator 2 T0 6260 where e GreatestNumberOfBusArbitrator is a parameter of the FODM CONFIGURATION HARD structure set by the user in the fdm_initialize network function e TO is Silence Time Out and its value is 4096 ms for details see 1 at 1 Mbit s 2 5 Mbits s and 5 Mbits s after the NEXT_MACRO instruction and the end of the macrocycle a time that corresponds to one Stuffing ID_DAT Silence will elapse the elapsed time depends on the bit rate ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 15 Available Functions 1 4 2 Managing Bus Arbitrator operating modes 1 4 2
155. nction User Signal Warning has been called at least once to warn of an FDM ERROR CODE type fault that is specified in Chapter 5 of this document Page 3 18 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 7 fdm_valid_medium SUMMARY Function for initialising medium redundancy management PROTOTYPE unsigned short fdm valid medium FDM_REF Ptr_Network_Identification enum MEDIUM_DEF Bus_Mode DESCRIPTION This function initialises the medium management functionality by indicating which channels are used and what fault threshold to take into account see Chapter 2 Subsection 1 2 of this document INPUT PARAMETERS Ptr_Network_Identification Pointer to a data structure of the FDM_REF type Bus_Mode _ MEDIUM 1 Selection of Channel 1 _ MEDIUM 2 Selection of Channel 2 _ MEDIUM _1 2 Selection of Channels 1 and 2 Description of type FDM_REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type MEDIUM_DEF enum MEDIUM_DEF MEDIUM 1 MEDIUM 2 MEDIUM 12 3 REPORT This function submits a report as specified by the primitive fdm_online_test This function must be called on all the stations with a double medium card and on all stations with a single medium card which are potential Bus Arbitrators ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 19 Description of user inte
156. nd_Msg struct FDM_REF Ref sm_v sm_msg_ send free the semaphore gt wake up of the task TaskMsgSend task that call fdm_msg_send_fifo empty function static void TaskMsgSend void for wait the next event sm_p sm_msg_ send SM_WAIT 0 take the semaphore fdm_msg_ send_fifo_empty Network_ Identification ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 31 General introduction 4 7 4 Operational model for the reception of messages 4 Message reception operational model Before using this model you have to create a messaging context by calling the fdm_messaging_fullduplex_create or fdm_messaging_to_rec_create function After the creation of a messaging context you can use the following model each time you want to receive a message You don t have to create a new messaging context each time when you want to receive a message This messaging context can be created once for the entire life of your application At the end when you no longer need to receive messages on this messaging context you can delete it by calling fdm_messaging delete The operational model is the following 1 The indication received by FIP DEVICE MANAGER in the form of a call to a primitive is stored in a queue 2 The FIP DEVICE MANAGER activation manager is warned of the fact that one of the queues is not empty by calling a procedure reserved for this purpose
157. ng image 1 or 2 Time variable refresh period in us ifWith_MPS_Var_Produced YES Time variable prompt period in us ifWith_MPS_Var_Consumed YES User function called when moving from potential producer to active producer or vice versa Number of transmission channel chosen to transmit messages from services linked to the time producer redundancy management protocol This channel has to have been created Pointer to the zone where the time supplied by the user is to be recovered Activation period of the procedure for electing the time producer Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function places either a NULL_PTR pointer if it has not been able to run correctly In this case the User Signal Warning function has been called at least once or a pointer to an FDM_GENERIC_TIME_REFERENCE type structure inside FIP DEVICE MANAGER not manipulated by the user Page 3 50 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 33 fdm_generic_time_write_loc SUMMARY Time variable write ID 9802H PROTOTYPE unsigned short fdm_generic_time_write_loc Const FDM_GENERIC_ TIME REFERENCE Ptr_ Time Identification DESCRIPTION This function enables the user to write the value of the time variable i e write the time The time value is transmitted to the FIP DEVICE MANAGER on request Calling the user written pro
158. ns in previous versions Offers the user the possibility of optimising size or performance levels according to his requirements In order to simplify use and make it more secure possibility of using in certain cases FIP DEVICE MANAGER a function prototype file h which can be used with C All conditional compilation switches have been replaced by centralised configuration options in a h file They must have a name which is directly connected to their use Supply ofa file that contains all the functions to be written by the user with an empty procedure space Adoption of rules for clear accurate and conventional naming Management of time variables ALSTOM Technology terminology i e variables for which the time spent with the transmitter and the receiver are sent to the consumer s Use of free access possibilities to FULLFIP2 database memory shared between FIP DEVICE MANAGER and FIPCODE Possibility of deleting processing linked to BA TEST_P instruction subscribers present test since this is done internally by FIPCODE Version 6 Queues taken into account by type of event from FIPCODE FULLFIP2 Possibility of exchanging messaging frames with a given field size with the exception of the address field which may be equal to 256 bytes instead of 251 previously Operation at 2 5 Mbits s and 5 Mbits s Updating of software included with latest available versions in particular FIPCODE Versio
159. nsmission of a message start of the TEST_P instruction by a BA in the case of utilization of ZN130 components or FIELDUAL components in ZN130 mode stop of the TEST _P instruction by a BA in the case of utilization of ZN130 components or FIELDUAL components in ZN130 mode EOC when the following event occurs reception of a synchronization variable see Subsection 1 3 4 4 of Chapter 2 The user has to connect the interrupt vectors to the interrupt handlers This operation depends on the user hardware environment and operating system Depending on the hardware environment the user can implement 4 types of interrupt handlers IRQ Handler process of the IRQ interrupt only EOC in level mode Handler process of the EOC interrupt only and if EOC is configured in level mode EOC in pulse mode Handler process of the EOC interrupt only and if EOC is configured in pulse mode IRQ and EOC in pulse mode Handler process of the IRQ and EOC interrupts when they are wired up to form an OR gate and EOC is configured in level mode The setting of the pulse mode of EOC is performed when calling the fdm_initialize_network function and using the flag EOC_PULSE MODE of the field Type of the structure FDM CONFIGURATION SOFT ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 17 General introduction 1 IRQ Handler process of the IRQ interrupt only The interrupt handler processing time has to be sh
160. nt or the time out if necessary User Qid Pointer retransmitted to the user for his private use User Ctxt Pointer retransmitted to the user for his private use Channel Nr Transmission channel number to be used Local DLL Address Source address of the message transmitted Segment of the LSAP of the LSAP If you write an application that plays the role of a bridge at least 2 networks see the subsection 1 6 4 of Chapter 2 then you have to set e bit 30 1 e Segment byte segment number of the source address e the 2 bytes describing the LSAP any value Remote DLL Address destination address of the message transmitted 31 0 Most Least significant byte significant byte Segment of the LSAP of the LSAP If bit31 1 Remote DLL Address is unknown in general used for broadcast transmission for all the stations If bit31 0 Remote DLL Address is known If you write an application that plays the role of a bridge at least 2 networks then you have to set e bit 31 1 e the Segment byte and the 2 bytes describing the LSAP any value Description of type FDM_MSG_TO SEND See the primitive fdm_messaging fullduplex_create ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 89 Description of user interface primitives REPORT This function produces either aNULL_PTR pointer if it has not been able to run correctly In this case the User Signal Warning fun
161. o account in the Bus Arbitrator election time slot calculation Description of type FDM_ IDENT VAR typedef struct FDM_ IDENT VAR Report VAR_TRANSFERT NO_VAR_ TRANSFERT Subscriber Identification_length Identification unsigned char Report unsigned char Subscriber unsigned short Identification Length unsigned char Identification 128 Execution report of the identification variable read request The identification variable has been received therefore the following two parameters are significant No transfer of the identification variable therefore the following two parameters are not significant Number of the subscriber physical address from which the identification variable was requested Size in bytes of the identification variable Content of the identification variable Description of type FDM_ REPORT VAR typedef struct FDM_REPORT_VAR Report VAR_TRANSFERT NO_VAR_TRANSFERT Subscriber Nb_Of Transaction_OK_1 Nb_Of Transaction_OK_2 Nb_Of Frame_NOK 1 Nb_Of Frame_NOK 2 unsigned char Report unsigned char Subscriber unsigned short Nb_Of Transaction_Ok_1 unsigned short Nb_Of Transaction_Ok_2 unsigned short Nb_Of Frames Nok _1 unsigned short Nb_Of Frames Nok 2 unsigned short Activity status Execution report of the report variable read request The report variable has been received therefore the following two parameters are significant No transfer
162. o its own station number No FIP status is associated with this variable This variable is always valid and significant Page 2 24 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions The conformity in question has to be interpreted as the software potential ALS 50278 e en NBR_REVISION 83 H LG 86H 8AH Nee Ld A A Type of PDU Length lt 126 Length of vendor field Field for the vendor Length of model field 1 3 LG 3 118 Model field Revision number optional TAGNAME 1 3 LG 3 32 Supported report variable SM_MPS conformity optional SMS conformity optional MPS MMS DLL Physical conformity optional free for the vendor FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 25 Available Functions 1 5 1 5 BA synchronisation variable The BA sync variable is a universal network management variable associated with identifier 9003H No FIP status is associated with this variable As soon as it is produced it is valid and significant The active Bus Arbitrator produces this variable 50H 04H 80H 02H MACROCYCLE NO je High order of macrocycle no of BA programme in progress SUBSCRIBER _ gt Physical address of the active BA subscriber 1 5 1 6 Segment Parameters variable This variable is only produced on a subscriber that runs in FIPIO mode i e as a FIPIUO manager It could not be consumed by subscribers bui
163. o the SM_MPS variables access to the universal type MPS variables transmission of messages reception of messages ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 23 General introduction 4 7 1 Operational model for accessing the SM_MPS variables The operational model is the following CD Accessing SM_MPS variables operational model 1 The user application request is stored in a queue the requests are the following e fdm_read_present_list e fdm_read_presence e fdm_read_identification e fdm_read_report e fdm_read_ba synchronize 2 The FIP DEVICE MANAGER activation manager is warned of the fact that one of the queues is not empty by calling a callback procedure reserved for this purpose and which the user must write The address of this procedure is transmitted to FDM by the function fdm_initialize_network field User_Signal_Smmps of FDM _ CONFIGURATION SOFT structure The User_Signal_Smmps callback function must activate a task that implements the action below 3 The task activated by the User_Signal_Smmps function has to call the fdm_smmps_fifo_empty function This call activates FIP DEVICE MANAGER to empty the queue and process the request 4 FIP DEVICE MANAGER uses the FIPCODE services to carry out the request 5 When a SM_MPS variable is received the FULLFIP component issues an IRQ interrupt the IRQ handler has to process the event see Subsection 4 4 Follo
164. oducer redundancy cesseceseseceeeeeceeseesecseeseseceaesecnevsecsessesecaeeecneveeeneeaees 2 13 1 4 Managing the Bus Arbitrator s cccecccesccssecesecssecseecseeeseeeseeeeceecsseenseeaeceaecaecseecaeecaeeeeesneeenreees 1 4 1 Setting up a Bus Arbitrator program cccccccscessscesecseeeecesecsecseceecesecasecseesecsaecaaecaeceeaecaaecaeeeeeeaeeeaeeneees 1 4 2 Managing Bus Arbitrator operating modes 1 4 2 1 Diagram of Bus Arbitrator operating modes 1 4 2 2 Bus Arbitrator associated fUnctions ceeeceeseeseeseeteeneeeeeeseeeeneene 1 4 3 Setting the parameters of the Bus Arbitrator Start up function 1 5 Managing SM MPS network management variables 0 0 0 ceeeseesceceeeceseseeesecaeesecneeeeeeaeeeeeaeeaeeaes 2 20 1 5 1 Format of network management variables eccecceeccesecssesecesecesecseeesceseceaecaeeeeceseceaecaeeeeceseceaeeaeeeeeeaees 2 20 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 9 Contents 1 5 1 1 Report varlable hevey ia vect clades ba ae E OE EAE ETAN oak toc ated gs EE eeu stud inde eed coe Ente ee 1 5 1 2 List of equipment present variable 1 5 1 3 Presence variable nasien kenaa a 1 5 1 4 Identification variable cceeeeeereereeee 1 5 1 5 BA synchronisation variable 1 5 1 6 Segment Parameters variable eee eeeeeeeeeeee 1 5 2 Managing network management variables 1 5 3 Creation of list of equ
165. oint s optional process events coming from the network s manage memory resources develop the various time outs required for other functions monitor the quality of the mediun s prevent degradation prevent latent faults in double medium allow the subscriber to run as FIPIO manager Managing AE LE and the MPS variables This functionality enables the application layer services to be performed which enables the user to have access to the MPS variables through unconnected logic entities called AE LE It consists of the following basic functions create and delete an MPS AE LE startup and stop an MPS AE LE add a variable in an MPS AE LE read a variable consumed in an AE LE with or without dynamic refresh status write a variable produced in an AE LE with or without dynamic refresh status manage supposed pure sync variables Managing the bus arbitrator S This functionality consists of the following basic functions load a macrocycle start or stop a macrocycle change a macrocycle resynchronize a macrocycle manage election of a bus arbitrator Page 1 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction Handling SM MPS network management variables This functionality enables network management services to be performed and provides the user with access to the SM MPS variables It consists of the following basic functions e management of t
166. on This call activates FIP DEVICE MANAGER to empty the queue and signal the event to the user FIP DEVICE MANAGER calls a user callback procedure The address of this procedure which is transmitted to FDM when the MPS variable is created by the function fdm_mps_var_create is the field User_Signal_Var_Prod of FDM_XAE structure it is called if the fdm_mps_var_write_universal function is used the field User_Signal_Var_Cons of FDM_XAE structure it is called if the fdm_mps_var_read_universal function is used ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 27 General introduction Don t call the fdm_mps_fifo_empty function inside the body of the User Signal Mps_Aper function The execution context of the fdm_mps_fifo_empty function should be different from the execution context of the User_Signal_Mps_Aper function Example of implementation of the call of fdm_mps_fifo_empty function for example in the case of pSOS FDM_REF Network Identification this handle is returned by the function fdm_initialize_network static unsigned long sm_mps semaphore create a task and a semaphore t_create TMPS 100 4096 0 T LOCAL T NOFPU amp TaskMPS sm_create SMPS 0 SM LOCAL SM PRIOR amp sm_mps User Signal Mps_Aper callback function static void User_Signal Mps_Aper struct FDM_REF Ref sm_v sm_mps free the semaphore gt wake up of the task Task
167. ontext is characterised by two addresses on 24 bits in messaging data link format Local DLL Address and Remote DLL Address e in the case of a context configured for transmission Local DLL Address represents the source address and Remote_DLL_Address represents the target address for messages transmitted on this context e in the case of a context configured for reception the messages received on this context have a target address corresponding to Local _DLL_Address and a source address at Remote DLL Address e inthe case of a context configured for reception and transmission messages which have been received on this context have a target address corresponding to Local_DLL_Address and a source address at Remote_DLL_Address and Local_DLL_Address represents the source address and Remote_DLL_Address represents the target address of messages transmitted on this context a user procedure to be written by the user which will be called by FIP DEVICE MANAGER to signal the arrival of a received message intended for this context or the end of transmission line acknowledgement or time out or fault of a message transmitted on this context two standard pointers intended for use by the user They are transmitted to the user by the procedures mentioned above the channel number in the case of a transmission or transmission reception context the memory zone intended to contain the message in the case of a reception or transmission reception con
168. operation Zone C capacity lt 64 k words Zone D capacity lt 64 k words Zone E capacity lt 512 k words CONFIGURATION SOFT BA DIM zone D capacity Page 4 8 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Performance levels CONFIGURATION SOFT FULLFIP RAM DIM zone A capacity zone B capacity zone C capacity zone D capacity zone E capacity Total memory capacity required Zone A capacity zone B capacity zone C capacity zone D capacity zone E capacity Calculation of zone A capacity if FDM_WITH_BA YES or FDM_WITH_ FREE ACCES YES zone A capacity 48 KB otherwise if FDM_ WITH_APER YES then zone A capacity 20 KB otherwise if FDM_ WITH MESSAGING YES then zone A capacity 14 KB otherwise zone A capacity 8 KB endif endif endif Calculation of zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity Zone B capacity ALS 50278 e en 256 words 3 ifMPSvariablenumber 5 lt 16 512 words 3 ifMPSvariablenumber 5 lt 32 1024 words 3 ifMPSvariablenumber 5 lt 64 2048 words 3 ifMPSvariablenumber 5 lt 128 4096 words 3 ifMPSvariablenumber 5 lt 256 8192 words 3 ifMPS variable number 5 lt 512 16384 words 3 ifMPSvariablenumber 5 lt 1024 32768 words 3 ifMPSvariablenumber 5 lt 2048 64536 words 3 if MPS variable number 5 lt 4096
169. ority FDM_REF Ptr Network Identification unsigned char Priority Level DESCRIPTION This function makes it possible to modify the priority of a potential Bus Arbitrator INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Priority Level Priority level of the Bus Arbitrator between 0 15 0 being the highest priority Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 65 Description of user interface primitives 1 43 fdm_ba_set_parameters SUMMARY Function for modifying the time outs used for the calculation of election and start up of a Bus Arbitrator PROTOTYPE unsigned short fdm_ba_set_ parameters FDM_ REF Ptr_ Network Identification enum _BA_SET MODE unsigned char MAX Subscriber unsigned char MAX Priority DESCRIPTION This function makes it possible to modify the time outs of a potential Bus Arbitrator INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type _BA SET MODE This parameter is used for the calculation of Start up Time out and Election Time out used for the startup of a BA You can enter one of the following values STANDARD OPTIMIZE 1 OPTIMIZE 2 OPTIMIZE 3 To understand the impact of th
170. ort Therefore the IRQ interrupt handler has to activate a task In the body of this task you can process one event at a time using FDM function fdm_process_it_irq Network_ Identification or e all the waiting events produced by IRQs using the following FDM macro sequence e BEGIN SMAP FIP _EVT e SMAP ON _IRQ Network Identification e END SMAP FIP EVT 2 EOC in level mode Handler process the EOC interrupt if and only if EOC is configured in level mode The interrupt handler processing time has to be short For that the EOC interrupt handler has to activate a task In the body of this task you can process one event at a time using FDM function fdm_process_it_eoc Network_Identification or e all the waiting events produced by EOCs using the following FDM macro sequence e BEGIN SMAP FIP _EVT e SMAP ON EOC Network Identification e END SMAP FIP EVT 3 EOC in pulse mode Handler process the EOC interrupt if and only if EOC is configured in pulse mode see Subsection 4 8 of this chapter In this case you don t have to call any FDM functions and you can for example activate a task that waits for this synchronization event 4 IRQ and EOC in pulse mode Handler process the IRQ and EOC interrupts when they are wired up to form an OR gate and EOC is configured in level mode The interrupt handler processing time has to be short Therefore the IRQ and EOC interrupt handler has to activate a task In the body of this task y
171. ou can process e one event at a time using FDM function fdm_process_its_fip Network_Identification or e all the waiting events produced by IRQs or EOCs using the following FDM macro sequence e BEGIN SMAP FIP EVT e SMAP ON_IRQ EOC Network Identification e END SMAP FIP EVT Network Identification FDM_REF type this handle is returned by the function fdm_initialize_network Page l 18 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction Example of implementation for example in the case of pSOS FDM_REF Network Identification this handle is returned by the function fdm_initialize_network static unsigned long sm irq semaphore create a task and a semaphore t_create TIRQ 100 4096 0 T LOCAL T_NOFPU amp TaskIRQ sm_create SIRQ 0 SM_LOCAL SM_PRIOR amp sm irq IRQ interrupt handler static void IRQ_handler void sm_v sm_irq free the semaphore gt wake up of the task TaskIRQ task that treat the interrupt IRQ static void TaskIRQ void for BEGIN _SMAP FIP _EVT SMAP_ON_IRQ Network Identification END_SMAP FIP EVT wait the next interrupt sm_p sm_irq SM_WAIT 0 take the semaphore ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 19 General introduction 4 5 Processing events Events are signaled by an interrupt from the circuit This interrup
172. owledged FIP ACK NO REC AFTER RETRY No acknowledgement after retry FIP ACK NEG AFTER RETRY Negative acknowledgement after retry FIP ACK NEG NO RETRY Negative acknowledgement with no retry FDM_TIME_OUT Time out waiting to be transmitted Description of type FDM_PRIVATE_DLI_T Inside FIP DEVICE MANAGER not manipulated by the user ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 85 Description of user interface primitives Description of type FDM_ MSG RECEIVED typedef struct _FDM MSG RECEIVED struct _FDM MSG RECEIVED struct _FDM MSG RECEIVED Integer FDM MSG _R_DESC unsigned long unsigned long Void Void FDM MESSAGING REF FDM_MSG_ RECEIVED Next Prev Nr_ Of Blocks User Qid et User Ctxt Local_DLL Address Remote DLL Address Next Prev Nr Of Blocks Ptr Block Local DLL Address Remote DLL Address User Qid User Ctxt Ref Pointer for concatenation to another data structure of the same type front concatenation Pointer for concatenation to another data structure of the same type back concatenation Number of FDM_MSG_R_DESC type blocks used to store the received message Always equal to 1 in the case of FIP DEVICE MANAGER Pointers retransmitted to the user for his private use They are those which were given on creation of the context Optional user information See Local DLL Addresses This field is used when Bit 31 of the Remote DLL
173. program use of empty ID list W W W W W W W W W W W W W W W W W W W W oad_macrocyc 0x608 _GEN_BA_DEF_DEM_MEM_MC oad_macrocyc No space in FULLFIP2 RAM for macrocycle oad_macrocyc 0x901 _LEVEL PRIORITY BA fdm_ba_set_priority Incorrect parameter fdm_ba_set_parameters 0x902 _MAX_SUBSCRIBER_ BA fdm_ba_set_priority Incorrect parameter fdm_ba_set_parameters ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 5 3 Error codes VALUE MNEMONIC CONTEXT E PROBABLE CAUSE WwW 0x903 _DELETE MC IN USE fdm_ba_ delete _macrocycle W Macrocycle in RUN state 0x904 _USER_NB OF _USER_MPS_ VARIABLE fdm_initialize network E FDM_ CONFIGURATION SOFT Desc_Par incorrect 0x905 _USER_MODE_ FAULT fdm_initialize network E Parameter FDM_ CONFIGURATION SOFT Timer incorrect _VAR_PERIOD_ FAULT fdm_ae_le start W Refresh or prompt time out value is incorrect fdm_mps_var_change_periods W 0x907 LENGTH VAR FAULT _USER_NR_OF_TX_BUFFER_FAULT fdm_initialize network E Number of buffers for message transmission incorrect 0x909 _USER_SWITCH_FAULT fdm_ae_le switch image Switch attempt during single image operation _NON_CONSUMING_VARIABLE fdm_mps_var_read_loc W Produced variable read attempt fdm_mps_var_read_universal _NON_PRODUCING_VARIABLE fdm_mps_var_write_loc W Consumed variable write attempt fdm_mps_var_write_ universal IMAGE FAULT ON REQUEST
174. r REPORT This function submits a report as specified the primitive fdm_stop network Page 3 102 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 2 CALLBACK PRIMITIVES TO BE PROVIDED BY THE USER The table below is a review of the callback procedures which the user has to write and which are called by the FIP DEVICE MANAGER to warn the user of various events In this document all these functions are prefixed by User_ However the user may name them as he sees fit The FIP DEVICE MANAGER recognises these functions by means of a pointer PROCEDURE Reference transmitted to the FIP DEVICE MANAGER by Called by the FIP DEVICE MANAGER by or during User Reset Component User Signal Fatal Error User Signal Warning User Present List Prog User Presence Prog User Identification _Prog User Report _Prog User Synchro BA Prog User Signal Mps Aper User_Signal_Smmps User Signal Rec _Msg User Signal _Send_Msg ALS 50278 e en Fdm_initialize network inthe FDM_CONFIGURATION_HARD type parameter initialize networ DM_ CONFIGURATION parameter F F initialize_network in the DM CONFIGURATION D type parameter E F initialize_network in the DM CONFIGURATION SOFT type parameter F F itialize network DM CONFIGURATION SOFT parameter F F itialize network DM CONFIG
175. r AE LE Pointer to a data structure of the FDM_AE LE REF type Description of type FDM AE LE REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_online_test Page 3 28 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 16 fdm_ae_le_start SUMMARY Function for starting up an AE LE PROTOTYPE unsigned short fdm_ae_le start FDM AE LE REF Ptr AE LE DESCRIPTION This function enables an AE LE to be started up INPUT PARAMETERS Ptr AE LE Pointer to a data structure of the FDM_AE LE REF type Description of type FDM_ AE LE REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_online test ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 29 Description of user interface primitives 1 17 fdm_ae le get state SUMMARY Function for obtaining the state of an AE LE PROTOTYPE enum FDM AE LE STATE fdm_ae_le get state FDM AE LE REF Ptr AE LE DESCRIPTION This function makes it possible to know the operating state of an AE LE INPUT PARAMETERS Ptr AE LE Pointer to a data structure of the FDM AE LE REF type Description of type FDM AE LE REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This functio
176. r friendly format for manual building Possibility of setting maximum number of parameters for bus arbitrator start up and election time out FIFO type interface for managing reception of values of variables requested The various user functions to be called when the SM MPS variable values arrive are no longer sent to FIP DEVICE MANAGER each time there is a user request but once and for all at the time of configuration The values of the variables requested are supplied directly as a parameter of the user function called when they are received GET XXX primitives deleted Addition of possibility of not deleting the variable created each time the SM MPS variable is requested The user is responsible for deletion saves time in request procedure if not created each time and in read procedure if not deleted each time Use of mechanism and data structure resulting from work on upper layer integration MCS SubMMS Switch to a FIFO type interface Page A 4 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Compatibility Simplification of configuration interface of messaging in reception mode LSAP Coding of messaging addresses LSAP numbers segment numbers systematically as long Increased modularity so that a user can include in his executable file only that which he really needs Optimisation of code whenever possible particularly by modifying code sequences resulting from successive additio
177. ramme DESCRIPTION This function is for loading a Bus Arbitrator program presented in a format like that of the BA BUILDER output automatic tool for building Bus Arbitrator program INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Programme Pointer to a table of elements of the unsigned short type with the BA program output format written by BA_BUILDER Description of type FDM_REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM_BA REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function places either aNULL_PTR pointer if it has not been able to run correctly In this case the User Signal Warning function has been called at least once ora pointer to an FDM_BA REF type structure Page 3 58 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 40 fdm_ba_load_macrocycle_manual PROTOTYPE FDM BA REF fdm_ba_load_macrocycle manual FDM_REF Ptr Network Identification Integer Nb_Of Lists integer Nb_Of Instructions unsigned short Label const PTR_LISTS Ptr Lists const PTR_INSTRUCTIONS Ptr_ Instructions DESCRIPTION This function is for loading a Bus Arbitrator program presented in a format which differs from that of the BA_BUILDER output automatic tool for building Bus Arbitrator program but which is easy to manipulate using C
178. reate SUMMARY Creation of a full duplex messaging context PROTOTYPE FDM MESSAGING REF fdm_messaging fullduplex_ create FDM_REF Ptr_ Network Identification FDM MESSAGING FULLDUPLEX Messaging Fullduplex DESCRIPTION This function enables a full duplex messaging context to be created which can be used in transmission and reception mode INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Messaging Fullduplex Pointer to a data structure of the FDM MESSAGING FULLDUPLEX type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM MESSAGING FULLDUPLEX typedef struct enum _FDM MSG IMAGE Position struct void User Msg Ack FDM MESSAGING REF FDM MSG TO SEND void User Qid void User Ctxt unsigned short Channel Nr sending struct void User Msg Rec Proc FDM_MESSAGING REF FDM MSG RECEIVED void User Qid void User Ctxt int Number Of Msg Desc int Number Of Msg Block receiving unsigned long Local DLL Address unsigned long Remote DLL Address FDM MESSAGING FULLDUPLEX ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 81 Description of user interface primitives Position User Msg Ack User Qid User Ctxt Channel Nr User Msg Rec Proc Number Of Msg Desc Number Of Msg Block Local DLL Address Remote DLL Address
179. rface primitives Page 3 20 Precision for the different types of initialisation required to manage medium redundancy in accordance with the configurations used Double medium card and double medium network CONFIGURATION SOFT Type TWO_BUS MODE other possible flags VALID MEDIUM 3 threshold Double medium card and single medium network CONFIGURATION SOFT Type TWO _BUS MODE other possible flags VALID MEDIUM 1 threshold or VALID MEDIUM 2 threshold Mono medium card with or without TWO_BUS MODE to build CONFIGURATION SOFT Type VALID MEDIUM 1 threshold FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 8 fdm_process its fipQ SUMMARY Function for processing EOC and IRQ interrupts PROTOTYPE unsigned short fdm_process its fip FDM_ REF Ptr Network Identification DESCRIPTION This is the function for processing EOC interrupts if it is configured by level and IRQ interrupts when they are together on the same interrupt level This function must in this case be called each time an EOC or IRQ interrupt occurs INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report of the following type EOC_IRQ TO_ PROCESS if there is still at least one more
180. rget and source Target addresses have to be associated with memory zones allocated to store messages received at this address Page 2 30 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Available Functions 1 6 4 User application that plays the role of a bridge If you want to use a station as a bridge at least 2 networks then you have to write an application that plays the role of a bridge The following figure shows you a network with 2 segments and a bridge FDM_MESSAGING TO REC lt local 0x40000004 remote 0x80000000 FDM_MESSAGING_TO_ SEND lt local 0x40000003 remote 0x80000000 BRIDGE Subscriber 58 Subscriber 80 Segment 3 seneenemneens Subscriber 57 FDM_MESSAGING_TO_REC local 0x00125703 remote 0x80000000 FDM_MESSAGING_TO_SEND local 0x00125703 remote 0x00180104 OR FDM_MESSAGING_FULLDUPLEX local 0x00125703 remote 0x80000000 For the subscribers you can create weeeeee eee Subscriber 1 FDM_MESSAGING_TO_REC FDM_MESSAGING_TO_REC local 0x40000003 remote Ox80000000 FDM_MESSAGING_TO_SEND local 0x40000004 remote 0x80000000 Segment 4 local 0x00180104 remote Ox80000000 FDM_MESSAGING_TO_SEND local 0x00180104 remote 0x00125703 OR FDM_MESSAGING_FULLDUPLEX local 0x00180104 remote Ox80000000 a half duplex context used only for message transmission see Chapter 3
181. riodic channel using the function fdm_channel_create create a messaging context used only for the reception of messages by calling the function fdm_messaging_to_rec_create see Chapter 3 create a messaging context used for both the transmission and the reception of messages by calling the function fdm_messaging_fullduplex_create see Chapter 3 if the transmission channel is aperiodic then the Channel_Nr field of the structure FDM_MESSAGING_FULLDUPLEX should be 0 Otherwise if it is periodic this field must be set to the value used when creating the periodic channel using the function fdm_channel_create if you want to send messages then you have to follow the model described in Subsection 4 7 3 of this chapter if you want to receive messages then you have to follow the model described in Subsection 4 7 4 of this chapter 12 If you want to manage a bus arbitrator see Chapter 2 Subsection 1 4 and Chapter 3 to load a bus arbitrator program then call e fdm_ba load macrocycle manual loading a simple bus arbitrator generated manually by yourself e fdm_ba_load_macrocycle_fipconfb loading a bus arbitrator generated by an external tool start the bus arbitrator by calling the fdm_ba_start function link the application with the FDM library The Programs Fdm_R4 X demo subdirectory of the CD contains a C application ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 1 37 General introduction Pa
182. rsion 4 User Reference Manual Page 2 17 Available Functions The two time outs are calculated with the following formula Start up Time Out GNOBA 1 MP 1 ETOTPI 3 2 Election Time Out GNOBA 1 PL ETOTPI BANO 3 2 where GNOBA highest number of the BAs on the network Its value depends on the FDM_WITH_ OPTIMIZED BA compilation option in the user_opt h file and the optimization level STANDARD OPTIMIZE 1 OPTIMIZE 2 and OPTIMIZE_3 set by the function fdm_ba_set_parameters e ifFDM WITH OPTIMIZED BA is set to NO then e if the optimization level is STANDARD then GNOBA 255 this value is constant and cannot be changed by the user e else if the optimization level is OPTIMIZE 1 or OPTIMIZE 2 or OPTIMIZE 3 then the GNOBA MAX Subscriber parameter set by the user in the fdm_ba_set_ parameters function e elseif FDM WITH OPTIMIZED BA is set to YES then e GNOBA GreatestNumberOfBusArbitrator parameter of the FDM CONFIGURATION HARD structure set by the user in the fdm_initialize network function MP maximum priority of the Bus Arbitrators connected on the network Its value depends on the optimization level STANDARD OPTIMIZE 1 OPTIMIZE 2 and OPTIMIZE_3 set by the fdm_ba_set_parameters function e if the optimization level is STANDARD or OPTIMIZE 1 then MP 15 this value is constant and cannot be changed by the user e if the optimization level is OPTIMIZE 2 or OPTIMIZE 3 then MP Max
183. s with a FULLFIP2 64 MHz 1 Mbit s The main aim is to determine the difference in performance levels between conventional access and free access operation ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 4 1 Performance levels 1 2 Start up fdm_initialize_network primitive seconds 16 CA 100 CA 20 FA 100 FA 20 CA Conventional access FA Freeaccess 100 Max variable no No RAM test on start up RAM test on start up The test above has been performed on a CC117 board Page 4 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Performance levels 1 3 Miscellaneous functions Tst_Medium Periodic medium redundancy management by FIP DEVICE MANAGER frequency is determined by the user Read_Evt Time taken to process an interrupt and associated processing time user procedure This is the mean value of all possible cases On_line Tst Online Autotest Duration of a call by FIP DEVICE MANAGER or by the user depending on set up microseconds 1400 1200 1000 800 600 400 200 0 Free access Conventional access The test above has been performed on a CC117 board Tst Medium Read_Evt OnLine Tst ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 4 3 Performance levels 1 4 AE LE start up milliseconds 160 140 120 100
184. s called periodically by FIP DEVICE MANAGER is as follows ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 3 Available Functions Assessment of reception quality If the number of reception faults read on the FULLFIP2 FIPCODE counters on channel x since the last TEST MEDIUM call exceeds the configured threshold on three consecutive calls of the same procedure then Channel_x_ Down_On_Reception true Faults are filtered to prevent reaction to the slightest interference If the number of reception faults on channel x is less than the threshold over three consecutive calls of the TEST MEDIUM procedure then Channel_x_Down_On_Reception false The return to normal is filtered In all other cases there is no change Assessment of transmission quality If the transmission status of channel x specified by the medium redundancy arbitrator is positioned on error over three consecutive calls of the TEST MEDIUM procedure then Channel_x_Down_On_Transmission true Faults are filtered to prevent reaction to the slightest interference If the transmission status of channel x specified by the medium redundancy arbitrator is not positioned on error over three consecutive calls of the TEST MEDIUM procedure then Channel_x_Down_On_Reception false The return to normal is filtered In all other cases there is no change Channel validation decision making If Channel_x_Down_On_Reception
185. s of concurrent access updating pointer without using semaphores At the same time the procedure to return to the initial state is also called These procedures are OS _ Enter Region OS Leave _ Region These procedures can be specified by the user in the form of macros The following table shows the FDM functions that use the above primitives CA Classical Access of the host processor to the data base using FULLFIP2 IO ports FA Free Access of the host processor to the data base shared between the host processor and FULLFIP2 OS_sm_v OS_sm_vt OS_sm_v_bd QS_sm_v_vcom OS_enter_region OS_sm_p OS_sm_p_t OS_sm_p_bd OS sm_p_vcom OS_leave_region fm initialize to fam initialize o O i a fam get version ST S S S S S S S i fam ticks counter KRES C T T f f f fam change test medium tieks f fJ S C 0 T f ee Ee ee ee ee ee ee ee fam initialize network IX x x x TTT fam stop network tT S S S S S S o oei fam valid medium KRE 0 0 T f fam online test KRS CT S oee T i fam process its fip KRES f T T S T S f i fdm process_it_eoc i f moasa CP S im ba set prioriy kk x 1 Fam ba set parameters O PP PX Page 1 14 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction OS_sm_vt QS_sm_v_vcom OS sm_p_vcom fdm_ba_status O O fdm read_report fdm read_ba_synchronize fdm get local report dm switch image
186. sage Don t free the allocated buffer till step 8 2 The FIP DEVICE MANAGER activation manager is warned of the fact that one of the queues is not empty by calling a callback procedure reserved for this purpose and which the user must write The address of this procedure is transmitted to FDM by the function fdm_initialize_network User_Signal_Send_Msg field of the FDM_CONFIGURATION_SOFT structure The User_Signal_Send_Msg callback function must activate a task that implements the action below 3 The task activated by the User_Signal_Send_Msg callback function has to call the fdm_msg_send_fifo_empty function This call activates the FIP DEVICE MANAGER to empty the queue and process the request 4 The FIP DEVICE MANAGER uses the FIPCODE services to carry out the request 5 When the message is sent the the FULLFIP component issues an IRQ interrupt the IRQ handler has to process the event see Subsection k4 Following processing FDM stores the event signaling the sending of the message in a queue and calls the User_Signal_Send_Msg callback function 6 The User Signal Send_Msg callback function must activate a task that implements the action below 7 The task activated by the User_Signal_Send_Msg callback function has to call the fdm_msg_send_fifo_empty function This call activates FIP DEVICE MANAGER to empty the queue and signal the event to the user 8 FIP DEVICE MANAGER calls a user callback procedure when it sends the message The
187. ser has requested a list of equipment present Pointer to a user function which will be called by the FIP DEVICE MANAGER after the user has requested a sync variable Pointer to a user function which will be called by the FIP DEVICE MANAGER after the user has requested a presence variable Pointer to a user function which will be called by the FIP DEVICE MANAGER after the user has requested an identification variable Pointer to a user function which will be called by the FIP DEVICE MANAGER after the user has requested a report variable The above three user functions must provide the following values in response to the call NO_VAR_DELETE if FDM is not meant to delete the variable and VAR_DELETE if it is Page 3 10 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Test _Medium_ Ticks Time Out Ticks Time Out Msg Ticks Online Tests Ticks Default _Medium_threshold Segment _Paramers Ticks User Responsability Timer CNT Register Mode_Register User Signal Mps Aper User Signal Smmps User Signal Rec Msg User Signal Send Msg User _Ctxt Description of user interface primitives Periodicity of call of internal function for testing the mediums One ticks one call of fdm_ticks_counter Number of ticks to trigger a time out common to all primitives requiring idling time except messaging Number of ticks to trigger a time out for messaging function Nu
188. sersessreresseseessesersessresesseseesesees 3 58 1 40 fdm_ba_load_macrocycle_mamual ccceccceeccessecsseesseeseeeeceseeeseceseensccaecsaecsaecseecaeeeaeeeeeeneeenseens 3 59 1 4 fdm ba delete macrocycle cscs cece wis Hae a RAW AR ah ened 3 64 1 42 fdm ba set priority pennrener cebe sehen eee ccnes eh eanseeeeuek even hes ee doce esc eS 3 65 1 43 fdm b set parameters isene rieni Fece sacs dese cteu seg E EA E E E R R R T 3 66 1 44 fdm bastart enner erre nini a E ER EERE R E eee 3 67 MAS fda Dal stOp O ANSE A EEE E A E E E EE 3 68 146 fd oE o E NEn TEE R O E E A E E E 3 69 1 47 fdm ba commute _macrocycle ccceccceeccesscesecesecsecseecseeeseeeaeeeeeeenscenseesecaecaecseecaeeeaeeeaeeneeenseeas 3 71 1 48 fdm ba external resyheO emnin a e ee ie 3 72 49 fd ba loaded rnn a a a towne n 3 73 1 507 fdin read present listai aseene eon i E aod E E E E E O E Ea 3 74 1 5 fd t ad preseice O R E E ee 3 75 1 52 fdm read identification ieri i REE RE EE E E R 3 76 1 53 fdm read report neieern nienean ER E E E E RE RE E TE 3 77 1 54 fdm read ba synehronizel s 6 cc iscsdpcccsseesscsacs nce cues odevtacesacaecsesseossnbaes cues esse cbaebacbsnssecdestsottceersens 3 78 1 55 fdmoget local reportQ icczsansicst incase SRSA ee ee a eed E 3 79 1 56 fdm smmps fifo empty ce eeeccceesseesceesceseceecescecseecseeeaeeeeseeeeseceseensecnsecsaecaaecseecaeeeseeeaeeneeetenes 3 80 1 57 fdm messaging fullduplex create
189. sga iscsi tce hit hi el eich AAA SAU AAR IA Haas 3 41 1 26 fdm amps var write loc isc scescesecicegee nie i k seecccenen eek RER E kee sts ee ate te eee eds 3 42 1 27 fdm mps Var write universal aksn isere i i R E RR R a 3 43 1 28 fdr mps v r time write loc esesmrei nae a a E E a Me e aa 3 44 129 e ia ER na DTPa Var redd loc lt ccc 5 ccccsecasccsduds dcsdacsszceduads dy seen ca satadeda E 3 45 1 30 fdm_mps_ var _read_umiversal cccccecssessceescesecessecseeeseeeseeeeeeecesecnseceseeseceaeceaecseecaeesaeeeeeeneeeneeees 3 47 Page 10 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Contents 1 3 dimi mps var time read loc onise caine vies E ERE canon aed nose E teen a 3 48 1 32 fdmgeneric time initialize Sien e Ae e s aE E S E ES E Aad 3 49 1 33 fdm generic time write 1OC nosne e i aE ER R a EE EREK 3 51 1 34 fdm generic time read locO anienr renr iiie i T RE E KEE E 3 52 1 35 fdmsgeneric time dela E a e estes a a en ee a 3 54 1 36 fdm generic time Set _PriOrity sesesssssesssseessesersresersessteresststestesttstssteresstetesresetstsseenesseseessesets 3 55 1 37 fdm generic time set candidate for election ccccecseeseessceesceseceeceeeceeecaeeeseeeeeeseeeeeeeeeeerens 3 56 138 lt fdmemps ffo empty rererere eae a eE E S ee Ea EEE EAEE EEE E EEEn 3 57 1 39 fdm ba load_macrocycle_fipconfb esseeseseesseeesseeeessesersressesese
190. side FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 38 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 23 fdm_mps_var_change_prod_cons SUMMARY Function for modifying the P C attribute of a variable PROTOTYPE unsigned short fdm_mps_var_change_prod_cons FDM MPS VAR_REF Ptr MPS VAR enum _FDM CHANGE TYPE New_Imagel Prod Cons enum _FDM CHANGE TYPE New_Image2_Prod_Cons DESCRIPTION This function makes it possible to modify the value of the Produced Consumed attribute associated with an MPS variable when the AE LE to which it belongs is started up INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_ MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified New_Imagel Prod_Cons New value of the produced consumed attribute for Image 1 of the variable CONSUMED or PRODUCED New_Image2 Prod_Cons New value of the produced consumed attribute for Image 2 of the variable CONSUMED or PRODUCED Description of type FDM_ MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 39
191. ssesersrsresseserssstesesstsresseseesreseeseseseseesreses 4 2 1 3 S o ETONE N OTa TGO a RE EE E EE E E E A E 4 3 ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 11 Contents L4 AE LE Start up tevwo cts ten eE a AEE R A E EE E EA E A E 4 4 Ey IMessaGine r ed MAGE SARC E a er HAL aS 4 5 1 6 MPS variables nrar ee eels eee iecnce ies edt aoe eee diel ae heer ee a ieee hee 4 6 2 MEMORY CAPACITY REQUIRED ae a aae Aa A AA NEE AE EE A 4 7 2 1 Ee EAIA atole LIET i AVARA A E E E AO A A E 4 7 DD Dath SIZE a AE P E TAE A she A ion das T eee 4 8 2 3 Memory capacity for FULLFIP2 sseeseseeserseesessererssvsereeseesorsresesserersrreesovsrssessevorssertrertseesersersessete 4 8 CHAPTER 5 ERROR CODES 1 ERROR MESSAGES aianei aar a T ct svbes toads oes E EEEE Sek adh ost EAE cs subse E E EE 5 1 CHAPTER 6 INSTALLATION PROCEDURE Ie SORT WARE SUPPLY 9 coszcvscciees R E E NE ANA stan EREE 6 1 27 IMPLEMENTATION ahlar sees amp a vodh E a E E E E a A tite 6 2 3 COMPILATION PARAMETERS re traean nag Ea a e e a a ea i 6 3 APPENDIX A COMPATIBILITY APPENDIX B USE WITH C GLOSSARY Page 12 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Table 3 1 Default values for the network transmission Table 6 1 FIP DEVICE MANAGER library options Table A 1 Compatibility between Version 2 and Version 4 ALS 50278 e en FIP DEVICE MANAGER Softw
192. structure of the FDM_REPORT_VAR type in which the value of the report variable read will be stored Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user Description of type FDM REPORT VAR See the primitive fdm_initialize network REPORT This function produces a report as specified by the primitive fdm_stop network ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 79 Description of user interface primitives 1 56 fdm_smmps _ fifo _empty SUMMARY Function for emptying the event file regarding SM_MPS requests PROTOTYPE fdm smmps fifo empty FDM REF Ptr Network Identification DESCRIPTION This function enables the user to find out about received events regarding SM_MPS variable read requests by emptying the corresponding queue When the user activates the procedure the FIP DEVICE MANAGER activates the User _yyy_prog user procedure yyy Present_list or Presence or Identification or Report or Synchro BA depending on the case provided to do this on configuration of the variable INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT None Page 3 80 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 57 fdm_messaging fullduplex_c
193. t must be processed as indicated in the preceding section Processing the IRQ handlers as described in the preceding section will activate FDM which will call the following user callback functions User Signal _Mps Aper ifthe event corresponds to the reception or the transmission of a universal type variable The user provides this function to the FDM when he calls the fdm_initialize_network function a field of FPDM_ CONFIGURATION _SOFT structure User Signal _Smmps if the event corresponds to the reception of one of the network management variables following a request to read this variable The user provides this function to the FDM when he calls the fdm_initialize_network function a field of FDM_CONFIGURATION_SOFT structure User Signal Receive Msg if the event corresponds to the reception of a message The user provides this function to the FDM when he calls the fdm_initialize_network function a field of FDM_CONFIGURATION_SOFT structure User Signal _Send_Msg if the event corresponds to the reception of acknowledgement of transmission of a message or to a request for user transmission The user provides this function to the FDM when he calls the fdm_initialize_network function a field of FDM_CONFIGURATION_SOFT structure User Signal _Asent if the event corresponds to the transmission of a produced variable with associated event A Sent The user provides this function to the FDM when he calls the fdm_mps_v
194. ted and which are the aperiodic requests which can be processed by the Bus Arbitrator 03 H ID DAT 05 H ID MSG Code of the Bus Arbitrator program instruction which must be chosen from the following 2 NEXT_MACRO Macrocycle re looping 4 SEND_MSG Opening of aperiodic messaging window 5 SEND_APER Opening of aperiodic MPS variable window 6 BA WAIT Internal synchronisation waiting window 100 SEND LIST Periodic processing 103 TEST_P Test of subscribers present 104 SYN WAIT External synchronisation waiting window with stuffing 105 SYN WAIT SILENT External synchronisation waiting window without stuffing This instruction must be used with caution because of potential BA election problems Page 3 60 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Param 1 ALS 50278 e en Description of user interface primitives Significance dependent on Op_Code parameter SEND LIST NEXT MACRO END BA TEST P SEND MSG SEND _ APER BA WAIT SYN_WAIT_SILENT SYN_WAIT Ptr_Lists List_size Ptr _list_El ment List_size Ptr_list_ El ment ID Frame_Code ID Frame_Code Ptr_Intructions Op_Code Param 1 Op_Code Param 1 FIP DEVICE MANAGER Software Version 4 User Reference Manual Number of the list i e index in the list array Param 0 End time in relation to beginning of macrocycle Time 0 of the aperiodic messaging window whi
195. terface is arranged around different objects which can be manipulated using a set of functions and which are associated with different aspects of network functionality The functions provide everything required to create or delete objects in accordance with their dependency rules modify objects in accordance with the possibilities offered manage operating modes in accordance with the protocol have access to the MPS variables and to transmit and receive messages to communicate The list of objects which can be manipulated and their interdependence are shown below DEVICE ee ee ee REICH foc Re ON rege Send A Pace SEIVORK TIME TIME AE_LEsMPS MESSAGING CONTEXTS AE_LEsMPS MESSAGING CONTEXTS MACROCYCLE MACROCYCLE ues AE_LE SM_MPS VARIABIES AE_LE SM_MPS The indentation which shows the interdependence of the objects indicates for example that a variable object required for MPS variable exchanges can only be created in the context of an existing AE_LE which itself can only be created in the context of an existing network All the creation primitives refer to the object created which must be specified as a parameter of all the primitives that manipulate the object Page 1 8 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction The primitives for each object are DEVICE equipment that can control several WorldFIP networks The primitives regard initialization and overal
196. terface with the operating System onsena i E E E A ETE 1 13 4 3 1 Management of mutual exclusion ecceceescesscesecseesecesecsecseeseecusecseeecsecsaecseeeeeeseceaecaeeesensecaeeneenseeaees 1 13 4 3 2 Memory MmajagemMent os dvsac saccasevevcivess east odsdbeas se GEE AEri NE AA AN Nea 1 16 4 4 Processing IRQ and EOC interrupts 0 cccceccescceecssecseeeseeeeeeeeeeecesecnseesecsaecseecseecseeeseeeeeensenereees 1 17 a K e 0E TaT AE a E E AE E E E E EE EE AAR 1 20 4 6 Processing real timesclock interrupts nrnna e cae EE E EERE EE RN O 1 21 4 7 Operating model for the deferred Services ccescescceseesseesseeseeeeeeeecesecesecsecaecaecseecaeeeseeeneenseeereees 1 23 4 7 1 Operational model for accessing the SM_MPS variables ccceccessesseeeceeceeecenecsecseeeeeeseceeceaeeneeeeeeeees 1 24 4 7 2 Operational model for accessing the universal type MPS variables c esescessesseseceeeceeceseeeeeeeeeeeees 1 27 4 7 3 Operational model for the transmission Of MeSSAGES ccsceesseescescesseeecssecseeseceseceaecseeeecesecaecaeeteeeaees 1 29 4 7 4 Operational model for the reception Of messages eeeeecescetecssesscescesecesecseeseesseesecesessecseeeeeeeeeseeeteeeaees 1 32 4 8 Operating model for the local MPS indications ccccceescesseeseceseeeeeeeeceseceeecenecseecaeecsecneeeeeeneeees 1 34 4 9 Create anJF DM applications irnc 5 ci60 tie ek Soba eek ee es Mende Ah e aa cose ete eat ed ese anis 1 36 CH
197. text The message exchange type at the Data Link Level is acknowledged or not acknowledged according to the contents of the address 23 22 8 7 6 0 pp si sone ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 2 29 Available Functions VG S R Segment Address Type Message exchange 0 0 00 to 7F Individual address Acknowledged 1 0 00 to 7F Group address on the segment Not Acknowledged X 1 TF Group address on all the segments Not Acknowledged If you want to exchange unacknowledged messages on an individual address then use the function fdm_change_message_acknowledge_type see Chapter 3 to change the type of message exchange 1 6 2 Transmission configuration The configuration of the Message transmission function consists in creating periodic and aperiodic transmission channels For periodic messaging channels the configuration parameters for a channel are as follows associated identifier channel number from 1 to 8 a number cannot be associated with more than one identifier In the case of aperiodic messaging there can be only one channel with number 0 It is configured at the same time as the MPS variables see Page 3 29 fdm_mps_var_create primitive 1 6 3 Reception configuration The reception configuration consists in indicating the addresses WorldFIP 24 bits to be used for receiving messages There are two address types for one message ta
198. that of the subscriber making the request an aperiodic request is made Hence the need for an aperiodic MPS window in the Bus Arbitrator program The user is informed of the arrival of the variable requested by calling a procedure written by it 1 5 3 Creation of list of equipment present variable This variable is only built and therefore produced by the active Bus Arbitrator subscriber whose BA program the series of frames to be circulated comprises at least one instruction of the TEST P type see 4 Subsection 12 1 There are two ways of processing this instruction depending on which equipment is used to manage medium redundancy either FIP DEVICE MANAGER is used with a ZN130 component or a FIELDUAL system used in a mode compatible with ZN130 In this case the subscribers present test is partly managed by the FIP DEVICE MANAGER and partly by FIPCODE or FIP DEVICE MANAGER is used with a FIELDUAL system used in a new mode which can be controlled by FULLFIP2 In this case the subscribers present test is entirely managed by FIPCODE which creates the list of equipment present variables 1 5 3 1 ZN130 or FIELDUAL in compatible mode Each time a TEST _P instruction is given FIP DEVICE MANAGER interrogates a subscriber and asks it to produce its presence variable in order to check its presence Transmitting on each channel alternately carries out this interrogation complete information about a subscriber is only obtained a
199. ts written in BOLD are those contained in the fdm h file therefore they can be used directly the lines of C code are written in courrier 1 1 fdm_initializeQ SUMMARY FIP DEVICE MANAGER general initialisation function PROTOTYPE void fdm_initialize void DESCRIPTION This function carries out the general initialisation operations for the FIP DEVICE MANAGER in particular those regarding the management of timers It is totally independent of the managed networks and must be the first function called by any application using FIP DEVICE MANAGER Version 4 INPUT PARAMETERS None REPORT None ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 1 Description of user interface primitives 1 2 fdm_get_version SUMMARY Function for obtaining the software versions used PROTOTYPE const FDM_VERSION fdm_get_version void DESCRIPTION This function is for finding out which version of FIP DEVICE MANAGER is being used and which version of the FIPCODE software is included INPUT PARAMETERS None REPORT This function produces a report of the FDM VERSION type which gives the version the revision number and any prototype references for both the software packages In all the marketed product versions the prototype reference is equal to 0 If the prototype reference is not 0 this means the version or revision is not yet stabilised Definition of type FDM_VERSION Typedef str
200. tware Chapter 2 Available functions contains a detailed description of the available features Chapter 3 Description of user interface primitives contains a detailed description of each primitive available as well as of those called by FIP DEVICE MANAGER to be written by the user Chapter 4 Performance levels specifies the performances on the user interface and on the line Chapter 5 Error codes describes the error codes returned following primitive calls Chapter 6 Installation procedure describes the installation procedures Appendix A Compatibility describes the compatibility between Version 2 and Version 4 primitives Appendix B Use with C describes the FDM use in a C environment Glossary 3 RELATED PUBLICATIONS For more information refer to these publications 1 EN50170 partie 3 Normes WorldFIP 2 FIP Network General Introduction ALS 50249 3 FIELDUAL User Manual ALS 50273 4 FIELDRIVE User Reference Manual ALS 50261 5 FULLFIP2 Component User Reference Manual ALS 50262 6 Manuel de r f rence utilisateur du logiciel FIPCODE V6 ALS 50277 4 WE WELCOME YOUR COMMENTS AND SUGGESTIONS ALSTOM strives to produce quality technical documentation Please take the time to fill in and return the Reader s Comments page if you have any remarks or suggestions Page 6 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Reader s comments FIP DEVICE MANAGER Sof
201. tware Version 4 User ALS 50278 e en Reference Manual Your main job is E System designer Q Programmer LJ Distributor LJ Maintenance E System integrator Q Operator LJ Installer l Other specify below If you would like a personal reply please fill in your name and address below Send this form directly to your ALSTOM sales representative or to this address ALSTOM Technology Technical Documentation Department TDD 23 25 Avenue Morane Saulnier 92364 Meudon la For t Cedex France Fax 33 0 1 46 29 10 21 All comments will be considered by qualified personnel REMARKS ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 7 Reader s comments Page amp FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Contents CHAPTER 1 GENERAL INTRODUCTION 1 GENERAL OVERVIEW OF THE SOFTWARE J ccceccccescesseesscesecesecaecaeecaeecaeeeseeneeeeeeeeeneeeeaeeneenaeenaes 1 1 2 OVERVIEW OF TARGET HARDWARE CONFIGURATIONS 1 eccccsecseeesceesceeeeeeceseensecsseeneeeneeenes 1 3 3 PRESENTATION OF THE FUNCTIONALITY 0 2 0 ccecccecccesecscessecseeceecseeeseeeeeeeeeseenseenseceaeenaeenaeenaeenees 1 4 4 OVERVIEW OF THE INTERFACE WITH THE USER APPLICATION ccccecccssecseeeeeseeeseeseeneees 1 6 4 1 Description of the basic Services nenei S E EE E E a itha 1 8 4 2 Management of the reports and ERROR WARNING callback functions s sssseeseeseeeeeseeees seese 1 12 4 3 In
202. uct FDM VERSION ELEMENT fdm FDM_ VERSION ELEMENT fipcode FDM VERSIONS Typedef struct char Version char Revision char Indice FDM_VERSION_ELEMENT Page 3 2 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 3 fdm_ticks_counter SUMMARY Time management function PROTOTYPE void fdm_ticks counter void DESCRIPTION This is the function which manages the time outs of those aspects of the FIP DEVICE MANAGER functionality aspects which use them and which periodically call periods given in the primitive fdm_initialize network the internal functionality of medium redundancy management ex TEST_MEDIUM in Version 2 or if necessary the internal self test functionality This is the equivalent of the IT _HTR_FIP function of Version 2 an The unit of time will therefore be the same for all the networks controlled by the FIP DEVICE MANAGER i e all FIP DEVICE MANAGER instances INPUT PARAMETERS None REPORT None ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 3 Description of user interface primitives 1 4 fdm_initialize_networkQ SUMMARY Function for creating a FIP DEVICE MANAGER utilisation context PROTOTYPE FDM REF fdm_initialize network const FDM _CONFIGURATION_SOFT User Soft Definition FDM_ CONFIGURATION HARD User Hard Definition const FDM_IDENTIFICATION User Ident Param D
203. ucture of the BA_INF_STATUS type specified previously and containing the state of the BA function as well as the label of the program underway if running Description of type FDM_ BA REF Inside FIP DEVICE MANAGER not manipulated by the user Definition of type BA_INF_STATUS typedef struct enum BA INF Actif_Running unsigned short Status_Fiphandler unsigned short Label BA_INF_ STATUS Actif Running Overall status of the BA NOT _BA The subscriber is not a potential BA or the subscriber is a potential BA but the BA function is not running LOADED BA The BA program is loaded ACTIVE The BA function is in the BA_STARTING or BA_IDLE or BA_STOPPED mode RUNNING The BA function is in the BA_LSENDING BA_PENDING BA_WAIT_TIME BA_WAIT_SYNC BA_WAIT_SYNC SILENT BA_MSG_WINDOW or BA_APER_WINDOW mode ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 69 Description of user interface primitives Status Fiphandler Detailed status of the BA BA_SENDING Periodic window BA_STOPPED Stopped BA_STARTING Starting up BA_IDLE Waiting for election BA_MSG WINDOW Aperiodic messaging window BA_APER_WINDOW Aperiodic MPS window BA_WAIT_TIME Waiting for internal synchronisation BA_WAIT_SYNC Waiting for external synchronisation without stuffing on the line BA_WAIT_SYNC_SILENT Waiting for external synchronisation with stuffing on the line BA_PENDING Waiting for external synchronisation TEST_P
204. ue The FIP DEVICE MANAGER directly adds the total differential to the value of the variable To use this function the compiling switch FDM_WITH_GT or FDM_ WITH _GT_ONLY CONSUMED must be set to YES INPUT PARAMETERS Ptr Time Identification Pointer to a data structure of the FDM GENERIC TIME REF type Description of type FDM GENERIC TIME REFERENCE Inside FIP DEVICE MANAGER not manipulated by the user Description of the function fdm_generic_time_give value FDM GENERIC TIME VALUE fdm_generic_ time_give value void Definition of type FDM_ GENERIC TIME VALUE 3 typedef INOUT struct unsigned long Significance unsigned long Number Of Second unsigned long Number Of Nanosecond FDM_GENERIC_ TIME VALUE Page 3 52 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives Significance x00 time written by an overall external reference x02 time written locally by the producer Number Of Second Number of seconds since 1 01 70 Number Of Nanosecond Number of nanoseconds since the beginning of the current second REPORT This function produces a report of the FDM_MPS READ STATUS type as specified by the primitive fdm_mps_ var_read_loc ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 53 Description of user interface primitives 1 35 fdm_generic_time_delete SUMMARY This function enables the user
205. unction submits a report as specified by the primitive fdm_stop_ network ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 67 Description of user interface primitives 1 45 fdm_ba_stop Q SUMMARY Function for shutting down a potential Bus Arbitrator PROTOTYPE unsigned short fdm_ba_stop FDM_REF Ptr_ Network Identification DESCRIPTION This function makes it possible to request the shutdown of the Bus Arbitrator function This shutdown will be effective as soon as a new BA program instruction is processed INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Description of type FDM_ REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function submits a report as specified by the primitive fdm_stop_ network Page 3 68 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 46 fdm_ba_status SUMMARY Function for obtaining the state of a potential Bus Arbitrator PROTOTYPE unsigned short fdm_ba_status FDM_REF Ptr_ Network Identification BA_INF_ STATUS Ptr BA Status DESCRIPTION This function makes it possible to find out the operating state of the Bus Arbitrator functionality of the station INPUT PARAMETERS Ptr Network Identification Pointer to a data structure of the FDM_REF type Ptr BA Status Pointer to a data str
206. up the message to be transmitted Ptr Block Pointer to the first block of the FDM_ MSG T_DESC type which contains the message to be transmitted Local_DLL Address Remote DLL Address Same definition as for the Local DLL Address parameter above Service Report Message transmission report given by the FIP DEVICE MANAGER when the user procedure intended to acknowledge it and the reference which is given by the aforementioned User Msg Ack Proc parameter is called The parameter of this user procedure is a pointer to a data structure of the FDM MSG TO SEND type the same as that used for transmission Fdm Msg T Private Data structure in the FDM PRIVATE DLI_T format which only the FIP DEVICE MANAGER can use ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 83 Description of user interface primitives Description of type FDM_MSG T DESC typedef struct _FDM MSG T DESC integer Nr_Of Bytes unsigned char Ptr Data struct _FDM MSG T DESC Next_Block FDM_MSG_T DESC Nr_Of Bytes Number of bytes contained in the block pointed to by Ptr_Data Ptr Data Pointer to the zone containing data Next_Block Pointer to the following block of the same type Description of type FDM_ MSG SEND SERVICE REPORT typedef struct enum _FDM MSG SND CNF Valid enum _FDM MSG USER_ERROR_ LIST msg_user soft report enum FIP MSG SND REP Way enum _FDM MSG SND CNF FDM MSG SEND OK 0
207. ure of the FDM_MPS VAR_REF type Description of type FDM MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document ALS 50278 e en FIP DEVICE MANAGER Software Version 4 User Reference Manual Page 3 47 Description of user interface primitives 1 31 fdm_mps_var_time_read_loc SUMMARY Read function for a local variable PROTOTYPE FDM MPS READ STATUS fdm_mps var _time_read_loc FDM MPS VAR_REF Ptr MPS VAR Void User Set Value FDM_MPS VAR_TIME DATA FDM MPS VAR _ TIME DATA Variable DESCRIPTION This function makes it possible to read a local MPS variable INPUT PARAMETERS Ptr MPS VAR User Set_Value Variable Pointer to a data structure of the FDM_ MPS VAR_REF type User function that would be called by FIP DEVICE MANAGER to indicate that the variable value is available in the FDM_MPS VAR _TIME DATA type structure This function call is encapsulated between OS Enter Region and OS Leave Region calls So the execution time of these user written functions must be as short as possible Pointer to the data structure containing the variable and its additional information Definition of type FDM_ MPS VAR_TIME DATA typedef struct unsigned long Network Delay unsigned char Pdu_Type unsigned char Pdu_Length unsigned char FBuffer 126 FDM MPS VAR _TIME
208. user interface primitives 1 20 fdm_mps_var_change_id SUMMARY Function for modifying the value of the ID associated with a variable PROTOTYPE unsigned short fdm_mps var _change_id FDM MPS VAR REF Ptr MPS VAR unsigned short New_ID DESCRIPTION This function modifies the value of the identifier associated with an MPS variable when it has already been created but when the AE LE to which it belongs has not yet started up INPUT PARAMETERS Ptr MPS VAR Pointer to a data structure of the FDM_ MPS VAR_REF type This parameter enables the variable on which the primitive must act to be identified New_ID New value of identifier to be associated with the variable Description of type FDM MPS VAR_REF Inside FIP DEVICE MANAGER not manipulated by the user REPORT This function produces a report as specified in Chapter 1 Subsection 4 2 of this document Page 3 36 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en Description of user interface primitives 1 21 fdm_mps_var_change_periods SUMMARY Function for modifying the refresh or prompt periods of a variable PROTOTYPE unsigned short fdm_mps var _change_ periods FDM MPS VAR_REF Ptr MPS VAR unsigned long Refreshment Period unsigned long Promptness Period DESCRIPTION This function makes it possible to modify the value of the prompt and refresh windows associated with an MPS variable INPUT PARAMETERS Ptr MPS VAR
209. variables create the universal type MPS variables by calling the function fdm_mps_var_create see the Chapter 3 for each variable to create you have to call the function fdm_mps_var_create e follow the model described in Subsection 4 7 2 of this chapter Page 1 36 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction 10 If you want to send and receive local MPS variables create the local MPS variables by calling the function fdm_mps_var_create see Chapter 3 for each variable to create you have to call the function fdm_mps_var_create you can read and write local variables using the functions fdm_mps_var_read_loc and fdm_mps_var_write_loc if you want to receive indications after a write of a variable or when you receive a variable follow the model described in Subsection 4 8 of this chapter 11 If you want to send and receive messages see Subsection 1 6 of Chapter 2 for an overview if you want to use the periodic messaging then you have to create a periodic channel by calling the function fdm_channel_create the channel number should be 1 to 8 create a messaging context used only for the transmission of messages by calling the function fdm_messaging_to_send_create see Chapter 3 if the channel is aperiodic then the Channel Nr field of the structure FPDM_ MESSAGING_TO_SEND should be 0 otherwise if it is periodic this field must be set to the value used when creating the pe
210. wing this processing FDM stores the received SM_MPS variable in a queue and calls the User_Signal_Smmps callback function 6 The User_Signal_ Smmps callback function must activate a task that implements the action below 7 The task activated by the User_Signal_Smmps function has to call the fdm_smmps_fifo_empty function This call activates FIP DEVICE MANAGER to empty the queue and to signal the event to the user Page 1 24 FIP DEVICE MANAGER Software Version 4 User Reference Manual ALS 50278 e en General introduction FIP DEVICE MANAGER calls a user callback procedure The address of this procedure which is transmitted to FDM by the function fdm_initialize_network is the field User_Present_List_ Prog of FOM CONFIGURATION SOFT structure it is called if the fdm_read_present_list function is used is the field User_Identification_Prog of FDM_ CONFIGURATION SOFT structure it is called if the fdm_read_identification function is used is the field User_Report_Prog of FDM_ CONFIGURATION SOFT structure it is if the fdm_read_report function is used is the field User Presence Prog of FDM CONFIGURATION SOFT structure it is called if the fdm_read_presence function is used is the field User_Synchro_BA_Prog of FDM CONFIGURATION SOFT structure it is called if the fdm_read_ba_synchronize function is used Don t call the dm_smmps_fifo_empty function inside the body of User Signal Smmps function The execution context of the fdm_smmps_fi
Download Pdf Manuals
Related Search
Related Contents
Massive Table lamp 37679/48/10 RAMOS Optima - standard manual v1.1 クリシスイ ー` 取扱説明書 BAI-219 Manual de Instrucciones Philips Viva Collection Hand blender HR1616/00 Le clivage de l`objet et la clinique contemporaine Proofm 3.21.07 User Manual SG2 PLR USER Manual HP 200 250 G3 03-3960-75ー ー httm//wwwjeskk Copyright © All rights reserved.
Failed to retrieve file