FPGAProgrammingHandcodeFrameworkFPGAInterfaceReference
FPGAProgrammingHandcodeFrameworkFPGAInterfaceReference
If possible, always provide the serial number of the hardware, the relevant dSPACE License
ID, or the serial number of the CmContainer in your support request.
Important Notice
This publication contains proprietary information that is protected by copyright. All rights
are reserved. The publication may be printed for personal or internal use provided all the
proprietary markings are retained on all printed copies. In all other cases, the publication
must not be copied, photocopied, reproduced, translated, or reduced to any electronic
medium or machine-readable form, in whole or in part, without the prior written consent
of dSPACE GmbH.
This publication and the contents hereof are subject to change without notice.
Contents
3
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Contents
Register64 In................................................................................................. 66
Register Out.................................................................................................. 68
Register64 Out.............................................................................................. 69
Resolver........................................................................................................ 71
Status In........................................................................................................ 74
UART (RS232)................................................................................... ............ 74
UART (RS422/485)............................................................................ ............ 79
4
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Contents
5
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Contents
6
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Contents
7
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Contents
8
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Contents
9
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Contents
Index 475
10
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
About This Reference
Content This reference provides detailed information about the I/O functions provided
by the FPGA handcode frameworks of your dSPACE installation. For example, it
contains descriptions of the parameters and ports of the available functions.
Symbol Description
Indicates a hazardous situation that, if not avoided,
V DANGER
will result in death or serious injury.
Indicates a hazardous situation that, if not avoided,
V WARNING could result in death or serious injury.
Indicates a hazardous situation that, if not avoided,
V CAUTION could result in minor or moderate injury.
Indicates a hazard that, if not avoided, could result in
NOTICE
property damage.
Indicates important information that you should take
Note
into account to avoid malfunctions.
Indicates tips that can make your work easier.
Tip
Indicates a link that refers to a definition in the
glossary, which you can find at the end of the
document unless stated otherwise.
11
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
About This Reference
Symbol Description
Follows the document title in a link that refers to
another document.
Naming conventions dSPACE user documentation uses the following naming conventions:
Special Windows folders Windows‑based software products use the following special folders:
Accessing dSPACE Help and After you install and decrypt Windows‑based dSPACE software, the
PDF files documentation for the installed products is available in dSPACE Help and as PDF
files.
dSPACE Help (local) You can open your local installation of dSPACE Help:
§ On its home page via Windows Start Menu
§ On specific content using context-sensitive help via F1
PDF files You can access PDF files via the icon in dSPACE Help. The PDF
opens on the first page.
12
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
General Information on the I/O Functions Available with FPGA Frameworks
Introduction Overview of the I/O functions provided by the FPGA Programming Handcode
Framework.
13
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Introduction The DS1202 FPGA I/O Type 1 frameworks are the standard frameworks
supporting MicroLabBox. They provide access to analog and digital signals, and
to the internal bus buffers and registers.
Framework location Depending on the use case, there are two frameworks:
§ Framework to handcode a custom FPGA application without using the
standard I/O features:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS1302_XC7K325T
§ Framework to handcode a custom FPGA application that additionally supports
the standard I/O features to use remaining I/O channels with the RTI
blocksets/Real-Time Libraries (RTLib) for MicroLabBox:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS1302_XC7K325T_FLEXIBLEIO
14
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Frameworks Available for MicroLabBox
For each I/O function category a specific range of channels is reserved. With the
I/O function number, you can specify a specific I/O function and its corresponding
channel.
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application.
Functions for exchanging data The following I/O functions can be used to exchange data with the I/O of
with the I/O module MicroLabBox's DS1302 board.
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
I/O Function Purpose Available I/O Function
Channels Numbering
Interrupt To implement interrupt 32 1 … 32
handling.
Status In To get information on 1 1
the state of the FPGA
programming sequence.
15
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the DS1202 FPGA I/O Type 1
Framework on page 43. The parameter and port descriptions additionally
contain more descriptive names for a simple identification of the parameters and
ports. For example, Fct(<IOFunction_Number>).Parameter(1).Init / Binary point
position describes the Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL or
Verilog code. In your Vivado project, you must adapt the related cm file to
the required FPGA functionality. For further information, refer to Specifying the
FPGA Functionality (FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL or Verilog code, you must configure the
corresponding I/O function in the handcode FPGA framework INI file. Most
of the I/O function parameters configure the function behavior. For further
information, refer to Specifying the FPGA I/O Interface (FPGA Programming
Handcode Framework Guide ).
Introduction The DS1303 (KU15P) Multi-I/O Board framework is the standard framework
supporting MicroLabBox II. It provides access to analog and digital signals, and to
the IOCNET buffers and registers.
16
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Frameworks Available for MicroLabBox II
For each I/O function category a specific range of channels is reserved. With the
I/O function number, you can specify a specific I/O function and its corresponding
channel.
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application.
Functions for exchanging data The following I/O functions can be used to exchange data with the I/O of
with the I/O module MicroLabBox's DS1302 board.
17
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
Parameters and ports For detailed information on the I/O functions and their parameters
and ports, refer to the function descriptions in I/O Functions of the
DS1303 (KU15P) Multi-I/O Board Framework on page 85. The parameter
and port descriptions additionally contain more descriptive names for
a simple identification of the parameters and ports. For example,
Fct(<IOFunction_Number>).Parameter(1).Init / Binary point position describes the
Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL or
Verilog code. In your Vivado project, you must adapt the related cm file to
the required FPGA functionality. For further information, refer to Specifying the
FPGA Functionality (FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL or Verilog code, you must configure the
corresponding I/O function in the handcode FPGA framework INI file. Most
of the I/O function parameters configure the function behavior. For further
information, refer to Specifying the FPGA I/O Interface (FPGA Programming
Handcode Framework Guide ).
References
18
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS2655 FPGA Base Board Frameworks
Introduction The frameworks comes with the DS2655 FPGA Base Board, providing access to
APU signals, and to the IOCNET buffers and registers.
Each variant of the DS2655 FPGA Base Board is supported by its own
framework:
§ DS2655 (7K160) FPGA Base Board framework
§ DS2655 (7K410) FPGA Base Board framework
Framework location The location of the frameworks depends on the used variant of the DS2655
FPGA Base Boards:
§ DS2655 (7K160) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K160T
§ DS2655 (7K410) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K410T
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application, either with 32 bit or with 64 bit data width.
For detailed information, refer to I/O Functions of the DS2655 FPGA Base Board
Framework on page 125.
19
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
I/O Function Purpose Available I/O Function
Channels Numbering
Interrupt To implement interrupt 8 1…8
handling.
Status In To get information on the 1 1
state of the FPGA programming
sequence.
CN App Status To get information on the state 1 2
of the controller application.
LED Out To set the LED on the board's 1 1
bracket.
IOCNET Global To implement angle-based 1 3
Timer applications.
APU Master 6 2…7
APU Slave 6 4…9
I-FPGA In To implement inter-FPGA 32 10 … 41
(IOCNET) communication between FPGA
I-FPGA64 In base boards via IOCNET. 32 42 … 73
(IOCNET)
I-FPGA Out 32 8 … 39
(IOCNET)
I-FPGA64 Out 32 40 … 71
(IOCNET)
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the DS2655 FPGA Base
Board Framework on page 125. The parameter and port descriptions additionally
contain more descriptive names for a simple identification of the parameters and
ports. For example, Fct(<IOFunction_Number>).Parameter(1).Init / Binary point
position describes the Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For further information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
20
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS6601 FPGA Base Board Frameworks
Introduction The DS6601 (KU035) FPGA Base Board framework comes with the DS6601
FPGA Base Board, providing access to APU signals, and to the IOCNET buffers
and registers.
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application, either with 32 bit or with 64 bit data width.
For detailed information, refer to I/O Functions of the DS6601 FPGA Base Board
Framework on page 159.
21
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
I/O Function Purpose Available I/O Function
Channels Numbering
Interrupt To implement interrupt 16 1 … 16
handling.
Status In To get information on the state 1 1
of the FPGA programming
sequence.
CN App Status To get information on the state 1 2
of the controller application.
Watchdog To check if the processor 1 75
application is alive.
LED Out To set the LED on the board's 1 1
bracket.
IOCNET Global To implement angle-based 1 3
Timer applications.
APU Master 6 2…7
APU Slave 6 4…9
I-FPGA In To implement inter-FPGA 32 11 … 42
(IOCNET) communication between FPGA
I-FPGA64 In base boards via IOCNET. 32 43 … 74
(IOCNET)
I-FPGA Out 32 8 … 39
(IOCNET)
I-FPGA64 Out 32 40 … 71
(IOCNET)
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the DS6601 FPGA Base
Board Framework on page 159. The parameter and port descriptions additionally
contain more descriptive names for a simple identification of the parameters and
ports. For example, Fct(<IOFunction_Number>).Parameter(1).Init / Binary point
position describes the Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For further information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
22
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS6602 FPGA Base Board Frameworks
Introduction The DS6602 (KU15P) FPGA Base Board framework comes with the DS6602 FPGA
Base Board, providing access to APU signals, and to the IOCNET buffers and
registers.
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application, either with 32 bit or with 64 bit data width.
For detailed information, refer to I/O Functions of the DS6602 FPGA Base Board
Framework on page 193.
23
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
I/O Function Purpose Available I/O Function
Channels Numbering
Interrupt To implement interrupt 16 1 … 16
handling.
Status In To get information on the state 1 1
of the FPGA programming
sequence.
CN App Status To get information on the state 1 2
of the controller application.
Watchdog To check if the processor 1 75
application is alive.
LED Out To set the LED on the board's 1 1
bracket.
IOCNET Global To implement angle-based 1 3
Timer applications.
APU Master 6 2…7
APU Slave 6 4…9
DDR4 32 Mode To provide read/write access to 1 8
1 the DDR4 RAM.
DDR4 32 Mode 1 9
2
DDR4 64 Mode 1 10
1
DDR4 64 Mode 1 11
2
I-FPGA In To implement inter-FPGA 32 11 … 42
(IOCNET) communication between FPGA
I-FPGA64 In base boards via IOCNET. 32 43 … 74
(IOCNET)
I-FPGA Out 32 12 … 43
(IOCNET)
I-FPGA64 Out 32 44 … 75
(IOCNET)
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the DS6602 FPGA Base
Board Framework on page 193. The parameter and port descriptions additionally
contain more descriptive names for a simple identification of the parameters and
ports. For example, Fct(<IOFunction_Number>).Parameter(1).Init / Binary point
position describes the Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
24
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS2655M1 I/O Module Framework
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
Introduction The DS2655M1 I/O Module framework comes with the DS2655M1 Multi-I/O
Module, providing access to analog and digital signals.
Framework location The location of the frameworks depends on the used variant of the SCALEXIO
FPGA base board:
§ DS2655 (7K160) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K160T
§ DS2655 (7K410) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K410T
§ DS6601 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6601_XCKU035
§ DS6602 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6602_XCKU15P
Functions for exchanging data The DS2655M1 Multi-I/O Module is an I/O module for the SCALEXIO FPGA base
with the I/O module boards. A SCALEXIO FPGA Base Board and one or more I/O modules mounted
25
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
together and connected via ribbon cables form an FPGA board in a SCALEXIO
system.
The following I/O functions can be used to exchange data with the I/O of the
DS2655M1 Multi-I/O Module. Because you can use up to five I/O modules,
you have to specify not only the I/O function number and the channel number
to configure a specific I/O function, but also the module number. The module
number is the number of the slot the I/O module is connected to.
For detailed information, refer to I/O Functions of the DS2655M1 I/O Module
Framework on page 237.
Parameters and ports For detailed information on the I/O functions and their parameters and
ports, refer to the function descriptions in I/O Functions of the DS2655M1
I/O Module Framework on page 237. The parameter and port descriptions
additionally contain more descriptive names for a simple identification of the
parameters and ports. For example, IOProperties.In.Fct(<IOFunction_Number> +
ioInOffset<Module_number>).Parameter(3).Init / Input range describes the Input
Range parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For further information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
26
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS2655M2 I/O Module Framework
Introduction The DS2655M2 I/O Module framework comes with the DS2655M2 Digital I/O
Module, providing access to digital signals.
Framework location The location of the frameworks depends on the used variant of the SCALEXIO
FPGA base board:
§ DS2655 (7K160) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K160T
§ DS2655 (7K410) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K410T
§ DS6601 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6601_XCKU035
§ DS6602 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6602_XCKU15P
Note
To use DS2655M2 Digital I/O Modules, you must additionally copy files from
the RTL folder of the DS2655M2 I/O Module framework folder into your
project once and customize them. Refer to Configuring the FPGA Code
With the Specified I/O Interface (FPGA Programming Handcode Framework
Guide ).
Functions for exchanging data The DS2655M2 Digital I/O Module is an I/O module for the SCALEXIO FPGA base
with the I/O module boards. A SCALEXIO FPGA base board and one or more I/O modules mounted
together and connected via ribbon cables form an FPGA board in a SCALEXIO
system.
The following I/O functions can be used to exchange data with the I/O of the
DS2655M2 Digital I/O Module. Because you can use up to five I/O modules,
you have to specify not only the I/O function number and the channel number
to configure a specific I/O function, but also the module number. The module
number is the number of the slot the I/O module is connected to.
27
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
For detailed information, refer to I/O Functions of the DS2655M2 I/O Module
Framework on page 249.
Parameters and ports For detailed information on the I/O functions and their parameters and
ports, refer to the function descriptions in I/O Functions of the DS2655M2
I/O Module Framework on page 249. The parameter and port descriptions
additionally contain more descriptive names for a simple identification of the
parameters and ports. For example, IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(8).Init / Threshold init voltage describes
the Threshold init voltage parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For further information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
28
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS6651 Multi-I/O Module Framework
Introduction The DS6651 Multi-I/O Module framework comes with the DS6651 Multi-I/O
Module, providing access to digital signals.
Framework location The location of the frameworks depends on the used variant of the SCALEXIO
FPGA base board:
§ DS2655 (7K160) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K160T
§ DS2655 (7K410) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K410T
§ DS6601 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6601_XCKU035
§ DS6602 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6602_XCKU15P
Note
To use DS6651 Multi-I/O Modules, you must additionally copy files from
the RTL folder of the DS6651 Multi-I/O Module framework folder into your
project once and customize them. Refer to Configuring the FPGA Code
With the Specified I/O Interface (FPGA Programming Handcode Framework
Guide ).
Functions for exchanging data The DS6651 Multi-I/O Module is an I/O module for the SCALEXIO FPGA base
with the I/O module boards. A SCALEXIO FPGA base board and one or more I/O modules mounted
together and connected via ribbon cables form an FPGA board in a SCALEXIO
system.
The following I/O functions can be used to exchange data with the I/O of the
DS6651 Multi-I/O Module. Because you can use up to five I/O modules, you
have to specify not only the I/O function number and the channel number to
configure a specific I/O function, but also the module number. The module
number is the number of the slot the I/O module is connected to.
29
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
The I/O functions of the DS6651 Multi-I/O Module framework share the digital
I/O channels that provide the digital I/O functionality. The DS6651 Multi-I/O
Module provides 16 digital I/O channels. Some I/O channels provide only specific
I/O functionalities, and some I/O functions use more than one I/O channel. These
channel dependencies and I/O channel sharing limit the number of I/O functions
that can be implemented.
For the data sheet of the DS6651 Multi-I/O Module, refer to DS6651 Multi-I/O
Module (SCALEXIO Hardware Installation and Configuration ).
For details on the signal mapping to optimize channel usage, refer to Supported
Digital Functions and Related I/O Channels (SCALEXIO Hardware Installation and
Configuration ).
For detailed information, refer to I/O Functions of the DS6651 Multi-I/O Module
Framework on page 269.
Parameters and ports For detailed information on the I/O functions and their parameters and
ports, refer to the function descriptions in I/O Functions of the DS6651 Multi-
I/O Module Framework on page 269. The parameter and port descriptions
additionally contain more descriptive names for a simple identification of the
parameters and ports. For example, IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(8).Init / Threshold init voltage describes
the Threshold init voltage parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For further information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For further information, refer to
30
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the DS660X_MGT Framework
Framework location The location of the frameworks depends on the used variant of the SCALEXIO
FPGA base board:
§ DS6601 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6601_XCKU035
§ DS6602 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6602_XCKU15P
Functions for MGT The following I/O functions can be used to exchange data via the MGT
communication communication bus.
31
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Parameters and ports For detailed information on the I/O functions and their parameters and
ports, refer to the function descriptions in I/O Functions of the DS660X_MGT
Framework on page 299. Additionally, the parameter and port descriptions
contain more descriptive names for a simple identification of the parameters
and ports. For example, hcfw.IOProperties.In.Fct(<ChannelNumber+8> +
ioInOffset(ioModuleNr)).HcCustomName / Channel name describes the Channel
name parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For more information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For more information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
Framework location The location of the frameworks depends on the used variant of the SCALEXIO
FPGA base board:
§ DS2655 (7K160) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K160T
§ DS2655 (7K410) FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS2655_XC7K410T
§ DS6601 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6601_XCKU035
§ DS6602 FPGA Base Board:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\
DS6602_XCKU15P
32
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Inter-FPGA Interface Framework
Functions for inter-FPGA Inter-FPGA communication is a point-to-point connection between the I/O
communication module slots of the SCALEXIO FPGA base boards.
NOTICE
The following I/O functions can be used. Because you can use up to five I/O
module slots, you have to specify the channel number to configure a specific
I/O function and the used I/O module slot. The module number represents the
number of the slot the I/O module is connected to.
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the Inter-FPGA Interface
Framework on page 313. Additionally, the parameter and port descriptions
contain more descriptive names for a simple identification of the parameters
and ports. For example, hcfw.IOProperties.In.Fct(<ChannelNumber+8> +
ioInOffset(ioModuleNr)).HcCustomName / Channel name describes the Channel
name parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL code.
In your Vivado project, you must adapt the related cm file to the required FPGA
functionality. For more information, refer to Specifying the FPGA Functionality
(FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL code, you must configure the corresponding
I/O function in the handcode FPGA framework INI file. Most of the I/O function
parameters configure the function behavior. For more information, refer to
Specifying the FPGA I/O Interface (FPGA Programming Handcode Framework
Guide ).
33
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Introduction The FPGA1401Tp1 frameworks are the standard frameworks for MicroAutoBox II
1401/1511/1514 and MicroAutoBox II 1401/1513/1514 with one of the
following I/O modules:
§ DS1552 Multi-I/O Module
§ DS1552B1 Multi-I/O Module
§ DS1554 Engine Control I/O Module
The frameworks provide access to analog and digital signals, and to the
intermodule-bus buffers and registers.
Framework location Depending on the I/O module, there are three frameworks.
34
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Frameworks Available for MicroAutoBox II (FPGA1401Tp1)
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application.
Functions for exchanging data The following I/O functions can be used to exchange data with the I/O modules.
with the I/O module
DS1552 and DS1552B1 Multi-I/O Modules
Refer to I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module
Framework on page 367.
35
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
DS1552 and DS1552B1 Multi-I/O Modules
36
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Frameworks Available for MicroAutoBox III (FPGA1403Tp1)
Refer to I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module
Framework on page 367.
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the FPGA1401Tp1
with Multi-I/O Module Frameworks on page 323 and I/O Functions of the
FPGA1401Tp1 with Engine Control I/O Module Framework on page 367.
The parameter and port descriptions additionally contain more descriptive
names for a simple identification of the parameters and ports. For example,
Fct(<IOFunction_Number>).Parameter(1).Init / Binary point position describes the
Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL or
Verilog code. In your Vivado project, you must adapt the related cm file to
the required FPGA functionality. For further information, refer to Specifying the
FPGA Functionality (FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL or Verilog code, you must configure the
corresponding I/O function in the handcode FPGA framework INI file. Most
of the I/O function parameters configure the function behavior. For further
information, refer to Specifying the FPGA I/O Interface (FPGA Programming
Handcode Framework Guide ).
The frameworks provide access to analog and digital signals, and to the
intermodule-bus buffers and registers.
Framework location Depending on the I/O module, there are three frameworks.
37
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Functions for exchanging data The following I/O functions can be used to exchange data with the processor
with the processor application application.
Functions for exchanging data The following I/O functions can be used to exchange data with the I/O modules.
with the I/O module
DS1552 and DS1552B1 Multi-I/O Modules
38
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Overview of the Frameworks Available for MicroAutoBox III (FPGA1403Tp1)
Refer to I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module
Framework on page 443.
Additional I/O functions for The following I/O functions can be used for special purposes.
special purposes
DS1552 and DS1552B1 Multi-I/O Modules
39
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
Refer to I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module
Framework on page 443.
Parameters and ports For detailed information on the I/O functions and their parameters and ports,
refer to the function descriptions in I/O Functions of the FPGA1403Tp1
with Multi-I/O Module Frameworks on page 399 and I/O Functions of the
FPGA1403Tp1 with Engine Control I/O Module Framework on page 443.
The parameter and port descriptions additionally contain more descriptive
names for a simple identification of the parameters and ports. For example,
Fct(<IOFunction_Number>).Parameter(1).Init / Binary point position describes the
Binary point position parameter of the I/O function.
The port definitions are required to specify the FPGA functionality in VHDL or
Verilog code. In your Vivado project, you must adapt the related cm file to
the required FPGA functionality. For further information, refer to Specifying the
FPGA Functionality (FPGA Programming Handcode Framework Guide ).
For each accessed port in the VHDL or Verilog code, you must configure the
corresponding I/O function in the handcode FPGA framework INI file. Most
of the I/O function parameters configure the function behavior. For further
information, refer to Specifying the FPGA I/O Interface (FPGA Programming
Handcode Framework Guide ).
40
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Unsupported Features of the FPGA Programming Handcode Framework
Introduction The FPGA Programming Handcode Framework does not support all features
that are provided by the FPGA Interface sublibrary of the FPGA Programming
Blockset.
Unsupported features The following FPGA features are exclusively provided by the FPGA Interface
blocks of the FPGA Programming Blockset:
§ FPGA Scope functionality to capture time sequences of FPGA signals.
FPGA Scope blocks can capture an FPGA signal with the time resolution of
the FPGA clock to display the signal in ControlDesk. The handcode framework
does not provide this feature.
§ FPGA signal tracing via FPGA variables that are automatically added to the
FPGA application during the build process.
§ Support of tunable FPGA constants that can be adjusted at run time.
§ FPGA test access and scaling to modify the I/O signals at run time.
§ Support of multiple FPGA clock domains.
The FPGA interface of the handcode framework must be used with the base
rate of the FPGA board. You can handcode FPGA subsystems with other clock
domains, but the handcode framework does not support you in handcoding
such subsystems.
§ Support of multicore processor applications.
A multicore processor application cannot access a handcoded FPGA
application from different processor cores. However, each processor core can
access its own FPGA board if the real-time hardware provides multiple FPGA
boards.
§ Support of scaling subsystems.
Scaling subsystems are used to preprocess or postprocess processor signals.
Scaling subsystems are part of the FPGA model, although they are executed
by the real-time processor. The handcode framework does not provide this
feature.
§ MGT support for MicroLabBox II.
41
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
General Information on the I/O Functions Available with FPGA Frameworks
42
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Buffer In.................................................................................................. 47
To read data from an internal bus buffer with a data width of 32 bits.
Buffer64 In.............................................................................................. 49
To read data from an internal bus buffer with a data width of 64 bits.
Buffer Out............................................................................................... 50
To write data to an internal bus buffer with a data width of 32 bits.
Buffer64 Out........................................................................................... 52
To write data to an internal bus buffer with a data width of 64 bits.
Buzzer..................................................................................................... 54
To generate an acoustic signal.
43
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Interrupt.................................................................................................. 62
To request a processor interrupt outside of the FPGA application.
LED Out................................................................................................... 62
To write a digital signal that controls the color of one FPGA status LED on
the board.
Register In............................................................................................... 64
To read data from an internal bus register with a data width of 32 bits.
Register64 In........................................................................................... 66
To read data from an internal bus register with a data width of 64 bits.
Register Out............................................................................................ 68
To write data to an internal bus register with a data width of 32 bits.
Register64 Out........................................................................................ 69
To write data to an internal bus register with a data width of 64 bits.
Resolver................................................................................................... 71
To get the rotor's position via a resolver sensor in the FPGA application.
Status In.................................................................................................. 74
To read a digital signal that outputs the state of the FPGA initialization
sequence.
UART (RS232).......................................................................................... 74
To implement communication via serial interface for RS232 UART type.
UART (RS422/485)................................................................................... 79
To implement communication via serial interface for RS422/485 UART
type.
ADC (Class 1)
Purpose To read data from an analog input signal in the FPGA application using the class
1 A/D conversion function.
44
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Class 1)
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
45
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
ADC (Class 2)
Purpose To read data from an analog input signal in the FPGA application using the
class 2 A/D conversion function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
46
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
Buffer In
Purpose To read data from an internal bus buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an internal bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (fraction width) Lets you specify the binary point position or
returns the fraction width of the Data outport depending on the format selected
in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
47
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
48
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
Buffer Out................................................................................................................................ 50
Buffer64 In............................................................................................................................... 49
Overview of the Frameworks Available for MicroLabBox........................................................... 14
Buffer64 In
Purpose To read data from an internal bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an internal bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
49
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunction_Number>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Buffer In................................................................................................................................... 47
Buffer64 Out............................................................................................................................ 52
Overview of the Frameworks Available for MicroLabBox........................................................... 14
Buffer Out
Purpose To write data to an internal bus buffer with a data width of 32 bits.
50
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Description If you select Buffer as the access type, the data is written to an internal bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
51
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Buffer In................................................................................................................................... 47
Buffer64 Out............................................................................................................................ 52
Overview of the Frameworks Available for MicroLabBox........................................................... 14
Buffer64 Out
Purpose To write data to an internal bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is written to an internal bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
52
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
53
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
filled. The data values will be written to a new buffer in the next clock cycle.
While the port value is 1, transmission switches buffer in every clock cycle. The
value should therefore be set for one clock cycle only. If the buffer is completely
filled, it is automatically switched, and the data values are stored in a new buffer.
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready for sending, even if it is not completely filled.
The buffer is switched and the data values are accessible via the internal bus in
the next clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Buffer Out................................................................................................................................ 50
Buffer64 In............................................................................................................................... 49
Overview of the Frameworks Available for MicroLabBox........................................................... 14
Buzzer
Description You can add the Buzzer I/O function to your application to access the board's
buzzer.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
54
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buzzer
buzzer_start / Start Starts the buzzer if the value is 1 for one clock cycle.
The started buzzer outputs the specified acoustic signal. New values of the
Frequency, Beep Duration, Pause Duration, and Beep Count ports take
effect immediately. For example: If you change the value of the Frequency port
to 0, the buzzer stops the generation of an acoustic signal immediately.
Data type: UFix1_0
Range: 0 or 1
55
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
DAC (Class 1)
Purpose To write data to an analog output signal in the FPGA application using the class
1 D/A conversion function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The signals are available at the Analog Out connector.
56
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital InOut (Class 1)
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
Purpose To read or write data to a digital I/O signal in the FPGA application using the
class 1 digital I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Invert
values Lets you specify whether to invert the input and output values of the
digital channel.
§ 0: The values are not inverted.
§ 1: The values are inverted.
57
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Input
filter Lets you specify the minimum pulse length for detecting a valid input in
the range 0 … 10,000,000 ns.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / High
supply Lets you specify the high level voltage for the digital outputs.
§ 0: 5 V
§ 1: 3.3 V
§ 2: 2.5 V
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is much smaller than the update rate.
For information on the electrical characteristics of the DS1302 board, refer
to Digital Class 1 I/O (Bidirectional) (MicroLabBox Hardware Installation and
Configuration ).
58
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital InOut (Class 1)
Note
The frequency that can be generated is much smaller than the update rate.
For information on the electrical characteristics of the DS1302 board, refer
to Digital Class 1 I/O (Bidirectional) (MicroLabBox Hardware Installation and
Configuration ).
I/O mapping The signals are available at the Digital I/O connector.
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
59
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Purpose To read or write data to a digital I/O signal in the FPGA application using the
class 2 digital I/O functions.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Invert
values Lets you specify whether to invert the input and output values of the
digital channel.
§ 0: The values are not inverted.
§ 1: The values are inverted.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Input
filter Lets you specify the minimum pulse length for detecting a valid input in
the range 0 … 10,000,000 ns.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
60
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital InOut (Class 2)
Note
The frequency that can be generated is much smaller than the update rate.
For information on the electrical characteristics of the DS1302 board, refer
to Digital Class 2 I/O (Bidirectional) (MicroLabBox Hardware Installation and
Configuration ).
Note
The frequency that can be generated is much smaller than the update rate.
For information on the electrical characteristics of the DS1302 board, refer
to Digital Class 2 I/O (Bidirectional) (MicroLabBox Hardware Installation and
Configuration ).
I/O mapping The signals are available at the Digital I/O connector.
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
61
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Interrupt
Description MicroLabBox provides 32 interrupt lines. An interrupt is requested if the Int port
is set to 1 for at least one clock cycle. If you set the Int port to 0, the last
interrupt is not released but saved. An interrupt is edge-triggered.
Parameters The Interrupt I/O function can be used for up to 32 channels / interrupt lines.
You will find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
LED Out
Purpose To write a digital signal that controls the color of one FPGA status LED on the
board.
62
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Proc App Status
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Purpose To read the status of application that is running on the computation node.
63
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Description There is one digital input channel that is used for the Proc App Status I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an internal bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an internal bus
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
64
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the internal bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
65
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
and then back to 0, the requested register contains a new value. The flag is set
to 1 only within one clock cycle.
Register64 In
Purpose To read data from an internal bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an internal bus
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
66
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunction_Number>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the internal bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
67
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Register Out
Purpose To write data to an internal bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is written to an internal bus
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are read
68
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
from the nternal bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Purpose To write data to an internal bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is written to an internal bus
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
69
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init /
Register64 group ID Lets you specify a number in the range 1 … 63 to
create register groups. Registers that you specified with the same group ID
are read from the nternal bus sequentially and then provided to the FPGA
application simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
70
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Resolver
Resolver
Purpose To get the rotor's position via a resolver sensor in the FPGA application.
This I/O function is not taken into account if you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / Desired
excitation frequency Lets you specify the frequency of the sine signal to be
used for the excitation of the resolver rotor in the range 2,000 Hz … 20,000 Hz
in steps of 250 Hz.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Excitation
RMS voltage Lets you specify the voltage level of the excitation output
signal:
§ 0: 3.0 VRMS
§ 1: 7.0 VRMS
§ 2: 10.0 VRMS
71
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(5).Init / Maximum
speed Lets you specify the maximum speed to be measured in revolutions
per minute. By specifying the speed range, you set the related resolution.
§ 0: Specifies a maximum speed of 150,000 rpm and a resolution of 10 bits.
§ 1: Specifies a maximum speed of 60,000 rpm and a resolution of 12 bits.
§ 2: Specifies a maximum speed of 30,000 rpm and a resolution of 14 bits.
§ 3: Specifies a maximum speed of 7500 rpm and a resolution of 16 bits.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
72
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Resolver
Each bit in the 8‑bit value represents a specific fault if its value is 1:
§ Bit 0 (LSB): Configuration parity error
§ Bit 1: Phase lock
§ Bit 2: Velocity too high
§ Bit 3: Loss of tracking
§ Bit 4: Degradation of signal mismatch
§ Bit 5: Degradation of signal overrange
§ Bit 6: Inputs loss of signal
§ Bit 7: Inputs clipped
Data type: UFix_1_0
Data width: 8
For more information on the status information, refer to Resolver Interface
(MicroLabBox Features ).
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
73
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
References
Status In
Purpose To read a digital signal that outputs the state of the FPGA initialization sequence.
Description The DS1302 framework provides one digital input channel for the Status In I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
Data type: UFix_1_0
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
UART (RS232)
Purpose To implement communication via serial interface for RS232 UART type.
74
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART (RS232) and UART (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range 50 … 1,000,000
baud (bits per second).
The baud rate depends on the parameters 2, 3 and 4, and can be calculated by
the following formula:
BaudRate = (10^8 · uart_x_dcm_m) / (4 · uart_x_dcm_d
· (uart_dcm_clk_divider+1))
With:
Note
Limitations:
§ The maximum baud rate of 1,000,000 baud must not be exceeded.
Tip
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
75
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
type Lets you specify the UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init /
Termination Lets you specify the termination state.
Note
For the RS232 UART type, the termination must be set to 0 (disconnected).
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
There is only one section in the file that is valid for both UART types.
76
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
77
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Do not use the Write_Data_Count signal to check the status of the buffer
(Write_Data_Count<2047), because this requires two clock cycles before its
value is valid, instead of one clock cycle when using the Write_Fifo_Full signal.
Range: 0 … 2047
I/O mapping The signals are available at the RS232 (422/485) connector.
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
78
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
UART (RS422/485)
Purpose To implement communication via serial interface for RS422/485 UART type.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART (RS232) and UART (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range
50 … 10,000,000 baud (bits per second).
The baud rate depends on the parameters 2, 3 and 4, and can be calculated by
the following formula:
BaudRate = (10^8 · uart_x_dcm_m) / (4 · uart_x_dcm_d · (uart_dcm_clk_divider+1))
With:
79
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
Tip
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
mode Lets you specify the mode when using the RS422/485 UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init / UART
type Lets you specify the UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init /
Termination Lets you specify the termination state.
80
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
There is only one section in the file that is valid for both UART types.
81
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
I/O mapping The signals are available at the RS232 (422/485) connector.
MicroLabBox has static mapping between I/O signals and I/O pins. The signal
name is also printed on the housing of MicroLabBox. You have to consider only
the connector panel type.
82
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
83
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1202 FPGA I/O Type 1 Framework
84
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Introduction The DS1303 (KU15P) Multi-I/O Board framework provides the custom I/O
functionality of the MicroLabBox II.
Analog In 23........................................................................................... 86
To read data from an analog input signal in the FPGA application.
Analog In 24........................................................................................... 88
To read data from an analog input signal in the FPGA application.
Analog In 25........................................................................................... 89
To read data from an analog input signal in the FPGA application.
APU Master............................................................................................. 93
To distribute angle values over IOCNET for synchronizing angle-based
applications.
APU Slave................................................................................................ 95
To read angle values distributed by an APU Master over IOCNET for
synchronizing angle-based applications.
Buffer In.................................................................................................. 97
To read data from an IOCNET buffer with a data width of 32 bits.
Buffer Out............................................................................................... 99
To write data to an IOCNET buffer with a data width of 32 bits.
85
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Interrupt................................................................................................ 113
To request a processor interrupt outside of the FPGA application.
Analog In 23
Purpose To measure an analog voltage signal using the Analog In 23 channel type.
Description The Analog In 23 I/O function lets you measure differential analog voltage
signals in the range ±10 V.
86
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In 23
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Ports The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping For the I/O mapping, refer to Analog In 23 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
87
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Analog In 24
Purpose To measure an analog voltage signal using the Analog In 24 channel type.
Description The Analog In 24 I/O function lets you measure differential analog voltage
signals in the range ±1 V or ±10 V.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / Input
range Lets you specify the input voltage range that can be converted from
analog to digital for the chosen ADC channel:
§ 0: The input voltage range is ±10 V.
§ 1: The input voltage range is ±1 V.
Input voltages outside the specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Ports The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
88
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In 25
Range: 0 or 1
If the flag changes from 0 to 1, the ADC data contains a new value. The flag is
set to 1 for only one clock cycle.
I/O mapping For the I/O mapping, refer to Analog In 24 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
Analog In 25
Purpose To measure an analog voltage signal using the Analog In 25 channel type.
Description The Analog In 25 I/O function lets you measure differential analog voltage
signals in the range ±1 V or ±10 V.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / Input
range Lets you specify the input voltage range that can be converted from
analog to digital for the chosen ADC channel:
§ 0: The input voltage range is ±10 V.
§ 1: The input voltage range is ±1 V.
Input voltages outside the specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Ports The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
89
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
I/O mapping For the I/O mapping, refer to Analog In 25 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
Analog Out 19
Purpose To output an analog voltage signal using the Analog Out 19 channel type.
Description The Analog Out 19 I/O function lets you generate differential analog voltage
signals with ground sense in the range ±10 V.
90
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog Out 19
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping For the I/O mapping, refer to Analog Out 19 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
91
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Analog Out 20
Purpose To output an analog voltage signal using the Analog Out 20 channel type.
Description The Analog Out 20 I/O function lets you generate a differential signal with
ground sense (±10 V DC) or a transformer-coupled signal (±20 V AC).
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Noise
amplitude Lets you enable a pseudo-random noise that is added to the
generated output signal.
Value range: 0 … 65,535 (216-1)
Resulting noise amplitude: 0 V … 10 V (direct output) or 0 V … 20 V
(transformer-coupled output)
Set the noise amplitude to 0 to disable the noise generation.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init /
Transformer Lets you switch between the direct output and the transformer-
coupled output.
§ 0: Direct output with a voltage range of ±10 V DC.
§ 1: Transformer-coupled output with a voltage range of ±20 V AC.
This electrical interface setting can be changed in ConfigurationDesk.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
92
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Master
I/O mapping For the I/O mapping, refer to Analog Out 20 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
APU Master
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Angle
range Lets you specify the angle value range of the Phi Read port.
§ 0: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ 1: The angle range is 360° and cannot be changed in ConfigurationDesk.
93
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Initial
position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
iocnet_glob_master_angle<ChannelNumber>_res / Angle
Range Specifies the angle value range of Phi Read.
§ 0: 720° angle range
§ 1: 360° angle range
94
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Slave
iocnet_glob_master_angle<ChannelNumber>_upd_vel_deg_sec /
Velocity Specifies a velocity value in degree/second to be applied as APU
Master speed.
The value will be applied if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: Fix_32_10
Data width: 1
Value range: -1,200,000 °/s ... +1,200,000 °/s
Range exceeding is not possible. The port is saturated at the higher or lower
limit.
iocnet_glob_master_angle<ChannelNumber>_upd_trig / Set
Velocity Specifies the actual value of Velocity as new velocity value. The new
value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Notes on updating velocity values:
§ Setting the velocity values at very short intervals (e.g. every 80 ns) leads to high
data traffic on IOCNET.
High data traffic might freeze your MicroLabBox II.
§ Setting a new velocity value before the last setting is executed overwrites the
last setting.
To distribute and execute a new velocity value takes about 10 µs. If the APU
master always sets new velocity values before the last value is executed, the
velocity value will never change.
References
APU Slave
Purpose To read angle values distributed by an APU Master over IOCNET for synchronizing
angle-based applications.
95
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
96
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
The APU bus clock cycle is 8 ns. The 37 bit range is -236 … 236 - 1.
Data type: Double
Data width: 1
Range exceeding is not possible.
References
Buffer In
Purpose To read data from an IOCNET buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32,768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
97
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
The I/O function number can be specified in the range 257 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (fraction width) Lets you specify the binary point position or
returns the fraction width of the Data outport depending on the format selected
in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
98
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
then back to 0, the requested buffer contains new values and is ready to be
read. The flag is set to 1 only within one clock cycle.
References
Buffer Out
Description If you select Buffer as the access type, the data is written to an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32,768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
99
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
100
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
References
Buffer64 In
Purpose To read data from an IOCNET buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32,768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
101
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunction_Number>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
102
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
References
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32,768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
103
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
104
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
CN App Status
References
CN App Status
Purpose To read the status of application that is running on the computation node.
Description There is one digital input channel that is used for the CN App Status I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
References
105
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Purpose To read data from a digital signal with the FPGA application.
Description The Digital In/Out 14 (In) I/O function lets you measure ground-based digital
signals.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(4).Init / Invert
values Lets you select whether to invert the input and output values of the
digital channel.
§ 0: The Data port does not invert the values: A logical 1 represents a low-high
transition of the physical signal.
§ 1: The Data port inverts the values: A logical 1 represents a high-low transition
of the physical signal.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel.
If the input signal is below this level, a logical 0 is detected, otherwise a logical 1.
Value range: 0 ... 255 (-100 mV ... 12,288 mV).
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Disable
filter Lets you disable the input filter:
§ 1: The input filter is disabled.
§ 0: The input filter is enabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(11).Init / Input
filter Lets you specify the minimum pulse length for detecting a valid input in
the range 0 ns … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(13).Init / Rising
edge delay Lets you specify whether to use a delay for the rising edge
detection. The delay can be specified in the range 0 … 50,000 ns in steps of
8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
106
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In/Out 14 (In/Out-Z)
I/O mapping For the I/O mapping, refer to Digital In/Out 14 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
Purpose To read or write data to or from a digital signal in the FPGA application, or to
switch the output to a high-impedance state (tristate).
107
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Description The Digital In/Out 14 (In/Out-Z) I/O function lets you access bidirectional
channels to measure or generate ground-based digital signals.
Note
If you use the same digital channel for the input and the output, the
maximum input voltage for the digital input channel is equal to the
specified high supply, and the applicable threshold voltage is lower than
the specified high supply.
To use the maximum input voltage range, you have to use Digital
In/Out 14 (In) I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(4).Init / Invert
values Lets you select whether to invert the input and output values of the
digital channel.
§ 0: The Data port does not invert the values: A logical 1 represents a low-high
transition of the physical signal.
§ 1: The Data port inverts the values: A logical 1 represents a high-low transition
of the physical signal.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Output
Mode Lets you select the output mode.
§ 1: Low-side switch
Lets you actively drive the output to GND to output a low-level signal.
An external load to the high supply voltage is required to output a high-level
signal.
§ 2: High-side switch
Lets you actively drive the output to the high supply voltage to output a
high-level signal.
An external load to GND is necessary to output a low-level signal.
§ 3: Push-pull
Lets you drive the output between the high supply voltage and GND.
An external load is not required.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel.
If the input signal is below this level, a logical 0 is detected, otherwise a logical 1.
Value range: 0 ... 255 (-100 mV ... 12,288 mV).
108
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In/Out 14 (In/Out-Z)
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(11).Init / Disable
filter Lets you disable the input filter:
§ 1: The input filter is disabled.
§ 0: The input filter is enabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(13).Init / Input
filter Lets you specify the minimum pulse length for detecting a valid input in
the range 0 ns … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(15).Init / Rising
edge delay Lets you specify whether to use a delay for the rising edge
detection. The delay can be specified in the range 0 … 50,000 ns in steps of
8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(17).Init / High
supply Lets you specify the high supply voltage that determines the high-level
voltage for the high‑side switch.
§ 0: 3.3 V
§ 1: 5 V
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(19).Init / Drive
Config Lets you specify the high supply voltage that determines the high-level
voltage for the high‑side switch.
§ 0: 3.3 V
§ 1: 5 V
This electrical interface setting can be changed in ConfigurationDesk.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
109
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
I/O mapping For the I/O mapping, refer to Digital In/Out 14 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
References
Digital In/Out 15
Purpose To read/write digital data to the bidirectional interface of the Digital In/Out 15
channel type.
Description The Digital In/Out 15 I/O function lets you access bidirectional channels to
measure or generate differential digital signals.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
110
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In/Out 15
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Invert
values Lets you select whether to invert the input and output values of the
digital channel.
§ 0: The Data port does not invert the values: A logical 1 represents a low-high
transition of the physical signal.
§ 1: The Data port inverts the values: A logical 1 represents a high-low transition
of the physical signal.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(4).Init /
Termination Lets you select whether to invert the input and output values
of the digital channel.
§ 0: The Data port does not invert the values: A logical 1 represents a low-high
transition of the physical signal.
§ 1: The Data port inverts the values: A logical 1 represents a high-low transition
of the physical signal.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Disable
filter Lets you disable the input filter:
§ 1: The input filter is disabled.
§ 0: The input filter is enabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init / Input
filter Lets you specify the minimum pulse length for detecting a valid input in
the range 0 ns … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
111
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Data width: 1
If driven with 0, the hardware outputs a low-level signal. If driven with 1, the
hardware outputs a high-level signal.
Update rate: FPGA clock frequency
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for the bidirectional digital I/O channels. The signals are available at
the female 50-pin Sub-D I/O connector of the respective MicroLabBox II Multi-I/O
Module (x = 1 … 5)..
References
112
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Interrupt
Interrupt
Description MicroLabBox II provides 8 interrupt lines. An interrupt is requested if the Int port
is set to 1 for at least one clock cycle. If you set the Int port to 0, the last
interrupt is not released but saved. An interrupt is edge-triggered.
Parameters The Interrupt I/O function can be used for up to 8 channels / interrupt lines.
You will find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
References
Description There is one digital input channel that is used for the IOCNET Global Time I/O
function.
113
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
References
LED Out
Purpose To write a digital signal that controls the USR LED 1 of the MicroLabBox II.
Description There is one digital output channel that is used for the LED Out I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
114
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
References
Register In
Purpose To read data from an IOCNET register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
115
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
116
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register Out
References
Register Out
Description If you select Register as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
117
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are read
from the IOCNET bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
References
Register64 In
Purpose To read data from an IOCNET register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
118
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunction_Number>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
119
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
References
Register64 Out
Description If you select Register64 as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
120
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init /
Register64 group ID Lets you specify a number in the range 1 … 63 to
create register groups. Registers that you specified with the same group ID
are read from the IOCNET bus sequentially and then provided to the FPGA
application simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
121
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
References
Status In
Purpose To read a digital signal that outputs the state of the FPGA initialization sequence.
Description The DS1303 (KU15P) Multi-I/O Board framework provides one digital input
channel for the Status In I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
Data type: UFix_1_0
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
122
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
References
123
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS1303 (KU15P) Multi-I/O Board Framework
124
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS2655 FPGA Base Board Framework
Introduction The following frameworks of the DS2655 FPGA Base Boards provide the
standard I/O functionality of the boards:
§ DS2655 (7K160) FPGA Base Board framework
§ DS2655 (7K410) FPGA Base Board framework
125
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Interrupt................................................................................................ 148
To request a processor interrupt outside of the FPGA application.
126
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Master
APU Master
Description According to the number of physical connections available on the DS2655 FPGA
Base Board, you can select the APU Master I/O functions. There are six digital
output channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Angle
range Lets you specify the angle value range of the Phi Read port.
§ 0: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ 1: The angle range is 360° and cannot be changed in ConfigurationDesk.
§ 2: The Angle range property of the FPGA custom function block in
ConfigurationDesk lets you set the angle range of the APU. The default value
is 720°.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Initial
position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
127
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
iocnet_glob_master_angle<ChannelNumber>_res / Angle
Range Specifies the angle value range of Phi Read.
§ 0: 720° angle range
§ 1: 360° angle range
iocnet_glob_master_angle<ChannelNumber>_upd_vel_deg_sec /
Velocity Specifies a velocity value in degree/second to be applied as APU
Master speed.
The value will be applied if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: Fix_32_10
Data width: 1
Value range: -1,200,000 °/s ... +1,200,000 °/s
Range exceeding is not possible. The port is saturated at the higher or lower
limit.
iocnet_glob_master_angle<ChannelNumber>_upd_trig / Set
Velocity Specifies the actual value of Velocity as new velocity value. The new
value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Notes on updating velocity values:
§ Setting the velocity values at very short intervals (e.g. every 80 ns) leads to high
data traffic on IOCNET.
High data traffic might freeze your SCALEXIO system.
§ Setting a new velocity value before the last setting is executed overwrites the
last setting.
To distribute and execute a new velocity value takes about 10 µs. If the APU
master always sets new velocity values before the last value is executed, the
velocity value will never change.
128
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Slave
APU Slave
Purpose To read angle values distributed by an APU Master over IOCNET for synchronizing
angle-based applications.
Description According to the number of physical connections available on the DS2655 FPGA
Base Board, you can select the APU Slave I/O functions. There are six digital
input channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
129
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
130
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
Buffer In
Purpose To read data from an IOCNET buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
131
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
132
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
Buffer64 In
Purpose To read data from an IOCNET buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
133
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
134
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Usable only if Enable Read_Req and Send_Ack ports for explicit data
transmit value is enabled in the FPGA framework INI file.
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request that is not acknowledged by the Buffer Out port
Send Acknowledge leads to task overrun in the processor application. A task
overrun will be logged as an I/O error in the Message Viewer of the SCALEXIO
web interface. The FPGA buffer that caused the task overrun will also be logged.
For details on acknowledging a data transmission with Send Acknowledge,
refer to Buffer64 Out on page 137.
Buffer Out
Description If you select Buffer as the access type, the data is written to an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data inport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
135
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 ... 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
136
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
137
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
138
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
139
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
overrun will be logged as an I/O error in the Message Viewer of the SCALEXIO
web interface. The FPGA buffer that caused the task overrun will also be logged.
For details on the port Read Request, refer to Buffer64 In on page 133.
CN App Status
Purpose To read the status of application that is running on the computation node.
Description There is one digital input channel that is used for the CN App Status I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
140
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA In (IOCNET)
I-FPGA In (IOCNET)
Description You can select I-FPGA In (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
The maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_32_0.
141
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
The maximum address range depends on the Buffer size parameter. The address
range with valid data values can be derived from the value of the Data Count
port.
I-FPGA64 In (IOCNET)
Description According to the number of physical connections available on the DS2655 FPGA
Base Board, you can select the I-FPGA64 In (IOCNET) I/O functions. There are
32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
142
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 In (IOCNET)
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512. The
maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_64_0.
143
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Description You can select I-FPGA Out (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
144
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_32_0.
145
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Description You can select I-FPGA64 Out (IOCNET) I/O functions to implement an inter-
FPGA communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
146
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_64_0.
147
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Interrupt
Description The DS2655 FPGA Base Board provides 8 interrupt lines. An interrupt is
requested if the Int port is set to 1 for at least one clock cycle. If you set
the Int port to 0, the last interrupt is not released but saved. An interrupt is
edge-triggered.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
148
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
IOCNET Global Time
Description There is one digital input channel that is used for the IOCNET Global Time I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
LED Out
Purpose To write a digital signal that controls the LED on the board.
149
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Description There is one digital output channel that is used for the LED Out I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an IOCNET register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
150
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
151
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
and then back to 0, the requested register contains a new value. The flag is set
to 1 only within one clock cycle.
Register64 In
Purpose To read data from an IOCNET register with a data width of 64 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
152
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
153
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
Register Out
Description If you select Register as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are read
154
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
from the IOCNET bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Description If you select Register64 as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
155
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init /
Register64 group ID Lets you specify a number in the range 1 … 63 to
create register groups. Registers that you specified with the same group ID
are read from the IOCNET bus sequentially and then provided to the FPGA
application simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
156
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
Status In
Purpose To read a digital signal that outputs the state of the FPGA initialization sequence.
Description There is one digital input channel that is used for the Status In I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
Data type: UFix_1_0
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
157
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655 FPGA Base Board Framework
158
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS6601 FPGA Base Board Framework
Introduction The DS6601 (KU035) FPGA Base Board framework of the DS6601 FPGA Base
Board provides the standard I/O functionality of the board.
159
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Interrupt................................................................................................ 182
To request a processor interrupt outside of the FPGA application.
Watchdog............................................................................................. 191
To check if the processor application is alive.
160
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Master
APU Master
Description According to the number of physical connections available on the DS6601 FPGA
Base Board, you can select the APU Master I/O functions. There are six digital
output channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Angle
range Lets you specify the angle value range of the Phi Read port.
§ 0: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ 1: The angle range is 360° and cannot be changed in ConfigurationDesk.
§ 2: The Angle range property of the FPGA custom function block in
ConfigurationDesk lets you set the angle range of the APU. The default value
is 720°.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Initial
position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
161
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
iocnet_glob_master_angle<ChannelNumber>_res / Angle
Range Specifies the angle value range of Phi Read.
§ 0: 720° angle range
§ 1: 360° angle range
iocnet_glob_master_angle<ChannelNumber>_upd_vel_deg_sec /
Velocity Specifies a velocity value in degree/second to be applied as APU
Master speed.
The value will be applied if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: Fix_32_10
Data width: 1
Value range: -1,200,000 °/s ... +1,200,000 °/s
Range exceeding is not possible. The port is saturated at the higher or lower
limit.
iocnet_glob_master_angle<ChannelNumber>_upd_trig / Set
Velocity Specifies the actual value of Velocity as new velocity value. The new
value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Notes on updating velocity values:
§ Setting the velocity values at very short intervals (e.g. every 80 ns) leads to high
data traffic on IOCNET.
High data traffic might freeze your SCALEXIO system.
§ Setting a new velocity value before the last setting is executed overwrites the
last setting.
To distribute and execute a new velocity value takes about 10 µs. If the APU
master always sets new velocity values before the last value is executed, the
velocity value will never change.
162
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Slave
APU Slave
Purpose To read angle values distributed by an APU Master over IOCNET for synchronizing
angle-based applications.
Description According to the number of physical connections available on the DS6601 FPGA
Base Board, you can select the APU Slave I/O functions. There are six digital
input channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
163
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
164
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
Buffer In
Purpose To read data from an IOCNET buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
165
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
166
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
Buffer64 In
Purpose To read data from an IOCNET buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
167
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
168
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Usable only if Enable Read_Req and Send_Ack ports for explicit data
transmit value is enabled in the FPGA framework INI file.
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request that is not acknowledged by the Buffer Out port
Send Acknowledge leads to task overrun in the processor application. A task
overrun will be logged as an I/O error in the Message Viewer of the SCALEXIO
web interface. The FPGA buffer that caused the task overrun will also be logged.
For details on acknowledging a data transmission with Send Acknowledge,
refer to Buffer64 Out on page 171.
Buffer Out
Description If you select Buffer as the access type, the data is written to an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data inport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
169
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 ... 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
170
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
171
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
172
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
173
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
overrun will be logged as an I/O error in the Message Viewer of the SCALEXIO
web interface. The FPGA buffer that caused the task overrun will also be logged.
For details on the port Read Request, refer to Buffer64 In on page 167.
CN App Status
Purpose To read the status of application that is running on the computation node.
Description There is one digital input channel that is used for the CN App Status I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
174
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA In (IOCNET)
I-FPGA In (IOCNET)
Description You can select I-FPGA In (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
The maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_32_0.
175
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
The maximum address range depends on the Buffer size parameter. The address
range with valid data values can be derived from the value of the Data Count
port.
I-FPGA64 In (IOCNET)
Description According to the number of physical connections available on the DS6601 FPGA
Base Board, you can select the I-FPGA64 In (IOCNET) I/O functions. There are
32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
176
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 In (IOCNET)
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512. The
maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_64_0.
177
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Description You can select I-FPGA Out (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
178
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_32_0.
179
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Description You can select I-FPGA64 Out (IOCNET) I/O functions to implement an inter-
FPGA communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
180
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_64_0.
181
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Interrupt
Description The DS6601 FPGA Base Board provides 16 interrupt lines. An interrupt is
requested if the Int port is set to 1 for at least one clock cycle. If you set
the Int port to 0, the last interrupt is not released but saved. An interrupt is
edge-triggered.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
182
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
IOCNET Global Time
Description There is one digital input channel that is used for the IOCNET Global Time I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
LED Out
Purpose To write a digital signal that controls the LED on the board.
183
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Description There is one digital output channel that is used for the LED Out I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an IOCNET register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
184
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
185
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
and then back to 0, the requested register contains a new value. The flag is set
to 1 only within one clock cycle.
Register64 In
Purpose To read data from an IOCNET register with a data width of 64 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
186
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
187
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Register Out
Description If you select Register as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are read
188
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
from the IOCNET bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Description If you select Register64 as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
189
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init /
Register64 group ID Lets you specify a number in the range 1 … 63 to
create register groups. Registers that you specified with the same group ID
are read from the IOCNET bus sequentially and then provided to the FPGA
application simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
190
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
Status In
Purpose To read a digital signal that outputs the state of the FPGA initialization sequence.
Description There is one digital input channel that is used for the Status In I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
Data type: UFix_1_0
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
Watchdog
191
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6601 FPGA Base Board Framework
Description There is one digital input channel that is used for the Watchdog I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
status / Status Outputs a flag that indicates that the processor application
transmits a keep-alive signal within the specified timeout.
§ 0: The watchdog timer expires without a keep-alive signal being transmitted to
the FPGA application.
§ 1: The processor application is alive.
Data type: UFix_1_0
How to Configure the Condition when the Watchdog Expires (FPGA Programming
Handcode Framework Guide )
References
192
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS6602 FPGA Base Board Framework
Introduction The DS6602 (KU15P) FPGA Base Board framework of the DS6602 FPGA Base
Board provides the standard I/O functionality of the board.
Note
If you use a DS6602 FPGA Base Board, the build process issues a critical
warning about a specific timing requirement.
For more information, refer to Problems and Their Solutions (FPGA
Programming Handcode Framework Guide ).
193
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Interrupt................................................................................................ 226
To request a processor interrupt outside of the FPGA application.
Watchdog............................................................................................. 235
To check if the processor application is alive.
194
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Master
APU Master
Description According to the number of physical connections available on the DS6602 FPGA
Base Board, you can select the APU Master I/O functions. There are six digital
output channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Angle
range Lets you specify the angle value range of the Phi Read port.
§ 0: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ 1: The angle range is 360° and cannot be changed in ConfigurationDesk.
195
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init / Initial
position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
iocnet_glob_master_angle<ChannelNumber>_res / Angle
Range Specifies the angle value range of Phi Read.
§ 0: 720° angle range
§ 1: 360° angle range
196
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
APU Slave
iocnet_glob_master_angle<ChannelNumber>_upd_vel_deg_sec /
Velocity Specifies a velocity value in degree/second to be applied as APU
Master speed.
The value will be applied if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: Fix_32_10
Data width: 1
Value range: -1,200,000 °/s ... +1,200,000 °/s
Range exceeding is not possible. The port is saturated at the higher or lower
limit.
iocnet_glob_master_angle<ChannelNumber>_upd_trig / Set
Velocity Specifies the actual value of Velocity as new velocity value. The new
value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Notes on updating velocity values:
§ Setting the velocity values at very short intervals (e.g. every 80 ns) leads to high
data traffic on IOCNET.
High data traffic might freeze your SCALEXIO system.
§ Setting a new velocity value before the last setting is executed overwrites the
last setting.
To distribute and execute a new velocity value takes about 10 µs. If the APU
master always sets new velocity values before the last value is executed, the
velocity value will never change.
APU Slave
Purpose To read angle values distributed by an APU Master over IOCNET for synchronizing
angle-based applications.
Description According to the number of physical connections available on the DS6601 FPGA
Base Board, you can select the APU Slave I/O functions. There are six digital
input channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
197
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
198
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
Buffer In
Purpose To read data from an IOCNET buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 257 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
199
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
200
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
then back to 0, the requested buffer contains new values and is ready to be
read. The flag is set to 1 only within one clock cycle.
Buffer64 In
Purpose To read data from an IOCNET buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
201
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
202
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Buffer Out
203
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Description If you select Buffer as the access type, the data is written to an IOCNET buffer.
32 buffers are available. Each buffer has a variable buffer size of 1 up to 32768
elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data inport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 ... 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
204
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
205
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
overrun will be logged as an I/O error in the Message Viewer of the SCALEXIO
web interface. The FPGA buffer that caused the task overrun will also be logged.
For details on the port Read Request, refer to Buffer In on page 199.
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an IOCNET
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 64 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 545 … 576.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
206
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init / Enable
Read_Req and Send_Ack ports for explicit data transmit value Lets
you enable the Buffer In port Read Request and the Buffer Out port Send
Acknowledge. With Read Request and Send Acknowledge you can trigger a
processor synchronous data exchange.
§ 0: The ports are disabled. Each data request will instantly be acknowledged.
§ 1: The ports are enabled. Each data request must be acknowledged by your
handcode.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
207
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
CN App Status
Purpose To read the status of application that is running on the computation node.
Description There is one digital input channel that is used for the CN App Status I/O
function.
208
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DDR4 32 Mode 1
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
DDR4 32 Mode 1
Purpose To provide 32-bit read/write access to the DDR4 RAM using the memory access
mode 1.
Description The DS6602 FPGA Base Board provides a 4 GB DDR4 RAM that can be used by
the FPGA application.
The RAM interface always handles 512 bits at once. Therefore, the FPGA
application can read/write 16 x 32 bits data or 8 x 64 bits data within one
memory access.
You can select different I/O functions to access the DDR4 RAM:
§ DDR4 32 Mode 1 and DDR4 64 Mode 1 to read/write 32/64-bit values with
one memory address. These I/O types use the memory access mode 1.
§ DDR4 32 Mode 2 and DDR4 64 Mode 2 to read/write 32/64-bit values with
two memory addresses. These I/O types use the memory access mode 2.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
209
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
ddr4_init_done / Init Done Outputs a flag that indicates that the RAM is
initialized with specified data values. For more information, refer to Initializing
the DDR4 RAM of the DS6602 (FPGA Programming Handcode Framework
Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
ddr4_init_fail / Init Failed Outputs a flag that the initializing of the RAM
with initial values failed.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized or no failure occurs.
§ 1: A failure occurs during the initialization of the RAM.
ddr4_busy_flag / Busy Inport to read a flag that indicates the state of the
DDR4 RAM:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data type: UFix_1_0
210
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DDR4 32 Mode 2
DDR4 32 Mode 2
Purpose To provide 32-bit read/write access to the DDR4 RAM using the memory access
mode 2.
Description The DS6602 FPGA Base Board provides a 4 GB DDR4 RAM that can be used by
the FPGA application.
The RAM interface always handles 512 bits at once. Therefore, the FPGA
application can read/write 16 x 32 bits data or 8 x 64 bits data within one
memory access.
You can select different I/O functions to access the DDR4 RAM:
§ DDR4 32 Mode 1 and DDR4 64 Mode 1 to read/write 32/64-bit values with
one memory address. These I/O types use the memory access mode 1.
§ DDR4 32 Mode 2 and DDR4 64 Mode 2 to read/write 32/64-bit values with
two memory addresses. These I/O types use the memory access mode 2.
211
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
ddr4_init_done / Init Done Outputs a flag that indicates that the RAM is
initialized with specified data values. For more information, refer to Initializing
the DDR4 RAM of the DS6602 (FPGA Programming Handcode Framework
Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
ddr4_init_fail / Init Failed Outputs a flag that the initializing of the RAM
with initial values failed.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized or no failure occurs.
§ 1: A failure occurs during the initialization of the RAM.
ddr4_busy_flag / Busy Inport to read a flag that indicates the state of the
DDR4 RAM:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data type: UFix_1_0
212
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DDR4 32 Mode 2
213
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
DDR4 64 Mode 1
Purpose To provide 64-bit read/write access to the DDR4 RAM using the memory access
mode 1.
Description The DS6602 FPGA Base Board provides a 4 GB DDR4 RAM that can be used by
the FPGA application.
The RAM interface always handles 512 bits at once. Therefore, the FPGA
application can read/write 16 x 32 bits data or 8 x 64 bits data within one
memory access.
You can select different I/O functions to access the DDR4 RAM:
§ DDR4 32 Mode 1 and DDR4 64 Mode 1 to read/write 32/64-bit values with
one memory address. These I/O types use the memory access mode 1.
§ DDR4 32 Mode 2 and DDR4 64 Mode 2 to read/write 32/64-bit values with
two memory addresses. These I/O types use the memory access mode 2.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
ddr4_init_done / Init Done Outputs a flag that indicates that the RAM is
initialized with specified data values. For more information, refer to Initializing
the DDR4 RAM of the DS6602 (FPGA Programming Handcode Framework
Guide ).
Data type: UFix_1_0
Data width: 1
214
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DDR4 64 Mode 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
ddr4_init_fail / Init Failed Outputs a flag that the initializing of the RAM
with initial values failed.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized or no failure occurs.
§ 1: A failure occurs during the initialization of the RAM.
ddr4_busy_flag / Busy Inport to read a flag that indicates the state of the
DDR4 RAM:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data type: UFix_1_0
215
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
DDR4 64 Mode 2
Purpose To provide 64-bit read/write access to the DDR4 RAM using the memory access
mode 2.
Description The DS6602 FPGA Base Board provides a 4 GB DDR4 RAM that can be used by
the FPGA application.
The RAM interface always handles 512 bits at once. Therefore, the FPGA
application can read/write 16 x 32 bits data or 8 x 64 bits data within one
memory access.
You can select different I/O functions to access the DDR4 RAM:
§ DDR4 32 Mode 1 and DDR4 64 Mode 1 to read/write 32/64-bit values with
one memory address. These I/O types use the memory access mode 1.
§ DDR4 32 Mode 2 and DDR4 64 Mode 2 to read/write 32/64-bit values with
two memory addresses. These I/O types use the memory access mode 2.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
ddr4_init_done / Init Done Outputs a flag that indicates that the RAM is
initialized with specified data values. For more information, refer to Initializing
the DDR4 RAM of the DS6602 (FPGA Programming Handcode Framework
Guide ).
216
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DDR4 64 Mode 2
ddr4_init_fail / Init Failed Outputs a flag that the initializing of the RAM
with initial values failed.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized or no failure occurs.
§ 1: A failure occurs during the initialization of the RAM.
ddr4_busy_flag / Busy Inport to read a flag that indicates the state of the
DDR4 RAM:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data type: UFix_1_0
217
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
I-FPGA In (IOCNET)
218
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA In (IOCNET)
Description You can select I-FPGA In (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
The maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_32_0.
219
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Data width: 1
The maximum value range depends on the Buffer size parameter.
I-FPGA64 In (IOCNET)
Description According to the number of physical connections available on the DS6602 FPGA
Base Board, you can select the I-FPGA64 In (IOCNET) I/O functions. There are
32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
220
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 In (IOCNET)
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512. The
maximum range of the Address inport depends on the buffer size.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range can be exceeded for the Data outport. The outport's value is
then cast to UFix_64_0.
221
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Description You can select I-FPGA Out (IOCNET) I/O functions to implement an inter-FPGA
communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 1024.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 32-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
222
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 32 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_32_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_32_0.
223
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Description You can select I-FPGA64 Out (IOCNET) I/O functions to implement an inter-
FPGA communication between FPGA base boards. There are 32 channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
hcfw.PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Buffer
size Lets you specify the size of the IOCNET buffer in the range 1 … 512.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1024
words. For example, a buffer with a specified buffer size of 1 allocates a
memory block of 1024 words with a data width of 64 bits in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
224
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA64 Out (IOCNET)
Note
You can transfer any data type with a bit width of up to 64 Bit via
inter-FPGA over IOCNET. To do this, you can reinterpret the data type
to UFix_64_0 and vice versa. Reinterpreting data types does not cost any
hardware or latency.
The range of the Data inport can be exceeded. The value of the inport is
then cast to the raw data format UFix_64_0.
225
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Interrupt
Description The DS6602 FPGA Base Board provides 16 interrupt lines. An interrupt is
requested if the Int port is set to 1 for at least one clock cycle. If you set
the Int port to 0, the last interrupt is not released but saved. An interrupt is
edge-triggered.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
226
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
IOCNET Global Time
Description There is one digital input channel that is used for the IOCNET Global Time I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
LED Out
Purpose To write a digital signal that controls the LED on the board.
227
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Description There is one digital output channel that is used for the LED Out I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an IOCNET register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
228
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position Lets you specify the binary point position or returns the
fraction width of the Data outport depending on the format selected in the
Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
229
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
and then back to 0, the requested register contains a new value. The flag is set
to 1 only within one clock cycle.
Register64 In
Purpose To read data from an IOCNET register with a data width of 64 bits.
Description If you select Register as the access type, the data is read from an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
230
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the IOCNET bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
231
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Register Out
Description If you select Register as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 32 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are read
232
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
from the IOCNET bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Description If you select Register64 as the access type, the data is written to an IOCNET
register. 256 registers are available with a data width of 64 bits each. The values
are transmitted element by element. If you want to access data from several
registers simultaneously, you can group these registers by specifying the same
group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 … 544.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
233
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double, except the data
type without a binary point (binary point position = 0). Therefore, the fixed-
point resolution of fixed-point data types with a binary point (binary point
position > 0) is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init /
Register64 group ID Lets you specify a number in the range 1 … 63 to
create register groups. Registers that you specified with the same group ID
are read from the IOCNET bus sequentially and then provided to the FPGA
application simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
234
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
Status In
Purpose To read a digital signal that outputs the state of the FPGA initialization sequence.
Description There is one digital input channel that is used for the Status In I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
Data type: UFix_1_0
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
Watchdog
235
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6602 FPGA Base Board Framework
Description There is one digital input channel that is used for the Watchdog I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
How to Configure the Condition when the Watchdog Expires (FPGA Programming
Handcode Framework Guide )
References
236
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS2655M1 I/O Module Framework
Introduction The DS2655M1 I/O Module framework provides analog and digital I/O
functionality of SCALEXIO FPGA base board with at least one DS2655M1 Multi-
I/O Module.
237
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
Analog In
Purpose To read data from an analog input signal in the FPGA application.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(3).Init / Input range Lets you
select the input range for all analog input channels.
§ 0: -30 V … +30 V
§ 1: -5 V … +5 V
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(5).Init / Scaling Lets you select
238
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In
the scaling of the output data. If you select mV, the valid output port range
corresponds to the specified input range in mV (-5000 … +5000 mV or
-30000 … +30000 mV). If you select the unscaled Bit value, the valid output
port range is -8192 … +8191, independently from the specified input range.
§ 0: mV
§ 1: Bit
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_rx<ChannelNumber>_ready_pulse / Data
New Outputs a flag that indicates the current status of the Data port.
The port is set to 1 for one clock cycle if the Data port provides new values.
New measured values from analog input channels of the same I/O module
are always provided synchronously. If analog inputs are read from different I/O
modules, the measured values are provided either synchronously or offset by two
clock cycles (16 ns). However, the sample time of the analog measurements is
synchronous on different I/O modules except for 8 ns.
If synchronous measured values from analog inputs of different I/O modules
are required, you can implement a logic to wait with the further processing of
analog values until the Data New ports flag new data within two clock cycles.
Data type: UFix_1_0
§ 0: No new values are available at the Data port.
§ 1: New values are available at the Data port.
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for analog input channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Channel Number1) Channel Type Channel2) Connector Pin Signal
Number
Data 11 6 Analog In 3 11 10 Analog In - Ch: 11 [Mod: x]
12 7 12 27 Analog In - Ch: 12 [Mod: x]
13 8 13 44 Analog In - Ch: 13 [Mod: x]
239
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
Outport I/O Function Channel Number1) Channel Type Channel2) Connector Pin Signal
Number
14 9 14 12 Analog In - Ch: 14 [Mod: x]
15 10 15 29 Analog In - Ch: 15 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
Analog Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(5).Init / Scaling Lets you select
the scaling of the input data. If you select mV, the valid input port range is
‑10000 … +10000 mV. If you select the unscaled Bit value, the valid input port
range is ‑8192 … +8191 (14-bit D/A converter).
§ 0: mV
§ 1: Bit
240
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog Out
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
Note
m<ModuleNumber>_tx<ChannelNumber>_data00_14_0_14_0i /
Data Outputs a voltage signal in the specified range.
Data type: UFix_15_0
Update rate: 7.8125 Msps
m<ModuleNumber>_tx<ChannelNumber>_data00_16_0_16_0i /
Enable Controls the data port. If set to 1 the DAC is in freerun mode.
Data type: UFix_1_0
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for analog output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Channel Number1) Channel Type Channel2) Connector Pin Signal
Number
Data 21 1 Analog Out 5 16 14 Analog Out - Ch: 16 [Mod: x]
22 2 17 31 Analog Out - Ch: 17 [Mod: x]
23 3 18 48 Analog Out - Ch: 18 [Mod: x]
24 4 19 16 Analog Out - Ch: 19 [Mod: x]
25 5 20 33 Analog Out - Ch: 20 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
241
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
Digital In
Purpose To read data from a digital input signal in the FPGA application.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(4).Init / Threshold init
voltage Specifies the initial voltage value that is used for the threshold in
mV.
Data type: UFix_14_0
Range: 0 mV … 10500 mV in 100 mV steps
Update rate: 125 MHz
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for digital input channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O Module (x =
1 … 5).
242
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital InOut
Outport I/O Function Number Channel Number1) Channel Type Channel2) Connector Pin Signal
Data 1 1 Digital In/Out 2 1 2 Digital In - Ch: 1 [Mod: x]
2 2 2 19 Digital In - Ch: 2 [Mod: x]
3 3 3 36 Digital In - Ch: 3 [Mod: x]
4 4 4 4 Digital In - Ch: 4 [Mod: x]
5 5 5 21 Digital In - Ch: 5 [Mod: x]
6 6 6 6 Digital In - Ch: 6 [Mod: x]
7 7 7 23 Digital In - Ch: 7 [Mod: x]
8 8 8 40 Digital In - Ch: 8 [Mod: x]
9 9 9 8 Digital In - Ch: 9 [Mod: x]
10 10 10 25 Digital In - Ch: 10 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
Digital InOut
Purpose To read/write data to a digital output signal in the FPGA application. The Data
direction port lets you specify the data direction during run time.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
243
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(4).Init / Output
mode Specifies the output mode.
§ 1: LowSide switch
To drive loads which are connected to VCC.
§ 2: HighSide switch
To drive loads which are connected to GND.
§ 3: Push/Pull
To switch the signal between two different potentials (for example, VCC and
GND).
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(6).Init / Drive config Lets you
enable/disable the termination of the signal line by a serial resistor.
§ 0: 68 Ohm terminated
The signal line is terminated with 68 Ω.
§ 1: The termination is disabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(8).Init / High supply Lets you
select the voltage for the high side switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Note
If you use a Digital InOut channel, the applicable threshold voltage for the
digital input channel is less than or equal to the specified high supply.
To apply the maximum input voltage range, you have to use a Digital In
channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(10).Init / Digital In threshold
init voltage Lets you set the initial threshold voltage for a digital input signal
in the range of 0 mV … 10500 mV in steps of 100 mV. This electrical interface
setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
244
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital InOut
m<ModuleNumber>_tx<ChannelNumber>_data01_0_0_1_1i / Data
direction Specifies the direction of the digital signal.
§ 0: Digital in
§ 1: Digital out
Data type: UFix_1_0
Update rate: 125 MHz
m<ModuleNumber>_rx<ChannelNumber>_trigger00 / Inport:
Data Outputs the current results of digital input channel.
§ 0: Input voltage of the channel is below the threshold voltage of a high-low
transition.
§ 1: Input voltage of the channel is higher than or equal to the threshold voltage
of a low-high transition.
Data type: UFix_1_0
Update rate: 125 MHz
m<ModuleNumber>_tx<ChannelNumber>_data01_0_0_0_0i / Outport:
Data Outputs a signal in the specified range. If driven with 0, the hardware
output is 0 V. If driven with 1, the hardware output is 3.3 V or 5 V according to
the specified high supply voltage.
Data type: UFix_1_0
Update rate: 15.625 MHz
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for the bidirectional digital I/O channels. The signals are available at
the female 50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O
Module (x = 1 … 5)..
Outport I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
Data 11 1 Digital In/Out 2 1 2 Digital InOut - Ch: 1 [Mod: x]
12 2 2 19 Digital InOut - Ch: 2 [Mod: x]
13 3 3 36 Digital InOut - Ch: 3 [Mod: x]
14 4 4 4 Digital InOut - Ch: 4 [Mod: x]
15 5 5 21 Digital InOut - Ch: 5 [Mod: x]
16 6 6 6 Digital InOut - Ch: 6 [Mod: x]
17 7 7 23 Digital InOut - Ch: 7 [Mod: x]
18 8 8 40 Digital InOut - Ch: 8 [Mod: x]
19 9 9 8 Digital InOut - Ch: 9 [Mod: x]
20 10 10 25 Digital InOut - Ch: 10 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
245
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
References
Digital Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(3).Init / Output
mode Specifies the output mode.
§ 17: LowSide switch
To drive loads that are connected to VCC.
§ 18: HighSide switch
To drive loads that are connected to GND.
§ 19: Push/Pull
To switch the signal between two different potentials (for example, VCC and
GND).
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(5).Init / Drive config Lets you
enable/disable the termination of the signal line by a serial resistor.
§ 0: The signal line is terminated with 68 Ω.
§ 1: The termination is disabled.
246
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(7).Init / High supply Lets you
select the voltage for the high side switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the DS2655M1 I/O Module
framework for digital output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Channel Number1) Channel Type Channel2) Connector Pin Signal
Number
Data 1 1 Digital In/Out 2 1 2 Digital Out - Ch: 1 [Mod: x]
2 2 2 19 Digital Out - Ch: 2 [Mod: x]
3 3 3 36 Digital Out - Ch: 3 [Mod: x]
4 4 4 4 Digital Out - Ch: 4 [Mod: x]
5 5 5 21 Digital Out - Ch: 5 [Mod: x]
6 6 6 6 Digital Out - Ch: 6 [Mod: x]
7 7 7 23 Digital Out - Ch: 7 [Mod: x]
8 8 8 40 Digital Out - Ch: 8 [Mod: x]
9 9 9 8 Digital Out - Ch: 9 [Mod: x]
10 10 10 25 Digital Out - Ch: 10 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
247
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M1 I/O Module Framework
References
248
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS2655M2 I/O Module Framework
Introduction The DS2655M2 I/O Module framework provides digital I/O functionality of a
SCALEXIO FPGA base board with at least one DS2655M2 Digital I/O Module.
249
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
Digital In
Purpose To read data from a digital input signal in the FPGA application.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
250
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(9).Init / Threshold init
voltage Specifies the initial voltage value that is used for the threshold in
mV.
Data type: UFix_14_0
Range: 0 mV … 10500 mV in 100 mV steps
Update rate: 125 MHz
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_io2raw_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Input voltage of the channel is below the threshold voltage of a high-low
transition.
§ 1: Input voltage of the channel is higher than or equal to the threshold voltage
of a low-high transition.
Update rate: 125 MHz
For information on the electrical characteristics of the DS2655M2 Digital I/O
Module, refer to Data Sheet of the DS2655M2 Digital I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for Digital In channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
251
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
252
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out
Digital Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(7).Init / Output
mode Specifies the output mode.
§ 5: LowSide switch
To drive loads which are connected to VCC.
§ 6: HighSide switch
To drive loads which are connected to GND.
§ 7: Push/Pull
To switch the signal between two different potentials (for example, VCC and
GND).
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(9).Init / Drive config Lets you
enable/disable the termination of the signal line by a serial resistor.
§ 0: The signal line is terminated with 68 Ω.
§ 1: The termination is disabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(11).Init / High supply Lets you
select the voltage for the high side switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
253
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
m<ModuleNumber>_raw2io_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs a signal in the specified range.
To set the voltage level, use the High supply.
Data Type: UFix_1_0
Data width: 1
If driven with 0, the hardware outputs a low-level signal. If driven with 1, the
hardware outputs a high-level signal.
Update rate: 125 MHz
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS2655M2 Digital
I/O Module, refer to Data Sheet of the DS2655M2 Digital I/O Module
(SCALEXIO Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for digital output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
254
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out-Z
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
Digital Out-Z
Purpose To write data to a digital output signal in the FPGA application or to switch the
output to a high-impedance state (tri-state).
255
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(14).Init / Drive config Lets
you enable/disable the termination of the signal line by a serial resistor.
§ 0: The signal line is terminated with 68 Ω.
§ 1: The termination is disabled.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(16).Init / High supply Lets you
select the voltage for the high side switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_raw2io_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs a signal in the specified range if the Enable port is set to 1.
To set the voltage level, use the High Supply parameter .
Data Type: UFix_1_0
Data width: 1
If driven with 0, the hardware outputs a low-level signal. If driven with 1, the
hardware outputs a high-level signal.
Update rate: 125 MHz
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS2655M2 Digital
I/O Module, refer to Data Sheet of the DS2655M2 Digital I/O Module
(SCALEXIO Hardware Installation and Configuration ).
m<ModuleNumber>_raw2io_<ChannelNumber+1>_
<ChannelNumber+1>_<ChannelNumber+1>_ <ChannelNumber+1>i /
256
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out-Z
Enable Enables the output of data values and disables the high-impedance
state.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The output is set to the high-impedance state.
§ 1: The output is enabled and outputs the data values of the Data inport.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for digital output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
257
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
RS232 Rx
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
258
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS232 Tx
m<ModuleNumber>_io2raw_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs the data received from the RS232 network.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The input voltage level is positive (≥ 0 V).
§ 1: The input voltage level is negative (< 0 V).
For information on the electrical characteristics of the DS2655M2 Digital I/O
Module, refer to Data Sheet of the DS2655M2 Digital I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for RS232 Rx channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
RS232 Tx
259
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_raw2io_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs the data to be send to the RS232 Tx channel.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The output voltage level is +5.5 V.
§ 1: The output voltage level is –5.5 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
For information on the electrical characteristics of the DS2655M2 Digital I/O
Module, refer to Data Sheet of the DS2655M2 Digital I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for RS232 Rx channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
260
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Rx
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
RS485 Rx
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(7).Init / RS485
Termination Lets you enable/disable the termination of the signal line by a
serial resistor.
§ 0: The termination is disabled.
§ 1: The signal line is terminated by an internal 120 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
261
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
m<ModuleNumber>_io2raw_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs the data received from the RS485 network.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The input voltage level is negative (< 0 V).
§ 1: The input voltage level is positive (≥ 0 V).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for RS485 Rx channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
262
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 RxTx
RS485 RxTx
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(17).Init / RS485
Termination Lets you enable/disable the termination of the signal line by a
serial resistor.
§ 0: The termination is disabled.
§ 1: The signal line is terminated by an internal 120 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber+1>_raw2io_<ChannelNumber+1>_
<ChannelNumber+1>_<ChannelNumber+1>_ <ChannelNumber+1>i /
Tx Data Outputs the data to be send to the RS485 network if the Tx Enable
port is set to 1.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The output voltage level is –5.5 V.
§ 1: The output voltage level is +5.5 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
m<ModuleNumber>_raw2io_<ChannelNumber+2>_
<ChannelNumber+2>_<ChannelNumber+2>_ <ChannelNumber+2>i /
Tx Enable Enables the output of data values to the RS485 network and
disables the high-impedance state.
263
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
m<ModuleNumber>_io2raw_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Rx Data Outputs the data that is received from the RS485 network if the
Tx Enable inport is set to 0.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The input voltage level is negative (< 0 V).
§ 1: The input voltage level is positive (≥ 0 V).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for RS485 Rx channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
264
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Tx
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
RS485 Tx
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(14).Init / RS485
265
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_raw2io_<ChannelNumber>_
<ChannelNumber>_<ChannelNumber>_<ChannelNumber>i /
Data Outputs the data to the RS485 network if the Enable port is set to 1.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The output voltage level is –5.5 V.
§ 1: The output voltage level is +5.5 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
m<ModuleNumber>_raw2io_<ChannelNumber+1>_
<ChannelNumber+1>_<ChannelNumber+1>_ <ChannelNumber+1>i /
Data Enables the output of data values to the RS485 network.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The output is disabled.
The output voltage level is 0 V. The output does not support an high-
impedance state (tri-state).
§ 1: The output is enabled and transmits the data values of the Data inport.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
I/O mapping The following I/O mapping is relevant if you use the DS2655M2 I/O Module
framework for RS485 Rx channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS2655M2 Digital I/O Module.
266
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Tx
The I/O functions of the DS2655M2 I/O Module framework share the 32 I/O
channels of the DS2655M2 Digital I/O Module. For details on the signal mapping
to optimize channel usage, refer to Signal Mapping of the DS2655M2 Digital I/O
Module (SCALEXIO Hardware Installation and Configuration ).
References
267
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS2655M2 I/O Module Framework
268
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS6651 Multi-I/O Module Framework
Introduction The DS6651 Multi-I/O Module framework provides analog and digital I/O
functionality of a SCALEXIO FPGA base board with at least one DS6651 Multi-I/O
Module.
269
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Trigger................................................................................................... 296
To trigger the analog measurement.
Analog In
Purpose To read data from an analog input signal in the FPGA application.
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Analog In I/O functions. There are four channels.
270
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(2).Init / Input range Lets you
select the input voltage range that can be converted from analog to digital for
the chosen ADC channel.
§ 0: ‑60 V ... +60 V
§ 1: ‑10 V ... +10 V
§ 2: ‑5 V ... +5 V
§ 3: ‑1 V ... +1 V
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(4).Init / Scaling Lets you select
whether the I/O function scales the measuring results of the A/D converter to
mV.
§ 0: mV
To output the measuring results in mV.
The valid value range corresponds to the settings of the Input range
parameter in mV.
The default data type is Fix_22_5 to provide the precision of the A/D converter
when using the ±1 V input voltage range.
§ 1: Bit
To output the raw measuring results as a signed Bit value.
Value range: -32,768 … +32,767.
Data type: Fix_22_5
Tip
If you select Bit, you can reduce the complexity of the logic by using only
16 bits of the raw measurement result due to the 16-bit resolution of the
A/D converter.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(6).Init / Trigger mode Lets you
select the trigger mode and source for sampling the analog input voltage.
§ 15: Free running
The ADC samples the input voltage with a fixed sample period that is set by
the Sample period parameter.
§ 258: Trigger 1
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger on page 296.
271
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
§ 274: Trigger 2
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger on page 296.
§ Digital In:
§ 16 · (x-1) + 2: Digital In, <x>, rising edge, 8 ns filter
§ 16 · (x-1) + 1026: Digital In, <x>, rising edge, no filter
§ 16 · (x-1) + 1538: Digital In, <x>, falling edge, 8 ns filter
§ 16 · (x-1) + 514: Digital In, <x>, falling edge, no filter
The selected digital input channel triggers the sampling of the analog input
signal:
§ <x>: Indicates the channel number of the digital input channel.
§ Rising edge: A 0 to 1 transition of a digital input signal triggers the ADC.
§ Falling edge: A 1 to 0 transition of a digital input signal triggers the ADC.
§ 8 ns filter: The digital signal is filtered by a digital low-pass filter with a time
constant of 8 ns.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(8).Init / Sample period Lets you
specify the sample period of the ADC in the free running mode.
Sample period = nselected · 8 ns
With the value range 25 ≤ nselected ≤ 3,750,000,000.
The resulting sample period is in the range 200 ns ... 30 s.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_rx<ChannelNumber>_ready_pulse / Data
New Outputs a flag that indicates the current status of the Data port.
New measured values from analog input channels of the same I/O module
are always provided synchronously. If analog inputs are read from different I/O
modules, the measured values are provided either synchronously or offset by two
clock cycles (16 ns). However, the sample time of the analog measurements is
synchronous on different I/O modules except for 8 ns.
If synchronous measured values from analog inputs of different I/O modules
are required, you can implement a logic to wait with the further processing of
analog values until the Data New ports flag new data within two clock cycles.
Data type: UFix_1_0
Data width: 1
272
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In-L
Values:
§ 0: No new value is available at the Data port.
§ 1: A new valid value is available at the Data port.
The port is set to 1 only for one clock cycle.
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for analog input channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 25 Analog In 18 23 29 Analog In - Ch: 23 [Mod: x]
26 24 14 Analog In - Ch: 24 [Mod: x]
27 25 31 Analog In - Ch: 25 [Mod: x]
28 26 48 Analog In - Ch: 26 [Mod: x]
References
Analog In-L
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
273
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(2).Init / Input range Lets you
select the input voltage range that can be converted from analog to digital for
the chosen ADC channel.
§ 0: ‑60 V ... +60 V
§ 1: ‑10 V ... +10 V
§ 2: ‑5 V ... +5 V
§ 3: ‑1 V ... +1 V
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(4).Init / Scaling Lets you select
whether the I/O function scales the measuring results of the A/D converter to
mV.
§ 0: mV
To output the measuring results in mV.
The valid value range corresponds to the settings of the Input range
parameter in mV.
The default data type is Fix_22_5 to provide the precision of the A/D converter
when using the ±1 V input voltage range.
§ 1: Bit
To output the raw measuring results as a signed Bit value.
Value range: -32,768 … +32,767.
Data type: Fix_22_5
Tip
If you select Bit, you can reduce the complexity of the logic by using only
16 bits of the raw measurement result due to the 16-bit resolution of the
A/D converter.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(6).Init / Load Config Lets you
enable a 220 Ω resistor between the analog signal and the signal reference.
§ 0: Disabled
§ 1: 220 Ohm
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(8).Init / Trigger mode Lets you
select the trigger mode and source for sampling the analog input voltage.
§ 15: Free running
The ADC samples the input voltage with a fixed sample period that is set by
the Sample period parameter.
§ 258: Trigger 1
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger on page 296.
274
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog In-L
§ 274: Trigger 2
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger on page 296.
§ Digital In:
§ 16 · (x-1) + 2: Digital In, <x>, rising edge, 8 ns filter
§ 16 · (x-1) + 1026: Digital In, <x>, rising edge, no filter
§ 16 · (x-1) + 1538: Digital In, <x>, falling edge, 8 ns filter
§ 16 · (x-1) + 514: Digital In, <x>, falling edge, no filter
The selected digital input channel triggers the sampling of the analog input
signal:
§ <x>: Indicates the channel number of the digital input channel.
§ Rising edge: A 0 to 1 transition of a digital input signal triggers the ADC.
§ Falling edge: A 1 to 0 transition of a digital input signal triggers the ADC.
§ 8 ns filter: The digital signal is filtered by a digital low-pass filter with a time
constant of 8 ns.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(10).Init / Sample period Lets
you specify the sample period of the ADC in the free running mode.
Sample period = nselected · 8 ns
With the value range 25 ≤ nselected ≤ 3,750,000,000.
The resulting sample period is in the range 200 ns ... 30 s.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_rx<ChannelNumber>_ready_pulse / Data
New Outputs a flag that indicates the current status of the Data port.
New measured values from analog input channels of the same I/O module
are always provided synchronously. If analog inputs are read from different I/O
modules, the measured values are provided either synchronously or offset by two
clock cycles (16 ns). However, the sample time of the analog measurements is
synchronous on different I/O modules except for 8 ns.
If synchronous measured values from analog inputs of different I/O modules
are required, you can implement a logic to wait with the further processing of
analog values until the Data New ports flag new data within two clock cycles.
Data type: UFix_1_0
Data width: 1
275
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Values:
§ 0: No new value is available at the Data port.
§ 1: A new valid value is available at the Data port.
The port is set to 1 only for one clock cycle.
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for analog input channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 29 Analog In 19 27 16 Analog In-L - Ch: 27 [Mod: x]
30 28 33 Analog In-L - Ch: 28 [Mod: x]
References
Analog Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
276
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Analog Out
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(5).Init / Scaling Lets you select
the scaling of the input data.
§ 0: mV
The valid input port range is ‑10,000 … +10,000 mV.
§ 1: Bit
The valid input port range is -32,768 … +32,776 (16-bit converter).
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_tx<ChannelNumber>_data00_17_0_17_0i /
Data Outputs a voltage signal in the specified range.
Data type: Fix_18_2
Data width: 1
Update rate: 10.417 MS/s
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for analog output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 41 Analog Out 15 17 8 Analog Out - Ch: 17 [Mod: x]
42 18 25 Analog Out - Ch: 18 [Mod: x]
43 19 10 Analog Out - Ch: 19 [Mod: x]
44 20 27 Analog Out - Ch: 20 [Mod: x]
References
277
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Analog Out-T
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Analog Out-T I/O functions. There are two
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(5).Init / Scaling Lets you select
the scaling of the input data.
§ 0: mV
The valid input port range corresponds to the settings of the Mode parameter.
§ 1: Bit
The valid input port range is -32,768 … +32,776 (16-bit converter).
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(7).Init / Mode Lets you select
the converter mode of the analog output channel.
§ 0: ±10 VDC
The DA converter directly outputs the voltage signal without using a
transformer. The output voltage range is ‑10 VDC … +10 VDC.
§ 1: ±20 V transformer coupled AC
The DA converter outputs the voltage signal via a transformer. The output
voltage range is ‑20 VAC … +20 VAC.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_tx<ChannelNumber>_data00_17_0_17_0i /
Data Outputs a voltage signal in the specified range.
Data type: Fix_18_2
Data width: 1
Update rate: 10.417 MS/s
278
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for analog output channels. The signals are available at the female
50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x =
1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 45 Analog Out 16 21 44 Analog Out‑T - Ch: 21 [Mod: x]
46 22 12 Analog Out‑T - Ch: 22 [Mod: x]
References
Digital In
Purpose To read data from a digital input signal in the FPGA application.
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Digital In I/O functions. There are up to 16
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).Parameter(8).Init / Threshold init
voltage Lets you specify the voltage value that is used for the threshold in
mV.
Range: 0 mV ... 12,000 mV in 100 mV steps.
This electrical interface setting can be changed in ConfigurationDesk.
279
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 1 Digital In/Out 11 1 18 Digital In - Ch: 1 [Mod: x]
2 2 2 Digital In - Ch: 2 [Mod: x]
3 3 35 Digital In - Ch: 3 [Mod: x]
4 4 19 Digital In - Ch: 4 [Mod: x]
5 5 3 Digital In - Ch: 5 [Mod: x]
6 6 36 Digital In - Ch: 6 [Mod: x]
7 7 20 Digital In - Ch: 7 [Mod: x]
8 8 4 Digital In - Ch: 8 [Mod: x]
9 9 37 Digital In - Ch: 9 [Mod: x]
10 10 21 Digital In - Ch: 10 [Mod: x]
11 11 22 Digital In - Ch: 11 [Mod: x]
12 12 6 Digital In - Ch: 12 [Mod: x]
13 13 39 Digital In - Ch: 13 [Mod: x]
14 14 23 Digital In - Ch: 14 [Mod: x]
15 15 7 Digital In - Ch: 15 [Mod: x]
16 16 40 Digital In - Ch: 16 [Mod: x]
280
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In/Out-Z
References
Digital In/Out-Z
Purpose To read or write data to or from a digital signal in the FPGA application, or to
switch the output to a high-impedance state (tristate).
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Digital In/Out-Z I/O functions. There are up to
four channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(6).Init / Output Mode Lets
you select the output mode.
§ 49: Low-side switch
Lets you actively drive the output to GND to output a low-level signal.
An external load to VCC is required to output a high-level signal.
§ 50: High-side switch
Lets you actively drive the output to VCC to output a high-level signal.
An external load to GND is necessary to output a low-level signal.
§ 51: Push-pull
Lets you drive the output between VCC and GND.
An external load is not required.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(8).Init / Drive Config Lets you
enable/disable the termination of the signal line by an internal resistor.
§ 1: Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
281
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
§ 0: 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(10).Init / High Supply Lets
you select the VCC voltage that determines the high-level voltage for the
high‑side switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(14).Init / Threshold init
voltage Lets you specify the voltage value that is used for the threshold in
mV.
Range: 0 mV ... 12,000 mV in 100 mV steps.
This electrical interface setting can be changed in ConfigurationDesk.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
Note
282
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In/Out-Z
If driven with 0, the hardware outputs a low-level signal. If driven with 1, the
hardware outputs a high-level signal.
Update rate:
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS6651 Multi-I/O
Module, refer to Data Sheet of the DS6651 Multi-I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Ports I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
Data In and 1 1 Digital In/Out 11 1 18 Digital In/Out-Z - Ch: 1-3
Data Out [Mod: x]
2 2 Do not use
3 35 Do not use
4 19 Usable by other I/O
functions
2 5 5 3 Digital In/Out-Z - Ch: 5-7
[Mod: x]
6 36 Do not use
7 20 Do not use
8 4 Usable by other I/O
functions
3 9 9 37 Digital In/Out-Z - Ch: 9-11
[Mod: x]
10 21 Do not use
11 22 Do not use
12 6 Usable by other I/O
functions
283
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Ports I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
4 13 13 39 Digital In/Out-Z - Ch: 13-15
[Mod: x]
14 23 Do not use
15 7 Do not use
16 40 Usable by other I/O
functions
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
Digital Out
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Digital Out I/O functions. There are up to 16
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
284
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(4).Init / Output Mode Lets
you select the output mode.
§ 17: Low-side switch
Lets you actively drive the output to GND to output a low-level signal.
An external load to VCC is required to output a high-level signal.
§ 18: High-side switch
Lets you actively drive the output to VCC to output a high-level signal.
An external load to GND is necessary to output a low-level signal.
§ 19: Push-pull
Lets you drive the output between VCC and GND.
An external load is not required.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(6).Init / Drive Config Lets you
enable/disable the termination of the signal line by an internal resistor.
§ 1: Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 0: 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(8).Init / High Supply Lets you
select the VCC voltage that determines the high-level voltage for the high‑side
switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
285
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS6651 Multi-I/O
Module, refer to Data Sheet of the DS6651 Multi-I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Outport I/O Function Number Channel Type Channel Connector Pin Signal
Data 1 Digital In/Out 11 1 18 Digital Out - Ch: 1 [Mod: x]
2 2 2 Digital Out - Ch: 2 [Mod: x]
3 3 35 Digital Out - Ch: 3 [Mod: x]
4 4 19 Digital Out - Ch: 4 [Mod: x]
5 5 3 Digital Out - Ch: 5 [Mod: x]
6 6 36 Digital Out - Ch: 6 [Mod: x]
7 7 20 Digital Out - Ch: 7 [Mod: x]
8 8 4 Digital Out - Ch: 8 [Mod: x]
9 9 37 Digital Out - Ch: 9 [Mod: x]
10 10 21 Digital Out - Ch: 10 [Mod: x]
11 11 22 Digital Out - Ch: 11 [Mod: x]
12 12 6 Digital Out - Ch: 12 [Mod: x]
13 13 39 Digital Out - Ch: 13 [Mod: x]
14 14 23 Digital Out - Ch: 14 [Mod: x]
15 15 7 Digital Out - Ch: 15 [Mod: x]
16 16 40 Digital Out - Ch: 16 [Mod: x]
References
286
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out-Z
Digital Out-Z
Purpose To write data to a digital output signal in the FPGA application or to switch the
output to a high-impedance state (tristate).
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Digital Out-Z I/O functions. There are up to 8
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).HcCustomName / Channel name Lets
you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(5).Init / Output Mode Lets
you select the output mode.
§ 33: Low-side switch
Lets you actively drive the output to GND to output a low-level signal.
An external load to VCC is required to output a high-level signal.
§ 34: High-side switch
Lets you actively drive the output to VCC to output a high-level signal.
An external load to GND is necessary to output a low-level signal.
§ 35: Push-pull
Lets you drive the output between VCC and GND.
An external load is not required.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(7).Init / Drive Config Lets you
enable/disable the termination of the signal line by an internal resistor.
§ 1: Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 0: 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(9).Init / High Supply Lets you
287
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
select the VCC voltage that determines the high-level voltage for the high‑side
switch.
§ 0: 5 V
§ 1: 3.3 V
This electrical interface setting can be changed in ConfigurationDesk.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS6651 Multi-I/O
Module, refer to Data Sheet of the DS6651 Multi-I/O Module (SCALEXIO
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Outport I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
Data 17 1 Digital In/Out 11 1 18 Digital Out-Z - Ch: 1-2 [Mod: x]
2 2 Do not connect
288
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Rx
Outport I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
18 3 3 35 Digital Out-Z - Ch: 3-4 [Mod: x]
4 19 Do not connect
19 5 5 3 Digital Out-Z - Ch: 5-6 [Mod: x]
6 36 Do not connect
20 7 7 20 Digital Out-Z - Ch: 7-8 [Mod: x]
8 4 Do not connect
21 9 9 37 Digital Out-Z - Ch: 9-10 [Mod: x]
10 21 Do not connect
22 11 11 22 Digital Out-Z - Ch: 11-12 [Mod: x]
12 6 Do not connect
23 13 13 39 Digital Out-Z - Ch: 13-14 [Mod: x]
14 23 Do not connect
24 15 15 7 Digital Out-Z - Ch: 15-16 [Mod: x]
16 40 Do not connect
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
RS485 Rx
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the RS485 Rx I/O functions. There are up to 8
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
289
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(8).Init / RS485
Termination Lets you enable an internal termination between the signal
lines. The setting can be overwritten by the RS485 termination ports.
§ 0: Open
The signal lines are not terminated.
§ 1: Terminated
An internal 120 Ω/5 nF RC termination terminates the signal lines.
This electrical interface setting can be changed in ConfigurationDesk.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Outport I/O Function Number Channel1) Channel Type Channel2) Connector Pin Signal
Data 17 1 Digital In/Out 11 1 18 RS485 Rx- - Ch: 1-2 [Mod: x]
2 2 RS485 Rx+ - Ch: 1-2 [Mod: x]
18 3 3 35 RS485 Rx- - Ch: 3-4 [Mod: x]
4 19 RS485 Rx+ - Ch: 3-4 [Mod: x]
19 5 5 3 RS485 Rx- - Ch: 5-6 [Mod: x]
6 36 RS485 Rx+ - Ch: 5-6 [Mod: x]
20 7 7 20 RS485 Rx- - Ch: 7-8 [Mod: x]
8 4 RS485 Rx+ - Ch: 7-8 [Mod: x]
21 9 9 37 RS485 Rx- - Ch: 9-10 [Mod: x]
10 21 RS485 Rx+ - Ch: 9-10 [Mod: x]
22 11 11 22 RS485 Rx- - Ch: 11-12 [Mod: x]
12 6 RS485 Rx+ - Ch: 11-12 [Mod: x]
23 13 13 39 RS485 Rx- - Ch: 13-14 [Mod: x]
290
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Rx/Tx
Outport I/O Function Number Channel1) Channel Type Channel2) Connector Pin Signal
14 23 RS485 Rx+ - Ch: 13-14 [Mod: x]
24 15 15 7 RS485 Rx- - Ch: 15-16 [Mod: x]
16 40 RS485 Rx+ - Ch: 15-16 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
RS485 Rx/Tx
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the RS485 Rx/Tx I/O functions. There are up to four
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(10).Init / High supply Lets you
select the differential output voltage.
§ 0: 5 V
§ 1: 3.3 V
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(16).Init / RS485
291
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
292
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Rx/Tx
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Ports I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
Rx Data and 37 1 Digital In/Out 11 1 18 RS485 RxTx- - Ch: 1-3 [Mod:
Tx Data x]
2 2 RS485 RxTx+ - Ch: 1-3 [Mod:
x]
3 35 Do not connect
4 19 Usable by other I/O functions
38 5 5 3 RS485 RxTx- - Ch: 5-7 [Mod:
x]
6 36 RS485 RxTx+ - Ch: 5-7 [Mod:
x]
7 20 Do not connect
8 4 Usable by other I/O functions
39 9 9 37 RS485 RxTx- - Ch: 9-11
[Mod: x]
10 21 RS485 RxTx+ - Ch: 9-11
[Mod: x]
11 22 Do not connect
12 6 Usable by other I/O functions
40 13 13 39 RS485 RxTx- - Ch: 13-15
[Mod: x]
14 23 RS485 RxTx+ - Ch: 13-15
[Mod: x]
15 7 Do not connect
16 40 Usable by other I/O functions
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
References
293
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
RS485 Tx
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the RS485 Tx I/O functions. There are up to 8
channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(9).Init / High supply Lets you
select the differential output voltage.
§ 0: 5 V
§ 1: 3.3 V
IOProperties.Out.Fct(<IOFunctionNumber> +
ioOutOffset<ModuleNumber>).Parameter(15).Init / RS485
Termination Lets you enable an internal termination between the signal
lines. The setting can be overwritten by the RS485 termination ports.
§ 0: Open
The signal lines are not terminated.
§ 1: Terminated
An internal 120 Ω/5 nF RC termination terminates the signal lines.
This electrical interface setting can be changed in ConfigurationDesk.
Ports You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
294
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
RS485 Tx
Values:
§ 0: The output voltage level is low.
§ 1: The output voltage level is high.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit
by using only the lowest bit.
I/O mapping The following I/O mapping is relevant if you use the DS6651 Multi-I/O Module
framework for digital I/O channels. The signals are available at the female 50-pin
Sub-D I/O connector of the respective DS6651 Multi-I/O Module (x = 1 … 5).
Outport I/O Function Channel Channel Type Channel2) Connector Pin Signal
Number Number1)
Data 29 1 Digital In/Out 11 1 18 RS485 Tx- - Ch: 1-2 [Mod: x]
2 2 RS485 Tx+ - Ch: 1-2 [Mod: x]
30 3 3 35 RS485 Tx- - Ch: 3-4 [Mod: x]
4 19 RS485 Tx+ - Ch: 3-4 [Mod: x]
31 5 5 3 RS485 Tx- - Ch: 5-6 [Mod: x]
6 36 RS485 Tx+ - Ch: 5-6 [Mod: x]
32 7 7 20 RS485 Tx- - Ch: 7-8 [Mod: x]
8 4 RS485 Tx+ - Ch: 7-8 [Mod: x]
33 9 9 37 RS485 Tx- - Ch: 9-10 [Mod: x]
10 21 RS485 Tx+ - Ch: 9-10 [Mod: x]
34 11 11 22 RS485 Tx- - Ch: 11-12 [Mod: x]
12 6 RS485 Tx+ - Ch: 11-12 [Mod: x]
35 13 13 39 RS485 Tx- - Ch: 13-14 [Mod: x]
14 23 RS485 Tx+ - Ch: 13-14 [Mod: x]
36 15 15 7 RS485 Tx- - Ch: 15-16 [Mod: x]
16 40 RS485 Tx+ - Ch: 15-16 [Mod: x]
1) Setting in the handcode framework.
2) Hardware channel displayed in the Platform Manager, for example.
295
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
References
Trigger
Description According to the number of physical connections available on the DS6651 Multi-
I/O Module, you can select the Trigger I/O functions. There are two channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber> +
ioInOffset<ModuleNumber>).HcCustomName / Channel name Lets you
specify a custom name for the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
296
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Trigger
References
297
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS6651 Multi-I/O Module Framework
298
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the DS660X_MGT Framework
299
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
Aurora 64b66b In
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The Aurora 64b66b In I/O function lets you configure
read access to the MGT communication.
This I/O function is not considered when you generate the processor interface
model.
Used communication protocol setting The I/O function uses the Aurora
64B/66B protocol with the following settings:
§ Transceiver: GTH
§ Line Rate: 10.3125 Gbps
§ Dataflow Mode: Duplex
§ Interface: Framing
§ Flow Control: NFC
§ USER K: off
§ Little Endian Support: off
§ CRC: off
For more information on the protocol, refer to https://docs.xilinx.com/r/en-
US/pg074-aurora-64b66b.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
300
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Aurora 64b66b In
If you implement inter-FPGA communication via MGT modules, clock drifts can
result in additional latencies. Refer to Implementing Inter-FPGA Communication
via MGT Modules (FPGA Programming Handcode Framework Guide ).
Data type: U_Fix64_0
Data width: 1
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
301
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The Aurora 64b66b Out I/O function lets you configure
write access to the MGT communication.
This I/O function is not considered when you generate the processor interface
model.
Used communication protocol setting The I/O function uses the Aurora
64B/66B protocol with the following settings:
§ Transceiver: GTH
§ Line Rate: 10.3125 Gbps
§ Dataflow Mode: Duplex
§ Interface: Framing
§ Flow Control: NFC
§ USER K: off
§ Little Endian Support: off
§ CRC: off
For more information on the protocol, refer to https://docs.xilinx.com/r/en-
US/pg074-aurora-64b66b.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.Out.Fct(<IOFunctionNumber> + mgtOutOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
302
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Aurora 64b66b 128 Bit In
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The Aurora 64b66b 128 Bit In I/O function lets you
configure read access to the MGT communication.
This I/O function is not considered when you generate the processor interface
model.
Used communication protocol setting The I/O function uses the Aurora
64B/66B protocol with the following settings:
§ Transceiver: GTH
§ Line Rate: 10.3125 Gbps
§ Dataflow Mode: Duplex
303
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
§ Interface: Framing
§ Flow Control: NFC
§ USER K: off
§ Little Endian Support: off
§ CRC: off
For more information on the protocol, refer to https://docs.xilinx.com/r/en-
US/pg074-aurora-64b66b.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
304
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Aurora 64b66b 128 Bit Out
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The Aurora 64b66b 128 Bit Out I/O function lets you
configure write access to the MGT communication.
This I/O function is not considered when you generate the processor interface
model.
Used communication protocol setting The I/O function uses the Aurora
64B/66B protocol with the following settings:
§ Transceiver: GTH
§ Line Rate: 10.3125 Gbps
§ Dataflow Mode: Duplex
§ Interface: Framing
§ Flow Control: NFC
305
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
§ USER K: off
§ Little Endian Support: off
§ CRC: off
For more information on the protocol, refer to https://docs.xilinx.com/r/en-
US/pg074-aurora-64b66b.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.Out.Fct(<IOFunctionNumber> + mgtOutOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
306
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
MGT In
Data width: 1
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
MGT In
Purpose To provide the information about the connection between the GTH transceivers
and the MGT module and to specify the reference clock frequency.
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The MGT In I/O function provides the information about
the connection between the GTH transceivers and the MGT module and lets you
specify the reference clock frequency.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).Parameter((<IOFunctionNumber> + 1)).Init / MGT reference clock
frequency Lets you specify the reference clock frequency that is used to
generate the MGT clock frequency.
The reference clock frequency depends on the protocol type, transfer rate, and
internal scaling factors. In many cases, the reference clock frequency for the
MGT module of the FPGA base board is 156.25 MHz.
For more information, refer to DS6601, DS6602: Coding a Customized MGT
Protocol (FPGA Programming Handcode Framework Guide ).
307
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
mgt_rx_p / RX_P Reads the raw data from the MGT module.
The port represents the differential output signals of the MGT module. The port
must be connected to a function that provides the configurations for the GTH
transceiver.
Data type: UFix_4_0
Each bit represents the output of one MGT channel.
Data width: 1
Update rate: Clock frequency of the GTH transceivers.
mgt_rx_n / RX_N Reads the raw data from the MGT module.
The port represents the differential output signals of the MGT module. The port
must be connected to a function that provides the configurations for the GTH
transceiver.
Data type: UFix_4_0
Each bit represents the output of one MGT channel.
Data width: 1
Update rate: Clock frequency of the GTH transceivers.
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
308
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
MGT In Opto Ready
Purpose To indicate whether the MGT module is ready for data exchange.
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The MGT In Opto Ready I/O function lets you indicate
whether the MGT module is ready for data exchange.
If you are using a clock domain for MGT communication that is synchronous to
the GTH transceivers, you must use the MGT In Opto Ready I/O function in a
clock domain at the base rate of the FPGA.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
309
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
MGT Out
Purpose To provide the information about the connection between the GTH transceivers
and the MGT module.
Description The DS6601 and DS6602 FPGA Base Boards provide an MGT module slot to
install an MGT Module. The MGT Out I/O function provides the information
about the connection between the GTH transceivers and the MGT module.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file of the FPGA base board.
hcfw.IOProperties.In.Fct(<IOFunctionNumber> + mgtInOffset
(1)).HcCustomName / Channel name Lets you specify a custom name for
the specified channel.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
310
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
MGT Out
The MGT reference clock frequency parameter of the MGT In I/O function
lets you specify the reference frequency that is used to generate the MGT clock
frequency. Refer to MGT In on page 307.
I/O mapping The MGT communication bus uses the MPO connector of the FPGA Base Board.
311
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the DS660X_MGT Framework
312
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the Inter-FPGA Interface Framework
Introduction The Inter-FPGA Interface framework provides access to the I/O module slots of a
SCALEXIO FPGA base board to implement an inter-FPGA communication bus.
313
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the Inter-FPGA Interface Framework
I‑FPGA In
Purpose To provide read access to the inter-FPGA communication bus with bus
synchronization.
Description With the Inter-FPGA Interface framework, you can use I/O module slots of
a SCALEXIO FPGA base board as inter-FPGA interfaces. The module number
represents the used I/O module slot of the FPGA board.
The I‑FPGA In I/O functions let you configure up to eight subbuses with bus
synchronization.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
ioModuleNr Lets you set the used I/O module slot to configure the following
I/O functions. Value range: 1 ... 5
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).HcCustomName / Channel name Lets you
specify a custom name for the specified channel. The channel number reflects
one of eight configurable subbuses.
314
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA In
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam).Init / Mode You have to
specify only the channel number. The channel number reflects one of eight
configurable subbuses. To use the I-FPGA In function, the mode must be set
to 2 or 4. Mode 4 is the recommended mode. Mode 2 is an expert mode
that you schould use only if you have enough experience of configuring buses
and knowledge of checking the correctness of the configured transmission with
regard to the observed signal integrity at the applicable temperature range.
Possible modes for the inter-FPGA interface:
§ 0: Unused
§ 1: Write access to the inter-FPGA interface with a lower latency (2 clock
cycles), but the bits are not synchronous (expert mode).
§ 2: Read access to the inter-FPGA interface with a lower latency (2 clock cycles),
but the bits are not synchronous (expert mode).
§ 3: Write access to the inter-FPGA interface with bus synchronization.
§ 4: Read access to the inter-FPGA interface with bus synchronization.
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+2).Init / Startbit Lets you
specify the bit with which the transmission data starts in the range 0 … 27. The
channel number reflects one of eight configurable subbuses.
Note
If you send and receive data with the same inter-FPGA interface, you have
to consider limitations on the bit ranges for the subbuses. Refer to How
to Determine the Bit Ranges for Inter-FPGA Subbuses Between SCALEXIO
FPGA Base Boards (FPGA Programming Handcode Framework Guide ).
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+4).Init / Endbit Lets you
specify the bit with which the transmission data ends in the range 0 … 27. The
channel number reflects one of eight configurable subbuses.
The range of the end bit is to be adapted to the specified start bit. It is not
allowed to specify an end bit less than the corresponding start bit.
For each subbus with bus synchronization, one bit is to be reserved
for synchronization. The maximum data width of a subbus is therefore
Endbit ‑ Startbit.
Note
If you send and receive data with the same inter-FPGA interface, you have
to consider limitations on the bit ranges for the subbuses. Refer to How
to Determine the Bit Ranges for Inter-FPGA Subbuses Between SCALEXIO
FPGA Base Boards (FPGA Programming Handcode Framework Guide ).
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+7).Init / Bit length Lets
you specify the bit length used for the transmission in the range 3 … 128 cycles.
The parameter effects only synchronized buses. The channel number reflects one
of eight configurable subbuses.
315
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the Inter-FPGA Interface Framework
Note
You should change these values only if you have enough experience
of configuring buses and knowledge of checking the correctness of the
configured transmission with regard to the observed signal integrity at the
applicable temperature range.
The default values for the bit length, clock, and filter depth have been
tested by dSPACE.
A reference value for the bit length depends on the specified filter depth and can
be calculated by 2 + 2 · FilterDepthIn.
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+9).Init / Clock Lets you
specify the clock frequency used for the inter‑FPGA communication. The
parameter effects only synchronized buses. The channel number reflects one of
eight configurable subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
Possible values:
§ 1: 125 MHz
§ 2: 250 MHz
The default value is 1 (125 MHz).
Note
You should change these values only if you have enough experience
of configuring buses and knowledge of checking the correctness of the
configured transmission with regard to the observed signal integrity at the
applicable temperature range.
The default values for the bit length, clock, and filter depth have been
tested by dSPACE.
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+11).Init / Filter
depth Lets you specify a spike filter with the specified length to reduce
transmission errors in the range 0 … 32 cycles. The parameter effects only
synchronized buses. The channel number reflects one of eight configurable
subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
316
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA In
Note
You should change these values only if you have enough experience
of configuring buses and knowledge of checking the correctness of the
configured transmission with regard to the observed signal integrity at the
applicable temperature range.
The default values for the bit length, clock, and filter depth have been
tested by dSPACE.
hcfw.IOProperties.In.Fct(<ChannelNumber> +
ioInOffset(ioModuleNr)).Parameter(startparam+12).Init / Add internal
pipeline register to relax timing Lets you enable an additional internal
pipeline to relax timing especially for 250 MHz communication if a FPGA build
process were otherwise not possible. The parameter effects only synchronized
buses. The channel number reflects one of eight configurable subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
§ 0: Off (default)
§ 1: On
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_intercom_<ChannelNumber>_data_new / Data
New Indicates whether new data was written to the Data register. The
module number reflects the used I/O module slot. The channel number reflects
one of eight configurable subbuses.
If the Data register contains new values, the flag changes from 0 to 1 for one
clock cycle. If the transmission failed, the error counter increases.
Usable only for inter-FPGA communication buses with bus synchronization.
Data width: 1
§ 0: No new data available in the Data register. Either the transmission is not yet
finished, or the transmission failed (see Errors outport).
§ 1: New data available in the Data register.
m<ModuleNumber>_intercom_<ChannelNumber>_errors /
Errors Outputs the number of transmission errors. The counter is reset only at
FPGA application start. If the range exceeds, the counter restarts with 0.
The module number reflects the used I/O module slot. The channel number
reflects one of eight configurable subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
317
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the Inter-FPGA Interface Framework
Data width: 1
Value range: 0 ... 232-1
m<ModuleNumber>_intercom_<ChannelNumber>_reset_error / Errors
Reset Resets the Errors output. The module number reflects the used I/O
module slot. The channel number reflects one of eight configurable subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
The I-FPGA In Errors counter potentially increases until the FPGA Base Board with
the corresponding I-FPGA Out interface starts working.
§ 0: Not used
§ 1: Error output is reset
Data type: UFix1_0
Value range: 0 ... 1
I/O mapping No external connection to the I/O connector of the board. The SCALEXIO FPGA
base board uses its I/O module slots inside the SCALEXIO system for inter-FPGA
communication.
I‑FPGA Out
Purpose To provide write access to the inter-FPGA communication bus with bus
synchronization.
Description With the Inter-FPGA Interface framework, you can use I/O module slots of
a SCALEXIO FPGA base board as inter-FPGA interfaces. The module number
represents the used I/O module slot of the FPGA board.
The I‑FPGA Out I/O functions let you configure up to eight subbuses with bus
synchronization.
318
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
ioModuleNr Lets you set the used I/O module slot to configure the following
I/O functions. Value range: 1 ... 5
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).HcCustomName / Channel name Lets you
specify a custom name for the specified channel. The channel number reflects
one of eight configurable subbuses.
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).Parameter(startparam).Init / Mode You have
to specify only the channel number. The channel number reflects one of eight
configurable subbuses. To use the I-FPGA Out function, the mode must be set
to 1 or 3. Mode 3 is the recommended mode. Mode 1 is an expert mode
that you schould use only if you have enough experience of configuring buses
and knowledge of checking the correctness of the configured transmission with
regard to the observed signal integrity at the applicable temperature range.
Possible modes for the inter-FPGA interface:
§ 0: Unused
§ 1: Write access to the inter-FPGA interface with a lower latency (2 clock
cycles), but the bits are not synchronous (expert mode).
§ 2: Read access to the inter-FPGA interface with a lower latency (2 clock cycles),
but the bits are not synchronous (expert mode).
§ 3: Write access to the inter-FPGA interface with bus synchronization.
§ 4: Read access to the inter-FPGA interface with bus synchronization.
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).Parameter(startparam+2).Init / Startbit Lets
319
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the Inter-FPGA Interface Framework
you specify the bit with which the transmission data starts in the range 0 …
27. The channel number reflects one of eight configurable subbuses.
Note
If you send and receive data with the same inter-FPGA interface, you have
to consider limitations on the bit ranges for the subbuses. Refer to How
to Determine the Bit Ranges for Inter-FPGA Subbuses Between SCALEXIO
FPGA Base Boards (FPGA Programming Handcode Framework Guide ).
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).Parameter(startparam+4).Init / Endbit Lets
you specify the bit with which the transmission data ends in the range 0 …
27. The channel number reflects one of eight configurable subbuses.
The range of the end bit is to be adapted to the specified start bit. It is not
allowed to specify an end bit less than the corresponding start bit.
For each subbus with bus synchronization, one bit is to be reserved
for synchronization. The maximum data width of a subbus is therefore
Endbit ‑ Startbit.
Note
If you send and receive data with the same inter-FPGA interface, you have
to consider limitations on the bit ranges for the subbuses. Refer to How
to Determine the Bit Ranges for Inter-FPGA Subbuses Between SCALEXIO
FPGA Base Boards (FPGA Programming Handcode Framework Guide ).
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).Parameter(startparam+7).Init / Bit
length Lets you specify the bit length used for the transmission in the range
3 … 128 cycles. The parameter effects only synchronized buses. The channel
number reflects one of eight configurable subbuses.
The default value is 6 cycles.
Usable only for inter-FPGA communication buses with bus synchronization.
Note
You should change these values only if you have enough experience
of configuring buses and knowledge of checking the correctness of the
configured transmission with regard to the observed signal integrity at the
applicable temperature range.
The default values for the bit length, clock, and filter depth have been
tested by dSPACE.
A reference value for the bit length depends on the specified filter depth of the
related I‑FPGA In, and can be calculated by 2 + 2 · FilterDepthIn.
hcfw.IOProperties.Out.Fct(<ChannelNumber> +
ioOutOffset(ioModuleNr)).Parameter(startparam+9).Init / Clock Lets you
specify the clock frequency used for the inter‑FPGA communication. The
parameter effects only synchronized buses. The channel number reflects one of
eight configurable subbuses.
320
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I-FPGA Out
Note
You should change these values only if you have enough experience
of configuring buses and knowledge of checking the correctness of the
configured transmission with regard to the observed signal integrity at the
applicable temperature range.
The default values for the bit length, clock, and filter depth have been
tested by dSPACE.
Port You must add the following signals of the I/O function to the port definition of
the custom module entity cm.
m<ModuleNumber>_intercom_<ChannelNumber>_data_out / Data
Out Outputs the data to be written to the inter‑FPGA communication bus.
The channel number reflects one of eight configurable bus segments. The
module number reflects the used I/O module slot. The channel number reflects
one of eight configurable subbuses. Bits which exceed the configured bus width
are discarded. For each configured subbus one bit is automatically reserved for
synchronization.
Data width: 1
Value range: 0 ... 227-1
m<ModuleNumber>_intercom_<ChannelNumber>_data_sent_v / Data
Sent Outputs the data already transmitted to the inter‑FPGA communication
bus. The module number reflects the used I/O module slot. The channel number
reflects one of eight configurable subbuses.
Usable only for inter-FPGA communication buses with bus synchronization.
Data width: 1
Value range: 0 ... 227-1
m<ModuleNumber>_intercom_<ChannelNumber>_ready /
Ready Signals the clock cycle in which the data to be transmitted is sampled.
The port is available only for synchronized buses.
The port is high for one clock cycle with the periodicity of the bit length.
Usable only for inter-FPGA communication buses with bus synchronization.
Data width: 1
I/O mapping No external connection to the I/O connector of the board. The SCALEXIO FPGA
base board uses its I/O module slots inside the SCALEXIO system for inter-FPGA
communication.
321
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the Inter-FPGA Interface Framework
322
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
DAC...................................................................................................... 335
To write data to an analog output signal in the FPGA application.
323
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Interrupt................................................................................................ 346
To request a processor interrupt outside of the FPGA application.
324
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Type A)
ADC (Type A)
Purpose To read data from an analog input signal in the FPGA application using the Type
A conversion function.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the ADC (Type A) I/O functions. There are eight
analog input channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for analog input channels using the Type A conversion function. The signals are
available at the DS1514 ZIF I/O connector.
325
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
ADC (Type B)
Purpose To read data from an analog input signal in the FPGA application using the Type
B conversion function.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the ADC (Type B) I/O functions. There are 16 analog
output channels.
This I/O function is not considered when you generate the processor interface
model.
326
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Type B)
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for analog input channels using the Type B conversion function. The signals are
available at the DS1514 ZIF I/O connector.
327
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Buffer In
Purpose To read data from an intermodule-bus buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters The I/O function number can be specified in the range 129 … 160.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
328
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Buffer64 In
Purpose To read data from an intermodule-bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
329
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Parameters The I/O function number can be specified in the range 289 … 320.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
330
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Buffer Out
Description If you select Buffer as the access type, the data is written to an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
331
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
332
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 ... 320.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
333
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
334
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
DAC
DAC
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the DAC I/O functions. There are four analog output
channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
335
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for analog output channels. The signals are available at the DS1514 ZIF I/O
connector.
Purpose To provide bit-wise read access to digital camshaft and crankshaft sensors. Each
channel is 1 bit wide.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital Crank/Cam Sensor I/O functions. There
are three input channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Low
threshold voltage To set the low threshold level for the selected digital input
336
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Crank/Cam Sensor
channel. Below this level a logical 0 is detected, above this level a logical 1 is
detected, if the high threshold voltage was crossed before.
§ Range:
‑40000 mV … +40000 mV
§ Resolution:
20 mV
§ Default:
1000 mV
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / High
threshold voltage To set the high threshold level for the selected digital
input channel. The logical 1 is output, if this level is crossed and stays 1 until the
signal falls below the low threshold level.
§ Range:
‑40000 mV … +40000 mV
§ Resolution:
100 mV
§ Default:
1000 mV
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework for
analog input channels. Depending on the MicroAutoBox variant the signals are
available at the DS1514 ZIF I/O connector.
337
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Digital In (Type A)
Purpose To read data from a digital input signal in the FPGA application using a digital
input channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital In (Type A) I/O functions. There are 16
digital input channels.
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
338
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In (Type A)
Note
§ The frequency that can be detected is much smaller than the update rate.
For information on the electrical characteristics of the DS1552 Multi‑I/O
Module, refer to Digital Inputs (MicroAutoBox II Hardware Reference ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework for
digital input channels. The signals are available at the DS1514 ZIF I/O connector.
339
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Digital In (Type B)
Purpose To read data from a digital input signal in the FPGA application by using a digital
bidirectional channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital In (Type B) I/O functions. There are eight
digital input channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel
in the range 1000 mV … 7500 mV in steps of 100 mV. If the input signal is
below this level, a logical 0 is detected, otherwise a logical 1.
§ 1000: 1000 mV threshold level
§ …
§ 7500: 7500 mV threshold level
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
340
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type A)
Note
§ The frequency that can be detected is much smaller than the update
rate. For information on the electrical characteristics of the DS1552 Multi-
I/O Module, refer to Digital I/O (Bidirectional) (MicroAutoBox II Hardware
Reference ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for digital bidirectional channels. The signals are available at the DS1514 ZIF I/O
connector.
You can use the same digital channel for input and output signals.
Purpose To write data to a digital output signal in the FPGA application using a digital
output channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital Out (Type A) I/O functions. There are 16
digital output channels.
341
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
The voltage range for the high side switch for all digital output channels is in the
range 0 V … 45 V.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is much smaller than the update rate.
For information on the electrical characteristics of the DS1552 Multi-I/O
Module, refer to Digital Outputs (MicroAutoBox II Hardware Reference ).
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for digital output channels. The signals are available at the DS1514 ZIF I/O
connector.
342
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type B)
Purpose To write data to a digital output signal in the FPGA application by using a digital
bidirectional channel.
Description According to the number of physical connections available on the DS1514 Multi-
I/O Module, you can select the Digital Out (Type B) I/O functions. There are
eight digital output channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
343
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Note
You can specify the high supply voltage value only globally for all digital
output channels.
The I/O function number must be specified as 18.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS1552 Multi-I/O
Module, refer to Digital I/O (Bidirectional) (MicroAutoBox II Hardware
Reference ).
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for digital bidirectional channels. The signals are available at the DS1514 ZIF I/O
connector.
You can use the same digital channel for input and output signals.
344
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Inductive Zero Voltage Detector
Description The FPGA1401Tp1 frameworks provide one channel for the Inductive Zero
Voltage Detector I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
crank / Data To detect the zero crossing points of the analog signals. If a zero
crossing from positive to negative is detected, the output signal is 1 for 1 clock
cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: 80 MHz
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework for
analog input channels. The signals are available at the DS1514 ZIF I/O connector.
345
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Interrupt
If you generate the processor interface model for this FPGA I/O function, a
PROC_INT_BL block is added to the processor model with the configured data
formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
346
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
LED Out
LED Out
Purpose To write a digital signal that controls the FPGA status LED.
You can find the FPGA status LED near the DS1514 ZIF I/O connector.
Description The FPGA1401Tp1 frameworks provide one channel for the LED Out I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an intermodule-bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
347
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
348
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 In
Purpose To read data from an intermodule-bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
349
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
350
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register Out
Register Out
Description If you select Register as the access type, the data is written to an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
351
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Description If you select Register64 as the access type, the data is written to an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
352
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
353
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Sensor Supply
Purpose To provide a supply voltage, for example, for a connected sensor, in the range
2000 mV … 20000 mV in steps of 100 mV.
Description The FPGA1401Tp1 frameworks provide one channel for the Sensor Supply I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Supply
voltage Lets you specify the supply voltage a connected sensor is to be driven
with in the range 2000 mV … 20000 mV in steps of 100 mV.
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework for
for sensor supply. The signals are available at the DS1514 ZIF I/O connector.
354
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
Status In
Purpose To read digital signals that outputs state information, e.g.: state of the FPGA
initialization sequence or the FPGA die temperature.
Description The FPGA1401Tp1 framework provides one channel for the Status In I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
355
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Note
UART (RS232)
Purpose To implement communication via serial interface for RS232 UART type.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the UART (RS232) I/O functions. There are two
interfaces.
Note
UART 1 can be used without modification. To use UART 2, your DS1552 has
to be modified by dSPACE.
This I/O function is not considered when you generate the processor interface
model.
356
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART (RS232) and UART (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range 50 … 1,000,000
baud (bits per second).
The baud rate depends on the parameters 2, 3, 4 and the FPGA board, and can
be calculated by the following formula:
BaudRate = (10^8 · uart_x_dcm_m) / (2 · uart_x_dcm_d
· (uart_dcm_clk_divider+1))
With:
Note
Limitations:
§ The maximum baud rate of 1,000,000 baud must not be exceeded.
§ The output frequency of the digital clock manager (DCM) module should
be between 40 MHz and 160 MHz:
fDCM = 200 MHz · uart_x_dcm_m / uart_x_dcm_d
Tip
In the framework folder you find a MATLAB file that provides some
calculated baud rates and the percentage deviations to the supported baud
rates according to the parameters m, d and the clock divider.
§ Framework folder:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\FPGA
1401Tp1_<Multi_I/O_Module_type>_<FPGA_type>
§ MATLAB file name: FPGA1401Tp1_XC7K325T_uart_parameters.mat
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
357
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
type Lets you specify the UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init /
Termination Lets you specify the termination state.
Note
For the RS232 UART type, the termination must be set to 0 (disconnected).
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
358
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
359
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework for
serial communication using the UART (RS232) function. The signals are available
at the DS1514 ZIF I/O connector.
360
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
UART (RS422/485)
Purpose To implement communication via serial interface for RS422/485 UART type.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the UART (RS422/485) I/O functions. There are two
interfaces.
Note
UART 1 can be used without modification. To use UART 2, your DS1552 has
to be modified by dSPACE.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART (RS232) and UART (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range
50 … 10,000,000 baud (bits per second).
The baud rate depends on the parameters 2, 3 and 4, and can be calculated by
the following formula:
BaudRate = (10^8 · uart_x_dcm_m) / (4 · uart_x_dcm_d · (uart_dcm_clk_divider+1))
361
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
With:
Tip
In the framework folder you find a MATLAB file providing some calculated
baud rates and the percentage deviations to the supported baud rates
according to the parameters m, d and the clock divider.
§ Framework folder:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\FPGA
1401Tp1_<Multi_I/O_Module_type>_<FPGA_type>
§ MATLAB file name: FPGA1401Tp1_XC7K325T_uart_parameters.mat
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
mode Lets you specify the mode when using the RS422/485 UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init / UART
type Lets you specify the UART type.
362
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init /
Termination Lets you specify the termination state.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
363
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
364
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
Range: 0 … 511
I/O mapping The following I/O mapping is relevant if you use a FPGA1401Tp1 framework
for serial communication using the UART (RS422/485) function. The signals are
available at the DS1514 ZIF I/O connector. The mapping differs when using the
UART (RS422/485) in full-duplex or half-duplex mode.
Full-duplex mode:
Half-duplex mode:
365
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Multi-I/O Module Frameworks
366
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Introduction The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554) provides
the I/O functionality of MicroAutoBox II with a DS1554 Engine Control I/O
Module.
367
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Interrupt................................................................................................ 386
To request a processor interrupt outside of the FPGA application.
Temperature.......................................................................................... 397
To read the FPGA die temperature.
ADC (Type A)
Purpose To read data from an analog input signal in the FPGA application by using the
Type A conversion function.
This I/O function is not considered when you generate the processor interface
model.
368
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Type A)
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector.
369
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Buffer In
Purpose To read data from an intermodule-bus buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
370
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
371
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Buffer64 In
Purpose To read data from an intermodule-bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters The I/O function number can be specified in the range 289 … 320.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
372
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
373
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Buffer Out
Description If you select Buffer as the access type, the data is written to an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
374
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
375
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 ... 320.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
376
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
377
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Purpose To provide bit-wise read access to digital camshaft and crankshaft sensors. Each
channel is 1 bit wide.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Low
threshold voltage Lets you set the low threshold level for the selected digital
input channel. Below this level, a logical 0 is detected, above this level, a logical
1 is detected if the high threshold voltage was crossed before.
§ Range: ‑40000 mV … +40000 mV
§ Resolution: 20 mV
§ Default: 1000 mV
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / High
threshold voltage Lets you set the high threshold level for the selected
digital input channel. The logical 1 is output if this level is crossed and stays 1
until the signal falls below the low threshold level.
§ Range: ‑40000 mV … +40000 mV
§ Resolution: 20 mV
§ Default: 1000 mV
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
378
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In (Type B)
Digital In (Type B)
Purpose To read data from a digital input signal in the FPGA application by using a digital
bidirectional channel.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel
in steps of 100 mV. If the input signal is below this level, a logical 0 is detected.
Otherwise, a logical 1 is detected.
§ Range: 1000 mV … 7500 mV
§ Resolution: 100 mV
§ Default: 1500 mV
379
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
§ The frequency that can be detected is much smaller than the update rate.
For information on the electrical characteristics of the DS1554 Engine
Control I/O Module, refer to Digital I/O (Bidirectional) (MicroAutoBox II
Hardware Reference ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector. You can use the same digital channel for input and
output signals.
380
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type A)
Purpose To write data to a digital output signal in the FPGA application using a digital
output channel.
The voltage range for the high-side switch for all digital output channels is in the
range 0 V … 45 V.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
381
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Note
The frequency that can be generated is much smaller than the update
rate. For information on the electrical characteristics of the DS1554 Engine
Control I/O Module, refer to Digital Outputs (MicroAutoBox II Hardware
Reference ).
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector.
382
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type B)
Purpose To write data to a digital output signal in the FPGA application by using a digital
bidirectional channel.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
383
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Note
You can specify the high supply voltage value only globally for all digital
output channels.
The I/O function number must be specified as 42.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is much smaller than the update
rate. For information on the electrical characteristics of the DS1554 Engine
Control I/O Module, refer to Digital I/O (Bidirectional) (MicroAutoBox II
Hardware Reference ).
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector. You can use the same digital channel for input and
output signals.
384
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Inductive Zero Voltage Detector
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Inductive Zero Voltage Detector I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
crank_0 / Data Detects the zero crossing points of the analog signals. If a
zero crossing from positive to negative is detected, the output signal is 1 for one
clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: 80 MHz
385
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
Interrupt
If you generate the processor interface model for this FPGA I/O function, a
PROC_INT_BL block is added to the processor model with the configured data
formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
386
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Knock Sensor
Knock Sensor
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
387
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
If the flag changes from 0 to 1, the ADC data contains a new value. The flag is
set to 1 for only one clock cycle.
Data type: UFix_1_0
I/O mapping The following I/O mapping is relevant if you use the FPGA1401Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
LED Out
Purpose To write a digital signal that controls the FPGA status LED.
You can find the FPGA status LED near the DS1514 ZIF I/O connector.
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the LED Out I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
388
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register In
Purpose To read data from an intermodule-bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
389
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
390
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
Register64 In
Purpose To read data from an intermodule-bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_WRITE_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
391
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
392
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register Out
Register Out
Description If you select Register as the access type, the data is written to an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
393
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
Description If you select Register64 as the access type, the data is written to an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
If you generate the processor interface model for this FPGA I/O function,
a PROC_XDATA_READ_BL block is added to the processor model with the
configured data formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
394
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
395
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Status In
Purpose To read digital signals that output state information, e.g., the state of the FPGA
initialization sequence.
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Status In I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
396
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Temperature
Temperature
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Temperature I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
397
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1401Tp1 with Engine Control I/O Module Framework
Note
398
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
DAC...................................................................................................... 410
To write data to an Analog Out 13 channel in the FPGA application.
399
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Interrupt................................................................................................ 421
To request a processor interrupt outside of the FPGA application.
ADC (Type A)
Purpose To read data from an analog input signal in the FPGA application using the ADC
(Type A) conversion function for the Analog In 10/Analog In 11 channel.
400
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Type A)
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for analog input channels using the Type A conversion function. The signals are
available at the DS1514 ZIF I/O connector.
401
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
ADC (Type B)
Purpose To read data from an analog input signal in the FPGA application using the ADC
(Type B) conversion function for the Analog In 12 channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the ADC (Type B) I/O functions. There are 16 analog
output channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
402
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework for
analog input channels using the ADC (Type B) conversion function. The signals
are available at the DS1514 ZIF I/O connector.
Buffer In
Purpose To read data from an intermodule-bus buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
403
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Parameters The I/O function number can be specified in the range 129 … 160.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
404
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
then back to 0, the requested buffer contains new values and is ready to be
read. The flag is set to 1 only within one clock cycle.
Buffer64 In
Purpose To read data from an intermodule-bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
Parameters The I/O function number can be specified in the range 289 … 320.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
405
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
406
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer Out
Buffer Out
Description If you select Buffer as the access type, the data is written to an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
407
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
408
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 ... 320.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
409
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
DAC
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the DAC I/O functions. There are four analog output
channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
410
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Crank/Cam Sensor
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for analog output channels. The signals are available at the DS1514 ZIF I/O
connector.
Purpose To provide bit-wise read access to digital camshaft and crankshaft sensors. Each
channel is 1 bit wide.
411
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital Crank/Cam Sensor I/O functions. There
are three input channels.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Low
threshold voltage To set the low threshold level for the selected digital input
channel. Below this level a logical 0 is detected, above this level a logical 1 is
detected, if the high threshold voltage was crossed before.
§ Range:
‑40000 mV … +40000 mV
§ Resolution:
20 mV
§ Default:
1000 mV
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / High
threshold voltage To set the high threshold level for the selected digital
input channel. The logical 1 is output, if this level is crossed and stays 1 until the
signal falls below the low threshold level.
§ Range:
‑40000 mV … +40000 mV
§ Resolution:
20 mV
§ Default:
1000 mV
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework for
analog input channels. The signals are available at the DS1514 ZIF I/O connector.
412
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In (Type A)
Digital In (Type A)
Purpose To read data from a digital input signal in the FPGA application using a Digital
In 5 channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital In (Type A) I/O functions. There are 16
digital input channels.
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
413
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
§ The frequency that can be detected is much smaller than the update rate.
For information on the electrical characteristics of the DS1552 Multi‑I/O
Module, refer to Digital In 5 Characteristics (MicroAutoBox III Hardware
Installation and Configuration ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework for
digital input channels. The signals are available at the DS1514 ZIF I/O connector.
414
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In (Type B)
Digital In (Type B)
Purpose To read data from a digital input signal in the FPGA application by using a
Digital InOut 6 channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital In (Type B) I/O functions. There are eight
digital input channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel
in the range 1000 mV … 7500 mV in steps of 100 mV. If the input signal is
below this level, a logical 0 is detected, otherwise a logical 1.
§ 1000: 1000 mV threshold level
§ …
§ 7500: 7500 mV threshold level
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
415
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
§ The frequency that can be detected is much smaller than the update
rate. For information on the electrical characteristics of the DS1552 Multi-
I/O Module, refer to Digital In/Out 6 Characteristics (MicroAutoBox III
Hardware Installation and Configuration ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for digital bidirectional channels. The signals are available at the DS1514 ZIF I/O
connector.
You can use the same digital channel for input and output signals.
416
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type A)
Purpose To write data to a digital output signal in the FPGA application using a Digital
Out 5 channel.
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the Digital Out (Type A) I/O functions. There are 16
digital output channels.
The voltage range for the high side switch for all digital output channels is in the
range 0 V … 45 V.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is much smaller than the update
rate. For information on the electrical characteristics of the DS1552 Multi-
I/O Module, refer to Digital Interface Characteristics (DS1552/DS1552B1)
(MicroAutoBox III Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for digital output channels. The signals are available at the DS1514 ZIF I/O
connector.
417
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Purpose To write data to a digital output signal in the FPGA application by using a Digital
InOut 6 channel.
Description According to the number of physical connections available on the DS1514 Multi-
I/O Module, you can select the Digital Out (Type B) I/O functions. There are
eight digital output channels.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
418
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type B)
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Note
You can specify the high supply voltage value only globally for all digital
output channels.
The I/O function number must be specified as 18.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is smaller than the update rate.
For information on the electrical characteristics of the DS1552 Multi-I/O
Module, refer to Digital In/Out 6 Characteristics (MicroAutoBox III Hardware
Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for digital bidirectional channels. The signals are available at the DS1514 ZIF I/O
connector.
419
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
You can use the same digital channel for input and output signals.
Description The FPGA1403Tp1 frameworks provide one channel for the Inductive Zero
Voltage Detector I/O function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
crank / Data To detect the zero crossing points of the analog signals. If a zero
crossing from positive to negative is detected, the output signal is 1 for 1 clock
cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: 80 MHz
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework for
analog input channels. The signals are available at the DS1514 ZIF I/O connector.
420
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Interrupt
Interrupt
If you generate the processor interface model for this FPGA I/O function, a
PROC_INT_BL block is added to the processor model with the configured data
formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
421
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
LED Out
Purpose To write a digital signal that controls the FPGA status LED.
You can find the FPGA status LED near the DS1514 ZIF I/O connector.
Description The FPGA1403Tp1 frameworks provide one channel for the LED Out I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
422
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
Register In
Purpose To read data from an intermodule-bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
423
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 In
Purpose To read data from an intermodule-bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
424
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
425
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Register Out
Description If you select Register as the access type, the data is written to an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
426
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
427
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Description If you select Register64 as the access type, the data is written to an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
428
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Sensor Supply
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Sensor Supply
Purpose To provide a supply voltage, for example, for a connected sensor, in the range
2000 mV … 20000 mV in steps of 100 mV.
Description The FPGA1403Tp1 frameworks provide one channel for the Sensor Supply I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Supply
voltage Lets you specify the supply voltage a connected sensor is to be driven
with in the range 2000 mV … 20000 mV in steps of 100 mV.
429
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for for sensor supply. Depending on the MicroAutoBox variant the signals are
available at the DS1514 ZIF I/O connector.
Status In
Purpose To read digital signals that outputs state information, e.g.: state of the FPGA
initialization sequence or the FPGA die temperature.
Description The FPGA1403Tp1 framework provides one channel for the Status In I/O
function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
430
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
Note
UART (RS232)
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the UART (RS232) I/O functions. There are two
interfaces.
431
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Note
UART 1 can be used without modification. To use UART 2, your DS1552 has
to be modified by dSPACE.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART (RS232) and UART 3 (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range 50 … 1,000,000
baud (bits per second).
With:
Note
Limitations:
§ The maximum baud rate of 1,000,000 baud must not be exceeded.
§ The output frequency of the digital clock manager (DCM) module should
be between 40 MHz and 160 MHz:
fDCM = 200 MHz · uart_x_dcm_m / uart_x_dcm_d
Tip
In the framework folder you find a MATLAB file that provides some
calculated baud rates and the percentage deviations to the supported baud
rates according to the parameters m, d and the clock divider.
§ Framework folder:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\FPGA
1403Tp1_<Multi_I/O_Module_type>_<FPGA_type>
§ MATLAB file name: FPGA1403Tp1_XC7K325T_uart_parameters.mat
432
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
type Lets you specify the UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init /
Termination Lets you specify the termination state.
Note
For the RS232 UART type, the termination must be set to 0 (disconnected).
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
433
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
If you only want to check whether a value is available in the RX FIFO buffer, use
the Read_Fifo_Empty signal instead of this.
Value range: 0 … 2047
434
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS232)
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework for
serial communication using the UART (RS232) function. The signals are available
at the DS1514 ZIF I/O connector.
435
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
UART (RS422/485)
Description According to the number of physical connections available on the DS1552 Multi-
I/O Module, you can select the UART 3 (RS422/485) I/O functions. There are two
interfaces.
Note
UART 1 can be used without modification. To use UART 2, your DS1552 has
to be modified by dSPACE.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
Most of the parameters are used for the UART 3 (RS232) and UART (RS422/485)
I/O functions.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Baud
rate Lets you specify the baud rate of the UART in the range
50 … 10,000,000 baud (bits per second).
The baud rate depends on the parameters 2, 3 and 4, and can be calculated by
the following formula:
BaudRate = (10^8 · uart_x_dcm_m) / (4 · uart_x_dcm_d · (uart_dcm_clk_divider+1))
436
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
With:
Tip
In the framework folder you find a MATLAB file providing some calculated
baud rates and the percentage deviations to the supported baud rates
according to the parameters m, d and the clock divider.
§ Framework folder:
<RCP_HIL_InstallationPath>\MATLAB\RTIFPGA\Frameworks\FPGA
1403Tp1_<Multi_I/O_Module_type>_<FPGA_type>
§ MATLAB file name: FPGA1403Tp1_XC7K325T_uart_parameters.mat
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(5).Init / Word
length Lets you specify the word length in the range 5 … 9 bit. The word
length includes the number of data bits and the optional parity bit. Exceeding
bits in a message are ignored at the transmitter or cleared at the receiver.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(6).Init / Stop
bits Lets you specify the length of the stop bits in half of bits.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(7).Init / UART
mode Lets you specify the mode when using the RS422/485 UART type.
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(8).Init / UART
type Lets you specify the UART type.
437
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
IOProperties.Out.Fct(<IOFunctionNumber>).Parameter(9).Init /
Termination Lets you specify the termination state.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
438
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
439
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
Range: 0 … 511
I/O mapping The following I/O mapping is relevant if you use a FPGA1403Tp1 framework
for serial communication using the UART (RS422/485) function. The signals are
available at the DS1514 ZIF I/O connector. The mapping differs when using the
UART (RS422/485) in full-duplex or half-duplex mode.
Full-duplex mode:
Half-duplex mode:
440
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
UART (RS422/485)
441
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Multi-I/O Module Frameworks
442
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Introduction The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554) provides
the I/O functionality of MicroAutoBox with a DS1554 Engine Control I/O Module.
443
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Interrupt................................................................................................ 461
To request a processor interrupt outside of the FPGA application.
Temperature.......................................................................................... 472
To read the FPGA die temperature.
ADC (Type A)
Purpose To read data from an Analog In 14 channel in the FPGA application by using the
ADC (Type A) conversion function.
This I/O function is not considered when you generate the processor interface
model.
444
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
ADC (Type A)
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector.
445
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Buffer In
Purpose To read data from an intermodule-bus buffer with a data width of 32 bits.
Description If you select Buffer as the access type, the data is read from an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
446
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
447
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Buffer64 In
Purpose To read data from an intermodule-bus buffer with a data width of 64 bits.
Description If you select Buffer64 as the access type, the data is read from an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
Parameters The I/O function number can be specified in the range 289 … 320.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
448
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 In
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768. The
maximum range of the Address inport depends on the buffer size.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
449
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Buffer Out
Description If you select Buffer as the access type, the data is written to an intermodule-bus
buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up to
32768 elements. Each buffer element has a data width of 32 bits.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 129 … 160.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
450
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Buffer64 Out
Buffer64 Out
Description If you select Buffer64 as the access type, the data is written to an intermodule-
bus buffer. 32 buffers are available. Each buffer has a variable buffer size of 1 up
to 32768 elements. Each buffer element has a data width of 64 bits.
451
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 289 ... 320.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Buffer
size Lets you specify the size of the buffer in the range 1 … 32768.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
452
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Crank/Cam Sensor
Purpose To provide bit-wise read access to digital camshaft and crankshaft sensors. Each
channel is 1 bit wide.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
453
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Low
threshold voltage Lets you set the low threshold level for the selected digital
input channel. Below this level, a logical 0 is detected, above this level, a logical
1 is detected if the high threshold voltage was crossed before.
§ Range: ‑40000 mV … +40000 mV
§ Resolution: 20 mV
§ Default: 1000 mV
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init / High
threshold voltage Lets you set the high threshold level for the selected
digital input channel. The logical 1 is output if this level is crossed and stays 1
until the signal falls below the low threshold level.
§ Range: ‑40000 mV … +40000 mV
§ Resolution: 20 mV
§ Default: 1000 mV
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
454
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital In (Type B)
Digital In (Type B)
Purpose To read data from a digital input signal in the FPGA application by using a
Digital InOut 8 channel.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
IOProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Threshold
voltage Lets you specify the threshold level for the current digital channel
in steps of 100 mV. If the input signal is below this level, a logical 0 is detected.
Otherwise, a logical 1 is detected.
§ Range: 1000 mV … 7500 mV
§ Resolution: 100 mV
§ Default: 1500 mV
Note
If you use the same digital channel for the input and the output, the I/O
driver is internally set to InOut mode. As a consequence, the maximum
input voltage for the digital input channel is equal to the specified high
supply, and the applicable threshold voltage is lower than the specified high
supply.
To use the maximum input voltage range, you have to use a digital channel
only as the input.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
455
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Note
§ The frequency that can be detected is much smaller than the update
rate. For information on the electrical characteristics of the DS1554
Engine Control I/O Module, refer to Digital In/Out 8 Characteristics
(MicroAutoBox III Hardware Installation and Configuration ).
§ Asynchronous input data might lead to metastable register states. Further
synchronization techniques might be necessary.
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector. You can use the same digital channel for input and
output signals.
Purpose To write data to a digital output signal in the FPGA application using a Digital
Out 7 channel.
456
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type A)
The voltage range for the high-side switch for all digital output channels is in the
range 0 V … 45 V.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Note
The frequency that can be generated is much smaller than the update
rate. For information on the electrical characteristics of the DS1554 Engine
Control I/O Module, refer to Digital Out 7 Characteristics (MicroAutoBox III
Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector.
457
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
458
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Digital Out (Type B)
Purpose To write data to a digital output signal in the FPGA application by using a Digital
In/Out 8 channel.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Note
You can specify the high supply voltage value only globally for all digital
output channels.
The I/O function number must be specified as 42.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
459
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Note
The frequency that can be generated is much smaller than the update
rate. For information on the electrical characteristics of the DS1554 Engine
Control I/O Module, refer to Digital In/Out 8 Characteristics (MicroAutoBox
III Hardware Installation and Configuration ).
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1514 ZIF I/O connector. You can use the same digital channel for input and
output signals.
460
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Interrupt
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Inductive Zero Voltage Detector I/O
function.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
crank_0 / Data Detects the zero crossing points of the analog signals. If a
zero crossing from positive to negative is detected, the output signal is 1 for one
clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: 80 MHz
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
Interrupt
461
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
If you generate the processor interface model for this FPGA I/O function, a
PROC_INT_BL block is added to the processor model with the configured data
formats.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IRQProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Knock Sensor
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
462
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Knock Sensor
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
I/O mapping The following I/O mapping is relevant if you use the FPGA1403Tp1 (7K325) with
Engine Control I/O Module (DS1554) framework. The signals are available at the
DS1554 Sub-D I/O connector.
463
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
LED Out
Purpose To write a digital signal that controls the FPGA status LED.
You can find the FPGA status LED near the DS1514 ZIF I/O connector.
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the LED Out I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
464
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register In
Register In
Purpose To read data from an intermodule-bus register with a data width of 32 bits.
Description If you select Register as the access type, the data is read from an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 32-bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
465
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 In
Purpose To read data from an intermodule-bus register with a data width of 64 bits.
Description If you select Register64 as the access type, the data is read from an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
466
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 In
PHSProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data outport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data outport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data outport are in floating‑point format. The parameter
then provides the fraction width.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data outport.
§ signed/unsigned
The values of the Data outport are in fixed‑point format with or without one
bit reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data outport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.In.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create
register groups. Registers that you specified with the same group ID are
sampled simultaneously within the FPGA application. The values therefore form a
consistent data group that is written to the intermodule bus.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
467
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Register Out
Description If you select Register as the access type, the data is written to an intermodule-
bus register. 128 registers are available with a data width of 32 bits each. The
values are transmitted element by element. If you want to access data from
several registers simultaneously, you can group these registers by specifying the
same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 32 bit value in the range 0 … 32.
0 represents the lowest bit position, 32 the highest bit position.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
468
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Register64 Out
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you select the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 32‑bit data value supports the single-precision floating‑point format with a
fraction width of 24, which complies with the IEEE 754 standard (single).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
Specify 0 for ungrouped read access.
§ 0: Ungrouped access (default)
§ 1: Register group 1
§ …
§ 63: Register group 63
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Register64 Out
469
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
Description If you select Register64 as the access type, the data is written to an
intermodule-bus register. 128 registers are available with a data width of 64 bits
each. The values are transmitted element by element. If you want to access data
from several registers simultaneously, you can group these registers by specifying
the same group identifier for them.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
The I/O function number can be specified in the range 161 … 288.
PHSProperties.Out.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(1).Init / Binary
point position (or fraction width) Lets you specify the binary point position
or returns the fraction width of the Data inport depending on the format
selected in the Format setting (see below).
§ signed/unsigned
The values of the Data inport are in fixed-point format. You can specify the
binary point position of the 64-bit value in the range 0 … 64.
0 represents the lowest bit position, 64 the highest bit position.
64-bit fixed-point data types are converted to double. Therefore, the fixed-
point resolution of fixed-point data types is restricted to 53 bits.
§ floating-point
The values of the Data inport are in floating‑point format. The parameter then
provides the fraction width.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(2).Init /
Format Lets you specify the data format of the Data inport.
§ signed/unsigned
The values of the Data inport are in fixed‑point format with or without one bit
reserved for the sign.
You can specify the binary point position in the Binary point position (or
fraction width) setting.
§ floating‑point
The values of the Data inport are in floating‑point format.
The 64‑bit data value supports the double-precision floating‑point format with
a fraction width of 53, which complies with the IEEE 754 standard (double).
The fraction width is provided by the Binary point position (or fraction
width) setting.
PHSProperties.Out.Fct(<IOFunctionNumber>).Parameter(3).Init / Register
group ID Lets you specify a number in the range 1 … 63 to create register
groups. Registers that you specified with the same group ID are read from
the intermodule bus sequentially and then provided to the FPGA application
simultaneously.
470
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Status In
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
Status In
Purpose To read digital signals that output state information, e.g., the state of the FPGA
initialization sequence.
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Status In I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
471
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
init_done/ Init Done Outputs the state of the initialization sequence that is
started after programming the FPGA.
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
Temperature
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides one channel for the Temperature I/O function.
This I/O function is not considered when you generate the processor interface
model.
Parameters You can find templates for the functions and the following parameters in the
handcode FPGA framework INI file.
IOProperties.In.Fct(<IOFunctionNumber>).HcCustomName / Channel
name Lets you specify a custom name for the specified channel.
Port The following signals of the I/O function can be found in the port definition of
the custom module entity cm.
472
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Temperature
Note
473
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
I/O Functions of the FPGA1403Tp1 with Engine Control I/O Module Framework
474
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
Index
Buffer In (FPGA1403TP1) Analog Out (DS2655M1) 240
A DS1552 405 I/O mapping 241
DS1554 448 parameters 240
ADC (Type A) (FPGA1403TP1)
Buffer In (MicroLabBox II) 99 port 241
DS1554 444
Buffer64 In (DS1302) 50 Analog Out (DS6651) 276
I/O mapping
Buffer64 In (DS2655) 134 I/O mapping 277
DS1552 401
Buffer64 In (DS6601) 168 parameters 276
DS1554 445
Buffer64 In (DS6602) 203 port 277
parameters
Buffer64 In (FPGA1401TP1) Analog Out 13 (FPGA1403TP1)
DS1552 401
DS1552 331 DS1552 410
DS1554 445
DS1554 373 Analog Out 19 (MicroLabBox II) 90
port
Buffer64 In (FPGA1403TP1) I/O mapping 91
DS1552 401
DS1552 406 parameters 91
DS1554 445
DS1554 449 port 91
ADC (Type B) (FPGA1403TP1)
Buffer64 In (MicroLabBox II) 102 Analog Out 20 (MicroLabBox II) 92
I/O mapping 403
DDR4 32 Mode 1 210 I/O mapping 93
parameters 402
DDR4 64 Mode 1 215 parameters 92
port 402
I-FPGA In (IOCNET) (DS2655) 141 port 92
ADC (Type B) (FPGA1403TP3)
I-FPGA In (IOCNET) (DS6601) 175 Analog Out-T (DS6651) 278
DS1552 402
I-FPGA In (IOCNET) (DS6602) 219 I/O mapping 279
ADC Class 1 (DS1302) 44
I-FPGA64 In (IOCNET) (DS2655) 143 parameters 278
I/O mapping 45
I-FPGA64 In (IOCNET) (DS6601) 177 port 278
parameters 45
I-FPGA64 In (IOCNET) (DS6602) 221 Angle range
port 45
Address A APU Slave (DS2655) 129
ADC Class 2 (DS1302) 46
DDR4 32 Mode 2 212 APU Slave (DS6601) 163, 198
I/O mapping 46
DDR4 64 Mode 2 217 APU Slave (MicroLabBox II) 96
parameters 46
Address B Angle Range
port 46
DDR4 32 Mode 2 213 APU Slave (DS2655) 130
ADC Type A (FPGA1401TP1)
DDR4 64 Mode 2 217 APU Slave (DS6601) 164, 199
DS1552 325
Analog In (DS2655M1) 238 APU Slave (MicroLabBox II) 97
DS1554 368
I/O mapping 239 appl_run
I/O mapping
parameters 238 Proc App Status (DS1302) 64
DS1552 325
port 239 APU Master (DS2655) 127
DS1554 369
Analog In (DS6651) 270 I/O mapping 128
parameters
I/O mapping 273 parameters 127
DS1552 325
parameters 271 port 127
DS1554 369
ports 272 APU Master (DS6601) 161
port
Analog In 10 (FPGA1403TP1) I/O mapping 162
DS1552 325
DS1552 400 parameters 161
DS1554 369
Analog In 11 (FPGA1403TP1) port 161
ADC Type A (FPGA1403TP1)
DS1552B1 400 APU Master (DS6602) 195
DS1552 400
Analog In 12 (FPGA1403TP1) I/O mapping 197
ADC Type B (FPGA1401TP1) 326
DS1552 402 parameters 195
I/O mapping 327
Analog In 14 (FPGA1403TP1) port 196
parameters 327
DS1554 444 APU Master (MicroLabBox II) 93
port 327
Analog In 15 (FPGA1403TP1) I/O mapping 95
adctp1_<ChannelNumber>_busy
DS1554 462 parameters 93
ADC Class 1 (DS1302) 45
Analog In 23 (MicroLabBox II) 86 port 94
adctp1_<ChannelNumber>_convert
I/O mapping 87 APU Slave (DS2655) 129
ADC Class 1 (DS1302) 45
parameters 87 Angle range 129
adctp1_<ChannelNumber>_value
ports 87 I/O mapping 130
ADC Class 1 (DS1302) 45
Analog In 24 (MicroLabBox II) 88 parameters 129
adctp2_<ChannelNumber>_value
I/O mapping 89 port 130
ADC Class 2 (DS1302) 46
parameters 88 APU Slave (DS6601) 163, 197
Add internal pipeline register to relax timing
ports 88 Angle range 163, 198
I-FPGA In (SCALEXIO) 317
Analog In 25 (MicroLabBox II) 89 I/O mapping 164, 199
Address
I/O mapping 90 parameters 163, 197
Buffer In (DS1302) 48
parameters 89 port 164, 198
Buffer In (DS2655) 132
ports 89 APU Slave (MicroLabBox II) 95
Buffer In (DS6601) 166
Analog In-L (DS6651) 273 Angle range 96
Buffer In (DS6602) 200
I/O mapping 276 I/O mapping 97
Buffer In (FPGA1401TP1)
parameters 273 parameters 96
DS1552 329
ports 275 port 96
DS1554 372
475
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
476
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
477
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
Analog In 24 (MicroLabBox II) 88 CN App Status (MicroLabBox II) 105 DS1554 385
Analog In 25 (MicroLabBox II) 89 DAC (FPGA1401TP1) 335 Inductive Zero Voltage Detector
Analog In-L (DS6651) 274 DAC (FPGA1403TP1) 410 (FPGA1403TP1)
Analog Out (DS2655M1) 240 DAC Class 1 (DS1302) 56 DS1552 420
Analog Out (DS6651) 277 Digital Crank/Cam Sensor (FPGA1401TP1) DS1554 461
Analog Out 19 (MicroLabBox II) 91 DS1552 336 Interrupt (DS1302) 62
Analog Out 20 (MicroLabBox II) 92 DS1554 378 Interrupt (DS2655) 148
Analog Out-T (DS6651) 278 Digital Crank/Cam Sensor (FPGA1403TP1) Interrupt (DS6601) 182
APU Master (DS2655) 127 DS1552 412 Interrupt (DS6602) 226
APU Master (DS6601) 161 DS1554 453 Interrupt (FPGA1401TP1)
APU Master (DS6602) 195 Digital In (DS2655M1) 242 DS1552 346
APU Master (MicroLabBox II) 93 Digital In (DS2655M2) 251 DS1554 386
APU Slave (DS2655) 129 Digital In (DS6651) 279 Interrupt (FPGA1403TP1)
APU Slave (DS6601) 163, 197 Digital In (Type A) (FPGA1403TP1) 413 DS1552 421
APU Slave (MicroLabBox II) 96 Digital In (Type B) (FPGA1403TP1) DS1554 462
Buffer In (DS1302) 47 DS1552 415 Interrupt (MicroLabBox II) 113
Buffer In (DS2655) 131 DS1554 455 IOCNET Global Time (DS2655) 149
Buffer In (DS6601) 165 Digital In Type A (FPGA1401TP1) 338 IOCNET Global Time (DS6601) 183
Buffer In (DS6602) 199 Digital In Type B (FPGA1401TP1) IOCNET Global Time (DS6602) 227
Buffer In (FPGA1401TP1) DS1552 340 IOCNET Global Time (MicroLabBox II) 114
DS1552 328 DS1554 379 Knock Sensor (FPGA1401TP1) 387
DS1554 371 Digital In/Out 14 (In) (MicroLabBox II) 106 Knock Sensor (FPGA1403TP1) 462
Buffer In (FPGA1403TP1) Digital In/Out 14 (In/Out-Z) LED Out (DS1302) 63
DS1552 404 (MicroLabBox II) 108 LED Out (DS2655) 150
DS1554 446 Digital In/Out 15 (MicroLabBox II) 111 LED Out (DS6601) 184
Buffer In (MicroLabBox II) 97 Digital In/Out-Z (DS6651) 281 LED Out (DS6602) 228
Buffer Out (DS1302) 51 Digital InOut (DS2655M1) 244 LED Out (FPGA1401TP1)
Buffer Out (DS2655) 135 Digital InOut Class 1 (DS1302) 57 DS1552 347
Buffer Out (DS6601) 169 Digital InOut Class 2 (DS1302) 60 DS1554 388
Buffer Out (DS6602) 204 Digital Out (DS2655M1) 246 LED Out (FPGA1403TP1)
Buffer Out (FPGA1401TP1) Digital Out (DS2655M2) 253 DS1552 422
DS1552 331 Digital Out (DS6651) 285 DS1554 464
DS1554 374 Digital Out (Type A) (FPGA1403TP1) LED Out (MicroLabBox II) 114
Buffer Out (FPGA1403TP1) DS1552 417 Proc App Status (DS1302) 64
DS1552 407 DS1554 457 Register In (DS1302) 64
DS1554 450 Digital Out (Type B) (FPGA1403TP1) Register In (DS2655) 150
Buffer Out (MicroLabBox II) 99 DS1552 418 Register In (DS6601) 184
Buffer64 In (DS1302) 49 DS1554 459 Register In (DS6602) 228
Buffer64 In (DS2655) 133 Digital Out Type A (FPGA1401TP1) Register In (FPGA1401TP1)
Buffer64 In (DS6601) 167 DS1552 342 DS1552 348
Buffer64 In (DS6602) 201 DS1554 381 DS1554 389
Buffer64 In (FPGA1401TP1) Digital Out Type B (FPGA1401TP1) Register In (FPGA1403TP1)
DS1552 330 DS1552 343 DS1552 423
DS1554 372 DS1554 383 DS1554 465
Buffer64 In (FPGA1403TP1) Digital Out-Z (DS2655M2) 256 Register In (MicroLabBox II) 115
DS1552 405 Digital Out-Z (DS6651) 287 Register Out (DS1302) 68
DS1554 448 I-FPGA In (IOCNET) (DS2655) 141 Register Out (DS2655) 154
Buffer64 In (MicroLabBox II) 101 I-FPGA In (IOCNET) (DS6601) 175 Register Out (DS6601) 188
Buffer64 Out (DS1302) 52 I-FPGA In (IOCNET) (DS6602) 219 Register Out (DS6602) 232
Buffer64 Out (DS2655) 138 I-FPGA In (SCALEXIO) 314 Register Out (FPGA1401TP1)
Buffer64 Out (DS6601) 172 I-FPGA Out (IOCNET) (DS2655) 144 DS1552 351
Buffer64 Out (DS6602) 206 I-FPGA Out (IOCNET) (DS6601) 178 DS1554 393
Buffer64 Out (FPGA1401TP1) I-FPGA Out (IOCNET) (DS6602) 222 Register Out (FPGA1403TP1)
DS1552 333 I-FPGA Out (SCALEXIO) 319 DS1552 426
DS1554 376 I-FPGA64 In (IOCNET) (DS2655) 142 DS1554 468
Buffer64 Out (FPGA1403TP1) I-FPGA64 In (IOCNET) (DS6601) 176 Register Out (MicroLabBox II) 117
DS1552 409 I-FPGA64 In (IOCNET) (DS6602) 220 Register64 In (DS1302) 66
DS1554 452 I-FPGA64 Out (IOCNET) (DS2655) 146 Register64 In (DS2655) 152
Buffer64 Out (MicroLabBox II) 103 I-FPGA64 Out (IOCNET) (DS6601) 180 Register64 In (DS6601) 186
Buzzer (DS1302) 54 I-FPGA64 Out (IOCNET) (DS6602) 224 Register64 In (DS6602) 230
CN App Status (DS2655) 140 Inductive Zero Voltage Detector Register64 In (FPGA1401TP1)
CN App Status (DS6601) 174 (FPGA1401TP1) DS1552 349
CN App Status (DS6602) 209 DS1552 345 DS1554 391
478
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
479
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
480
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
481
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
482
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
483
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
484
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
485
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
486
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
487
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
488
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
489
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
490
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
491
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
Temperature (FPGA1401TP1) 397 I/O mapping 440 UART RS232 (FPGA1401TP1) 359
parameters 397 parameters 436 UART RS422/485 (DS1302) 81
port 397 port 438 UART RS422/485 (FPGA1401TP1) 363
Temperature (FPGA1403TP1) 472 UART mode uart_<ChannelNumber>_rts
parameters 472 UART RS422/485 (DS1302) 80 UART 3 RS232 (FPGA1403TP1) 435
port 472 UART RS422/485 (FPGA1401TP1) 362 UART RS232 (DS1302) 78
Termination UART RS422/485 (FPGA1403TP1) 437 UART RS232 (FPGA1401TP1) 360
Digital In/Out 15 (MicroLabBox II) 111 UART RS232 (DS1302) 74 uart_<ChannelNumber>_wr
UART RS232 (DS1302) 76 I/O mapping 78 UART 3 RS232 (FPGA1403TP1) 434
UART RS232 (FPGA1401TP1) 358 parameters 75 UART 3 RS422/485 (FPGA1403TP1) 439
UART RS232 (FPGA1403TP1) 433 port 76 UART RS232 (DS1302) 77
UART RS422/485 (DS1302) 80 UART RS232 (FPGA1401TP1) 356 UART RS232 (FPGA1401TP1) 359
UART RS422/485 (FPGA1401TP1) 363 I/O mapping 360 UART RS422/485 (DS1302) 82
UART RS422/485 (FPGA1403TP1) 438 parameters 357 UART RS422/485 (FPGA1401TP1) 364
Threshold init voltage port 358 uart_<ChannelNumber>_wr_data
Digital In (DS2655M1) 242 UART RS232 (FPGA1403TP1) 431 UART 3 RS232 (FPGA1403TP1) 435
Digital In (DS2655M2) 251 UART RS422/485 (DS1302) 79 UART 3 RS422/485 (FPGA1403TP1) 439
Digital In (DS6651) 279 parameters 79 UART RS232 (DS1302) 78
Digital In/Out-Z (DS6651) 282 port 81 UART RS232 (FPGA1401TP1) 360
Threshold voltage UART RS422/485 (FPGA1401TP1) 361 UART RS422/485 (DS1302) 82
Digital In (Type B) (FPGA1403TP1) I/O mapping 365 UART RS422/485 (FPGA1401TP1) 364
DS1552 415 parameters 361 uart_<ChannelNumber>_wr_data_count
DS1554 455 port 363 UART 3 RS232 (FPGA1403TP1) 434
Digital In Type B (FPGA1401TP1) UART RS422/485 (FPGA1403TP1) 436 UART 3 RS422/485 (FPGA1403TP1) 439
DS1552 340 UART type UART RS232 (DS1302) 77
DS1554 379 UART RS232 (DS1302) 76 UART RS232 (FPGA1401TP1) 359
Digital In/Out 14 (In) (MicroLabBox II) 106 UART RS232 (FPGA1401TP1) 358, 433 UART RS422/485 (DS1302) 82
Digital In/Out 14 (In/Out-Z) UART RS422/485 (DS1302) 80 UART RS422/485 (FPGA1401TP1) 364
(MicroLabBox II) 108 UART RS422/485 (FPGA1401TP1) 362, 437 uart_<ChannelNumber>_wr_fifo_full
Transformer uart_<Channel_Number>_driver_en UART 3 RS232 (FPGA1403TP1) 435
Analog Out 20 (MicroLabBox II) 92 UART RS422/485 (DS1302) 82 UART 3 RS422/485 (FPGA1403TP1) 439
Trigger uart_<ChannelNumber>_cts UART RS232 (DS1302) 78
Analog In 23 (MicroLabBox II) 87 UART 3 RS232 (FPGA1403TP1) 435 UART RS232 (FPGA1401TP1) 360
Analog In 24 (MicroLabBox II) 88 UART RS232 (DS1302) 78 UART RS422/485 (DS1302) 82
Analog In 25 (MicroLabBox II) 90 UART RS232 (FPGA1401TP1) 360 UART RS422/485 (FPGA1401TP1) 364
Analog Out 19 (MicroLabBox II) 91 uart_<ChannelNumber>_driver_en Update
Analog Out 20 (MicroLabBox II) 92 UART 3 RS422/485 (FPGA1403TP1) 440 Resolver (DS1302) 72
Trigger (DS6651) 296 UART RS422/485 (FPGA1401TP1) 365 usr_<ChannelNumber>_interrupt
I/O mapping 296 uart_<ChannelNumber>_rd Interrupt (DS2655) 148
parameters 296 UART 3 RS232 (FPGA1403TP1) 433 Interrupt (DS6601) 182
port 296 UART 3 RS422/485 (FPGA1403TP1) 438 Interrupt (DS6602) 226
Trigger mode UART RS232 (DS1302) 76 Interrupt (FPGA1401TP1)
Analog In (DS6651) 271 UART RS232 (FPGA1401TP1) 358 DS1552 346
Analog In-L (DS6651) 274 UART RS422/485 (DS1302) 81 DS1554 386
Tx Data UART RS422/485 (FPGA1401TP1) 363 Interrupt (FPGA1403TP1)
RS485 Rx/Tx (DS6651) 292 uart_<ChannelNumber>_rd_data DS1552 421
RS485 RxTx (DS2655M2) 263 UART 3 RS232 (FPGA1403TP1) 434 DS1554 462
Tx Enable UART 3 RS422/485 (FPGA1403TP1) 439 usr_interrupt_<ChannelNumber>
RS485 Rx/Tx (DS6651) 292 UART RS232 (DS1302) 77 Interrupt (DS1302) 62
RS485 Tx (DS2655M2) 263 UART RS232 (FPGA1401TP1) 359 Interrupt (MicroLabBox II) 113
TX_N UART RS422/485 (DS1302) 81
MGT Out 310 UART RS422/485 (FPGA1401TP1) 364 V
TX_P uart_<ChannelNumber>_rd_data_count
Valid
MGT Out 310 UART 3 RS232 (FPGA1403TP1) 433
Resolver (DS1302) 72
UART 3 RS422/485 (FPGA1403TP1) 438
U UART RS232 (DS1302) 77
UART RS232 (FPGA1401TP1) 358 W
UART (RS422/485) (DS1302)
UART RS422/485 (DS1302) 81 Watchdog (DS6601) 191
I/O mapping 82
UART RS422/485 (FPGA1401TP1) 363 parameters 192
UART 3 RS232 (FPGA1403TP1)
uart_<ChannelNumber>_rd_fifo_empty port 192
I/O mapping 435
UART 3 RS232 (FPGA1403TP1) 434 Watchdog (DS6602) 235
parameters 432
UART 3 RS422/485 (FPGA1403TP1) 438 parameters 236
port 433
UART RS232 (DS1302) 77 port 236
UART 3 RS422/485 (FPGA1403TP1)
492
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
Word length Buffer64 In (DS6601) 168 I-FPGA64 Out (IOCNET) (DS2655) 147
UART RS232 (DS1302) 75 Buffer64 In (DS6602) 203 I-FPGA64 Out (IOCNET) (DS6601) 181
UART RS232 (FPGA1401TP1) 357 xmem64f_inter_<ChannelNumber>_addr I-FPGA64 Out (IOCNET) (DS6602) 225
UART RS232 (FPGA1403TP1) 433 I-FPGA64 In (IOCNET) (DS2655) 143 xmemf_<ChannelNumber>_addr
UART RS422/485 (DS1302) 80 I-FPGA64 In (IOCNET) (DS6601) 177 Buffer In (DS1302) 48
UART RS422/485 (FPGA1401TP1) 362 I-FPGA64 In (IOCNET) (DS6602) 221 Buffer In (DS2655) 132
UART RS422/485 (FPGA1403TP1) 437 xmem64f_inter_<ChannelNumber>_count Buffer In (DS6601) 166
Write Data I-FPGA64 In (IOCNET) (DS2655) 143 Buffer In (DS6602) 200
UART 3 RS232 (FPGA1403TP1) 435 I-FPGA64 In (IOCNET) (DS6601) 177 Buffer In (FPGA1401TP1)
UART 3 RS422/485 (FPGA1403TP1) 439 I-FPGA64 In (IOCNET) (DS6602) 221 DS1552 329
UART RS232 (DS1302) 78 xmem64f_inter_<ChannelNumber>_dout DS1554 372
UART RS232 (FPGA1401TP1) 360 I-FPGA64 In (IOCNET) (DS2655) 143 Buffer In (FPGA1403TP1)
UART RS422/485 (DS1302) 82 I-FPGA64 In (IOCNET) (DS6601) 177 DS1552 405
UART RS422/485 (FPGA1401TP1) 364 I-FPGA64 In (IOCNET) (DS6602) 221 DS1554 448
Write Data Count xmem64f_inter_<ChannelNumber>_new_data Buffer In (MicroLabBox II) 99
UART 3 RS232 (FPGA1403TP1) 434 I-FPGA64 In (IOCNET) (DS2655) 144 xmemf_<ChannelNumber>_count
UART 3 RS422/485 (FPGA1403TP1) 439 I-FPGA64 In (IOCNET) (DS6601) 178 Buffer In (DS1302) 48
UART RS232 (DS1302) 77 I-FPGA64 In (IOCNET) (DS6602) 222 Buffer In (DS2655) 132
UART RS232 (FPGA1401TP1) 359 xmem64p_<ChannelNumber>_din Buffer In (DS6601) 166
UART RS422/485 (DS1302) 82 Buffer64 Out (DS1302) 53 Buffer In (DS6602) 200
UART RS422/485 (FPGA1401TP1) 364 Buffer64 Out (DS2655) 139 Buffer In (FPGA1401TP1)
Write Enable Buffer64 Out (DS6601) 173 DS1552 329
UART 3 RS232 (FPGA1403TP1) 434 Buffer64 Out (DS6602) 207 DS1554 371
UART 3 RS422/485 (FPGA1403TP1) 439 Buffer64 Out (MicroLabBox II) 104 Buffer In (FPGA1403TP1)
UART RS232 (DS1302) 77 xmem64p_<ChannelNumber>_finished DS1552 404
UART RS232 (FPGA1401TP1) 359 Buffer64 Out (DS1302) 53 DS1554 447
UART RS422/485 (DS1302) 82 Buffer64 Out (DS2655) 139 Buffer In (MicroLabBox II) 98
UART RS422/485 (FPGA1401TP1) 364 Buffer64 Out (DS6601) 173 xmemf_<ChannelNumber>_dout
Write Fifo Full Buffer64 Out (DS6602) 207 Buffer In (DS1302) 48
UART 3 RS232 (FPGA1403TP1) 435 Buffer64 Out (MicroLabBox II) 104 Buffer In (DS2655) 132
UART 3 RS422/485 (FPGA1403TP1) 439 xmem64p_<ChannelNumber>_overflow Buffer In (DS6601) 166
UART RS232 (DS1302) 78 Buffer64 Out (DS1302) 54 Buffer In (DS6602) 200
UART RS232 (FPGA1401TP1) 360 Buffer64 Out (DS2655) 139 Buffer In (FPGA1401TP1)
UART RS422/485 (DS1302) 82 Buffer64 Out (DS6601) 173 DS1552 329
UART RS422/485 (FPGA1401TP1) 364 Buffer64 Out (DS6602) 208 DS1554 371
Buffer64 Out (MicroLabBox II) 104 Buffer In (FPGA1403TP1)
X xmem64p_<ChannelNumber>_send_ack DS1552 404
Buffer64 Out (DS2655) 139 DS1554 447
xmem64f_<ChannelNumber>_addr
Buffer64 Out (DS6601) 173 Buffer In (MicroLabBox II) 98
Buffer64 In (DS1302) 50
Buffer64 Out (DS6602) 208 xmemf_<ChannelNumber>_new_data
Buffer64 In (DS2655) 134
xmem64p_<ChannelNumber>_write Buffer In (DS1302) 48
Buffer64 In (DS6601) 168
Buffer64 Out (DS1302) 53 Buffer In (DS2655) 132
Buffer64 In (DS6602) 203
Buffer64 Out (DS2655) 139 Buffer In (DS6601) 166
Buffer64 In (MicroLabBox II) 102
Buffer64 Out (DS6601) 173 Buffer In (DS6602) 200
xmem64f_<ChannelNumber>_count
Buffer64 Out (DS6602) 207 Buffer In (FPGA1401TP1)
Buffer64 In (DS1302) 50
Buffer64 Out (MicroLabBox II) 104 DS1552 329
Buffer64 In (DS2655) 134
xmem64p_inter_<ChannelNumber>_din DS1554 372
Buffer64 In (DS6601) 168
I-FPGA64 Out (IOCNET) (DS2655) 147 Buffer In (FPGA1403TP1)
Buffer64 In (DS6602) 202
I-FPGA64 Out (IOCNET) (DS6601) 181 DS1552 404
Buffer64 In (MicroLabBox II) 102
I-FPGA64 Out (IOCNET) (DS6602) 225 DS1554 447
xmem64f_<ChannelNumber>_dout
xmem64p_inter_<ChannelNumber>_finished Buffer In (MicroLabBox II) 98
Buffer64 In (DS1302) 50
I-FPGA64 Out (IOCNET) (DS2655) 147 xmemf_<ChannelNumber>_read_req
Buffer64 In (DS2655) 134
I-FPGA64 Out (IOCNET) (DS6601) 181 Buffer In (DS2655) 132
Buffer64 In (DS6601) 168
I-FPGA64 Out (IOCNET) (DS6602) 225 Buffer In (DS6601) 166
Buffer64 In (DS6602) 202
xmem64p_inter_<ChannelNumber>_overflow Buffer In (DS6602) 201
Buffer64 In (MicroLabBox II) 102
I-FPGA64 Out (IOCNET) (DS2655) 147 xmemf_inter_<ChannelNumber>_addr
xmem64f_<ChannelNumber>_new_data
I-FPGA64 Out (IOCNET) (DS6601) 181 I-FPGA In (IOCNET) (DS2655) 141
Buffer64 In (DS1302) 50
I-FPGA64 Out (IOCNET) (DS6602) 225 I-FPGA In (IOCNET) (DS6601) 175
Buffer64 In (DS2655) 134
xmem64p_inter_<ChannelNumber>_strobe I-FPGA In (IOCNET) (DS6602) 219
Buffer64 In (DS6601) 168
I-FPGA64 Out (IOCNET) (DS2655) 147 xmemf_inter_<ChannelNumber>_count
Buffer64 In (DS6602) 203
I-FPGA64 Out (IOCNET) (DS6601) 181 I-FPGA In (IOCNET) (DS2655) 142
Buffer64 In (MicroLabBox II) 102
I-FPGA64 Out (IOCNET) (DS6602) 225 I-FPGA In (IOCNET) (DS6601) 176
xmem64f_<ChannelNumber>_read_req
xmem64p_inter_<ChannelNumber>_write I-FPGA In (IOCNET) (DS6602) 219
Buffer64 In (DS2655) 134
493
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
494
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024
Index
495
May 2024 FPGA Programming Handcode Framework - FPGA Interface Reference
Index
496
FPGA Programming Handcode Framework - FPGA Interface Reference May 2024