IEC 61158-6-4:2014
(Main)Industrial communication networks - Fieldbus specifications - Part 6-4: Application layer protocol specification - Type 4 elements
Industrial communication networks - Fieldbus specifications - Part 6-4: Application layer protocol specification - Type 4 elements
IEC 61158-6-4-:2014 defines the protocol provided to define the wire-representation of the service primitives defined in IEC 61158-5-4, and define the externally visible behavior associated with their transfer. This standard specifies the protocol of the Type 4 fieldbus application layer, in conformance with the OSI Basic Reference Model (ISO/IEC 7498-1) and the OSI application layer structure (ISO/IEC 9545). This secod edition cancels and replaces the first edition published in 2007 and constitutes a technical revision. The main changes are: editorial improvements and corrections.
Réseaux de communication industriels - Spécifications des bus de terrain - Partie 6-4: Spécification du protocole de la couche application - Eléments de type 4
L'IEC 61158-6-4:2014 décrit le protocole mis en place pour définir la représentation filaire des primitives de service définies dans la CEI 61158-5-4 et définir le comportement visible de l'extérieur associé à leur transfert. La présente norme spécifie le protocole de la couche application de bus de terrain de Type 4, en conformité avec le modèle de référence de base OSI (ISO/CEI 7498-1) et la structure de la couche application OSI (ISO/CEI 9545). Cette deuxième édition annule et remplace la première édition parue en 2007. Elle constitue une révision technique. Les principales modifications sont: améliorations éditoriales et corrections éditoriales.
General Information
Relations
Standards Content (Sample)
IEC 61158-6-4 ®
Edition 2.0 2014-08
INTERNATIONAL
STANDARD
NORME
INTERNATIONALE
Industrial communication networks – Fieldbus specifications –
Part 6-4: Application layer protocol specification – Type 4 elements
Réseaux de communication industriels – Spécifications des bus de terrain –
Partie 6-4: Spécification du protocole de la couche application – Eléments
de type 4
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form
or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from
either IEC or IEC's member National Committee in the country of the requester. If you have any questions about IEC
copyright or have an enquiry about obtaining additional rights to this publication, please contact the address below or
your local IEC member National Committee for further information.
Droits de reproduction réservés. Sauf indication contraire, aucune partie de cette publication ne peut être reproduite
ni utilisée sous quelque forme que ce soit et par aucun procédé, électronique ou mécanique, y compris la photocopie
et les microfilms, sans l'accord écrit de l'IEC ou du Comité national de l'IEC du pays du demandeur. Si vous avez des
questions sur le copyright de l'IEC ou si vous désirez obtenir des droits supplémentaires sur cette publication, utilisez
les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pays de résidence.
IEC Central Office Tel.: +41 22 919 02 11
3, rue de Varembé Fax: +41 22 919 03 00
CH-1211 Geneva 20 info@iec.ch
Switzerland www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigenda or an amendment might have been published.
IEC Catalogue - webstore.iec.ch/catalogue Electropedia - www.electropedia.org
The stand-alone application for consulting the entire The world's leading online dictionary of electronic and
bibliographical information on IEC International Standards, electrical terms containing more than 30 000 terms and
Technical Specifications, Technical Reports and other definitions in English and French, with equivalent terms in 14
documents. Available for PC, Mac OS, Android Tablets and additional languages. Also known as the International
iPad. Electrotechnical Vocabulary (IEV) online.
IEC publications search - www.iec.ch/searchpub IEC Glossary - std.iec.ch/glossary
The advanced search enables to find IEC publications by a More than 55 000 electrotechnical terminology entries in
variety of criteria (reference number, text, technical English and French extracted from the Terms and Definitions
committee,…). It also gives information on projects, replaced clause of IEC publications issued since 2002. Some entries
and withdrawn publications. have been collected from earlier publications of IEC TC 37,
77, 86 and CISPR.
IEC Just Published - webstore.iec.ch/justpublished
Stay up to date on all new IEC publications. Just Published IEC Customer Service Centre - webstore.iec.ch/csc
details all new publications released. Available online and If you wish to give us your feedback on this publication or
also once a month by email. need further assistance, please contact the Customer Service
Centre: csc@iec.ch.
A propos de l'IEC
La Commission Electrotechnique Internationale (IEC) est la première organisation mondiale qui élabore et publie des
Normes internationales pour tout ce qui a trait à l'électricité, à l'électronique et aux technologies apparentées.
A propos des publications IEC
Le contenu technique des publications IEC est constamment revu. Veuillez vous assurer que vous possédez l’édition la
plus récente, un corrigendum ou amendement peut avoir été publié.
Catalogue IEC - webstore.iec.ch/catalogue Electropedia - www.electropedia.org
Application autonome pour consulter tous les renseignements
Le premier dictionnaire en ligne de termes électroniques et
bibliographiques sur les Normes internationales,
électriques. Il contient plus de 30 000 termes et définitions en
Spécifications techniques, Rapports techniques et autres
anglais et en français, ainsi que les termes équivalents dans
documents de l'IEC. Disponible pour PC, Mac OS, tablettes
14 langues additionnelles. Egalement appelé Vocabulaire
Android et iPad.
Electrotechnique International (IEV) en ligne.
Recherche de publications IEC - www.iec.ch/searchpub
Glossaire IEC - std.iec.ch/glossary
Plus de 55 000 entrées terminologiques électrotechniques, en
La recherche avancée permet de trouver des publications IEC
en utilisant différents critères (numéro de référence, texte, anglais et en français, extraites des articles Termes et
comité d’études,…). Elle donne aussi des informations sur les Définitions des publications IEC parues depuis 2002. Plus
projets et les publications remplacées ou retirées. certaines entrées antérieures extraites des publications des
CE 37, 77, 86 et CISPR de l'IEC.
IEC Just Published - webstore.iec.ch/justpublished
Service Clients - webstore.iec.ch/csc
Restez informé sur les nouvelles publications IEC. Just
Published détaille les nouvelles publications parues. Si vous désirez nous donner des commentaires sur cette
Disponible en ligne et aussi une fois par mois par email. publication ou si vous avez des questions contactez-nous:
csc@iec.ch.
IEC 61158-6-4 ®
Edition 2.0 2014-08
INTERNATIONAL
STANDARD
NORME
INTERNATIONALE
Industrial communication networks – Fieldbus specifications –
Part 6-4: Application layer protocol specification – Type 4 elements
Réseaux de communication industriels – Spécifications des bus de terrain –
Partie 6-4: Spécification du protocole de la couche application – Eléments
de type 4
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
COMMISSION
ELECTROTECHNIQUE
PRICE CODE
INTERNATIONALE
CODE PRIX W
ICS 25.040.40; 35.100.70; 35.110 ISBN 978-2-8322-1758-0
– 2 – IEC 61158-6-4:2014 © IEC 2014
CONTENTS
FOREWORD . 5
INTRODUCTION . 7
1 Scope . 8
1.1 General . 8
1.2 Specifications . 8
1.3 Conformance . 9
2 Normative references . 9
3 Terms, definitions, symbols, abbreviations and conventions . 9
3.1 Referenced terms and definitions . 9
3.2 Abbreviations and symbols . 11
3.3 Conventions . 11
4 FAL syntax description . 13
4.1 FAL-AR PDU abstract syntax . 13
4.2 Data types . 15
5 Transfer syntaxes . 15
5.1 APDU encoding . 15
5.2 Variable object encoding and packing . 19
5.3 Error codes . 22
6 FAL protocol state machines . 22
7 AP-context state machine . 23
8 FAL service protocol machine (FSPM) . 24
8.1 Primitives exchanged between FAL User and FSPM . 24
8.2 FSPM states . 24
9 Application relationship protocol machine (ARPM) . 29
9.1 Primitives exchanged between ARPM and FSPM . 29
9.2 ARPM States . 30
10 DLL mapping protocol machine (DMPM) . 32
10.1 Data-link Layer service selection . 32
10.2 Primitives exchanged between ARPM and DLPM . 32
10.3 Primitives exchanged between DLPM and data-link layer . 32
10.4 DLPM states . 33
11 Protocol options . 35
Bibliography . 36
Figure 1 – State transition diagram . 12
Figure 2 – APDU header structure . 15
Figure 3 – Instruction subfield of ControlStatus . 16
Figure 4 – Errorcode subfield of ControlStatus . 16
Figure 5 – Remaining subfields of ControlStatus . 17
Figure 6 – DataFieldFormat encoding . 17
Figure 7 – Structure of request APDU body . 17
Figure 8 – Structure of response APDU body . 18
Figure 9 – Variable identifier . 18
Figure 10 – Code subfield of variable identifier . 18
Figure 11 – Summary of FAL architecture . 23
Figure 12 – FSPM proxy object state machine . 25
Figure 13 – FSPM real object state machine . 28
Figure 14 – ARPM state machine . 30
Figure 15 – DLPM state machine . 33
Table 1 – State machine description elements . 12
Table 2 – APDU header . 13
Table 3 – APDU body . 14
Table 4 – Transfer syntax for Array . 20
Table 5 – Transfer syntax for Structure . 21
Table 6 – Common variable object attributes . 21
Table 7 – Variable type identifiers . 21
Table 8 – FIFO variable object attributes . 22
Table 9 – Error codes . 22
Table 10 – Primitives exchanged between FAL-User and FSPM . 24
Table 11 – REQUEST.req FSPM constraints . 25
Table 12 – REQUEST.req FSPM actions . 25
Table 13 – RESPONSE.cnf FSPM constraints . 27
Table 14 – RESPONSE.cnf FSPM actions . 27
Table 15 – AR Send.ind proxy FSPM constraints . 28
Table 16 – AR Send.ind proxy FSPM actions . 28
Table 17 – AR Send.ind real FSPM constraints . 29
Table 18 – AR Send.ind real FSPM Actions . 29
Table 19 – Primitives issued by FSPM to ARPM . 29
Table 20 – Primitives issued by ARPM to FSPM . 30
– 4 – IEC 61158-6-4:2014 © IEC 2014
Table 21 – Primitives issued by ARPM to ARPM . 30
Table 22 – AR Send.req ARPM constraints . 30
Table 23 – AR Send.req ARPM actions . 30
Table 24 – AR Acknowledge.req ARPM constraints . 31
Table 25 – AR Acknowledge.req ARPM actions . 31
Table 26 – AR Send.ind ARPM constraints . 31
Table 27 – AR Send.req ARPM actions . 31
Table 28 – Primitives issued by ARPM to DLPM . 32
Table 29 – Primitives issued by DLPM to ARPM . 32
Table 30 – Primitives issued by DLPM to data-link layer . 33
Table 31 – Primitives issued by data-link layer to DLPM . 33
Table 32 – AR Send.req DLPM constraints . 33
Table 33 – AR Send.req DLPM actions . 34
Table 34 – AR Acknowledge.req DLPM constraints . 34
Table 35 – AR Acknowledge.req DLPM actions . 34
Table 36 – DL-UNITDATA.ind DLPM constraints . 34
Table 37 – DL-UNITDATA.ind DLPM actions . 35
INTERNATIONAL ELECTROTECHNICAL COMMISSION
____________
INDUSTRIAL COMMUNICATION NETWORKS –
FIELDBUS SPECIFICATIONS –
Part 6-4: Application layer protocol specification –
Type 4 elements
FOREWORD
1) The International Electrotechnical Commission (IEC) is a worldwide organization for standardization comprising
all national electrotechnical committees (IEC National Committees). The object of IEC is to promote
international co-operation on all questions concerning standardization in the electrical and electronic fields. To
this end and in addition to other activities, IEC publishes International Standards, Technical Specifications,
Technical Reports, Publicly Available Specifications (PAS) and Guides (hereafter referred to as “IEC
Publication(s)”). Their preparation is entrusted to technical committees; any IEC National Committee interested
in the subject dealt with may participate in this preparatory work. International, governmental and non-
governmental organizations liaising with the IEC also participate in this preparation. IEC collaborates closely
with the International Organization for Standardization (ISO) in accordance with conditions determined by
agreement between the two organizations.
2) The formal decisions or agreements of IEC on technical matters express, as nearly as possible, an international
consensus of opinion on the relevant subjects since each technical committee has representation from all
interested IEC National Committees.
3) IEC Publications have the form of recommendations for international use and are accepted by IEC National
Committees in that sense. While all reasonable efforts are made to ensure that the technical content of IEC
Publications is accurate, IEC cannot be held responsible for the way in which they are used or for any
misinterpretation by any end user.
4) In order to promote international uniformity, IEC National Committees undertake to apply IEC Publications
transparently to the maximum extent possible in their national and regional publications. Any divergence
between any IEC Publication and the corresponding national or regional publication shall be clearly indicated in
the latter.
5) IEC itself does not provide any attestation of conformity. Independent certification bodies provide conformity
assessment services and, in some areas, access to IEC marks of conformity. IEC is not responsible for any
services carried out by independent certification bodies.
6) All users should ensure that they have the latest edition of this publication.
7) No liability shall attach to IEC or its directors, employees, servants or agents including individual experts and
members of its technical committees and IEC National Committees for any personal injury, property damage or
other damage of any nature whatsoever, whether direct or indirect, or for costs (including legal fees) and
expenses arising out of the publication, use of, or reliance upon, this IEC Publication or any other IEC
Publications.
8) Attention is drawn to the Normative references cited in this publication. Use of the referenced publications is
indispensable for the correct application of this publication.
9) Attention is drawn to the possibility that some of the elements of this IEC Publication may be the subject of
patent rights. IEC shall not be held responsible for identifying any or all such patent rights.
Attention is drawn to the fact that the use of the associated protocol type is restricted by its
intellectual-property-right holders. In all cases, the commitment to limited release of
intellectual-property-rights made by the holders of those rights permits a layer protocol type to
be used with other layer protocols of the same type, or in other type combinations explicitly
authorized by its intellectual-property-right holders.
NOTE Combinations of protocol types are specified in IEC 61784-1 and IEC 61784-2.
International Standard IEC 61158-6-4 has been prepared by subcommittee 65C: Industrial
networks, of IEC technical committee 65: Industrial-process measurement, control and
automation.
This second edition cancels and replaces the first edition published in 2007. This edition
constitutes an technical revision.
– 6 – IEC 61158-6-4:2014 © IEC 2014
This edition includes the following significant changes with respect to the previous edition:
a) editorial improvements;
b) editorial corrections.
The text of this standard is based on the following documents:
FDIS Report on voting
65C/764/FDIS 65C/774/RVD
Full information on the voting for the approval of this standard can be found in the report on
voting indicated in the above table.
This publication has been drafted in accordance with ISO/IEC Directives, Part 2.
A list of all the parts of the IEC 61158 series, under the general title Industrial communication
networks – Fieldbus specifications, can be found on the IEC web site.
The committee has decided that the contents of this publication will remain unchanged until
the stability date indicated on the IEC web site under http://webstore.iec.ch in the data related
to the specific publication. At this date, the publication will be:
• reconfirmed;
• withdrawn;
• replaced by a revised edition, or
• amended.
INTRODUCTION
This part of IEC 61158 is one of a series produced to facilitate the interconnection of
automation system components. It is related to other standards in the set as defined by the
“three-layer” fieldbus reference model described in IEC 61158-1.
The application protocol provides the application service by making use of the services
available from the data-link or other immediately lower layer. The primary aim of this standard
is to provide a set of rules for communication expressed in terms of the procedures to be
carried out by peer application entities (AEs) at the time of communication. These rules for
communication are intended to provide a sound basis for development in order to serve a
variety of purposes:
• as a guide for implementors and designers;
• for use in the testing and procurement of equipment;
• as part of an agreement for the admittance of systems into the open systems environment;
• as a refinement to the understanding of time-critical communications within OSI.
This standard is concerned, in particular, with the communication and interworking of sensors,
effectors and other automation devices. By using this standard together with other standards
positioned within the OSI or fieldbus reference models, otherwise incompatible systems may
work together in any combination.
– 8 – IEC 61158-6-4:2014 © IEC 2014
INDUSTRIAL COMMUNICATION NETWORKS –
FIELDBUS SPECIFICATIONS –
Part 6-4: Application layer protocol specification –
Type 4 elements
1 Scope
1.1 General
The fieldbus application layer (FAL) provides user programs with a means to access the
fieldbus communication environment. In this respect, the FAL can be viewed as a “window
between corresponding application programs.”
This standard provides common elements for basic time-critical and non-time-critical
messaging communications between application programs in an automation environment and
material specific to Type 4 fieldbus. The term “time-critical” is used to represent the presence
of a time-window, within which one or more specified actions are required to be completed
with some defined level of certainty. Failure to complete specified actions within the time
window risks failure of the applications requesting the actions, with attendant risk to
equipment, plant and possibly human life.
This standard specifies interactions between remote applications and defines the externally
visible behavior provided by the Type 4 fieldbus application layer in terms of
a) the formal abstract syntax defining the application layer protocol data units conveyed
between communicating application entities;
b) the transfer syntax defining encoding rules that are applied to the application layer
protocol data units;
c) the application context state machine defining the application service behavior visible
between communicating application entities;
d) the application relationship state machines defining the communication behavior visible
between communicating application entities.
The purpose of this standard is to define the protocol provided to
1) define the wire-representation of the service primitives defined in IEC 61158-5-4, and
2) define the externally visible behavior associated with their transfer.
This standard specifies the protocol of the Type 4 fieldbus application layer, in conformance
with the OSI Basic Reference Model (ISO/IEC 7498-1) and the OSI application layer structure
(ISO/IEC 9545).
1.2 Specifications
The principal objective of this standard is to specify the syntax and behavior of the application
layer protocol that conveys the application layer services defined in IEC 61158-5-4.
A secondary objective is to provide migration paths from previously-existing industrial
communications protocols. It is this latter objective which gives rise to the diversity of
protocols standardized in IEC 61158-6 series.
1.3 Conformance
This standard do not specify individual implementations or products, nor do they constrain the
implementations of application layer entities within industrial automation systems.
Conformance is achieved through implementation of this application layer protocol
specification.
2 Normative references
The following documents, in whole or in part, are normatively referenced in this document and
are indispensable for its application. For dated references, only the edition cited applies. For
undated references, the latest edition of the referenced document (including any
amendments) applies.
NOTE All parts of the IEC 61158 series, as well as IEC 61784-1 and IEC 61784-2 are maintained simultaneously.
Cross-references to these documents within the text therefore refer to the editions as dated in this list of normative
references.
IEC 61158-3-4, Industrial communication networks – Fieldbus specifications – Part 3-4: Data-
link layer service definition – Type 4 elements
IEC 61158-5-4, Industrial communication networks – Fieldbus specifications – Part 5-4:
Application layer service definition – Type 4 elements
IEC 61158-6:2003, Digital data communications for measurement and control – Fieldbus for
use in industrial control systems – Part 6: Application layer protocol specification
IEC 61158-6 (all subparts), Industrial communication networks – Fieldbus specifications –
Part 6: Application layer protocol specification
ISO/IEC 7498-1, Information technology – Open Systems Interconnection – Basic Reference
Model – Part1: The Basic Model
ISO/IEC 8822, Information technology – Open Systems Interconnection – Presentation
service definition
ISO/IEC 8824-1, Information technology – Abstract Syntax Notation One (ASN.1):
Specification of basic notation
ISO/IEC 9545, Information technology – Open Systems Interconnection – Application Layer
structure
ISO/IEC 10731, Information technology – Open Systems Interconnection – Basic Reference
Model – Conventions for the definition of OSI services
3 Terms, definitions, symbols, abbreviations and conventions
For the purposes of this document, the following terms, definitions, symbols, abbreviations
and conventions apply.
3.1 Referenced terms and definitions
3.1.1 ISO/IEC 7498-1 terms
For the purposes of this document, the following terms as defined in ISO/IEC 7498-1 apply:
This standard has been superseded by the IEC 61158-6 series
– 10 – IEC 61158-6-4:2014 © IEC 2014
a) application entity
b) application process
c) application protocol data unit
d) application service element
e) application entity invocation
f) application process invocation
g) application transaction
h) real open system
i) transfer syntax
3.1.2 ISO/IEC 8822 terms
For the purposes of this document, the following terms as defined in ISO/IEC 8822 apply:
a) abstract syntax
b) presentation context
3.1.3 ISO/IEC 9545 terms
For the purposes of this document, the following terms as defined in ISO/IEC 9545 apply:
a) application-association
b) application-context
c) application context name
d) application-entity-invocation
e) application-entity-type
f) application-process-invocation
g) application-process-type
h) application-service-element
i) application control service element
3.1.4 ISO/IEC 8824-1 terms
For the purposes of this document, the following terms as defined in ISO/IEC 8824-1 apply:
a) object identifier
b) type
3.1.5 Fieldbus data-link layer terms
For the purposes of this document, the following terms as defined in IEC 61158-3-4 and
IEC 61158-4-4 apply.
a) DL-Time
b) DL-Scheduling-policy
c) DLCEP
d) DLC
e) DL-connection-oriented mode
f) DLPDU
g) DLSDU
h) DLSAP
i) network address
j) node address
k) node
3.2 Abbreviations and symbols
Application Entity
AE
Application Layer
AL
Application Layer Entity
ALE
Application Protocol Data Unit
APDU
Application Relationship
AR
Application Relationship End Point
AREP
Application Service Element
ASE
Confirmation
Cnf
(as a prefix) Data-link-
DL-
Data-link Connection End Point
DLCEP
Data-link Layer
DLL
DLE Data-link Entity
Data-link-management
DLM
Data-link Service
DLS
Data-link Service Access Point
DLSAP
DL-service-data-unit
DLSDU
FAL Management Entity
FME
Indication
Ind
Internet Protocol
IP
Protocol Data Unit
PDU
Request
Req
Response
Rsp
System Management Entity
SME
Confirm Primitive
.cnf
Indication Primitive
.ind
Request Primitive
.req
.rsp Response Primitive
3.3 Conventions
3.3.1 General concept
The FAL is defined as a set of object-oriented ASEs. Each ASE is specified in a separate
subclause. Each ASE specification is composed of three parts: its class definitions, its
services, and its protocol specification. The first two are contained in IEC 61158-5-4. The
protocol specification for each of the ASEs is defined in this standard.
The class definitions define the attributes of the classes supported by each ASE. The
attributes are accessible from instances of the class using the Management ASE services
specified in IEC 61158-5-4 standard. The service specification defines the services that are
provided by the ASE.
This standard uses the descriptive conventions given in ISO/IEC 10731.
– 12 – IEC 61158-6-4:2014 © IEC 2014
3.3.2 Conventions for state machines for Type 4
A state machine describes the state sequence of an entity and can be represented by a state
transition diagram and/or a state table.
In a state transition diagram (Figure 1), the transition between two states represented by
circles is illustrated by an arrow beside which the transition events or conditions are
presented.
R1
S
S
Figure 1 – State transition diagram
Table 1 – State machine description elements
Events or conditions that trigger this state
Current transaction
# Next state
state =>
action
Name of The current Events or conditions that trigger this state The next state after the
this state to transaction. actions in this transition is
transition which this => taken
state The actions that are taken when the above events
transition or
applies conditions are met. The actions are always indented
below events or conditions
The conventions used in the state transition table (Table 1) are as follows.
:= Value of an item on the left is replaced by value of an item on the right. If an item on
the right is a parameter, it comes from the primitive shown as an input event.
xxx A parameter name.
Example:
Identifier := reason
means value of a 'reason' parameter is assigned to a parameter called 'Identifier.'
"xxx" Indicates fixed value.
Example:
Identifier := "abc"
means value "abc" is assigned to a parameter named 'Identifier.'
= A logical condition to indicate an item on the left is equal to an item on the right.
< A logical condition to indicate an item on the left is less than the item on the right.
> A logical condition to indicate an item on the left is greater than the item on the
right.
<> A logical condition to indicate an item on the left is not equal to an item on the
right.
&& Logical "AND"
|| Logical "OR"
Service.req represents a Request Primitive; Service.req{} indicates that a request
primitive is sent;
Service.ind represents an Indication Primitive; Service.ind{} indicates that an Indication
Primitive is received;
Service.rsp represents a Response Primitive; Service.rsp{} indicates that a Response
Primitive is sent;
Service.cnf represents a Confirm Primitive; Service.cnf{} indicates that a Confirm
Primitive is received.
4 FAL syntax description
4.1 FAL-AR PDU abstract syntax
4.1.1 General
The information stored in an APDU depends on whether the APDU holds a request or a
response. The role of the state machine that encodes the APDU (the FSPM) determines how
the APDU is encoded.
APDUs always consist of an APDU header and an APDU body. In response APDUs the APDU
body may be empty.
4.1.2 Abstract syntax of APDU header
Table 2 defines the contents of the APDU header.
Table 2 – APDU header
Field name Subfield name Possible values Constraint (present if) Comment
ControlStatus Instruction Errorcode
Write
Read
And
Or
Test-And-Set
Segmented Read
Segmented Write
ControlStatus Errorcode Described in ControlStatus.Instruction
Figure 3 to Figure 5 = Errorcode
ControlStatus Addressing method Variable Object ControlStatus.Instruction
<> Errorcode
Flat
ControlStatus ActualDataError NoActualError ControlStatus.Instruction Used by the responding
<> Errorcode user application to
ActualError
indicate, that an actual
error may affect the
accessed Variable
Object
ControlStatus HistoricalDataError NoHistoricalError ControlStatus.Instruction Used by the responding
<> Errorcode user application to
HistoricalError
indicate, that an error
may have affected the
accessed Variable
Object
DataFieldFormat Offset/Attribute No Offset/Attribute Indicates, whether the
APDU Body holds an
Offset/Attribute
Offset/Attribute field
DataFieldFormat Variable Identifier Simple APDU is a request APDU Indicates the format of
Format the Variable Identifier in
Complex
a request APDU
– 14 – IEC 61158-6-4:2014 © IEC 2014
Field name Subfield name Possible values Constraint (present if) Comment
DataFieldFormat Offset/Attribute Integer16 APDU is a response Indicates the size of the
size APDU AND Offset/Attribute field of
Integer32
DataFieldFormat.Offset/A the APDU Body
ttribute = Offset/Attribute
DataLength min. 2 Indicates the total length
of the APDU Body.
MaxDataSize indicates
the max length of the
data part of the APDU
Body.
4.1.3 Abstract syntax of APDU body
The APDU header indicates the interpretation of the contents of the APDU body.
Table 3 defines the contents of the APDU body.
Table 3 – APDU body
Field name Subfield name Possible values Constraint (present if) Comment
VariableIdentifier Code.Bitaddressing No BitAddressing APDU is a request If this field indicates
APDU AND APDU BitAddressing, the
BitAddressing
Header indicates VariableIdentifier also
Complex holds a Bit-no
VariableIdentifier
VariableIdentifier Code.Bit-no 0 to 7 APDU is a request Bit-no selects a bit
APDU AND APDU within one octet. Bit-no
Header indicates = 0 selects bit 1 etc.
Complex The octet is selected by
VariableIdentifier AND Offset/Attribute.
VariableIdentifier
indicates BitAddressing
VariableIdentifier Code.Offset/Attribute Integer16 APDU is a request
size APDU AND
Integer32
DataFieldFormat.Variabl
e Identifier Format =
Complex AND
DataFieldFormat.Offset/
Attribute =
Offset/Attribute
VariableIdentifier ID -32 768 to APDU is a request
APDU AND
+32 767
DataFieldFormat.Variabl
e Identifier Format =
Simple
VariableIdentifier ID -8 388 608 to APDU is a request
APDU AND
+8 388 607
DataFieldFormat.Variabl
e Identifier Format =
Complex
Offset/Attribute -32 768 APDU is a request Negative values select
APDU AND attribute, positive
+32 767
DataFieldFormat.Offset/ values select part of
Attribute = constructed variable
Offset/Attribute AND
VariableIdentifier.Code.
Offset/Attribute size =
Integer16
Field name Subfield name Possible values Constraint (present if) Comment
Offset/Attribute -2 147 483 648 to APDU is a request Negative values select
+2 147 483 647 APDU AND attribute, positive
DataFieldFormat.Offset/ values select part of
Attribute = constructed variable
Offset/Attribute AND
VariableIdentifier.Code.
Offset/Attribute size =
Integer32
Offset/Attribute -32 768 to APDU is a response Negative values select
APDU AND attribute, positive
+32 767
DataFieldFormat.Offset/ values select part of
Attribute = constructed variable
Offset/Attribute AND
DataFieldFormat.Offset/
Attribute size= Integer16
Offset/Attribute -2 147 483 648 to APDU is a response Negative values select
+2 147 483 647 APDU AND attribute, positive
DataFieldFormat.Offset/ values select part of
Attribute = constructed variable
Offset/Attribute AND
DataFieldFormat.Offset/
Attribute size= Integer32
Data Any
RequestedLength 0 to 65 535 APDU is a request Indicates the length of
APDU AND data to Read, as the
ControlStatus.Instruction number of octets
indicates Read OR
Segmented Read
Sequence 0 to 2 APDU is a request Indicates whether this
APDU AND request is the first, one
ControlStatus.Instruction in the middle, or the last
indicates Segmented of a segmented
Read OR Segmented transfer.
Write
4.2 Data types
The notation for data types is the same as IEC 61158-6:2003, Type 1, for the following types:
• Integer, Integer8, Integer16, Integer32
• Unsigned, Unsigned8, Unsigned16
• Floating32, Floating64
5 Transfer syntaxes
5.1 APDU encoding
5.1.1 APDU Header encoding
5.1.1.1 APDU header structure
The abstract syntax of the APDU header is defined in 4.1.2. Subclause 5.1 describes the
encoding of the header. The APDU header consists of three fields, as shown in Figure 2.
One octet One octet 4 octets
ControlStatus DataFieldFormat DataLength
Figure 2 – APDU header structure
– 16 – IEC 61158-6-4:2014 © IEC 2014
5.1.1.2 ControlStatus
ControlStatus is coded into one octet. The interpretation of this octet depends on the
instruction subfield. The coding of the instruction subfield is shown in Figure 3.
8 7 6 5 4 3 2 1
000 Errorcode
001 Store
010 Load
011 And
100 Or
101 Test-And-Set
110 Segmented Load
111 Segmented Store
Figure 3 – Instruction subfield of ControlStatus
If the instruction is = 000 ( = Errorcode), the remaining five bits of ControlStatus holds the
error code. The possible values are shown in Figure 4.
8 7 6 5 4 3 2 1
= 0 00 ( = Errorcode)
00000 No response
00001 Time out
00011 Wait too long
00100 FIFO full or empty
00101 Data fo rmat error
00110 Variable Object ID e rror
00111 Route error
01000 Write p rotection
01001 Info lengt h err or
01010 Instruct ion Error
10000 CRC Error
10001 Overrun/Framing error
10010 Net short circuit
10011 DLE not client
10100 Out of sync
10101 RS-232 handshake error
Figure 4 – Errorcode subfield of ControlStatus
If the instruction is <> 000 (<> Errorcode), the remaining five bits of ControlStatus holds the
subfields addressing method, ActualDataError and HistoricalDataError. The coding of these
fields is shown in Figure 5.
8 7 6 5 4 3 2 1
<> 000 (<> Errorcode)
Addressing method
0: Variable object
1: Flat
ActualDataError
0: No ActualError
1: Actua lError
HistoricalDataError
0: No HistoricalError
1: HistoricalError
Figure 5 – Remaining subfields of ControlStatus
5.1.1.3 DataFieldFormat
DataFieldFormat is coded into one octet. The coding of this octet is shown in Figure 6.
8 7 6 5 4 3 2 1
Don't care
Offset/Attribute
0: No Offset/Attribute
1: Offset/Attribute
Varia ble I dentifi er Format
0: Simple
1: Complex
Figure 6 – DataFieldFormat encoding
5.1.1.4 DataLength
DataLength is an Integer32, indicating the total length of the APDU body.
5.1.2 APDU body encoding
5.1.2.1 APDU body structure
The abstract syntax for the APDU Body is described in 4.1.3. Subclause 5.1.2 describes the
encoding. The interpretation of the APDU Body is indicated by the APDU header.
A request APDU body may consist of up to four of five possible fields, as shown in Figure 7.
2 or 4 octets 0, 2 or 4 octets 0 – Max PDU size octets 0-2 octets 0 or 1 octet
Var iable I dentifi er Offset/Attribute Data RequestedLength Sequence
Figure 7 – Structure of request APDU body
A response APDU body may consist of up to two fields, as shown in Figure 8.
– 18 – IEC 61158-6-4:2014 © IEC 2014
0, 2 or 4 octets 0 – Max PDU size octets
Offset/Attribute Data
Figure 8 – Structure of response APDU body
5.1.2.2 Variable identifier
The Variable Identifier can be either simple or complex. If it is simple, it consists of only one
subfield, ID, which is of type Integer16. If it is complex, it consists of two subfields, code (1
octet) and ID (3 octets) as shown in Figure 9.
1 octets 3 octets
Code ID
Figure 9 – Variable identifier
The coding of the Code subfield of the variable identifier is shown in Figure 10.
8 7 6 5 4 3 2 1
Bit-no (0-7)
Don't care
Offset/Attr ibute size
0: Integer16
1: Integer32
Bitaddressing
0: No BitAddressing
1:BitAddressing
Figure 10 – Code subfield of variable identifier
5.1.2.3 Offset/attribute
The Offset/Attribute subfield of the APDU body may or may not be present. If pr
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...