FPGAProgrammingBlocksetFPGAInterfaceReference
FPGAProgrammingBlocksetFPGAInterfaceReference
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
FPGA Scope........................................................................................................... 37
Block Description (FPGA Scope)..................................................................... 37
General Page (FPGA Scope)........................................................................... 39
FPGA_XDATA_WRITE_BL........................................................................................ 49
Block Description (FPGA_XDATA_WRITE_BL).................................................. 50
Unit Page (FPGA_XDATA_WRITE_BL)............................................................. 51
Description Page (FPGA_XDATA_WRITE_BL)...................................... ............ 53
FPGA_IO_READ_BL................................................................................................. 54
Block Description (FPGA_IO_READ_BL).......................................................... 54
3
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Contents
FPGA_IO_WRITE_BL............................................................................................... 58
Block Description (FPGA_IO_WRITE_BL)......................................................... 59
Unit Page (FPGA_IO_WRITE_BL)..................................................................... 60
Description Page (FPGA_IO_WRITE_BL).......................................................... 60
FPGA_INT_BL......................................................................................................... 62
Block Description (FPGA_INT_BL)................................................................... 63
Unit Page (FPGA_INT_BL).................................................................. ............ 64
Description Page (FPGA_INT_BL).................................................................... 64
4
FPGA Programming Blockset - FPGA Interface Reference May 2024
Contents
Block Settings for the DS6601 FPGA Base Board Framework...................... .......... 241
5
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Contents
Block Settings for the DS6602 FPGA Base Board Framework...................... .......... 288
Block Settings for the DS2655M1 I/O Module Framework.......................... .......... 344
Block Settings for the DS2655M2 I/O Module Framework.......................... .......... 368
Block Settings for the DS6651 Multi-I/O Module Framework...................... .......... 400
6
FPGA Programming Blockset - FPGA Interface Reference May 2024
Contents
7
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Contents
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module
Framework........................................................................................................... 538
8
FPGA Programming Blockset - FPGA Interface Reference May 2024
Contents
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module
Framework........................................................................................................... 647
Index 709
9
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Contents
10
FPGA Programming Blockset - FPGA Interface Reference May 2024
About This Reference
Content This reference is a description of FPGA interface blocks and their settings
provided by the FPGA Interface sublibrary of the FPGA Programming Blockset.
The common block settings and the framework-specific block settings are
described in separate sections.
You can use this blockset to integrate an FPGA model in your dSPACE
system. For the supported dSPACE hardware, refer to Overview of the FPGA
Programming Blockset on page 15.
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.
11
May 2024 FPGA Programming Blockset - FPGA Interface Reference
About This Reference
Symbol Description
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.
Follows the document title in a link that refers to
another document.
Naming conventions dSPACE user documentation uses the following naming conventions:
RTI block name conventions All I/O blocks have default names based on
dSPACE's board naming conventions:
§ Most RTI block names start with the board name.
§ A short description of functionality is added.
§ Most RTI block names also have a suffix.
Suffix Meaning
M Module number (for MicroAutoBox II)
C Channel number
G Group number
CON Converter number
BL Block number
P Port number
I Interrupt number
12
FPGA Programming Blockset - FPGA Interface Reference May 2024
About This Reference
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.
13
May 2024 FPGA Programming Blockset - FPGA Interface Reference
About This Reference
14
FPGA Programming Blockset - FPGA Interface Reference May 2024
General Information on the FPGA Interface of the FPGA Programming Blockset
Introduction To provide a short description of the blockset's components and how to access
them.
FPGA Programming Blockset The FPGA Programming Blockset is a Simulink® blockset for using an FPGA
model with a dSPACE system.
The blockset provides Simulink blocks for implementing and simulating the
interface between the FPGA mounted on a dSPACE I/O board and the board's
I/O, and the interface between the dSPACE I/O board and its processor board.
The following table shows the supported FPGA hardware.
15
May 2024 FPGA Programming Blockset - FPGA Interface Reference
General Information on the FPGA Interface of the FPGA Programming Blockset
16
FPGA Programming Blockset - FPGA Interface Reference May 2024
Overview of the FPGA Programming Blockset
Library access To open the library, execute one of the following methods:
§ In the MATLAB Command Window, enter rtifpga.
§ To access the Simulink blocks of the library separately:
In the Simulink Library Browser, navigate to the dSPACE FPGA Programming
Blockset folder.
§ For MicroAutoBox II:
In the RTI1401 Blockset, click one of the following blocksets:
§ MicroAutoBox II DS1511/DS1514
§ MicroAutoBox II DS1513/DS1514
Then click FPGA Type 1.
§ For MicroLabBox:
In the DS1202 MicroLabBox FPGA I/O Type 1 blockset, Click FPGA Class 1.
Note
The FPGA Interface library and the Demo model are only available, if you
have the full license for the FPGA Programming Blockset.
If you have the standard RTI license only, the blockset looks like this:
Library components The following components are available in the FPGA Programming Blockset:
FPGA Interface The Simulink blocks of the FPGA Iinterface sublibrary are
used on the dSPACE I/O board that provides an FPGA, for example, the DS6602
17
May 2024 FPGA Programming Blockset - FPGA Interface Reference
General Information on the FPGA Interface of the FPGA Programming Blockset
FPGA Base Board. They let you configure the interface to external I/O and to a
processor board, for example, a SCALEXIO Processing Unit.
18
FPGA Programming Blockset - FPGA Interface Reference May 2024
Features of the FPGA Programming Blockset
Note
Demo model If you have the full license for the FPGA Programming Blockset, Simulink models
are available that show how to use the blocks of the FPGA Programming
Blockset. Double-click the Demo button in the blockset to open the library
containing the demo models. In the next step you have to choose the demo
model for the framework which you have in use. A demo model prepared
for a different framework will not work. You can also find the model files at
<RCP_HIL_InstallationPath>\Demos\RTIFPGA.
Introduction The FPGA Programming Blockset provides dynamically configured dialog settings
and an interface to some development features of the AMD Vitis Model
Composer Blockset.
19
May 2024 FPGA Programming Blockset - FPGA Interface Reference
General Information on the FPGA Interface of the FPGA Programming Blockset
Supported third party For modeling the FPGA functionality, the following third-party blockstes are
blocksets supported:
§ The AMD Vitis Model Composer Blockset.
The AMD Vitis Model Composer Blockset is a Simulink block library that lets
you graphically model FPGA applications. The AMD Vitis Model Composer
Blockset requires a separate license.
The FPGA Programming Blockset supports only the HDL library of the AMD
Vitis Model Composer.
§ Simulink blocks to model parts of the FPGA model.
To use Simulink blocks, the Mathworks HDL Coder is required and
the used Simulink blocks must be supported by the HDL Coder.
Refer to https://www.mathworks.com/help/comm/ug/find-blocks-and-system-
objects-supporting-hdl-code-generation.html.
The use of Simulink blocks to model parts of the FPGA model requires
special handling, refer to How to Use Simulink Blocks for Modeling the FPGA
Functionality (FPGA Programming Blockset Guide ).
Hardware-specific settings You can specify the hardware to be used in the block dialog of
the FPGA_SETUP_BL block. After you selected the hardware, the FPGA
Programming Blockset loads the hardware-specific framework. The framework
provides the following interfaces:
§ Communication with the real-time processor via the hardware-specific bus,
such as IOCNET.
§ Access to the I/O channels of the FPGA board.
§ Interrupt handling.
ADC unit
dSPACE
User application framework DAC unit
Function-specific settings The block dialogs have several pages. The Parameters and the Description
pages are empty until you select a function by specifying the access type for
board communication or specifying the I/O type for an I/O access on the Unit
page of a block dialog. These pages are dynamically filled with text and settings
according to the selected function.
20
FPGA Programming Blockset - FPGA Interface Reference May 2024
Features of the FPGA Programming Blockset
Flexible signal handling To model data exchange via the external I/O pins,
you must only add the I/O block for a specific access direction (read or write)
to the model. The signal type (analog or digital) can be configured in the block
dialog. The availability of the signal types depends on the selected framework.
Interaction with the AMD If you implemented the required functionality of the FPGA application by using
Vitis Model Composer the HDL library of the AMD Vitis Model Composer only, you have direct access
to all its features for configuring, debugging and building the application. If you
want to integrate the FPGA model in a dSPACE system, certain blocks of the
HDL library must be replaced by blocks from the FPGA Programming Blockset.
Most of the above-mentioned features are now available indirectly by using the
blocks from the FPGA Programming Blockset, for example, the timing analysis for
debugging purposes.
21
May 2024 FPGA Programming Blockset - FPGA Interface Reference
General Information on the FPGA Interface of the FPGA Programming Blockset
22
FPGA Programming Blockset - FPGA Interface Reference May 2024
Common FPGA Blocks of the FPGA Programming Blockset
Introduction Common FPGA blocks are available for FPGA models independently of a
hardware-specific framework.
FPGA_SETUP_BL...................................................................................... 24
To specify general settings for the FPGA model and to support the
modeling and building of the FPGA application.
FPGA Scope............................................................................................. 37
To capture up to 16 FPGA signals with the time resolution of the FPGA
clock. 8 of the 16 signals can be displayed in ControlDesk.
23
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
FPGA_SETUP_BL
Purpose To specify general settings for the FPGA model and to support the modeling and
building of the FPGA application.
Block overview
Description The FPGA_SETUP_BL block lets you select the appropriate frameworks for the
FPGA hardware and provides the following features to support the modeling of
the FPGA application.
§ Setting build parameters and starting the build process.
§ Starting analysis such as timing analysis to fix failures in an early stage.
§ Enabling FPGA tracing to capture and scale signals.
24
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
An FPGA model must contain one FPGA_SETUP_BL block at its top level. More
FPGA_SETUP_BL blocks in the FPGA model will lead to an error when you try to
configure interface blocks or to build the model code.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Note
The framework consists of a framework INI file. The definitions in this file
control the settings that are displayed in the hardware-specific dialog pages.
Framework author Displays the author of the framework INI file that you
selected by the Framework / piggyback setting.
I/O module 1 … 5 Lets you select the I/O modules that are installed to the I/O
module slots of a SCALEXIO FPGA base board. The FPGA Programming Blockset
automatically loads the frameworks to support the selected modules.
The number of the I/O module indicates the used I/O module slot. For example:
I/O module 1 is connected to the I/O module slot 1 of the FPGA base board.
You can select the following I/O modules:
§ DS2655M1 I/O Module
§ DS2655M2 I/O Module
§ DS6651 Multi-I/O Module
§ Inter-FPGA Interface
25
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
MGT module Lets you select the framework to support MGT modules. MGT
modules can be used only with the MicroLabBox II, DS6601 FPGA Base Board,
and DS6602 FPGA Base Board.
You can select the following frameworks:
§ SCALEXIO: Samtex FireFly ECUO-B04 (QSFP+)
The FPGA Programming Blockset automatically loads the DS660X_MGT
framework to support the MGT interface of a SCALEXIO system.
§ MicroLabBox II: DS1303 QSFP
The FPGA Programming Blockset automatically loads the DS1303_MGT
framework to support the MGT interface of the MicroLabBox II.
To use MGTs, an MGT module must be connected to the MGT connector of the
dSPACE real-time hardware. For more information, refer to Basic Structure of the
MGT Interface (FPGA Programming Blockset Guide ).
Author Displays the author of the framework INI file that you selected by the
I/O module setting.
Purpose To specify general settings for all the FPGA interface blocks used and to perform
several FPGA model actions.
Dialog settings Application name Lets you specify the name of the FPGA application if
Same as subsystem / model is cleared. The name is used as a description for
the built FPGA application and can be displayed in your experiment software,
such as ControlDesk. For the MicroLabBox II, MicroAutoBox III, and SCALEXIO
systems, the FPGA application name is used as custom function block type.
If you use the same FPGA application name for variants of the FPGA model
for the MicroLabBox II, MicroAutoBox III, or SCALEXIO systems, all the variants
have the same custom function block type. This helps you reuse FPGA variants
in ConfigurationDesk, because you can exchange the FPGA application without
changing the custom function block in the signal chain.
26
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
Same as subsystem/model Lets you use the name of the subsystem that
contains the FPGA model as FPGA application name. The FPGA model is the
subsystem to which the FPGA_SETUP block is added to. FPGA application
name displays the current name.
Build directory Lets you specify the directory for the build process and the
build results if Current directory is cleared.
Note
During the build process, the path length can exceed the maximum path
length specified by Windows. This might lead to error messages during
file system operations. For more information, refer to AMD Answer Record
52787 (https://support.xilinx.com/s/article/52787?language=en_US).
§ Keep the path length of the FPGA build directory short to avoid errors
during the build process.
Current directory Lets you use the current MATLAB working folder as FPGA
build directory. Build directory displays the current build directory.
Incremental build reference Lets you specify the path to the design
checkpoint file (DCP file) as reference for the next incremental build process.
Vivado generates the DCP file during the FPGA build process.
You can enter the path to the reference file if Enable incremental build is
selected.
Enable incremental build Lets you enable the reuse of build results for the
next build to make build results more predictable and to reduce build effort.
Incremental Build Reference displays the DCP file that is used as a reference
for the incremental build.
Find latest build result for reference Searches the current build directory
for the last DCP file. If the FPGA Programming Blockset finds a suitable DCP file,
it writes the path of the DCP file to Incremental Build Reference.
Backup directory Lets you enter a path to back up the build results if Enable
backup is selected.
To use different directories for each backup, you can add the following wildcards
to the file path:
§ %APPID adds a directory with the name of the application ID.
§ %TIMESTAMP adds a directory with the current time. The name format is
yyyy-mm-dd_HH-MM-SS.
If you do not use a wildcard, the backup process uses the same directory for all
backups.
Enable backup Lets you enable the backup of the build results, reports, and
models.
Copy model to build directory Lets you enable the copying of the entire
model to the build directory.
If a build server performs the build process, a copy of the FPGA model is required
to enable the build server to generate the HTML model and to back up the
model.
27
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
Note
Before you select this option, make sure that all users with read permission
to the common build directory are entitled to see the model.
Clean up build directory Lets you enable the removal of deletable files after
the FPGA application is built and backed up.
Interface down-sample factor Lets you specify the sampling rate of all the
FPGA Interface blocks in the subsystem. The sampling rate is the ratio of the
hardware clock frequency and the given number of cycles. The value must be a
positive integer.
Note
In offline simulation mode, the sample period is the product of the offline
simulation period times the given number of cycles.
Offline simulation period Lets you specify the simulation period to be used
in offline simulation mode. The value must be greater than or equal to the FPGA
clock period.
FPGA clock period Displays the hardware clock period of the FPGA in
seconds. The value is specified in the framework INI file.
For example, DS6602 FPGA Base Board: 8e-9 s (8·10-9 s = 8 ns) corresponds to
125 MHz clock rate.
FPGA model action Lets you select an action that you want to perform on
the FPGA model. The selected action is executed when you click Execute.
You can choose between the following model actions:
§ FPGA Build
Starts the build process for the FPGA model. See the
MATLAB Command Window to follow the progress of the build
process. You will find the resulting FPGA model INI file in
<FPGABuilddirectory>/<ModelName>_rtiFPGA/ini. The name of a FPGA
model INI file is <FPGAApplicationName>_<ApplicationID>.ini.
The build process opens a temporary model <FPGAModelName>_rtiFPGAtmp
to build the application. The build process closes the temporary model at the
end.
28
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
Thread(s) Lets you accelerate the build process by performing the FPGA build
process in parallel with multiple build threads.
A parallel build needs more RAM than a serial build. If your PC slows down due
to a lack of RAM and multiple build threads, you can decrement the number of
build threads.
Automatic bus (re-)analysis for FPGA_XDATA blocks Lets you save time by
deactivating the analysis of the buses that are connected to the Buffer64 Out
29
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
and Buffer64 In blocks. The bus analysis checks if the connected bus topology
matches the bus topology of the Data port.
If you use FPGA_XDATA blocks in the bus transfer mode, the bus analysis is
recommended. The bus transfer mode is supported only by the MicroLabBox II,
MicroAutoBox III, and SCALEXIO systems.
Purpose To use multiple clock domains for modeling parts of the FPGA design with
individual clock periods.
Dialog settings Subsystem 1 ... 10 Lets you select the subsystem to specify an individual
clock period and offline simulation period. The subsystem must be a part of the
FPGA model.
If you select a subsystem, the FPGA model use multiple clock domains. To use
multiple clock domains, the FPGA design must be partitioned into subsystems.
Each subsystem has an individual clock period. For more information, refer to
How to Use Multiple Clock Domains for FPGA Modeling (FPGA Programming
Blockset Guide ).
Clock period Lets you specify an individual clock period for the selected
subsystem. A common value for the clock period is in the range 20 ns ... 4 ns
(50 MHz ... 250 MHz).
After entering the clock period, the dialog recalculates all clock periods for a
clock setup with a minimum error for all clock periods. After recalculation, the
dialog immediately updates the clock period's values to the calculated values in
double precision.
Offl. sim. period Lets you specify the simulation period to be used in offline
simulation mode for the selected subsystem. The value must be greater than or
equal to the clock period of the selected subsystem.
Using Multiple Clock Domains for FPGA Modeling (FPGA Programming Blockset
Guide )
30
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
HowTos
How to Use Multiple Clock Domains for FPGA Modeling (FPGA Programming
Blockset Guide )
Platform support The following table gives you an overview of the platforms that support the
access of FPGA applications and the methods that are supported.
FPGA Scope
SCALEXIO ✓1) ✓ ✓ ✓ ✓ ✓ ✓
MicroLabBox ✓ ✓ ✓ ✓ ✓ – –
MicroLabBox II ✓ ✓ ✓ ✓ ✓ – –
MicroAutoBox II ✓ ✓ ✓ ✓ ✓ – –
MicroAutoBox III ✓ ✓ ✓ ✓ ✓ – –
1) ✓ = Supported, – = Not supported
Dialog settings Enable FPGA tracing Lets you specify that FPGA signals are traceable in the
FPGA application.
Traceable signals require FPGA resources, build time, and there are some
limitations to experimenting with FPGA variables. Refer to Basics on Tracing
FPGA Signals (FPGA Programming Blockset Guide ).
31
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
Note
Running applications might stop, if too many FPGA signals are traced
If you trace more than 100 signals with 32-bit values (or 50 signals with 64-
bit values) every millisecond with your experiment software, tracing might
cause a task overrun that stops the application.
These measures reduce the number of traced FPGA signals per millisecond:
§ Disable signal tracing if there is no need to trace FPGA signals.
§ Reduce the number of traceable signals. Refer to Basics on Tracing FPGA
Signals (FPGA Programming Blockset Guide ).
§ Reduce the number of signals that that you trace with the experiment
software. Only the values of signals traced with an experiment software
are sent to the real-time processor and can cause a task overrun.
Enable tunable FPGA constants Lets you enable that tunable FPGA
constants are provided and their values can be changed in the experiment
software.
This setting can be selected only if FPGA tracing is enabled.
Enable FPGA test access and scaling Lets you enable FPGA test access and
FPGA scaling.
FPGA test access enables intervention points for the experiment software. The
intervention points let you set values for the I/O interface and for data values
that are exchanged with the processor interface.
FPGA scaling includes scaling, saturating, and inverting FPGA I/O signals with
your experiment software. The Scaling page of the FPGA_IO_READ_BL and
FPGA_IO_WRITE_BL blocks dialogs provide parameters to specify FPGA scaling.
Note
This setting is selectable only if FPGA tracing and tunable FPGA constants are
enabled.
Select subsystems to be accessed Lets you select the subsystems that can
be accessed with your experiment software by clicking the subsystem's name
in the tree view. If you click a name, you select or clear the subsystem and its
subelements.
32
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
The selection affects only FPGA signal tracing and the adjusting of tunable FPGA
constants.
Trace input and output ports of subsystem Lets you specify that incoming
and outgoing signals of FPGA subsystems are traceable.
Trace all subsystem internal signals Lets you specify that all signals used
internally in FPGA subsystems are traceable.
Trace buses Lets you specify that all signals of Simulink Bus Creator blocks
and Bus Selector blocks are traceable.
Analyze Lets you analyze the current FPGA model on the number of signals
and constants that will be accessible with your experiment software.
For analysis, the dialog opens the temporary model
<FPGAModelName>_rtiFPGAtmp. The dialog closes the temporary model at the
end of the analysis.
Added FPGA variables for For an overview of the types of FPGA variables that are added to the SDF file to
FPGA test access and scaling support FPGA test access and scaling, refer to Using the experiment software for
access (FPGA Programming Blockset Guide ).
Export all build results to Build result to export Displays the name of the latest FPGA build results and
ConfigurationDesk settings the date and time the build was executed.
33
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
The latest FPGAC file includes the build results. The file is located at
<build folder>\<application name>_rtiFPGA\
FPGA_Custom_Functions.
If the entire model contains additional FPGA models for other FPGA boards, the
framework provides an FPGAC file for each FPGA model.
Publish Publishes the path of the built FPGA container file to the global
user location file of ConfigurationDesk. This makes the build FPGA application
available as FPGA custom function block types in the Function Browser of
ConfigurationDesk.
Name of (new) project Lets you enter the name of the ConfigurationDesk
project to which the build results will be exported.
The name you enter must not contain a dot or whitespace as the first or last
character.
Export to new project Lets you export the build results to the specified
ConfigurationDesk project. If the specified project does not exist, the framework
adds a new project to ConfigurationDesk.
The framework mainly performs the following steps when it exports the build
results and the processor model to ConfigurationDesk:
§ Opens ConfigurationDesk.
§ Creates a new project in ConfigurationDesk.
§ Adds the file path of the current build results to the global user location file.
The global user location file is located at
%LOCALAPPDATA%\dSPACE\ConfigurationDesk\Settings\<ReleaseVersion>
(<ProductVersion>)
When you add the file paths to the global user location file, the
FPGA application is available as FPGA custom function block types in all
ConfigurationDesk projects.
Different versions of FPGAC files differ only in the application ID
(<FPGAApplicationName>_<ApplicationID>.fpgac). When updating the
FPGAC file, the FPGA Programming Blockset adds an application ID so that
ConfigurationDesk can find the latest version first and ignores the other
FPGAC files. In ConfigurationDesk, the Message Viewer displays the found
FPGAC files and the ignored FPGAC files.
The following illustration shows messages of the Message Viewer concerning
the registration of FPGA custom function block types.
§ Adds instances of the added custom function block types to the signal chain.
The framework performs the following steps only if the processor model can be
separated and the processor interface is implemented:
§ Separates and saves the processor models according to the settings of the
Model Separation Setup block.
In ConfigurationDesk, the processor models are implemented outside
ConfigurationDesk in Simulink models.
§ Exports the model interface of the processor models to ConfigurationDesk.
34
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_SETUP_BL
§ Maps the function ports of the added FPGA custom function blocks to the
model ports of the processor model (behavior model).
For instructions, refer to How to Export Build Results and Processor Models to
ConfigurationDesk Projects (FPGA Programming Blockset Guide ).
Export to recent project Lets you export the build result to the selected
ConfigurationDesk project to add the FPGA application to the signal chain of the
selected project and to perform the model port mapping.
For instructions, refer to How to Export Build Results and Processor Models to
ConfigurationDesk Projects (FPGA Programming Blockset Guide ).
Refresh list Lets you refresh the list with the projects that were recently used
in ConfigurationDesk.
If clicked, the framework starts ConfigurationDesk for importing the recently
used ConfigurationDesk projects.
Processor Interface settings Generate Lets you generate model port blocks to implement the processor
interface.
If you click Generate, the related FPGA model is analyzed and a corresponding
processor interface model is created with the blocks of the Model Interface
Package for Simulink.
The model port blocks are automatically configured with the corresponding
channel numbers, channel names, access type, and format parameters.
After you copy the generated model port blocks to the processor model or
scaling subsystem, you can close the generated interface model without saving.
Select subsystems for Lets you select the subsystems that can be accessed by different application
function block types in processes in ConfigurationDesk, for example, to support a multicore processor
ConfigurationDesk application. For instructions, refer to How to Select Subsystems for Multicore
Support (MicroLabBox II, MicroAutoBox III, SCALEXIO) (FPGA Programming
Blockset Guide ).
35
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
Resulting function block types Displays the resulting number and types
of function blocks after you exported the build results to ConfigurationDesk.
For more information on function block types supporting multicore processor
applications, refer to Aspects on FPGA Applications Supporting Multicore
Processor Applications (FPGA Programming Blockset Guide ).
36
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA Scope
FPGA Scope
Purpose To capture up to 16 FPGA signals with the time resolution of the FPGA clock. 8
of the 16 signals can be displayed in ControlDesk.
37
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
Description The FPGA Scope block lets you connect up to 16 FPGA signals that can be
captured. Nevertheless, only 8 FPGA signals can be displayed in ControlDesk at
the same time. You can select the signals to be displayed in ControlDesk.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Signal 1 … 16 Captures up to 16 signal values. Nevertheless, only
the values of 8 FPGA signals can be displayed in
ControlDesk at the same time. You can select the
signals to be displayed in ControlDesk.
You can leave the ports unconnected if you do not
need them.
Data type: Signed integer, unsigned integer, and
XFloat_8_24
Bit width: Up to 32 bit
Data width: 1
External Triggers the signal capturing if the external trigger is
trigger used as trigger source.
You can leave the port unconnected if you do not
need it.
Data type: UFix_1_0
Data width: 1
A rising edge triggers the signal capturing.
Output
Trigger Outputs the trigger event to trigger other FPGA
Scope blocks, for example.
Data type: UFix_1_0
§ 0: No trigger event
§ 1: A trigger event occurs. This value is set for one
clock cycle.
38
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA Scope
References
Dialog settings Scope depth Lets you specify the number of data values that are captured
when a trigger event occurs. A new trigger event is not evaluated until all data
values have been captured and processed by the processor application.
References
39
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
Purpose The Intramodel Out and Intramodel In blocks let you separate a subsystem
to model parts of the FPGA model with blocks of the MathWorks© Simulink
blockset.
Precondition The MathWorks HDL CoderTM must be installed to build an FPGA model with
a subsystem that uses blocks of the MathWorks Simulink blockset (HDL coder
subsystems). Refer to Software Tools for Working with the FPGA Programming
Blockset (FPGA Programming Blockset Guide ).
Intramodel Out The Intramodel Out block connects the output of a AMD Vitis Model
Composer block to the input of an HDL Coder subsystem.
The Intramodel Out block automatically adapts its signal/bus type to the
connected input signal/bus type.
Intramodel In The Intramodel In block connects the output of an HDL Coder subsystem to the
input of a AMD Vitis Model Composer block.
The Intramodel In block automatically adapts its signal type to the connected
input signal/bus type.
Using Simulink blocks for For instructions on using Simulink blocks for modeling, refer to How to
FPGA modeling Use Simulink Blocks for Modeling the FPGA Functionality (FPGA Programming
Blockset Guide ).
For Simulink blocks that can be used to model the FPGA functionality, refer
to https://www.mathworks.com/help/comm/ug/find-blocks-and-system-objects-
supporting-hdl-code-generation.html.
40
FPGA Programming Blockset - FPGA Interface Reference May 2024
HDL Coder Gateways
How to Use Simulink Blocks for Modeling the FPGA Functionality (FPGA
Programming Blockset Guide )
41
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Common FPGA Blocks of the FPGA Programming Blockset
42
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA Interface Blocks (Common Settings)
Introduction The common settings of the interface blocks are independently of a hardware-
specific framework.
FPGA_XDATA_READ_BL.......................................................................... 44
To implement read access to processor-bus data in the FPGA model.
FPGA_XDATA_WRITE_BL......................................................................... 49
To implement write access to processor-bus data in the FPGA model.
FPGA_IO_READ_BL.................................................................................. 54
To provide read access to an external device via a physical input channel.
FPGA_IO_WRITE_BL................................................................................. 58
To provide write access to an external device via a physical output
channel.
FPGA_INT_BL........................................................................................... 62
To provide interrupts generated in the FPGA model to the processor
model.
43
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
FPGA_XDATA_READ_BL
Purpose To implement read access to processor-bus data in the FPGA model.
44
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL
Block overview The figure below shows the block in unconfigured state.
Purpose To specify read access by the FPGA model to the processor model via processor
bus.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
From XDATA Represents the outport until the access type and
channel number are defined.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
45
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Purpose To specify the general configuration for the FPGA board's processor bus read
access.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Access type Lets you select the storage you want to read from. The
available access types are defined in the specified framework INI file. For more
information, refer to Details on the access types on page 46.
The settings on the Parameters page depend on the specified access type.
Channel number Lets you specify a channel number that corresponds to the
storage. The available channel numbers are defined in the specified framework
INI file and depend on the specified access type.
Channel name Lets you specify a user-specific name for the specified
channel. The name is displayed in this block and in its corresponding
PROC_XDATA_WRITE_BL block in the processor model.
Show Lets you see where the corresponding processor interface block of the
selected block is used in the processor model.
Details on the access types The FPGA framework contains the definition of the data storage areas. It
specifies one data storage type as register (implemented as Flip-Flop) and one
data storage type as buffer (implemented in the FPGA RAM). With the access
type, you can choose the data storage that you want to use for the data
exchange.
Register access Register access lets you access a scalar value in the register.
The data is identified by the specified channel number. The values are
transmitted element by element.
46
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL
Register group access You can group registers to a register group via a
common Register Group ID. All the values that belong to the same Register
Group ID are synchronously updated in the FPGA subsystem.
For read access, the registers of a register group are read from the board-specific
bus sequentially and then provided to the FPGA application simultaneously. For
write access, the registers of a register group are sampled simultaneously in the
FPGA application. These values form a consistent data group that is written to
the board-specific bus.
Buffer access Buffer access lets you access a vector value in the data buffer.
One specific value of the data is identified by the specified channel number and
the position within the buffer.
Data exchange is implemented via a FIFO buffer that works as a swinging buffer.
This means that there are two separate buffers for reading and writing, and
one buffer that switches between reading and writing. Only the pointer has to
be changed to switch the buffer so that no buffer has to be copied from one
position to another.
Free buffer
Bus access Bus access lets you use Simulink buses to model the data
exchange between the processor and the FPGA. The data exchange is
implemented via a FIFO buffer in the same way as the buffer access type.
Bus access is supported only by the blocksets of MicroLabBox II, MicroAutoBox III,
and SCALEXIO.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
47
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Description The Description page provides a function-specific Help for <...> button after
you selected a function on the corresponding Unit page.
48
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL
FPGA_XDATA_WRITE_BL
Purpose To implement write access to processor-bus data in the FPGA model.
49
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Block overview The figure below shows the block in unconfigured state.
Purpose To specify write access by the FPGA model to the processor model via processor
bus.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
To XDATA Represents the inport until the access type and the
channel number are defined.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
50
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL
Purpose To specify the general configuration for the FPGA board's processor bus write
access.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Access type Lets you select the storage you want to write to. The
available access types are defined in the specified framework INI file. For more
information, refer to Details on the access types on page 51.
The settings on the Parameters page depend on the specified access type.
Channel number Lets you specify a channel number that corresponds to the
storage. The available channel numbers are defined in the specified framework
INI file and depend on the specified access type.
Channel name Lets you specify a user-specific name for the specified
channel. The name is displayed in this block and in its corresponding block in
the processor model.
Show Lets you see where the corresponding processor interface block of the
selected block is used in the entire model.
Details on the access types The FPGA framework contains the definition of the data storage areas. It
specifies one data storage type as register (implemented as Flip-Flop) and one
data storage type as buffer (implemented in the FPGA RAM). With the access
type, you can choose the data storage that you want to use for the data
exchange.
Register access Register access lets you access a scalar value in the register.
The data is identified by the specified channel number. The values are
transmitted element by element.
51
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Register group access You can group registers to a register group via a
common Register Group ID. All the values that belong to the same Register
Group ID are synchronously updated in the FPGA subsystem.
For read access, the registers of a register group are read from the board-specific
bus sequentially and then provided to the FPGA application simultaneously. For
write access, the registers of a register group are sampled simultaneously in the
FPGA application. These values form a consistent data group that is written to
the board-specific bus.
Buffer access Buffer access lets you access a vector value in the data buffer.
One specific value of the data is identified by the specified channel number and
the position within the buffer.
Data exchange is implemented via a FIFO buffer that works as a swinging buffer.
This means that there are two separate buffers for reading and writing, and
one buffer that switches between reading and writing. Only the pointer has to
be changed to switch the buffer so that no buffer has to be copied from one
position to another.
Free buffer
Bus access Bus access lets you use Simulink buses to model the data
exchange between the processor and the FPGA. The data exchange is
implemented via a FIFO buffer in the same way as the buffer access type.
Bus access is supported only by the blocksets of MicroLabBox II, MicroAutoBox III,
and SCALEXIO.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
52
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL
Description The Description page provides a function-specific Help for <...> button after
you selected a function on the corresponding Unit page.
53
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
FPGA_IO_READ_BL
Purpose To provide read access to an external device via a physical input channel.
Block overview The figure below shows the block in unconfigured state.
54
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL
Purpose To implement read access to a physical input channel in the FPGA model.
Description You can use this block to read data from external devices. The number of
available input channels and their configurations depends on the specified
framework or piggyback module.
I/O mapping For information on the I/O mapping, refer to the description of the framework-
specific Parameters page of this block.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
From IO Represents the outport until the I/O channel is
defined.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
Purpose To specify the I/O type and channel to be used for read access.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Channel name Lets you specify a user‑specific name for the specified
channel.
55
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Note
The dialog settings on the Parameters page depend on the selected I/O
function.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
Description The Description page provides a function-specific Help for <...> button after
you selected a function on the corresponding Unit page.
56
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL
57
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
FPGA_IO_WRITE_BL
Purpose To provide write access to an external device via a physical output channel.
58
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL
Block overview The figure below shows the block in unconfigured state.
Purpose To implement write access to a physical output channel in the FPGA model.
Description You can use this block to write data to external devices. The number of available
output channels and their configurations depends on the specified framework or
piggyback module.
I/O mapping For information on the I/O mapping, refer to the description of the framework-
specific Parameters page of this block.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
To IO Represents the inport until the I/O channel is
defined.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
59
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Purpose To specify the I/O type and channel to be used for write access.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Channel name Lets you specify a user‑specific name for the specified
channel.
I/O type Lets you filter and select the available output channels according to
I/O type.
§ All: The list contains all available output channels.
§ All other selectable I/O types are defined in the specified framework or
piggyback module.
The list below the I/O type setting displays all the available channels of the
specified I/O type. Channels that were already assigned to other blocks are not
displayed in the list.
Note
The dialog settings on the Parameters page depend on the selected I/O
function.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
60
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL
Description The Description page provides a function-specific Help for <...> button after
you selected a function on the corresponding Unit page.
61
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
FPGA_INT_BL
Purpose To provide interrupts generated in the FPGA model to the processor model.
62
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_INT_BL
Block overview The figure below shows the block in unconfigured state.
Description The block provides interrupt lines from the FPGA board that you can use
to asynchronously trigger a task in the processor application. An interrupt is
handled internally and transmitted via interrupt line on the processor bus. For
further information on the processor bus, refer to Modeling Processor Model
Access (FPGA Programming Blockset Guide ).
The Parameters page of the dialog is empty until you specify an interrupt
channel number.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Represents the inport until the channel number is
defined.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
63
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Purpose To specify the interrupt channel used to trigger a task in the processor model.
Dialog settings Board number Displays the board number in the range 1 … 16.
For SCALEXIO systems, you can set a board number to distinguish between
multiple FPGA boards during modeling.
Channel number Lets you select a channel number. The range of the
selectable interrupt channels depend on the specified framework or piggyback
module.
Channels that were already assigned to other blocks are not displayed in the list.
Channel name Lets you specify a user-specific name for the specified
channel. The name is displayed in this block and in the corresponding
PROC_INT_BL block in the processor model.
Show Lets you see where the corresponding processor interface block of the
selected block is used in the processor model.
Hardware-specific settings For hardware-specific settings after you select the access type in the block dialog,
refer to the following topics:
§ Block Settings for the MicroLabBox Frameworks on page 69
§ Block Settings for the MicroLabBox II Framework on page 125
§ Block Settings for the SCALEXIO Frameworks on page 195
§ Block Settings for the MicroAutoBox II Frameworks on page 477
§ Block Settings for the MicroAutoBox III Frameworks on page 583
64
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_INT_BL
Description The Description page provides a function-specific Help for <...> button after
you selected a function on the corresponding Unit page.
65
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
Purpose To display and edit a Simulink bus topology between the FPGA and the processor
board.
Supported hardware Simulink buses between the FPGA and the processor board are supported only
by SCALEXIO, MicroAutoBox III, and MicroLabBox II.
Precondition The Bus access type is selected on the Unit page of the
FPGA_XDATA_READ_BL or FPGA_XDATA_WRITE_BL block dialog.
Signals
Lets you add a new signal to the root level or to a selected signal of the
FPGABus tree. If you add a new signal to a signal in the FPGABus tree, the data
type of that signal changes to Bus automatically, if required.
Lets you cut a signal and copy it to the Clipboard of the dialog.
66
FPGA Programming Blockset - FPGA Interface Reference May 2024
Dialog Settings to Edit Simulink Bus Signals
Lets you paste a signal from the Clipboard of the dialog to the selected
signal. If you selected the Ports (root) node, you create a new block port. If you
selected a bus signal, you create a new bus element.
Note
Copy & paste of signals is only possible within the same block dialog.
Name Lets you enter a name for the signal selected in the signal tree. The
name of the root signal is used as a variable name in the generated variable
description file after the real-time application is built.
The name must fulfill the following conditions:
§ The name must not begin or end with /.
§ The names of signals on the same structure level must be unique. They are
case-sensitive.
Type Lets you specify the data type of the selected signal:
§ Signed
The signal values are in a signed fixed‑point format.
§ Unsigned
The signal values are in a unsigned fixed‑point format.
§ Floating-point
The signal values are in a floating‑point format.
§ Boolean
The signal values are 1 or 0.
Bitwidth Lets you specify the number of bits used to represent the selected
signal. The maximum number is 64 bits.
Binary Point This setting depends on the format selected in the Type setting.
§ signed/unsigned
You can specify the binary point position of the signal data type. 0 represents
the lowest bit position.
§ floating‑point
You can specify the fraction width of the signal data type.
67
May 2024 FPGA Programming Blockset - FPGA Interface Reference
FPGA Interface Blocks (Common Settings)
How to Change the Bus Topology of a Simulink Bus (FPGA Programming Blockset
Guide )
How to Specify the Data Type Conversion for Processor Communication (FPGA
Programming Blockset Guide )
68
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the MicroLabBox Frameworks
Introduction The block dialogs provide hardware-specific settings after you load one of the
following frameworks:
§ DS1202 FPGA I/O Type 1
§ DS1202 FPGA I/O Type 1 (Flexible I/O)
69
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Common settings
Block Description (FPGA_XDATA_READ_BL)............................................. 45
To specify read access by the FPGA model to the processor model via
processor bus.
FPGA_XDATA_WRITE_BL......................................................................... 49
To implement write access to processor-bus data in the FPGA model.
Purpose To specify the data format and specific settings for the selected access type.
70
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Description The DS1202 FPGA I/O Type 1 frameworks provide the following access types that
you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is read from a
local bus register. 256 registers are available with a data width of 32 bits each
and 256 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from a
local bus buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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.
71
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates a local bus data exchange including
floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a
local bus register. The data format depends on the
related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary
point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
72
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 71.
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a local bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
73
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from a local bus buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 71.
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.
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.
74
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates a local bus data exchange including
floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from a
local bus register. The data format depends on the
related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary
point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
75
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 71.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a local bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from a local bus buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
76
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 71.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
77
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard DS1202 FPGA
I/O Type 1 frameworks is included in this user documentation. The description of
the access type of customized frameworks or mounted piggybacks is available as
a separate document.
FPGA_XDATA_READ_BL........................................................................................................... 44
FPGA_XDATA_READ_BL (DS1202 FPGA I/O Type 1 Settings)...................................................... 70
Parameters Page (FPGA_XDATA_READ_BL)............................................................................... 70
78
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Common settings
Block Description (FPGA_XDATA_WRITE_BL)............................................ 50
To specify write access by the FPGA model to the processor model via
processor bus.
Purpose To specify the data format and specific settings for the selected access type.
79
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Description The DS1202 FPGA I/O Type 1 frameworks provide the following access types that
you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is written
to a local bus register. 256 registers are available with a data width of 32
bits each and 256 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to a
local bus buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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).
80
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
The fraction width is displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to a local bus register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates a local bus data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
81
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 80.
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to a local bus buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via local bus in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
82
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
Sim_Data Simulates a local bus data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 80.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
83
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to a local bus register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates a local bus data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 80.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
84
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to a local bus buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready o send, even if it is not completely filled. The
buffer is switched and the data values are accessible via local bus in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates a local bus data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
85
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 80.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard DS1202 FPGA
I/O Type 1 frameworks is included in this user documentation. The description of
the access type of customized frameworks or mounted piggybacks is available as
a separate document.
86
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
FPGA_XDATA_WRITE_BL.......................................................................................................... 49
FPGA_XDATA_WRITE_BL (DS1202 FPGA I/O Type 1 Settings).................................................... 79
Parameters Page (FPGA_XDATA_WRITE_BL).............................................................................. 79
87
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Common settings
Block Description (FPGA_IO_READ_BL).................................................... 54
To implement read access to a physical input channel in the FPGA model.
88
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Description The frameworks provide different I/O types, which you can select on the
Unit page of the block. The number of the available physical connections on
MicroLabBox's DS1302 determines the I/O functions that you can select:
§ ADC 1 (Class 1) … ADC 24 (Class 1)
§ ADC 1 (Class 2) … ADC 8 (Class 2)
§ Resolver 1 ... Resolver 2
§ Status In
§ Proc App Status
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BLx block, except
for the Status In function.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
ADC (Class 1) description Block display If you select an ADC (Class 1) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Convert Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Busy outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
89
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
Sim Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: ‑10 V … +10 V
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0 1)
Range: ‑32767 … +32767
Update rate: 1 Msps
Busy Outputs an end of conversion signal if the conversion result is available. If the flag
changes from 1 to 0, the ADC data contains a new value. The flag is set to 0 for
only one clock cycle.
Data type: UFix_1_0
Range: 0 or 1
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
ADC (Class 1) settings Only common dialog settings. Refer to Common settings on page 89.
90
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
ADC (Class 2) description Block display If you select an ADC (Class 2) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -10 V … +10 V
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0 1)
Range: -32768 … +32767
Update rate: 10 Msps
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
91
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
ADC (Class 2) settings Only common dialog settings. Refer to Common settings on page 89.
Resolver description Basics on the resolver interface Refer to Resolver Interface (MicroLabBox
Features ).
Block display If you select Resolver 1 or Resolver 2 channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block for
resolver input channels:
Port Description
Input
Enable Enables the excitation voltage:
§ 0: The resolver interface provides no excitation voltage.
§ 1: The resolver interface provides the excitation voltage that you set on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Reset Resets the fault status of the resolver interface that is provided at the Fault port to
0:
§ 0: No reset.
§ 1: Resets the fault status.
Data type: UFix_1_0
Data width: 1
Output
Mechanical Outputs the position of the resolver sensor as a 16-bit angle value. The 16-bit range
Position of 0 … +65535 corresponds to 0° ... (360 - 2-16)°.
Formula for angle calculation: alpha[°] = Mechanical Position * 360°/216.
Data type: UFix_16_0
Range: 0 … +65535
Data width: 1
Valid Outputs whether the angle position and fault status that are provided by the
resolver sensor are valid.
92
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
This port is used to evaluate whether the resolver interface is ready to receive data
from the input signals:
§ 0: The hardware cannot get data from the input signals. The current values are
not valid.
§ 1: Data values for the position and the fault status has been received. The current
values are valid.
Data type: UFix_1_0
Data width: 1
Update Outputs a flag that indicates that a new position value or fault status is available.
A high level acknowledges the update. The flag is set high in only one clock cycle.
Data type: UFix_1_0
Data width: 1
Fault Outputs the fault status of the resolver interface. The measured position might be
valid only if no error is found.
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 ).
93
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Resolver settings The Parameters page provides the following dialog settings.
Desired excitation frequency Lets you select 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.
Excitation RMS voltage Lets you select the voltage level of the excitation
output signal:
§ 3.0 VRMS
§ 7.0 VRMS
§ 10.0 VRMS
Input RMS voltage Lets you select the voltage level of the sine and cosine
input signals:
§ 1.5 VRMS
§ 3.5 VRMS
§ 5.0 VRMS
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
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.
94
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Proc App Status description Block display If you select the Proc App Status channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
Status Outputs the state of the processor application. The state can be used to control the
FPGA application.
Data type: UFix_1_0
§ 0: Processor application is stopped.
§ 1: Processor application is running.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
95
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
ADC (class 1 and class 2) The following settings on the Scaling page are specific to the ADC I/O function.
settings
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
96
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
97
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Status In settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Proc App Status settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Resolver settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
References
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
98
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)
The description of the access type that is provided by the standard DS1202 FPGA
I/O Type 1 frameworks is included in this user documentation. The description of
the access type of customized frameworks or mounted piggybacks is available as
a separate document.
FPGA_IO_READ_BL................................................................................................................... 54
FPGA_IO_READ_BL (DS1202 FPGA I/O Type 1 Settings)............................................................. 88
Parameters Page (FPGA_IO_READ_BL)...................................................................................... 88
Scaling Page (FPGA_IO_READ_BL)............................................................................................. 95
99
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Common settings
Block Description (FPGA_IO_WRITE_BL)................................................... 59
To implement write access to a physical output channel in the FPGA
model.
100
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Description The frameworks provide the three I/O types Analog, Digital, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections on MicroLabBox's DS1302 board determines the I/O
functions that you can select:
§ DAC 1 (Class 1) … DAC 16 (Class 1)
§ Buzzer
§ Digital InOut 1 (Class 1) … Digital InOut 48 (Class 1)
§ Digital InOut 1 (Class 2) … Digital InOut 12 (Class 2)
§ LED Out 1 … LED Out 4
§ UART 1 (RS232) … UART 2 (RS232)
§ UART 1 (RS422/485) … UART 2 (RS422/485)
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out function.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
§ If you have selected one of the UART functions, this setting is replaced by
function-specific simulation settings.
§ For the Digital InOut functions, there are separate settings for enabling the
input and output simulation ports.
DAC (Class 1) description Block display If you select a DAC channel from the channel list, the block
display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog output voltage and the
input of the block is:
Port Description
Input
Data Outputs a signal in the specified range.
Data type: Fix_16_0 1)
Output voltage range: ‑32767 … +32767
101
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
The range can be exceeded, and saturation is performed to a minimum or maximum
value.
Hardware update rate: 2.78 Msps
If the values are updated at a higher FPGA model rate, intermediate values are not
updated by the DAC.
Convert Triggers the sampling of the D/A converter. When the value is set to 1 for at least
one clock cycle, the DAC starts the conversion. The port allows a precise definition
of the starting point of DAC sampling. The Busy outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Busy Outputs an end of conversion signal if the conversion result is available. If the flag
changes from 0 to 1, the DAC data contains a new value. The flag is set to 1 for
only one clock cycle.
Data type: UFix_1_0
Range: 0 or 1
Sim Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output voltage range: ‑10 V … +10 V
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
I/O mapping The signals are available at the Analog Out 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.
For a detailed connector pinout, refer to:
§ Analog I/O B Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
§ Analog In and Analog Out Connectors (BNC) (MicroLabBox Hardware
Installation and Configuration )
§ Analog Out Class 1 Connectors (Spring-Cage) (MicroLabBox Hardware
Installation and Configuration )
For detailed information on the channel characteristics, refer to Analog Class 1
Outputs (MicroLabBox Hardware Installation and Configuration ).
DAC (Class 1) settings Only common dialog settings. Refer to Common settings on page 101.
102
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Buzzer description Block display If you select Buzzer from the channel list, the block display
changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Frequency Specifies the period of the acoustic signal in steps of 40 µs. You calculate the
frequency as follows:
frequency [Hz] = 1 / period [s]
Data type: UFix8_0
Value range: 0 … 255
§ 0 : No acoustic signal
§ 1: 40 µs (25 kHz)
§ ...
§ 255: 10200 µs (98 Hz)
Beep Specifies the duration of one beep of the acoustic signal in steps of 10 ms.
Duration Data type: UFix8_0
Value range: 0 … 255
§ 0: No acoustic signal
§ 1 ... 254: 10 ms ... 2540 ms
§ 255: Beep is generated permanently
Pause Specifies the duration of a pause between two beeps of the buzzer in steps of
Duration 10 ms.
Data type: UFix8_0
Value range: 0 … 255: 0 ms ... 2550 ms
Beep Count Specifies the number of beeps to be generated.
Data type: UFix8_0
Value range: 0 … 255
§ 0: No acoustic signal
§ 255: The number of beeps is infinite
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 data 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
103
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Digital InOut (Class 1) Block display If you select a Digital InOut (Class 1) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Out 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 set to the specified high-supply voltage.
The hardware output is only driven if the Enable port is set to 1, otherwise the
output is set to high impedance (High-Z).
Data Type: UFix_1_0
Update rate: 100 MHz
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 ).
104
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
Sim Data In Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable digital in simulation port is set on the Parameters
page.
Data type: Double
Data width: 1
Threshold level: 2 V
Output
Data In Outputs the current results of the digital input channel.
Data type: UFix_1_0
The Data In outport is enabled only if the Enable port is set to 1.
§ 0: Input voltage falled below the threshold low voltage of 0.8 V.
§ 1: Input voltage exceeded the threshold high voltage of 2 V.
Update rate: 100 MHz
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 ).
Sim Data Out Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable digital out simulation port is set on the Parameters
page.
Data type: Double
Data width: 1
Output voltage: 0 V, 2.5 V, 3.3 V, or 5 V
If the value of the Data In inport exceeds the specified data width, only the
lowest bit is used.
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.
For a detailed connector pinout, refer to:
§ Digital I/O A Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
DIO1 ch 1 … DIO1 ch 32
§ Digital I/O B Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
DIO1 ch 33 … DIO1 ch 48
§ Digital I/O Class 1 Connectors (Spring-Cage) (MicroLabBox Hardware
Installation and Configuration )
DIO1 ch 1 … DIO1 ch 48
105
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Digital InOut (Class 1) settings The Parameters page provides the following dialog settings.
Invert values Lets you select whether to invert the input and output values of
the digital channel.
Input filter Lets you specify the minimum pulse length for detecting a valid
input in the range 0 … 10,000,000 ns.
High supply Lets you specify the high-level voltage for the digital outputs.
You can select 2.5 V, 3.3 V or 5 V.
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 … 65500 ns.
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out outport is added to the block to connect it
to a Simulink-based I/O environment model.
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
Digital InOut (Class 2) Block display If you select a Digital InOut (Class 2) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The I/O characteristics for the Digital InOut (Class 2)
function are the same as for the Digital InOut (Class 1) function, refer to I/O
characteristics on page 104.
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.
For a detailed connector pinout, refer to:
§ Digital I/O B Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
§ Digital I/O Class 2 Connectors (Spring-Cage) (MicroLabBox Hardware
Installation and Configuration )
106
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Digital InOut (Class 2) settings The Parameters page provides the following dialog settings.
Invert values Lets you select whether to invert the input and output values of
the digital channel.
Input filter Lets you specify the minimum pulse length for detecting a valid
input in the range 0 … 10,000,000 ns.
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 … 65500 ns.
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out outport is added to the block to connect it
to a Simulink-based I/O environment model.
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
LED Out description Block display If you select an LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Intensity Red Controls the color of one of the four FPGA status LEDs placed near the
connectors. With this inport you specify the red component of the RGB color
value.
Data type: UFix_8_0
Value range: 0 … 255
Intensity Green Controls the color of one of the four FPGA status LEDs placed near the
connectors. With this inport you specify the green component of the RGB color
value.
Data type: UFix_8_0
Value range: 0 … 255
107
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
Intensity Blue Controls the color of one of the four FPGA status LEDs placed near the
connectors. With this inport you specify the blue component of the RGB color
value.
Data type: UFix_8_0
Value range: 0 … 255
If the value of the Data inport exceeds the specified data width, only the lowest
8 bits are used.
UART (RS232) description Block display If you select an UART (RS232) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
108
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
Write_Enable must be set to 1 for only one clock cycle.
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to
get the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
The hardware output port is driven with the values from the TX FIFO buffer.
It is synchronously running to the UART clock defined by the UART baud
rate. The hardware port has inverted voltage levels of ‑6 V (logical high)
and +6 V (logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
RTS Specifies the Ready‑To‑Send (RTS) signal.
The RTS/CTS handshake is handled by the user, the RTS signal is just passed
through and adapted to the physical layer.
Data type: UFix_1_0
Data width: 1
The hardware port is synchronously running to the UART clock defined by
the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_CTS Simulates the Clear‑To‑Send (CTS) hardware signal.
Available only if Enable simulation CTS port is set on the Parameters page.
The RTS/CTS handshake is handled by the user. The Sim_CTS signal is just
passed through to CTS.
Data type: Double
Data width: 1
109
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
Range:
§ 0: CTS inactive
§ 1: CTS active
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the buffer
(Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
CTS Outputs the state of the Clear‑To‑Send (CTS) hardware port.
RTS/CTS handshake is handled by the user. CTS is just passed through with
conversion to logical 1 and 0.
Data type: UFix_1_0
Data width: 1
110
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
Range:
§ 0: CTS inactive
§ 1: CTS active
The CTS hardware port is synchronously running to the UART clock defined
by the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the TX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
Range:
§ 0: Low
§ 1: High
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_RTS Simulates the Ready‑To‑Send (RTS) hardware signal.
Available only if Enable simulation RTS port is set on the Parameters page.
The signal is in logical format and only passed through to the RTS signal.
Data type: Double
Data width: 1
111
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
Range:
§ 0: RTS inactive
§ 1: RTS active
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 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.
For a detailed connector pinout, refer to:
§ RS232 (422/485) Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
For detailed information on the channel characteristics, refer to:
§ Communication Interfaces (MicroLabBox Hardware Installation and
Configuration )
UART (RS232) settings The Parameters page provides the following dialog settings.
Baud rate Lets you select the baud rate in the range 50 … 1,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation CTS port Lets you enable an inport for offline simulation
data. The Sim_CTS inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
112
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Enable simulation RTS port Lets you enable an outport for offline
simulation data. The Sim_RTS outport is added to the block to connect it to
a Simulink-based I/O environment model.
UART (RS422/485) description Block display If you select an UART (RS422/485) channel from the channel
list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
Write_Enable must be set to 1 for only one clock cycle.
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to get
the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
113
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
The hardware output port is driven with the values from the TX FIFO buffer. It
is synchronously running to the UART clock defined by the UART baud rate.
The hardware port has inverted voltage levels of ‑6 V (logical high) and +6 V
(logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
Driver_Enable Specifies to enable the output driver in the transceiver for data transmission.
If you use the UART (RS485/422) function in half-duplex mode, the output
driver must be disabled while receiving data.
Data type: UFix_1_0
Data width: 1
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
114
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Port Description
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the
buffer (Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the RX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
Range:
§ 0: Low
§ 1: High
115
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Port Description
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 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.
For a detailed connector pinout, refer to:
§ RS232 (422/485) Connector (Sub-D) (MicroLabBox Hardware Installation and
Configuration )
For detailed information on the channel characteristics, refer to:
§ Communication Interfaces (MicroLabBox Hardware Installation and
Configuration )
UART (RS422/485) settings The Parameters page provides the following dialog settings.
Baud rate Lets you select the baud rate in the range 50 … 10,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
116
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Termination Lets you enable an internal termination between RX‑ and RX+
and between TX‑ and TX+.
Setting Meaning
Open No termination
Terminated The RX and TX signals are terminated via an
internal 120 Ω resistor.
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital InOut settings The following settings on the Scaling page are specific to the Digital InOut I/O
function.
117
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Invert input polarity Lets you invert the measured values of the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A high-level voltage results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-level voltage results in a 0 and
vice versa.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If driven with 1, the I/O function outputs the high-level voltage as selected
with the High supply parameter on the Parameters page.
If driven with 0, the I/O function outputs the low-level voltage.
§ Enabled:
If driven with 1, the I/O function outputs the low-level voltage (0 V).
If driven with 0, the I/O function outputs the high-level voltage.
DAC settings The following settings on the Scaling page are specific to the DAC I/O function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
118
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
119
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
UART settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
LED Out settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Buzzer settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
References
120
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings)
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard DS1202 FPGA
I/O Type 1 frameworks is included in this user documentation. The description of
the access type of customized frameworks or mounted piggybacks is available as
a separate document.
FPGA_IO_WRITE_BL.................................................................................................................. 58
FPGA_IO_WRITE_BL (DS1202 FPGA I/O Type 1 Settings).......................................................... 100
Parameters Page (FPGA_IO_WRITE_BL)................................................................................... 100
Scaling Page (FPGA_IO_WRITE_BL)......................................................................................... 117
121
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
Common settings
Unit Page (FPGA_INT_BL)......................................................................... 64
To specify the interrupt channel used to trigger a task in the processor
model.
Description The DS1202 FPGA I/O Type 1 frameworks provide 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.
122
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_INT_BL (DS1202 FPGA I/O Type 1 Settings)
Int description Block display The figure below shows the block display with the optional
simulation port.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
123
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox Frameworks
The description of the access type that is provided by the standard DS1202 FPGA
I/O Type 1 frameworks is included in this user documentation. The description of
the access type of customized frameworks or mounted piggybacks is available as
a separate document.
FPGA_INT_BL............................................................................................................................ 62
FPGA_INT_BL (DS1202 FPGA I/O Type 1 Settings).................................................................... 122
Parameters Page (FPGA_INT_BL)............................................................................................. 122
124
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the MicroLabBox II Framework
Introduction The block dialogs provide hardware-specific settings after you load the DS1303
(KU15P) Multi-I/O Board framework.
125
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Common settings
Block Description (FPGA_XDATA_READ_BL)............................................. 45
To specify read access by the FPGA model to the processor model via
processor bus.
Purpose To specify the data format and specific settings for the selected access type.
Description The processor application can provide data to the FPGA application via the
I/O carrier network (IOCNET). IOCNET is a dSPACE-specific high-speed serial
communication bus that connects the boards in the MicroLabBox II.
The DS1303 (KU15P) Multi-I/O Board framework provides the following access
types that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is read from
an IOCNET register. 256 registers are available with a data width of 32 bits
each and 256 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
126
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (MicroLabBox II)
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
127
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a data exchange including floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
128
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (MicroLabBox II)
Port Description
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 127.
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.
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.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
129
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a data exchange including floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
130
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (MicroLabBox II)
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 127.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
131
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 127.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
132
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_READ_BL (MicroLabBox II)
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates a data exchange including floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 127.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
133
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates a data exchange including floating-point to fixed-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 127.
134
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
Common settings
Block Description (FPGA_XDATA_WRITE_BL)............................................ 50
To specify write access by the FPGA model to the processor model via
processor bus.
Purpose To specify the data format and specific settings for the selected access type.
Description The processor application can read data provided by the FPGA application via
the I/O carrier network (IOCNET). IOCNET is a dSPACE-specific high-speed serial
communication bus that connects the boards in the MicroLabBox II.
The DS1303 (KU15P) Multi-I/O Board framework provides the following access
types that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is written
to an IOCNET register. 256 registers are available with a data width of 32
bits each and 256 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to
an IOCNET buffer. 32 buffers are available that provides elements with a data
135
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is written to an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
136
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
137
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error
in the Messages page of the MicroLabBox II. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
138
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
Port Description
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 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 Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error
in the Messages page of the MicroLabBox II. The FPGA buffer that caused the task
overrun will also be logged.
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 136.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
139
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
140
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
Port Description
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error
in the Messages page of the MicroLabBox II. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
Available only if the bus transfer mode is disabled on the Parameters page.
Data type: UFix_1_0
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
141
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 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 Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error
in the Messages page of the MicroLabBox II. The FPGA buffer that caused the task
overrun will also be logged.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 136.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The Read_Req and Sim_Data ports are displayed optionally.
142
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a Simulink bus to be transmitted to the processor application.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Output
Read_Req Outputs a flag that indicates that a data transmission is requested from the
processor application. A data transmission is always requested at the beginning of a
task, before the processor application is computed.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request automatically triggers a data transmission.
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Simulink bus
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 136.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
143
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Reset bus topology Lets you clear the bus topology of the Data port.
Bus data transmission method Lets you select the method for transmitting
data to the processor application:
§ Synchronous to Read_Req method
Select this method to transmit data that is captured synchronously to the read
request.
The FPGA application writes data to the swinging buffer when the processor
application makes a read request. After the data is written to the buffer, the
buffer swings and sends the data to the processor application.
§ Free running method
Select this method if the transmission time is crucial.
The FPGA application continuously writes data to the swinging buffer. A read
request of the processor application immediately transmits the last complete
data set of the swinging buffer to the processor application.
For instructions, refer to How to Configure the Bus Data Transmission Method
(FPGA Programming Blockset Guide ).
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
144
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_XDATA_WRITE_BL (MicroLabBox II)
Port Description
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 136.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
145
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 136.
146
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Common settings
Block Description (FPGA_IO_READ_BL).................................................... 54
To implement read access to a physical input channel in the FPGA model.
Description The frameworks provide different I/O types, which you can select on the Unit
page of the block:
§ Analog In 23
§ Analog In 24
§ Analog In 25
§ APU Slave
§ Aurora 64b66b In
§ Aurora 64b66b 128 Bit In
§ CN App Status
§ Digital In/Out 14 (In)
§ IOCNET Global time
§ MGT In
§ MGT In Opto Ready
147
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
§ Status In
§ Watchdog
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BLx block, except
for the Status In function.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Analog In 23 description Block display If you select an Analog In 23 channel from the channel list, the
block display changes. The simulation port is displayed optionally.
I/O characteristics The following table shows the scaling between the analog
input voltage and the output of the Data port:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Convert Triggers the sampling of the A/D converter. The port allows a precise definition of
the starting point of ADC sampling. The Data New port signals the end of the
conversion process.
Data type: UFix_1_0
Data width: 1
Values
§ 0: No conversion.
§ Set to 1 for at least one clock cycle: The ADC starts the conversion.
§ Permanently set to 1: The ADC samples continuously.
Sim Data In Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port parameter is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: ‑10 V … +10 V
Output
148
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Port Description
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0 1)
Range: ‑32,768 … +32,767
Update rate: 2 MS/s
Data New Outputs an end of conversion signal if the conversion result is available.
Data type: UFix_1_0
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.
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
Analog In 23 settings The following settings on the Parameters page are specific to the Analog
In 23 I/O function. For common dialog settings, refer to Common settings on
page 148.
Input range Displays the input voltage range that can be converted from
analog to digital.
Input voltages outside the displayed voltage range will be saturated to the
minimum or maximum values.
Analog In 24 description Block display If you select an Analog In 24 channel from the channel list, the
block display changes. The simulation port is displayed optionally.
149
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O characteristics The following table shows the scaling between the analog
input voltage and the output of the Data port:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Convert Triggers the sampling of the A/D converter. The port allows a precise definition of
the starting point of ADC sampling. The Data New port signals the end of the
conversion process.
Data type: UFix_1_0
Data width: 1
Values
§ 0: No conversion.
§ Set to 1 for at least one clock cycle: The ADC starts the conversion.
§ Permanently set to 1: The ADC samples continuously.
Sim Data In Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port parameter is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: Set by the Input range parameter on the Parameters page.
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0 1)
Range: ‑32,768 … +32,767
Update rate: 5 MS/s
Data New Outputs an end of conversion signal if the conversion result is available.
Data type: UFix_1_0
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.
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
150
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Analog In 24 settings The following settings on the Parameters page are specific to the Analog
In 24 I/O function. For common dialog settings, refer to Common settings on
page 148.
Input range Lets you specify the input voltage range that can be converted
from analog to digital for the chosen ADC channel. Input voltages outside the
specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Analog In 25 description Block display If you select an Analog In 25 channel from the channel list, the
block display changes. The simulation port is displayed optionally.
I/O characteristics The following table shows the scaling between the analog
input voltage and the output of the Data port:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Convert Triggers the sampling of the A/D converter. The port allows a precise definition of
the starting point of ADC sampling. The Data New port signals the end of the
conversion process.
Data type: UFix_1_0
Data width: 1
Values
§ 0: No conversion.
§ Set to 1 for at least one clock cycle: The ADC starts the conversion.
§ Permanently set to 1: The ADC samples continuously.
151
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Sim Data In Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port parameter is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: Set by the Input range parameter on the Parameters page.
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0 1)
Range: ‑32,768 … +32,767
Update rate: 5 MS/s
Data New Outputs an end of conversion signal if the conversion result is available.
Data type: UFix_1_0
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.
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
Analog In 25 settings The following settings on the Parameters page are specific to the Analog
In 25 I/O function. For common dialog settings, refer to Common settings on
page 148.
Input range Lets you specify the input voltage range that can be converted
from analog to digital for the chosen ADC channel. Input voltages outside the
specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Load Lets you enable a 255 Ω resistor between the analog signal and the
signal reference.
This electrical interface setting can be changed in ConfigurationDesk.
152
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
APU Slave description Block display If you select the APU Slave channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the port of the block for
digital input channels:
Port Description
Input
Sim Phi Read Simulates the APU bus value for Phi Read.
Available only if Enable simulation Phi Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The value range depends on the angle range of the simulated APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Sim Rev Read Simulates the hardware input value for Rev Read.
Available only if Enable simulation Rev Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The 37-bit range is -236 ... +236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Sim Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Angle Range Simulates the angle range of the APU bus.
Available only if Enable simulation Angle Range port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Output
153
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Phi Read Outputs the angle value that APU Slave reads from the APU bus. The angle
value is independent from the angle range of the APU bus.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the angle range of the APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value for the APU bus.
Data type: Double
Data width: 1
The APU bus clock cycle is 8 ns. The 37-bit range is -236 ... 236 - 1.
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Slave settings The Parameters page provides the following dialog setting:
Enable Phi Read HD port The Phi Read HD port is available in the block
only if you enable it.
Enable Delta Phi port The Delta Phi port is available in the block only if you
enable it.
Enable Delta Phi Enable port The Delta Phi Enable port is available in the
block only if you enable it.
Enable simulation Phi Read port The Sim Phi Read port is available in the
block only if you enable it.
Enable simulation Rev Read port The Sim Rev Read port is available in the
block only if you enable it.
Enable simulation Phi Read HD port The Sim Phi Read HD port is
available in the block only if you enable it.
154
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Enable simulation Delta Phi port The Sim Delta Phi port is available in the
block only if you enable it.
Enable simulation Delta Phi Enable port The Sim Delta Phi Enable port is
available in the block only if you enable it.
Enable simulation Angle Range port The Sim Angle Range port is
available in the block only if you enable it.
Angle range For the slave APU, you can inherit the angle range of the APU
bus or you specify a local angle range independent from the APU bus. The
following table shows you the possible combinations of angle range settings.
Aurora 64b66b In description Purpose To read 64-bit data values from an MGT communication channel
using the Aurora 64b66b link-layer protocol.
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.
155
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Block display If you select an Aurora 64b66b In channel from the channel
list, the block display changes. The inport Sim Data is displayed optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Input
Ready Specifies that the communication channel is ready to read new data. Use this port
to prevent a data overflow.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The communication channel is not ready.
§ 1: New data can be read.
Sim Data Simulates a data exchange via the MGT communication bus including floating-
point to fixed-point data conversion.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Reads a 64-bit data value from the MGT communication bus.
User data transfer rate: Max. 8 Gbit/s (125 MHz FPGA clock, 64 bits)
MGT latency1):
§ With maximum data rate: 456 ns
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_64_0
Data width: 1
Data New Indicates whether a new data value was received by the MGT module.
Data type: UFix_1_0
Data width: 1
If the MGT module contains a new value, the flag changes from 0 to 1 for one
clock cycle:
§ 0: No new data available.
§ 1: New data available.
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
156
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
Aurora 64b66b In settings Only common dialog settings. Refer to Common settings on page 148.
Aurora 64b66b 128 Bit In Purpose To read 128-bit data values from an MGT communication channel
description using the Aurora 64b66b link-layer protocol.
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.
Block display If you select an Aurora 64b66b 128 Bit In channel from
the channel list, the block display changes. The inport Sim Data is displayed
optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Input
Ready Specifies that the communication channel is ready to read new data. Use this port
to prevent a data overflow.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The communication channel is not ready.
§ 1: New data can be read.
157
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Sim Data Simulates a data exchange via the MGT communication bus including floating-
point to fixed-point data conversion. The converting can lead to inaccuracies.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Reads a 128-bit data value from the MGT communication bus.
User data transfer rate: Max. 10.3125 Gbit/s, limited by the MGT module.
MGT latency1):
§ With maximum data rate: Max. 6.272 µs, typ. 6.192 µs
The latency increases, because the TX-FIFO buffer becomes full when the data
stream fills the buffer with 16 Gbit/s (128 bits at 125 MHz).
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_128_0
Data width: 1
Data New Indicates whether a new data value was received by the MGT module.
Data type: UFix_1_0
Data width: 1
If the MGT module contains a new value, the flag changes from 0 to 1 for one
clock cycle:
§ 0: No new data available.
§ 1: New data available.
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
Aurora 64b66b 128 Bit In Only common dialog settings. Refer to Common settings on page 148.
settings
158
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
CN App Status description Block display If you select the CN App Status channel from the channel list,
the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Status Outputs the state of the processor application.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
Digital In/Out 14 (In) Block display If you select a Digital In/Out 14 (In) channel from the channel
description list, the block display changes. Except the Enable and Data ports, all ports are
displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Enable Lets you enable the measurement of of the input channel.
Data type: UFix_1_0
Data width: 1
Values:
§ 1: The measurement is enabled.
§ 0: The measurement is disabled.
159
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Sim Data In Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: Set by the Threshold init voltage parameter on the Parameters
page.
Output
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
Data width: 1
Non-inverted values:
§ 0: High-low transition
§ 1: Low-high transition
Threshold level: Set by the Threshold init voltage parameter on the Parameters
page.
Update rate: FPGA clock frequency1)
1) The frequency that can be detected by the digital channel is much smaller than
the update rate. Refer to Digital In/Out 14 Characteristics (MicroLabBox II Hardware
Installation and Configuration ).
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping For the I/O mapping, refer to Digital In/Out 14 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
Digital In/Out 14 (In) settings The following settings on the Parameters page are specific to the Digital
In/Out 14 (In) I/O function. For common dialog settings, refer to Common
settings on page 148.
Invert values Lets you select whether to invert the input and output values of
the digital channel.
§ Off: The Data port does not invert the values: A logical 1 represents a low-
high transition of the physical signal.
§ On: 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.
Threshold init 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.
The selected threshold voltage is also valid for the optional simulation data
inport.
160
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Input filter Lets you specify the minimum pulse length for detecting a valid
input in the range 0 … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
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.
IOCNET Global Time Block display If you select the IOCNET Global Time channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Time Outputs the number of hardware ticks that occurred since the MicroLabBox II was
powered on.
Data type: 56 bit
Tick step-width: 8.5 ns
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
MGT In description Purpose To provide the information about the connection between the GTH
transceivers and the MGT module and to specify the reference clock frequency.
The information is required for customer-specific protocol blocks that configure
the GTH transceivers. A GTH transceiver is a configurable transceiver of the AMD
UltraScale FPGA architecture.
161
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Block display If you select an MGT In channel from the channel list, the block
display changes.
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Output
CLK_P Provides the MGT reference clock frequency.
CLK_N The ports represent the differential signal of an internal clock. The ports must be
connected to a block that provides the configuration for the GTH transceivers.
The reference frequency is specified on the Parameters page.
Data type: UFix_1_0
Data width: 1
RX_P Reads the raw data from the MGT module.
RX_N The ports represent the differential output signals of the MGT module. The ports
must be connected to a block 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.
Multiple clock domain support This block can be used in a user clock
domain to be synchronous to the MGT transceivers, for example. Refer to
Using Multiple Clock Domains for FPGA Modeling (FPGA Programming Blockset
Guide ).
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
MGT In settings The Parameters page provides the following dialog setting:
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 Modeling MGT Communication Using a
Customized Protocol (FPGA Programming Blockset Guide ).
162
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Output
Opto_Ready Indicates whether the MGT module is ready for data exchange. The port changes
to 1 during the initialization phase, i.e. before the CN APP Status block changes
from stop to running.
Data type: UFix_1_0
Data width: 1
If the MGT module is ready, the flag changes from 0 to 1:
§ 0: The MGT module is not ready.
§ 1: The MGT module is ready.
Update rate: 125 MHz
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
163
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
Watchdog description Block display If you select the Watchdog channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the watchdog input channel:
Port Description
Output
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
Tip
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
164
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
References
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
165
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Analog In settings The following settings on the Scaling page are specific to the Analog In 23,
Analog In 24, and Analog In 25 I/O functions.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
166
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_READ_BL (MicroLabBox II)
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
167
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital In settings The following settings on the Scaling page are specific to the Digital In/Out 14
(In) I/O function.
Invert input polarity Lets you adapt the measured values to the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Other I/O function settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
References
168
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Common settings
Block Description (FPGA_IO_WRITE_BL)................................................... 59
To implement write access to a physical output channel in the FPGA
model.
Description The frameworks provide different I/O types, which you can select on the Unit
page of the block:
§ Analog Out 19
§ Analog Out 20
§ APU Master
§ Aurora 64b66b Out
§ Aurora 64b66b 128 Bit Out
§ Digital In/Out 14 (In/Out‑Z)
§ Digital In/Out 15
§ LED Out
§ MGT Out
169
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out function.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
For the digital In/Out I/O functions, there are separate settings for enabling the
input and output simulation ports.
Analog Out 19 description Block display If you select an Analog Out 19 channel from the channel list,
the block display changes. The simulation port is displayed optionally.
I/O characteristics The following table shows the scaling between the Data
port value and the output of the analog channel:
The following table describes the ports of the block for analog output channels:
Port Description
Input
Data Generates a voltage signal in the specified range.
Data type: Fix_16_0 1)
Data width: 1
Value range: ‑32,768 … +32,767
Update rate: 2.5 MS/s
Enable Lets you enable on-demand conversion of the Data port value. When a new value
can be converted, the Ready port outputs 1.
Note: If you connect the Ready port directly to the Enable port, the analog output
channel works in the same way as in a free-running mode.
Data Type: UFix_1_0
Data width: 1
Output
Ready Indicates that the channel is ready to be updated.
Data type: UFix_1_0
Data width: 1
Update rate: 2.5 MS/s
170
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Port Description
Sim Data Simulates the analog output signal.
Available only if Enable simulation port parameter is set on the Parameters
page.
Data type: Double
Data width: 1
Value range: Displayed by the Output range parameter on the Parameters page.
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping For the I/O mapping, refer to Analog Out 19 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
Analog Out 19 parameters The following settings on the Parameters page are specific to the Analog
Out 19 I/O function. For common dialog settings, refer to Common settings on
page 170.
Output range Displays the output range of the analog output channel.
Analog Out 20 description Block display If you select an Analog Out 20 channel from the channel list,
the block display changes. The simulation port is displayed optionally.
171
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O characteristics The following table shows the scaling between the Data
port value and the output of the analog channel:
The following table describes the ports of the block for analog output channels:
Port Description
Input
Data Generates a voltage signal in the specified range.
Data type: Fix_16_0 1)
Data width: 1
Value range: ‑32,768 … +32,767
Update rate: 5 MS/s
Enable Lets you enable on-demand conversion of the Data port value. When a new value
can be converted, the Ready port outputs 1.
Note: If you connect the Ready port directly to the Enable port, the analog output
channel works in the same way as in a free-running mode.
Data Type: UFix_1_0
Data width: 1
Output
Ready Indicates that the channel is ready to be updated.
Data type: UFix_1_0
Data width: 1
Update rate: 5 MS/s
Sim Data Simulates the analog output signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Value range: Set by the Output range parameter on the Parameters page.
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping For the I/O mapping, refer to Analog Out 20 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
Analog Out 20 parameters The following settings on the Parameters page are specific to the Analog
Out 20 I/O function. For common dialog settings, refer to Common settings on
page 170.
172
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Output range Lets you select the voltage range and converter mode of the
analog output channel:
§ ‑10 V … +10 V DC:
The DA converter directly outputs the voltage signal without using a
transformer. The output voltage range is ‑10 V DC … +10 V DC.
§ ‑20 V … +20 V AC:
The DA converter outputs the voltage signal via a transformer. The output
voltage range is ‑20 V AC … +20 V AC.
For the AC characteristics, refer to Analog Out 20 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
This electrical interface setting can be changed in ConfigurationDesk.
APU Master description Block display If you select the APU Master channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Velocity Specifies a velocity value in degrees/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
Range: -1,200,000 °/s ... +1,200,000 °/s
It is not possible to exceed the range. The port is saturated at the higher or
lower limit.
173
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Set Velocity Specifies the current value of Velocity as new velocity value.
The new value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: UFix_1_0
Data width: 1
To distribute and execute a new velocity value takes at least 10 μs,
depending on the IOCNET structure.
Output
Phi Read Outputs the angle counter value of the APU that the APU Master writes to
the APU bus. The step size of the angle counter is approximately 0.011°. The
step size is independent from the angle range.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the Angle range on the Parameters page:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37-bit total revolution (rev) value that APU Master reads from
the APU bus.
Data type: Fix_37_0
Data width: 1
The 37-bit range is -236 ... 236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus. You set the angle range on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Busy Outputs whether APU Master is busy to set the last velocity value.
Data type: UFix_1_0
Data width: 1
If the Busy port is 1 (high), new velocity values cannot be set.
The Busy port stays active for at least 10 µs depending on the IOCNET
structure.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
174
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
APU Master settings The Parameters page provides the following dialog setting:
Angle range Lets you select the angle range of the APU in degree.
§ 360: The angle range is 360 ° and cannot be changed in ConfigurationDesk.
§ 720: The angle range is 720 ° and cannot be changed in ConfigurationDesk.
§ Individual: 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°.
Initial position Lets you set the initial APU master position in degree.
§ Value range: -1,440 ° ... +1,440 °
Enable advanced ports The internal ports for the dSPACE Electric Motor HIL
Solution are available in the block only if you enable them.
Aurora 64b66b Out Purpose To write 64-bit data values to an MGT communication channel using
description the Aurora 64b66b link-layer protocol.
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.
Block display If you select an Aurora 64b66b Out channel from the channel
list, the block display changes. The outport Sim Data is displayed optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
Data Writes a 64-bit data value to the MGT communication bus.
User data transfer rate: Max. 8 Gbit/s (125 MHz FPGA clock, 64 bits)
175
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
MGT latency1):
§ With maximum data rate: 456 ns
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_64_0
Data width: 1
Enable Enables the write access to the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No write access.
§ 1: The Data port value of the current clock cycle is written on the MGT
communication bus.
Output
Ready Outputs a flag that indicates that the MGT module is ready to write new data on
the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The MGT channel is busy.
§ 1: New data values can be written to the MGT communication bus.
Sim Data Simulates a data exchange via the MGT communication bus including fixed-point
to floating-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
Aurora 64b66b Out settings Only common dialog settings. Refer to Common settings on page 170.
Aurora 64b66b 128 Bit Out Purpose To write 128-bit data values to an MGT communication channel
description using the Aurora 64b66b link-layer protocol.
176
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
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.
Block display If you select an MGT Out channel from the channel list, the
block display changes. The outport Sim Data is displayed optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
Data Writes a 128-bit data value to the MGT communication bus.
User data transfer rate: Max. 10.3125 Gbit/s, limited by the MGT module.
MGT latency1):
§ With maximum data rate: Max. 6.272 µs, typ. 6.192 µs
The latency increases, because the TX-FIFO buffer becomes full when the data
stream fills the buffer with 16 Gbit/s (128 bits at 125 MHz).
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_128_0
Data width: 1
Enable Enables the write access to the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No write access.
§ 1: The Data port value of the current clock cycle is written on the MGT
communication bus.
Output
177
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Ready Outputs a flag that indicates that the MGT module is ready to write new data on
the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The MGT channel is busy.
§ 1: New data values can be written to the MGT communication bus.
Sim Data Simulates a data exchange via the MGT communication bus including fixed-point
to floating-point data conversion. The converting can lead to inaccuracies.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
Aurora 64b66b 128 Bit Out Only common dialog settings. Refer to Common settings on page 170.
settings
Digital In/Out 14 (In/Out‑Z) Block display If you select a Digital In/Out channel from the channel list, the
description block display changes. Except for the Data In, Data Out, and Enable ports, all
the ports are displayed optionally.
178
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
I/O characteristics
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) (refer to Parameters Page (FPGA_IO_READ_BL) on page 147).
Port Description
Input
Data Out 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 on the Parameters page.
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: FPGA clock frequency1)
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Enable Write 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.
Invert Lets you invert the data port values. The setting will not take effect until the Invert
Set port rises from 0 to 1.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: A data port does not invert the values. A logical 1 represents a low-high
transition of the physical signal.
§ 1: A data port inverts the values. A logical 1 represents a high-low transition of
the physical signal.
Invert Set Lets you set the inverting as specified by the Invert port. A new setting overwrites
the settings of the Invert values parameter on the Parameters page.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
179
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Values:
§ No transition, or a 1 to 0 transition: A new setting does not take effect.
§ 0 to 1 transition: The new setting is sent to the input channel. The Invert Ack
port outputs a flag if the channel is up-to-date.
Update rate: FPGA clock frequency
Mode Specifies the digital output mode. A new output mode will not take effect until the
Mode Set port rises from 0 to 1.
Available only if the Enable configuration ports parameter is set on the
Parameters page.
Data Type: UFix_6_0
Data width: 1
Values:
§ 49: Enables the low-side switch that drives a load connected to the high supply
voltage.
§ 50: Enables the high-side switch that drives a load connected to GND.
§ 51: Enables a push-pull switch that drives a load with the high supply voltage and
GND.
Mode Set Sets the output mode as specified by the Mode port. A new setting overwrites the
settings of the Output Mode on the Parameters page.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new mode does not take effect.
§ 0 to 1 transition: New settings are sent to the output channel. The Mode Ack
port outputs a flag if the channel is up-to-date.
Update rate: FPGA clock frequency
Sim Data In Simulates an input signal that you can connect to a Simulink-based I/O environment
model. The threshold voltage determines a logical 0 or 1 as output of the Data
port.
Available only if Enable digital in simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: -35 V ... +35 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
Data In Outputs the current results of the 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.
180
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Port Description
Threshold level: Set by the Threshold init voltage parameter on the Parameters
page.
Update rate: FPGA clock frequency1)
Invert Ack Outputs a flag that acknowledges a change of the inverting setting.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Mode Ack Outputs a flag that acknowledges a change of the output mode.
Available only if the Enable configuration ports is set on the Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Out Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if the Enable digital out simulation port parameter is set on the
Parameters page.
Data type: Double
Output voltage: 0 V … 5 V or 0 V … 3.3 V, set by the High Supply parameter
Update rate: FPGA clock frequency
1) The frequency that can be generated or detected by the digital channel is much
smaller than the update rate. Refer to Digital In/Out 14 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping For the I/O mapping, refer to Digital In/Out 14 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
Digital In/Out 14 (In/Out‑Z) The following settings on the Parameters page are specific to the Digital
settings In/Out‑Z I/O function.
Invert values Lets you select whether to invert the input and output values of
the digital channel.
§ Off: The Data port does not invert the values: A logical 1 represents a low-
high transition of the physical signal.
§ On: 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.
181
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Threshold init 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.
The selected threshold voltage is also valid for the optional simulation data
inport.
Input filter Lets you specify the minimum pulse length for detecting a valid
input in the range 0 … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
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.
High Supply Lets you select the the high supply voltage voltage that
determines the high-level voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
182
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out port is added to the block to connect it to a
Simulink-based I/O environment model.
Digital In/Out 15 description Block display If you select a Digital In/Out 15 channel from the channel list,
the block display changes. Except for the Data In, Data Out, and Enable ports,
all the ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Out Outputs a signal in the specified range if the Enable port is set to 1.
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: FPGA clock frequency1)
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Enable Write 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.
Invert Lets you invert the data port values. The setting will not take effect until the Invert
Set port rises from 0 to 1.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
183
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Port Description
Values:
§ 0: A data port does not invert the values. A logical 1 represents a low-high
transition of the physical signal.
§ 1: A data port inverts the values. A logical 1 represents a high-low transition of
the physical signal.
Invert Set Lets you set the inverting as specified by the Invert port. A new setting overwrites
the settings of the Invert values parameter on the Parameters page.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new setting does not take effect.
§ 0 to 1 transition: The new setting is sent to the input channel. The Invert Ack
port outputs a flag if the channel is up-to-date.
Update rate: FPGA clock frequency
Termination Specifies whether the signal line is terminated. A new configuration will not take
effect until the Termination Set port rises from 0 to 1.
Available only if the Enable configuration ports parameter is set.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The signal line is driven directly without a termination.
§ 1: The signal line is terminated via an internal RC termination with 120 Ω/5 nF.
Termination Lets you set the termination signal lines as specified by the Termination port. A
Set new setting overwrites the settings of the Termination on the Parameters page.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The Termination Ack
port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Data In Simulates an input signal that you can connect to a Simulink-based I/O environment
model. The threshold voltage of 0 V determines a logical 0 or 1 as output of the
Data port.
Available only if Enable digital in simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Value range: -5 V … +5 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
184
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Port Description
Data In Outputs the current results of the digital input channel.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Input voltage made a high-low transition.
§ 1: Input voltage made a low-high transition.
Update rate: FPGA clock frequency1)
Invert Ack Outputs a flag that acknowledges a change of the inverting setting.
Available only if the Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Out Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable digital in simulation port is set on the Parameters page.
Data type: Double
Output voltage: ±3.3 V
Update rate: FPGA clock frequency
1) The frequency that can be generated or detected by the digital channel is much
smaller than the update rate. Refer to Digital In/Out 15 Characteristics (MicroLabBox II
Hardware Installation and Configuration ).
If the value of the Data In inport exceeds the specified data width, only the
lowest bit is used. If the hardware signal or the value of the Sim Data In
inport exceeds the minimum or maximum input voltage, it is saturated to the
corresponding minimum or maximum value.
Note
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping For the I/O mapping, refer to Digital In/Out 15 Characteristics
(MicroLabBox II Hardware Installation and Configuration ).
185
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Digital In/Out 15 settings The following settings on the Parameters page are specific to the Digital
In/Out 15 I/O function.
Invert values Lets you select whether to invert the input and output values of
the digital channel.
§ Off: The Data port does not invert the values: A logical 1 represents a low-
high transition of the physical signal.
§ On: 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.
Input filter Lets you specify the minimum pulse length for detecting a valid
input in the range 0 … 1,250,000 ns in steps of 8 ns.
This electrical interface setting can be changed in ConfigurationDesk.
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out port is added to the block to connect it to a
Simulink-based I/O environment model.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the USR LED 1 on the MicroLabBox II.
Data type: UFix_1_0
Data width: 1
186
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Port Description
Values:
§ 0: The LED outputs status information for custom FPGA applications. Refer
to LED States of the MicroLabBox II (MicroLabBox II Hardware Installation and
Configuration ).
§ 1: LED lights orange.
If the value of the Data port exceeds the specified data width, only the lowest bit is
used (=1).
MGT Out description Purpose To provide the information about the connection between the GTH
transceivers and the MGT module. The information is required for customer-
specific protocol blocks that configure the GTH transceivers. A GTH transceiver is
a configurable transceiver of the AMD UltraScale FPGA architecture.
Block display If you select an MGT Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
TX_P Writes data to the MGT module.
TX_N The ports represent the differential signals of the GTH transceivers that are
connected to the MGT module. The ports must be connected to a block that
provides the configuration for the GTH transceivers.
Data type: UFix_4_0
Data width: 1
Each bit represents the input for one MGT channel.
Update rate: MGT reference clock frequency
The MGT reference clock frequency parameter of the MGT In block lets you
specify the reference frequency that is used to generate the MGT clock frequency.
Refer to MGT In description on page 161.
Multiple clock domain support This block can be used in a user clock
domain to be synchronous to the MGT transceivers, for example. Refer to
Using Multiple Clock Domains for FPGA Modeling (FPGA Programming Blockset
Guide ).
187
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
I/O mapping The MGT communication bus uses the MGT connector of the
rear panel.
The recommended and tested standard network interface module for
the MicroLabBox II is the QSFP28-SR4-100G module manufactured by FS
(https://www.fs.com).
References
Purpose To specify the inverting settings for the selected I/O function.
Description You can invert digital I/O signals and UART signals of the selected I/O function
if you select the Enable FPGA test access and scaling parameter on the FPGA
Access page of the FPGA_SETUP_BL block dialog. The possible modifications
depend on the selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
188
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Analog Out settings The following settings on the Scaling page are specific to the Analog Out 19
and Analog Out 20 I/O functions.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
189
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
190
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_IO_WRITE_BL (MicroLabBox II)
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital In/Out settings The following settings on the Scaling page are specific to the Digital In/Out 14
(In/Out-Z) and Digital In/Out 15 I/O functions.
Invert input polarity Lets you invert the measured values of the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If driven with 1, the hardware outputs a high-level signal.
If driven with 0, the hardware outputs a low-level signal.
§ Enabled:
If driven with 1, the hardware outputs a low-level signal.
If driven with 0, the hardware outputs a high-level signal.
Other I/O function settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
References
191
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
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.
Int description Block display The figure below shows the block display with the optional
simulation port.
192
FPGA Programming Blockset - FPGA Interface Reference May 2024
FPGA_INT_BL (MicroLabBox II)
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
References
193
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroLabBox II Framework
194
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the SCALEXIO Frameworks
Block Settings for the DS2655 FPGA Base Board Framework.................. 196
The block dialogs provide hardware-specific settings after you load one
of the DS2655 FPGA Base Board frameworks.
Block Settings for the DS6601 FPGA Base Board Framework.................. 241
The block dialogs provide hardware-specific settings after you load the
DS6601 (KU035) FPGA Base Board framework.
Block Settings for the DS6602 FPGA Base Board Framework.................. 288
The block dialogs provide hardware-specific settings after you load the
DS6602 (KU15P) FPGA Base Board framework.
195
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
196
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Purpose To specify the data format and specific settings for the selected access type.
Description The frameworks of the DS2655 FPGA Boards provide the following access types
that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is read from
an IOCNET register. 256 registers are available with a data width of 32 bits
each and 256 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
197
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
198
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 197.
199
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
200
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 197.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point position>
201
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 197.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
202
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
203
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 197.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
204
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 197.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
205
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The frameworks of the DS2655 FPGA Boards provide the following access types
that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is written
to an IOCNET register. 256 registers are available with a data width of 32
bits each and 256 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
206
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
§ Bus
If you select Bus as the access type, the data is written to an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
207
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 207.
208
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
209
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
210
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 207.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
211
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 207.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
212
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
213
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
Available only if the bus transfer mode is disabled on the Parameters page.
Data type: UFix_1_0
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the Enable simulation status port is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 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 Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
214
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 207.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The Send_Ack, Read_Req, and Sim_Data ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a Simulink bus to be transmitted to the processor application.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req, you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send the data in the desired state, you can wait to finish
last data processing before acknowledging the data transfer.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
215
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Simulink bus
Read_Req Outputs a flag that indicates that a data transmission is requested from the
processor application. A data transmission is always requested at the beginning of a
task, before the processor application is computed.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request automatically triggers a data transmission.
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 207.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
216
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Reset bus topology Lets you clear the bus topology of the Data port.
Bus data transmission method Lets you select the method for transmitting
data to the processor application:
§ Synchronous to task method
Select this method to transmit data that is captured synchronously to the
processor task.
The FPGA application writes data to the swinging buffer when the processor
application makes a read request. After the data is written to the buffer, the
buffer swings and sends the data to the processor application.
§ Free running method
Select this method if the transmission time is crucial.
The FPGA application continuously writes data to the swinging buffer. A read
request of the processor application immediately transmits the last complete
data set of the swinging buffer to the processor application.
§ User acknowledged method
Select this method to acknowledge the data to be transmitted to the processor
application, for example, to trigger the processing of some data before it is
transmitted to the processor application.
The FPGA application writes data to the swinging buffer when you
acknowledge the data with the Send_Ack port. After the data is written to
the buffer, the buffer swings and sends the data to the processor application.
You must acknowledge each data transmission request so that data transfer is
synchronous to the processor task, as with the Synchronous to task method.
For instructions, refer to How to Configure the Bus Data Transmission Method
(FPGA Programming Blockset Guide ).
217
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Slave 1 … 6
§ CN APP Status
§ I‑FPGA In 1 … 32 (IOCNET)
§ I‑FPGA64 In 1 … 32 (IOCNET)
§ IOCNET Global Time
§ Status In
§ Subsystem Clock
§ System Clock
§ System Signal Block
218
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
APU Slave description Block display If you select the APU Slave channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the port of the block for
digital input channels:
Port Description
Input
Sim Phi Read Simulates the APU bus value for Phi Read.
Available only if Enable simulation Phi Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The value range depends on the angle range of the simulated APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Sim Rev Read Simulates the hardware input value for Rev Read.
Available only if Enable simulation Rev Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The 37-bit range is -236 ... +236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Sim Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Angle Range Simulates the angle range of the APU bus.
Available only if Enable simulation Angle Range port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Output
219
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Phi Read Outputs the angle value that APU Slave reads from the APU bus. The angle
value is independent from the angle range of the APU bus.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the angle range of the APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value for the APU bus.
Data type: Double
Data width: 1
The 37-bit range is -236 ... 236 - 1.
The APU bus clock cycle is 8 ns.
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle rangeThe angle range is 0° ... 720°
§ 1 (high): 360 ° angle range
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Slave settings The Parameters page provide the following dialog setting:
Enable Phi Read HD port The Phi Read HD port is available in the block
only if you enable it.
Enable Delta Phi port The Delta Phi port is available in the block only if you
enable it.
Enable Delta Phi Enable port The Delta Phi Enable port is available in the
block only if you enable it.
Enable simulation Phi Read port The Sim Phi Read port is available in the
block only if you enable it.
Enable simulation Rev Read port The Sim Rev Read port is available in the
block only if you enable it.
Enable simulation Phi Read HD port The Sim Phi Read HD port is
available in the block only if you enable it.
220
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Enable simulation Delta Phi port The Sim Delta Phi port is available in the
block only if you enable it.
Enable simulation Delta Phi Enable port The Sim Delta Phi Enable port is
available in the block only if you enable it.
Enable simulation Angle Range port The Sim Angle Range port is
available in the block only if you enable it.
Angle range For the slave APU, you can inherit the angle range of the APU
bus or you specify a local angle range independent from the APU bus. The
following table shows you the possible combinations of angle range settings.
CN App Status description Block display If you select the CN App Status channel from the channel list,
the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Status Outputs the state of the processor application.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
221
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I-FPGA In 1 … 32 (IOCNET) Block display If you select the I-FPGA In (IOCNET) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 1024
Range: Single precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 32-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_32_0
Data width: 1
222
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 218.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
223
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I-FPGA64 1 … 32 In (IOCNET) Block display If you select the I-FPGA64 Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 512
Range: Double precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 64-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_64_0
Data width: 1
224
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA64 In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 218.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
225
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
IOCNET Global Time Block display If you select the IOCNET Global Time channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Time Outputs the number of hardware ticks that occurred since the SCALEXIO system
power was switched to on. If you use a multiprocessor system, the value is set to
zero each time an application is reloaded and restarted.
Data type: 56 bit
Tick step-width: 8.5 ns
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
226
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Subsystem Clock description Block display If you select the Subsystem Clock channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Subsystem Outputs the clock signal of the selected subsystem clock domain. You specify the
Clock subsystem clock domain in the FPGA Setup block. Refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
System Clock description Block display If you select the System Clock channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
227
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
System Signal Block Block display If you select the System Signal Block channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
CN App Outputs the state of the processor application.
Status Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Opto_Ready Indicates whether an MGT module is ready for data exchange.
The port value remains 0, because the used dSPACE hardware does not support
MGT modules.
228
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
229
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Master 1 … APU Master 6
§ I-FPGA Out (IOCNET)
§ I-FPGA64 Out (IOCNET)
§ LED Out
§ User Clock Out 1 … 32
APU Master 1 … 6 description Block display If you select the APU Master channel from the channel list, the
block display changes. For example:
230
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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
Range: -1,200,000 °/s ... +1,200,000 °/s
It is not possible to exceed the range. The port is saturated at the higher or
lower limit.
Set Velocity Specifies the current value of Velocity as new velocity value.
The new value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: UFix_1_0
Data width: 1
To distribute and execute a new velocity value takes at least 10 μs,
depending on the IOCNET structure.
Output
Phi Read Outputs the angle counter value of the APU that the APU Master writes to
the APU bus. The step size of the angle counter is approximately 0.011°. The
step size is independent from the angle range.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the Angle range on the Parameters page:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value that the APU Master reads
from the APU bus.
Data type: Fix_37_0
Data width: 1
The 37-bit range is -236 ... 236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus. You set the Angle range on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
231
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Busy Outputs whether APU Master is busy to set the last velocity value.
Data type: UFix_1_0
Data width: 1
If Busy is 1 (high), new velocity values cannot be set.
Busy stays active for at least 10 µs depending on the IOCNET structure.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Master 1 … 6 settings The Parameters page provide the following dialog setting:
Angle range Lets you select the angle range of the APU in degree.
§ 360: The angle range is 360° and cannot be changed in ConfigurationDesk.
§ 720: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ Individual: 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°.
Initial position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Enable advanced ports The internal ports for the dSPACE Electric Motor HIL
Solution are available in the block only if you enable it.
I-FPGA Out (IOCNET) Block display If you select the I-FPGA Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_32_0
Data width: 1
232
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Port Description
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer, including
fixed-point to floating-point data conversion.
Available only if the Enable simulation data port is set on the Parameters page.
Data type: Double
Data width: 1 … 1024, depends on the Buffer size parameter.
Range: Single precision value range
233
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Sim Data New Simulates the update of data values provided by the Sim Data outport.
Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA Out 1 … 32 (IOCNET) The Parameters page provide the following dialog setting:
settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
234
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
I-FPGA64 Out (IOCNET) Block display If you select the I-FPGA64 Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_64_0
Data width: 1
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
235
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters page.
Data type: Double
Data width: 1 … 512, depends on the Buffer size parameter.
Range: Double precision value range
Sim_Data Simulates the update of data values provided by the Sim Data outport.
New Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
236
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 Out 1 … 32 The Parameters page provides the following dialog setting:
(IOCNET) settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the LED on the DS2655 FPGA Base Board.
Data type: UFix_1_0
Values:
§ 0: LED lights green.
§ 1: LED lights orange.
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used (=1).
237
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
User Clock Out 1 … 32 Block display If you select the User Clock Out channel from the channel list,
description the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
User Clock Clock signal for the clock domain used within the subsystem to which the block
belongs. For more information, refer to Using Multiple Clock Domains for FPGA
Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
User Clock Out 1 … 32 The Parameters page provides the following dialog setting:
settings
User clock period Lets you specify the expected clock period used within the
subsystem to which the block belongs. A common value for the clock period is in
the range 20 ns ... 4 ns (50 MHz ... 250 MHz).
The value is used during the build process when no user clock is available, for
example, to specify timing constraints.
User clock offline simulation period Lets you specify the clock period to be
used in offline simulation mode. The value must be greater than or equal to the
value of the User clock period parameter.
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
238
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655 FPGA Base Board Framework
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
239
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
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.
Int description Block display The figure below shows the block display with the optional
simulation port.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
240
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
241
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The DS6601 (KU035) FPGA Base Board framework provides the following access
types that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is read from
an IOCNET register. 256 registers are available with a data width of 32 bits
each and 256 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
242
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
243
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 242.
244
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
245
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 242.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point position>
246
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 242.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
247
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
248
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 242.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
249
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 242.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
250
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Purpose To specify the data format and specific settings for the selected access type.
Description The DS6601 (KU035) FPGA Base Board framework provides the following access
types that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is written
to an IOCNET register. 256 registers are available with a data width of 32
bits each and 256 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
251
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
§ Bus
If you select Bus as the access type, the data is written to an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
252
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 252.
253
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
254
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
255
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 252.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
256
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 252.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
257
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
258
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
Available only if the bus transfer mode is disabled on the Parameters page.
Data type: UFix_1_0
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 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 Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
259
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 252.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The Send_Ack, Read_Req, and Sim_Data ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a Simulink bus to be transmitted to the processor application.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req, you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send the data in the desired state, you can wait to finish
last data processing before acknowledging the data transfer.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
260
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Simulink bus
Read_Req Outputs a flag that indicates that a data transmission is requested from the
processor application. A data transmission is always requested at the beginning of a
task, before the processor application is computed.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request automatically triggers a data transmission.
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 252.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
261
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Reset bus topology Lets you clear the bus topology of the Data port.
Bus data transmission method Lets you select the method for transmitting
data to the processor application:
§ Synchronous to task method
Select this method to transmit data that is captured synchronously to the
processor task.
The FPGA application writes data to the swinging buffer when the processor
application makes a read request. After the data is written to the buffer, the
buffer swings and sends the data to the processor application.
§ Free running method
Select this method if the transmission time is crucial.
The FPGA application continuously writes data to the swinging buffer. A read
request of the processor application immediately transmits the last complete
data set of the swinging buffer to the processor application.
§ User acknowledged method
Select this method to acknowledge the data to be transmitted to the processor
application, for example, to trigger the processing of some data before it is
transmitted to the processor application.
The FPGA application writes data to the swinging buffer when you
acknowledge the data with the Send_Ack port. After the data is written to
the buffer, the buffer swings and sends the data to the processor application.
You must acknowledge each data transmission request so that data transfer is
synchronous to the processor task, as with the Synchronous to task method.
For instructions, refer to How to Configure the Bus Data Transmission Method
(FPGA Programming Blockset Guide ).
262
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Slave 1 … APU Slave 6
§ CN APP Status
§ I‑FPGA In 1 … 32 (IOCNET)
§ I‑FPGA64 In 1 … 32 (IOCNET)
§ IOCNET Global Time
§ Status In
§ Subsystem Clock
§ System Clock
§ System Signal Block
§ Temperature
§ Watchdog
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to simulation
data coming from a Simulink-based I/O environment model.
263
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
APU Slave 1 ... 6 description Block display If you select the APU Slave channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the port of the block for
digital input channels:
Port Description
Input
Sim Phi Read Simulates the APU bus value for Phi Read.
Available only if Enable simulation Phi Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The value range depends on the angle range of the simulated APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Sim Rev Read Simulates the hardware input value for Rev Read.
Available only if Enable simulation Rev Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The 37-bit range is -236 ... +236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Sim Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Angle Range Simulates the angle range of the APU bus.
Available only if Enable simulation Angle Range port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Output
264
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
Phi Read Outputs the angle value that APU Slave reads from the APU bus. The angle
value is independent from the angle range of the APU bus.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the angle range of the APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value for the APU bus.
Data type: Double
Data width: 1
The APU bus clock cycle is 8 ns. The 37-bit range is -236 ... 236 - 1.
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle rangeThe angle range is 0° ... 720°
§ 1 (high): 360 ° angle range
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Slave 1 ... 6 settings The Parameters page provides the following dialog setting:
Enable Phi Read HD port The Phi Read HD port is available in the block
only if you enable it.
Enable Delta Phi port The Delta Phi port is available in the block only if you
enable it.
Enable Delta Phi Enable port The Delta Phi Enable port is available in the
block only if you enable it.
Enable simulation Phi Read port The Sim Phi Read port is available in the
block only if you enable it.
Enable simulation Rev Read port The Sim Rev Read port is available in the
block only if you enable it.
Enable simulation Phi Read HD port The Sim Phi Read HD port is
available in the block only if you enable it.
265
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Enable simulation Delta Phi port The Sim Delta Phi port is available in the
block only if you enable it.
Enable simulation Delta Phi Enable port The Sim Delta Phi Enable port is
available in the block only if you enable it.
Enable simulation Angle Range port The Sim Angle Range port is
available in the block only if you enable it.
Angle range For the slave APU, you can inherit the angle range of the APU
bus or you specify a local angle range independent from the APU bus. The
following table shows you the possible combinations of angle range settings.
CN App Status description Block display If you select the CN App Status channel from the channel list,
the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Status Outputs the state of the application that is running on the computation node.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The application on the computation node is stopped.
§ 1: The application on the computation node is running.
266
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
I-FPGA In 1 … 32 (IOCNET) Block display If you select the I-FPGA In (IOCNET) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 1024
Range: Single precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 32-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_32_0
Data width: 1
267
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 263.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
268
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
I-FPGA64 In 1 … 32 (IOCNET) Block display If you select the I-FPGA64 Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 512
Range: Double precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 64-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_64_0
Data width: 1
269
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA64 In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 263.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
270
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
IOCNET Global Time Block display If you select the IOCNET Global Time channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Time Outputs the number of hardware ticks that occurred since the SCALEXIO system
power was switched to on. If you use a multiprocessor system, the value is set to
zero each time an application is reloaded and restarted.
Data type: 56 bit
Tick step-width: 8.5 ns
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
271
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Subsystem Clock description Block display If you select the Subsystem Clock channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Subsystem Outputs the clock signal of the selected subsystem clock domain. You specify the
Clock subsystem clock domain in the FPGA Setup block. Refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
System Clock description Block display If you select the System Clock channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
272
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
System Signal Block Block display If you select the System Signal Block channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
CN App Outputs the state of the processor application.
Status Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Opto_Ready Indicates whether the MGT module is ready for data exchange. The port changes
to 1 during the initialization phase, i.e., before the CN APP Status port changes
from stop to running. If no MGT module is connected to the dSPACE hardware, the
port value remains 0.
Data type: UFix_1_0
Data width: 1
273
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
If the MGT module is ready, the flag changes from 0 to 1:
§ 0: The MGT module is not ready.
§ 1: The MGT module is ready.
Temperature description Block display If you select the Temperature channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -274.00 °C … 230.00 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the FPGA's die temperature measurement.
Data type: Fix_20_10
Data width: 1
Value range: -274.00 °C … 230.00 °C
Temperature settings Only common dialog settings. Refer to Common settings on page 263.
274
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Watchdog description Block display If you select the Watchdog channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the watchdog input channel:
Port Description
Output
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
Tip
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
275
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
276
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Master 1 … APU Master 6
§ I-FPGA Out 1 … 32 (IOCNET)
§ I-FPGA64 Out 1 … 32 (IOCNET)
§ LED Out
§ User Clock Out 1 … 32
APU Master 1 … 6 description Block display If you select the APU Master channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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
Range: -1,200,000 °/s ... +1,200,000 °/s
It is not possible to exceed the range. The port is saturated at the higher or
lower limit.
Set Velocity Specifies the current value of Velocity as new velocity value.
The new value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: UFix_1_0
Data width: 1
To distribute and execute a new velocity value takes at least 10 μs,
depending on the IOCNET structure.
Output
Phi Read Outputs the angle counter value of the APU that the APU Master writes to
the APU bus. The step size of the angle counter is approximately 0.011°. The
step size is independent from the angle range.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
277
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data width: 1
The value range depends on the Angle range on the Parameters page.:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value that APU Master reads from
the APU bus.
Data type: Fix_37_0
Data width: 1
The 37-bit range is -236 ... 236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus. You set the angle range on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Busy Outputs whether APU Master is busy to set the last velocity value.
Data type: UFix_1_0
Data width: 1
If the Busy port is 1 (high), new velocity values cannot be set.
The Busy port stays active for at least 10 µs depending on the IOCNET
structure.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Master 1 … 6 settings The Parameters page provide the following dialog setting:
Angle range Lets you select the angle range of the APU in degree.
§ 360: The angle range is 360° and cannot be changed in ConfigurationDesk.
§ 720: The angle range is 720° and cannot be changed in ConfigurationDesk.
§ Individual: 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°.
Initial position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
278
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Enable advanced ports The internal ports for the dSPACE Electric Motor HIL
Solution are available in the block only if you enable it.
I-FPGA Out 1 … 32 (IOCNET) Block display If you select the I-FPGA Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_32_0
Data width: 1
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
279
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer, including
fixed-point to floating-point data conversion.
Available only if the Enable simulation data port is set on the Parameters page.
Data type: Double
Data width: 1 … 1024, depends on the Buffer size parameter.
Range: Single precision value range
Sim Data New Simulates the update of data values provided by the Sim Data outport.
Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
280
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA Out 1 … 32 (IOCNET) The Parameters page provide the following dialog setting:
settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
I-FPGA64 Out 1 … 32 Block display If you select the I-FPGA64 Out (IOCNET) channel from the
(IOCNET) description channel list, the block display changes. The simulation ports are displayed
optionally.
281
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_64_0
Data width: 1
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters page.
Data type: Double
282
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Port Description
Data width: 1 … 512, depends on the Buffer size parameter.
Range: Double precision value range
Sim_Data Simulates the update of data values provided by the Sim Data outport.
New Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 Out 1 … 32 The Parameters page provides the following dialog setting:
(IOCNET) settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
283
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the LED on the DS6601 FPGA Base Board.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: LED lights green.
§ 1: LED lights orange.
If the value of the Data port exceeds the specified data width, only the lowest bit is
used (=1).
User Clock Out 1 … 32 Block display If you select the User Clock Out channel from the channel list,
description the block display changes.
284
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
User Clock Clock signal for the clock domain used within the subsystem to which the block
belongs. For more information, refer to Using Multiple Clock Domains for FPGA
Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
User Clock Out 1 … 32 The Parameters page provides the following dialog setting:
settings
User clock period Lets you specify the expected clock period used within the
subsystem to which the block belongs. A common value for the clock period is in
the range 20 ns ... 4 ns (50 MHz ... 250 MHz).
The value is used during the build process when no user clock is available, for
example, to specify timing constraints.
User clock offline simulation period Lets you specify the clock period to be
used in offline simulation mode. The value must be greater than or equal to the
value of the User clock period parameter.
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
285
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
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.
286
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6601 FPGA Base Board Framework
Int description Block display The figure below shows the block display with the optional
simulation port.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
287
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
288
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Purpose To specify the data format and specific settings for the selected access type.
Description The DS6602 (KU15P) FPGA Base Board framework provides the following access
types that you can select on the Unit page of the block dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is read from
an IOCNET register. 256 registers are available with a data width of 32 bits
each and 256 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Because register groups can
be accessed only by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from
an IOCNET buffer. 32 buffers are available that provide elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
289
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits inheriting the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
290
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 within only one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 289.
291
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element you want to read in the buffer. The block requires 3 clock cycles
to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 within only one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
292
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 289.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point position>
293
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 within only one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 289.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
294
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an IOCNET data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an IOCNET buffer. The data format
depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 within only one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
295
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 289.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
296
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 289.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
297
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The DS6602 (KU15P) FPGA Base Board framework provides the following access
types that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 as the access type, the data is written
to an IOCNET register. 256 registers are available with a data width of 32
bits each and 256 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to
an IOCNET buffer. 32 buffers are available that provides elements with a data
width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
298
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
§ Bus
If you select Bus as the access type, the data is written to an IOCNET buffer.
The bus access type lets you use Simulink buses to model the data exchange
between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
299
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 299.
300
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
301
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
302
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 299.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
303
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET register. The data format
depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 299.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
304
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an IOCNET buffer. The data format
depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via IOCNET in the following
clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
305
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates an IOCNET data exchange including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
Available only if the bus transfer mode is disabled on the Parameters page.
Data type: UFix_1_0
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Read_Req Outputs a flag that indicates that a data transmission is requested via IOCNET. With
Read_Req and Send_Ack you can trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send current data, you can delay the transmission. After a
new data transmission is requested, you write the current data values to the buffer.
Then you must acknowledge the new data for transmission.
Available only if Enable Read_Req and Send_Ack ports for explicit data
transmit is set on the Parameters page. If Enable Read_Req and Send_Ack
ports for explicit data transmit is not set, each data transmission request will
instantly be acknowledged.
Data type: UFix_1_0
§ 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 Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
306
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 299.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Enable Read_Req and Send_Ack ports for explicit data transmit Lets you
add the Read_Req and Send_Ack ports to the block to trigger a processor
synchronous data exchange.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The Send_Ack, Read_Req, and Sim_Data ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a Simulink bus to be transmitted to the processor application.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Send_Ack Triggers a data transmission to IOCNET. With Send_Ack and Read_Req, you can
trigger a processor synchronous data exchange.
A data transmission is always requested at the beginning of a task, before the
processor model is computed. Each time a new data transmission is requested by
Read_Req, Send_Ack must explicitly acknowledge the Data values for transmission
within one task period. To send the data in the desired state, you can wait to finish
last data processing before acknowledging the data transfer.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
307
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data type: UFix_1_0
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
A data transmission request that is not acknowledged by Send Ack leads to task
overrun in the processor application. A task overrun will be logged as an I/O error in
the Messages page of the SCALEXIO system. The FPGA buffer that caused the task
overrun will also be logged.
Output
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Simulink bus
Read_Req Outputs a flag that indicates that a data transmission is requested from the
processor application. A data transmission is always requested at the beginning of a
task, before the processor application is computed.
Available only if the User acknowledged bus data transmission method is set on
the Parameters page. If you use subchannels, only the first subchannel displays the
Read_Req and Send_Ack ports.
Data type: UFix_1_0
§ 0: No data transmission is requested.
§ 1: A data transmission is requested. This value is set for one clock cycle.
A data transmission request automatically triggers a data transmission.
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 299.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
308
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Reset bus topology Lets you clear the bus topology of the Data port.
Bus data transmission method Lets you select the method for transmitting
data to the processor application:
§ Synchronous to task method
Select this method to transmit data that is captured synchronously to the
processor task.
The FPGA application writes data to the swinging buffer when the processor
application makes a read request. After the data is written to the buffer, the
buffer swings and sends the data to the processor application.
§ Free running method
Select this method if the transmission time is crucial.
The FPGA application continuously writes data to the swinging buffer. A read
request of the processor application immediately transmits the last complete
data set of the swinging buffer to the processor application.
§ User acknowledged method
Select this method to acknowledge the data to be transmitted to the processor
application, for example, to trigger the processing of some data before it is
transmitted to the processor application.
The FPGA application writes data to the swinging buffer when you
acknowledge the data with the Send_Ack port. After the data is written to
the buffer, the buffer swings and sends the data to the processor application.
You must acknowledge each data transmission request so that data transfer is
synchronous to the processor task, as with the Synchronous to task method.
For instructions, refer to How to Configure the Bus Data Transmission Method
(FPGA Programming Blockset Guide ).
309
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Others,
which you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Slave 1 … 6
§ CN APP Status
§ I‑FPGA In 1 … 32 (IOCNET)
§ I‑FPGA64 In 1 … 32 (IOCNET)
§ IOCNET Global Time
§ Status In
§ Subsystem Clock
§ System Clock
§ System Signal Block
§ Temperature
§ Watchdog
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to simulation
data coming from a Simulink-based I/O environment model.
310
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
APU Slave 1 ... 6 description Block display If you select the APU Slave channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the port of the block for
digital input channels:
Port Description
Input
Sim Phi Read Simulates the APU bus value for Phi Read.
Available only if Enable simulation Phi Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The value range depends on the angle range of the simulated APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Sim Rev Read Simulates the hardware input value for Rev Read.
Available only if Enable simulation Rev Read port is set on the
Parameters page.
Data type: Double
Data width: 1
The 37-bit range is -236 ... +236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Sim Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Sim Angle Range Simulates the angle range of the APU bus.
Available only if Enable simulation Angle Range port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Output
311
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Phi Read Outputs the angle value that APU Slave reads from the APU bus. The angle
value is independent from the angle range of the APU bus.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the angle range of the APU bus:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value for the APU bus.
Data type: Double
Data width: 1
The 37-bit range is -236 ... 236 - 1.
The APU bus clock cycle is 8 ns. It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle rangeThe angle range is 0° ... 720°
§ 1 (high): 360 ° angle range
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Slave 1 ... 6 settings The Parameters page provide the following dialog setting:
Enable Phi Read HD port The Phi Read HD port is available in the block
only if you enable it.
Enable Delta Phi port The Delta Phi port is available in the block only if you
enable it.
Enable Delta Phi Enable port The Delta Phi Enable port is available in the
block only if you enable it.
Enable simulation Phi Read port The Sim Phi Read port is available in the
block only if you enable it.
Enable simulation Rev Read port The Sim Rev Read port is available in the
block only if you enable it.
Enable simulation Phi Read HD port The Sim Phi Read HD port is
available in the block only if you enable it.
312
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Enable simulation Delta Phi port The Sim Delta Phi port is available in the
block only if you enable it.
Enable simulation Delta Phi Enable port The Sim Delta Phi Enable port is
available in the block only if you enable it.
Enable simulation Angle Range port The Sim Angle Range port is
available in the block only if you enable it.
Angle range For the slave APU, you can inherit the angle range of the APU
bus or you specify a local angle range independent from the APU bus. The
following table shows you the possible combinations of angle range settings.
CN App Status description Block display If you select the CN App Status channel from the channel list,
the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Status Outputs the state of the application that is running on the computation node.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The application on the computation node is stopped.
§ 1: The application on the computation node is running.
313
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I-FPGA In 1 … 32 (IOCNET) Block display If you select the I-FPGA In (IOCNET) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 1024
Range: Single precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 32-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_32_0
Data width: 1
314
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 310.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
315
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I-FPGA64 In 1 … 32 (IOCNET) Block display If you select the I-FPGA64 Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Address Specifies a data value in the IOCNET buffer to be read. The block requires
one clock cycle to update the value of the Data outport with the data value
of the specified address.
Data type: UFix_16_0
Data width: 1
The maximum address range depends on the Buffer size on the Parameters
page. The address range with valid data values can be derived from the value
of the Data Count port.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The
provided data values are converted to the data format of the Data port
and written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters
page.
Data type: Double
Data width: 1 … 512
Range: Double precision value range
Sim Data New Simulates the reception of new data values.
Available only if the Enable simulation data new port is set on the
Parameters page.
Data type: Double
Data width: 1
Values:
§ 0: The reception of new data values is not simulated.
§ 1: The Data New port changes from 0 to 1 for one clock cycle to indicate
new data values.
Output
Data Outputs a 64-bit raw data value from the specified address of the IOCNET
buffer.
Data type: UFix_64_0
Data width: 1
316
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Data New Outputs a flag that indicates the update of the Data port.
Data type: UFix_1_0
Data width: 1
If the flag changes from 0 to 1 and then to 0 again, the requested buffer
contains new values and is ready to be read. The flag is set to 1 within only
one clock cycle.
Data Count Outputs the number of elements in the current IOCNET buffer. You can use
the value to define the valid range for the Address port from 0 to (Data
Count -1).
Data type: UFix_16_0
Data width: 1
The maximum value range depends on the Buffer size on the Parameters
page.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 In 1 … 32 (IOCNET) The following dialog settings are specific for the I-FPGA64 In (IOCNET) I/O
settings function. For common dialog settings, refer to Common settings on page 310.
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.
Enable simulation data port Lets you enable an inport for offline simulation
data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an inport for the offline
simulating of new data values at the Data outport.
The Sim Data New inport is added to the block.
317
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
IOCNET Global Time Block display If you select the IOCNET Global Time channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the port of the block:
Port Description
Output
Time Outputs the number of hardware ticks that occurred since the SCALEXIO system
power was switched to on. If you use a multiprocessor system, the value is set to
zero each time an application is reloaded and restarted.
Data type: 56 bit
Tick step-width: 8.5 ns
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
318
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Subsystem Clock description Block display If you select the Subsysten Clock channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Subsystem Outputs the clock signal of the selected subsystem clock domain. You specify the
Clock subsystem clock domain in the FPGA Setup block. Refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
System Clock description Block display If you select the Systen Clock channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
319
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
System Signal Block Block display If you select the System Signal Block channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
CN App Outputs the state of the processor application.
Status Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Opto_Ready Indicates whether the MGT module is ready for data exchange. The port changes
to 1 during the initialization phase, i.e., before the CN APP Status port changes
from stop to running. If no MGT module is connected to the dSPACE hardware, the
port value remains 0.
Data type: UFix_1_0
Data width: 1
320
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
If the MGT module is ready, the flag changes from 0 to 1:
§ 0: The MGT module is not ready.
§ 1: The MGT module is ready.
Temperature description Block display If you select the Temperature channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -274.00 °C … 230.00 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the FPGA's die temperature measurement.
Data type: Fix_20_10
Data width: 1
Value range: -274.00 °C … 230.00 °C
Temperature settings Only common dialog settings. Refer to Common settings on page 310.
321
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Watchdog description Block display If you select the Watchdog channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the watchdog input channel:
Port Description
Output
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
Tip
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
322
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
323
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O types APU, IFPGA32, IFPGA64, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections determines the I/O functions that you can select:
§ APU Master 1 … APU Master 6
§ DDR4 32 Mode 1
§ DDR4 64 Mode 1
§ DDR4 32 Mode 2
§ DDR4 64 Mode 2
§ I-FPGA Out 1 … 32 (IOCNET)
§ I-FPGA64 Out 1 … 32 (IOCNET)
§ LED Out
§ User Clock Out 1 … 32
APU Master 1 … 6 description Block display If you select the APU Master channel from the channel list, the
block display changes. For example:
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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
Range: -1,200,000 °/s ... +1,200,000 °/s
It is not possible to exceed the range. The port is saturated at the higher or
lower limit.
Set Velocity Specifies the current value of Velocity as new velocity value.
The new value is set only if Set Velocity is 1 (high) and Busy is 0 (low).
Data type: UFix_1_0
Data width: 1
To distribute and execute a new velocity value takes at least 10 μs,
depending on the IOCNET structure.
Output
324
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Phi Read Outputs the angle counter value of the APU that the APU Master writes to
the APU bus. The step size of the angle counter is approximately 0.011°. The
step size is independent from the angle range.
Formula for angle calculation: alpha[°] = Phi Read * 720°/216
Data type: UFix_16_0
Data width: 1
The value range depends on the Angle range on the Parameters page:
§ 360 ° angle range: 0 ... 32767 (215-1)
§ 720 ° angle range: 0 ... 65535 (216-1)
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Rev Read Outputs the 37 bit total revolution (rev) value that APU Master reads from
the APU bus.
Data type: Fix_37_0
Data width: 1
The 37-bit range is -236 ... 236 - 1.
APU bus clock cycle: 8 ns
It is not possible to exceed the range.
Phi Read HD Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Delta Phi Enable Internal port - only for use in the dSPACE Electric Motor HIL Solution.
Angle Range Outputs the angle range of the APU bus. You set the angle range on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0 (low): 720 ° angle range
§ 1 (high): 360 ° angle range
Busy Outputs whether APU Master is busy to set the last velocity value.
Data type: UFix_1_0
Data width: 1
If the Busy port is 1 (high), new velocity values cannot be set.
The Busy port stays active for at least 10 µs depending on the IOCNET
structure.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
APU Master 1 … 6 settings The Parameters page provides the following dialog setting:
Angle range Lets you select the angle range of the APU in degree.
§ 360: The angle range is 360° and cannot be changed in ConfigurationDesk.
§ 720: The angle range is 720° and cannot be changed in ConfigurationDesk.
325
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
§ Individual: 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°.
Initial position Lets you set the initial APU master position in degree.
§ Value range: -1440° ... +1440°
Enable advanced ports The internal ports for the dSPACE Electric Motor HIL
Solution are available in the block only if you enable it.
DDR 4 32 Mode 1 description Block display If you select the DDR 4 32 Mode 1 channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Write Specifies a 32-bit data value to be written to the RAM. 16 ports specify 16 data
1 … 16 values. The Address port specifies the memory address to write the data values.
Data type: UFix_32_0
Data width: 1 per port
Address Specifies the first element in the RAM for the read/write access. The memory is
addressed 512 bit-wise to read/write 16 x 32-bit data values with the same address.
Data type: UFix_26_0
Data width: 1
Range: 0 … 67,108,863 (226-1)
326
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Enable Enables the RAM access.
Data type: UFix_1_0
Data width: 1
Values:
§ 1: Data values are written to the RAM or read from the RAM.
§ 0: No read/write access.
Direction Controls the direction of data access.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Write access
§ 1: Read access
Output
Data Read Outputs a 32-bit data value to be read from the RAM. 16 ports output 16 data
1 … 16 values. The Address port specifies the memory address to read the data values.
Data type: UFix_32_0
Data width: 1 per port
Busy Outputs a flag that indicates the state of the DDR4 RAM.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data valid Outputs a flag that indicates that the data values of the Data Read ports are valid.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be read by the FPAG application within the same clock cycle.
Init Done Outputs a flag that indicates that the RAM is initialized with specified data values.
For more information, refer to Modeling DDR4 RAM Access (FPGA Programming
Blockset Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
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.
327
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
DDR 4 32 Mode 1 settings The Parameters page provides the following dialog setting:
Simulation init variable Lets you enter a workspace variable that provides
values to initialize the RAM memory during offline simulation.
If the workspace variable does not provide a data value for each element of
the RAM memory, the remaining elements are initialized with 0. For more
information, refer to Initializing the DDR4 RAM of the DS6602 for Offline
Simulation (FPGA Programming Blockset Guide ).
DDR 4 64 Mode 1 description Block display If you select the DDR 4 64 Mode 1 channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Write Specifies a 64-bit data value to be written to the RAM. 8 ports specify 8 data values
1…8 at the same time. The Address port specifies the memory address to write the data
values.
Data type: UFix_64_0
Data width: 1 per port
Address Specifies the first element in the RAM for the read/write access. The memory is
addressed 512 bit-wise to read/write 8 x 64-bit data values with the same address.
Data type: UFix_26_0
Data width: 1
Range: 0 … 67,108,863 (226-1)
328
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Enable Enables the RAM access.
Data type: UFix_1_0
Data width: 1
Values:
§ 1: Data values are written to the RAM or read from the RAM.
§ 0: No read/write access.
Direction Controls the direction of data access.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Write access
§ 1: Read access
Output
Data Read Outputs a 32-bit data value to be read from the RAM. 8 ports output 8 data values
1 … 16 at the same time. The Address port specifies the memory address to read the data
values.
Data type: UFix_64_0
Data width: 1 per port
Busy Outputs a flag that indicates the state of the DDR4 RAM
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data valid Outputs a flag that indicates that the data values of the Data Read ports are valid.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be read by the FPAG application within the same clock cycle.
Init Done Outputs a flag that indicates that the RAM is initialized with specified data values.
For more information, refer to Modeling DDR4 RAM Access (FPGA Programming
Blockset Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
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.
329
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
DDR 4 64 Mode 1 settings The Parameters page provides the following dialog setting:
Simulation init variable Lets you enter a workspace variable that provides
values to initialize the RAM memory during offline simulation.
If the workspace variable does not provide a data value for each element of
the RAM memory, the remaining elements are initialized with 0. For more
information, refer to Initializing the DDR4 RAM of the DS6602 for Offline
Simulation (FPGA Programming Blockset Guide ).
DDR 4 32 Mode 2 description Block display If you select the DDR 4 32 Mode 2 channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Write Specifies a 32-bit data value to be written to the RAM. 8 ports specify 8 data values
A1 … A8 at the same time.
The Address A port specifies the memory address to write the data values.
Data type: UFix_32_0
Data width: 1 per port
330
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Data Write Specifies a 32-bit data value to be written to the RAM. 8 ports specify 8 data values
B1 … B8 at the same time.
The Address B port specifies the memory address to write the data values.
Data type: UFix_32_0
Data width: 1 per port
Address A Specifies the first element in the RAM for the read/write access of the Data
Write A/Data Read A ports. The memory is addressed 256 bit-wise to read/write
8 x 32-bit data values with the same address.
Data type: UFix_27_0
Data width: 1
Range: 0 … 134,217,727 (227-1)
Address B Specifies the first element in the RAM for the read/write access of the Data
Write B/Data Read B ports. The memory is addressed 256 bit-wise to read/write
8 x 32-bit data values with the same address.
Data type: UFix_27_0
Data width: 1
Range: 0 … 134,217,727 (227-1)
Enable Enables the RAM access.
Data type: UFix_1_0
Data width: 1
Values:
§ 1: Data values are written to the RAM or read from the RAM.
§ 0: No read/write access.
Direction Controls the direction of data access.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Write access
§ 1: Read access
Output
Data Read Outputs a 32-bit data value to be read from the RAM. 8 ports output 8 data values
A1 … A8 at the same time. The Address A port specifies the memory address to read the
data values.
Data type: UFix_32_0
Data width: 1 per port
Data Read Outputs a 32-bit data value to be read from the RAM. 8 ports output 8 data values
B1 … B8 at the same time. The Address B port specifies the memory address to read the
data values.
Data type: UFix_32_0
Data width: 1 per port
331
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Busy Outputs a flag that indicates the state of the DDR4 RAM.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data valid A Outputs a flag that indicates that the data values of the Data Read A ports are
valid
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be written within the same clock cycle.
Data valid B Outputs a flag that indicates that the data values of the Data Read B ports are valid
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be read by the FPAG application within the same clock cycle.
Init Done Outputs a flag that indicates that the RAM is initialized with specified data values.
For more information, refer to Modeling DDR4 RAM Access (FPGA Programming
Blockset Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
DDR 4 32 Mode 2 settings The Parameters page provides the following dialog setting:
Simulation init variable Lets you enter a workspace variable that provides
values to initialize the RAM memory during offline simulation.
332
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
If the workspace variable does not provide a data value for each element of
the RAM memory, the remaining elements are initialized with 0. For more
information, refer to Initializing the DDR4 RAM of the DS6602 for Offline
Simulation (FPGA Programming Blockset Guide ).
DDR 4 64 Mode 2 description Block display If you select the DDR 4 32 Mode 2 channel from the channel
list, the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Write Specifies a 64-bit data value to be written to the RAM. 4 ports specify 4 data values
A1 … A4 at the same time.
The Address A port specifies the memory address to write the data values.
Data type: UFix_64_0
Data width: 1 per port
Data Write Specifies a 64-bit data value to be written to the RAM. 4 ports specify 4 data values
B1 … B4 at the same time.
The Address B port specifies the memory address to write the data values.
Data type: UFix_64_0
Data width: 1 per port
Address A Specifies the first element in the RAM for the read/write access of the Data
Write A/Data Read A ports. The memory is addressed 256 bit-wise to read/write
4 x 64-bit data values with the same address.
Data type: UFix_27_0
Data width: 1
Range: 0 … 134,217,727 (227-1)
Address B Specifies the first element in the RAM for the read/write access of the Data
Write B/Data Read B ports. The memory is addressed 256 bit-wise to read/write
4 x 64-bit data values with the same address.
Data type: UFix_27_0
Data width: 1
Range: 0 … 134,217,727 (227-1)
333
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Enable Enables the RAM access.
Data type: UFix_1_0
Data width: 1
Values:
§ 1: Data values are written to the RAM or read from the RAM.
§ 0: No read/write access.
Direction Controls the direction of data access.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Write access
§ 1: Read access
Output
Data Read Outputs a 64-bit data value to be read from the RAM. 4 ports output 4 data values
A1 … A4 at the same time. The Address A port specifies the memory address to read the
data values.
Data type: UFix_64_0
Data width: 1 per port
Data Read Outputs a 64-bit data value to be read from the RAM. 4 ports output 4 data values
B1 … B4 at the same time. The Address B port specifies the memory address to read the
data values.
Data type: UFix_64_0
Data width: 1 per port
Busy Outputs a flag that indicates the state of the DDR4 RAM.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The DDR4 module is ready for new read/write operations.
§ 1: The DDR4 module is busy.
Data valid A Outputs a flag that indicates that the data values of the Data Read A ports are
valid.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be read by the FPAG application within the same clock cycle.
Data valid B Outputs a flag that indicates that the data values of the Data Read B ports are
valid.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The values are not valid.
§ 1: The values are valid. This value is set for one clock cycle. The data values must
be read by the FPAG application within the same clock cycle.
334
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Init Done Outputs a flag that indicates that the RAM is initialized with specified data values.
For more information, refer to Modeling DDR4 RAM Access (FPGA Programming
Blockset Guide ).
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The RAM is not initialized.
§ 1: The RAM is initialized.
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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
DDR 4 64 Mode 2 settings The Parameters page provides the following dialog setting:
Simulation init variable Lets you enter a workspace variable that provides
values to initialize the RAM memory during offline simulation.
If the workspace variable does not provide a data value for each element of
the RAM memory, the remaining elements are initialized with 0. For more
information, refer to Initializing the DDR4 RAM of the DS6602 for Offline
Simulation (FPGA Programming Blockset Guide ).
I-FPGA Out 1 … 32 (IOCNET) Block display If you select the I-FPGA Out (IOCNET) channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
335
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_32_0
Data width: 1
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer, including
fixed-point to floating-point data conversion.
Available only if the Enable simulation data port is set on the Parameters page.
336
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Data type: Double
Data width: 1 … 1024, depends on the Buffer size parameter.
Range: Single precision value range
Sim Data New Simulates the update of data values provided by the Sim Data outport.
Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Note
You can transfer any data type with a bit width of up to 32 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA Out 1 … 32 (IOCNET) The Parameters page provide the following dialog setting:
settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
337
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
I-FPGA64 Out 1 … 32 Block display If you select the I-FPGA64 Out (IOCNET) channel from the
(IOCNET) description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit raw data value to be written to an IOCNET buffer.
Data type: UFix_64_0
Data width: 1
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The Data value to be written is not stored in the IOCNET buffer.
§ 1: The Data value to be written is stored in the IOCNET buffer. The value of the
current clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
338
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
Port Description
Send Triggers a data transmission via IOCNET.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Data values are not acknowledged for transmission.
§ 1: Current Data values are acknowledged and will be transmitted via IOCNET.
Output
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs
when the new buffer is triggered for transmission and the old buffer was not sent
completely.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Data Simulates a data exchange between two FPGA boards via IOCNET. The port
provides the data values that are written to a simulated IOCNET buffer.
Available only if the Enable simulation data port is set on the Parameters page.
Data type: Double
Data width: 1 … 512, depends on the Buffer size parameter.
Range: Double precision value range
Sim_Data Simulates the update of data values provided by the Sim Data outport.
New Available only if the Enable simulation data new port is set on the Parameters
page.
Data type: Double
Data width: 1
A transition from 0 to 1 indicates that the Sim Data outport provides new data.
Sim Status Outputs information about the simulated data exchange on the Sim Data outport.
Available only if the Enable simulation status port is set on the Parameters
page.
Data type: UInt32
Data width: 3
§ Sim Status[0]: Contains the number of valid elements in the Sim Data vector.
§ Sim Status[1]: Indicates whether the current buffer contains new or old values.
The status is 1 if the buffer contains new values.
§ Sim Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Note
You can transfer any data type with a bit width of up to 64 Bit via inter-
FPGA over IOCNET. Use the Reinterpret block from the HDL library of the
AMD Vitis Model Composer to change your 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.
339
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I-FPGA64 Out 1 … 32 The Parameters page provides the following dialog setting:
(IOCNET) settings
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.
Enable simulation data port Lets you enable an outport for offline
simulation data.
The Sim Data inport is added to the block.
Enable simulation data new port Lets you enable an outport for the offline
simulating of new data values at the Sim Data inport.
The Sim Data New outport is added to the block.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enabled a
simulation port. The Sim Status outport is added to the block.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the LED on the DS6602 FPGA Base Board.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: LED is lit in green.
§ 1: LED is lit in orange.
If the value of the Data inport exceeds the specified data width, only the lowest bit
is used (=1).
340
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
User Clock Out 1 … 32 Block display If you select the User Clock Out channel from the channel list,
description the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
User Clock Clock signal for the clock domain used within the subsystem to which the block
belongs. For more information, refer to Using Multiple Clock Domains for FPGA
Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
User Clock Out 1 … 32 The Parameters page provides the following dialog setting:
settings
User clock period Lets you specify the expected clock period used within the
subsystem to which the block belongs. A common value for the clock period is in
the range 20 ns ... 4 ns (50 MHz ... 250 MHz).
The value is used during the build process when no user clock is available, for
example, to specify timing constraints.
User clock offline simulation period Lets you specify the clock period to be
used in offline simulation mode. The value must be greater than or equal to the
value of the User clock period parameter.
341
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
342
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6602 FPGA Base Board Framework
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.
Int description Block display The figure below shows the block display with the optional
simulation port.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
343
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
344
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Description The framework provides the I/O types Digital_Mod_x and Analog_Mod_x, which
you can select on the Unit page of the block. The module number <x> depends
on the slot that the I/O module is connected to.
The number of the available physical connections on the DS2655M1 I/O Module
determines the I/O functions that you can select:
§ Analog In - Ch: 11 … Analog In - Ch: 15
§ Digital In - Ch: 1 … Digital In - Ch: 10
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Analog In description Block display If you select an Analog In channel from the channel list, the
block display changes. The simulation port is displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
The value range corresponds to the settings of the Input range parameter in V.
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
345
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data Outputs the current result of the analog input channel.
Data type: Fix_16_0 1)
Data width: 1
Update rate: 2 Msps
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. The
following example shows a logic for the Data New ports to use synchronous
analog input signals of different I/O modules.
346
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
If the hardware signal or the value of the Sim Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the corresponding minimum or
maximum value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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 I/O Module.
Analog In settings The following settings on the Parameters page are specific to the Analog In I/O
function. For common dialog settings, refer to Common settings on page 345.
Input range Lets you specify the input voltage range that can be converted
from analog to digital for the chosen ADC channel. Input voltages outside the
specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Scaling Lets you select whether the I/O function scales the measuring results
of the A/D converter to mV.
§ mV
To output the measuring results in mV. The valid value range corresponds to
the settings of the Input range parameter in mV.
§ Bit
To output the raw measuring results as a signed Bit value.
The value range is -8192 … +8191.
Digital In description Block display If you select a Digital In channel from the channel list, the block
display changes. The Sim Data port and the threshold voltage configuration
ports are displayed optionally.
347
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Threshold Voltage Specifies a trigger level in mV. A new threshold voltage level takes effect only
after the Threshold Set port rises from 0 to 1.
Available only if Enable Threshold Voltage configuration ports is set on
the Parameters page.
Data type: UFix_14_0
Data width: 1
Range: 0 ... 10500 mV
Update rate: FPGA clock frequency
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Threshold Set Lets you set the trigger level as specified by the Threshold Voltage port.
A new setting overwrites the settings of Threshold init voltage on the
Parameters page.
Available only if Enable Threshold Voltage configuration ports is set on
the Parameters page.
Data type: UFix_1_0
Range:
§ No transition, or a 1 to 0 transition: A new voltage setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the output channel. The
Threshold Ack port outputs a flag if the channel is up-to-date.
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.
Sim Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: 0 mV ... 10500 mV
Output
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
Data width: 1
348
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Port Description
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: FPGA clock frequency
If the hardware signal or the value of the Sim Data inport exceeds the
minimum or maximum threshold voltage, it is saturated to the corresponding
minimum or maximum value.
For information on the electrical characteristics of the DS2655M1 I/O Module,
refer to Data Sheet of the DS2655M1 Multi-I/O Module (SCALEXIO Hardware
Installation and Configuration ).
Threshold Ack Outputs a flag that indicates whether the threshold voltage level is up-to-date.
Available only if Enable Threshold Voltage configuration ports is set on
the Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The channel currently updates its threshold voltage.
§ 1: The channel is up-to-date and a new configuration can be set.
Note
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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 I/O Module.
349
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Digital In settings The following settings on the Parameters page are specific to the Digital In I/O
function. For common dialog settings, refer to Common settings on page 345.
Threshold init voltage Lets you specify the voltage value that is used for
the threshold in mV. Range: 0 mV ... 10500 mV in 100 mV steps. This electrical
interface setting can be changed in ConfigurationDesk.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
350
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital In settings The following settings on the Scaling page are specific to the Digital In I/O
function.
Invert input polarity Lets you adapt the measured values to the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Analog In settings The following settings on the Scaling page are specific to the Analog In I/O
function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
351
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
352
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
353
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O types Digital_Mod_x and Analog_Mod_x, which
you can select on the Unit page of the block. The module number <x> depends
on the slot that the I/O module is connected to.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
Analog Out description Block display If you select an Analog Out channel from the channel list, the
block display changes. The simulation port and the Tx Ready port are displayed
optionally.
354
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
I/O characteristics The following table describes the ports of the block for
analog output channels:
Port Description
Input
Data Outputs a voltage signal in the specified range.
Data type: Fix_15_0 1)
Data width: 1
Mapping: see table below
Update rate: 7.8125 MSPS
Output
Sim Data Analog output data signal. The output is fixed to -10 V … +10 V.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range:
§ -10000 … +10000 mV
§ -8192 … +8191
TX Ready Outputs a flag that indicates that the I/O channel of the DS2655M1 Multi-I/O
Module is ready to be updated. The minimum update period is 96 ns. When you
update data values only within the time slot for updating the output signal, the
output signal has no jitter. The time slot begins two FPGA clock cycles before the
flag is set to high and ends after three clock cycles.
Time slot for signal
updating without jitter
FPGA clock
TX Ready
Note
355
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Data type: UFix_1_0
Data width: 1
1) You can change the data type of the Data port with the Scaling format parameter
on the Scaling page. Refer to How to Change the Data Type of Analog Signals (FPGA
Programming Blockset Guide ).
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
Analog Out settings The following settings on the Parameters page are specific to the Analog
Out I/O function. For common dialog settings, refer to Common settings on
page 354.
Enable Tx Ready port Lets you enable an outport to indicate that the analog
output channel is ready to be updated. The Tx Ready port is added to the block.
Output range Displays the output range of the analog output channel.
Digital InOut description Block display If you select a Digital InOut channel from the channel list, the
block display changes. The simulation ports, the threshold voltage configuration
ports, and the Tx Ready port are displayed optionally.
356
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Out Outputs a signal in the specified range.
Data Type: UFix_1_0
Data width: 1
If driven with 0, the hardware outputs a low-level signal at the I/O
connector. If driven with 1, the hardware outputs a high-level signal.
Update rate: 15.625 MHz
For information on the electrical characteristics of the DS2655M1 Multi-
I/O Module, refer to Data Sheet of the DS2655M1 Multi-I/O Module
(SCALEXIO Hardware Installation and Configuration ).
Direction Specifies the direction of the digital signal.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: digital in
§ 1: digital out
Update rate: 125 MHz
In Threshold Voltage Specifies a trigger level in mV. A new threshold voltage level takes effect
only after the In Threshold Set port rises from 0 to 1.
Available only if Enable In Threshold Voltage configuration ports is set
on the Parameters page.
Data Type: UFix_14_0
Data width: 1
Range: 0 mV … +10500 mV in 100 mV steps
Update rate: 125 MHz
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
In Threshold Set Lets you set the trigger level as specified by the In Threshold Voltage
port. A new setting overwrites the settings of Threshold init voltage on
the Parameters page.
Available only if Enable In Threshold Voltage ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
357
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Values:
§ No transition, or a 1 to 0 transition: A new voltage setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the output channel. The
Threshold Ack port outputs a flag if the channel is up-to-date.
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.
Sim Data In Simulates an input signal in the same range specified for the real input
signal.
Available only if Enable digital in simulation port is set on the
Parameters page.
Data type: Double
Data width: 1
Threshold level: 0 mV … 10500 mV
Output
Data In Outputs a signal that is 0 if the hardware input is driven with a voltage
lower than the threshold voltage.
Data Type: UFix_1_0
Data width: 1
For information on the electrical characteristics of the DS2655M1 Multi-
I/O Module, refer to Data Sheet of the DS2655M1 Multi-I/O Module
(SCALEXIO Hardware Installation and Configuration ).
Sim Data Out Simulates an output signal in the same range as that specified for the real
output signal.
Available only if Enable digital out simulation port is set on the
Parameters page.
Data type: Double
Data width: 1
Output voltage: 0 V … 5 V or 0 V … 3.3 V
Update rate: 125 MHz
Threshold Ack Outputs a flag that indicates changes of the threshold voltage level
configuration.
Available only if Enable In Threshold Voltage configuration ports is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one
clock cycle.
Tx Ready Outputs a flag that indicates that the I/O channel of the DS2655M1 Multi-
I/O Module is ready to be updated. The minimum update period is 96 ns.
When you update data values only within the time slot for updating the
output signal, the output signal has no jitter. The time slot begins two
FPGA clock cycles before the flag is set to high and ends after three clock
cycles.
358
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Port Description
Time slot for signal
updating without jitter
FPGA clock
TX Ready
Note
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.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use the DS2655M1
I/O Module framework for digital input/output channels. The signals are available
at the female 50-pin Sub-D I/O connector of the respective DS2655M1 Multi-I/O
Module.
359
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Digital InOut settings The following settings on the Parameters page are specific to the Digital InOut
I/O function.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
360
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Digital In threshold init voltage (0 mV ... +10500 mV) Lets you set the
initial threshold voltage for a digital input signal in 100 mV steps. This electrical
interface setting can be changed in ConfigurationDesk.
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out outport is added to the block to connect it
to a Simulink-based I/O environment model.
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
Enable Tx Ready port Lets you enable an outport to indicate that the analog
output channel is ready to be updated. The Tx Ready port is added to the block.
Digital Out description Block display If you select a Digital Out channel from the channel list, the
block display changes. The Sim Data port is displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Outputs a signal in the specified range.
Data Type: UFix_1_0
Data width: 1
If driven with 0, the hardware outputs a low-level signal at the I/O connector. If
driven with 1, the hardware outputs a high-level signal.
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest bit
is used.
Note: The frequency that can be generated is smaller than the update rate. For
information on the electrical characteristics of the DS2655M1 Multi-I/O Module,
361
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
refer to Data Sheet of the DS2655M1 Multi-I/O Module (SCALEXIO Hardware
Installation and Configuration ).
Output
Sim Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Data Type: Double
Data width: 1
Output voltage: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
362
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Digital Out settings The following settings on the Parameters page are specific to the Digital
Out I/O function. For common dialog settings, refer to Common settings on
page 354.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
363
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital Out settings The following settings on the Scaling page are specific to the Digital Out I/O
function.
Digital InOut settings The following settings on the Scaling page are specific to the Digital InOut I/O
function.
Invert input polarity Lets you invert the measured values of the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If driven with 1, the hardware outputs a high-level signal.
If driven with 0, the hardware outputs a low-level signal.
§ Enabled:
If driven with 1, the hardware outputs a low-level signal.
If driven with 0, the hardware outputs a high-level signal.
364
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Analog Out settings The following settings on the Scaling page are specific to the Analog Out I/O
function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
365
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
366
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M1 I/O Module Framework
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
367
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
368
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Description The framework provides the I/O type Digital_Mod_<x>, which you can select on
the Unit page of the block. The module number <x> depends on the slot that
the I/O module is connected to.
The number of the available channels on the selected DS2655M2 Digital I/O
Module determines the I/O functions that you can select:
§ Digital In - Ch: 1, … , Digital In - Ch: 32
§ RS232 Rx - Ch: 2, ... , RS232 Rx - Ch: 30
§ RS485 Rx - Ch: 1-2, ... , RS485 Rx - Ch: 29-30
Channel dependencies The I/O functions of the DS2655M2 I/O Module framework share the I/O
channels that provide the I/O functionality. The DS2655M2 Digital I/O Module
provides 32 I/O channels. Some channels provide only specific I/O functionalities
and some I/O functions use more than one I/O channel. These channel
dependencies limit the number of available I/O functions.
For an overview of the DS2655M2 Digital I/O Module, refer to DS2655M2 Digital
I/O Module (SCALEXIO Hardware Installation and Configuration ).
For details on the signal mapping, refer to Signal Mapping of the DS2655M2
Digital I/O Module (SCALEXIO Hardware Installation and Configuration ).
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Digital In description Block display If you select a Digital In channel from the channel list, the
block display changes. Except for the outport Data, all the ports are displayed
optionally.
369
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Threshold Voltage Specifies a trigger level in mV. A new threshold voltage level takes effect only
after the Threshold Set port rises from 0 to 1.
Available only if Enable Threshold Voltage ports is set on the Parameters
page.
Data type: UFix_14_0
Data width: 1
Range: 0 mV ... 10500 mV
Update rate: FPGA clock frequency, max 250 MHz.
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Threshold Set Lets you set the trigger level as specified by the Threshold Voltage port.
A new setting overwrites the settings of Threshold init voltage on the
Parameters page.
Available only if Enable Threshold Voltage ports is set on the Parameters
page.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new voltage setting does not take
effect.
§ 0 to 1 transition: If the Threshold Set port rises from 0 to 1, the new
settings are sent to the output channel. The Threshold Ack port outputs a
flag if the channel is up-to-date.
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.
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model. The threshold voltage determines a logical 0 or 1 as
output of the Data port.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V ... 10.5 V
Range exceeding is possible and will be saturated to the minimum or
maximum values.
Output
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.
370
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Port Description
Update rate: FPGA clock frequency, max 250 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 ).
Threshold Ack Outputs a flag that acknowledges a change of the threshold voltage level
configuration.
Available only if Enable Threshold Voltage ports is set on the Parameters
page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one
clock cycle.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
371
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Digital In settings The following settings on the Parameters page are specific to the Digital In I/O
function. For common dialog settings, refer to Common settings on page 369.
Threshold init voltage Lets you specify the voltage value that is used for
the threshold in mV. Range: 0 mV ... 10500 mV in 100 mV steps. This electrical
interface setting can be changed in ConfigurationDesk.
RS232 Rx description Block display If you select an RS232 Rx channel from the channel list, the
block display changes. The simulation port is displayed optionally.
372
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: –5.5 V ... +5.5 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
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 ).
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
373
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO 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 ).
RS232 Rx settings Only common dialog settings. Refer to Common settings on page 369.
RS485 Rx description Block display If you select an RS485 Rx channel from the channel list, the
block display changes. Except for the Data outport, all the ports are displayed
optionally.
Network mode With the RS485 Rx channel you can receive RS485 data
in simplex mode. To connect to RS485 networks in full-duplex mode, use the
corresponding RS485 Tx I/O function. For details on the RS485 Tx I/O function,
refer to RS485 Tx description on page 394.
To connect to a RS485 network in half-duplex mode, use the RS485 Rx/Tx I/O
function. For details, refer to RS485 Rx/Tx description on page 390.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Termination Specifies whether the termination of the signal lines is enabled or disabled. A new
termination configuration takes effect only after the Termination Set port rises
from 0 to 1.
Available only if Enable RS485 Termination configuration ports is set on the
Parameters page.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No internal termination.
§ 1: A 120 Ω resistor between the signal lines terminates the RS485 signal.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
374
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Port Description
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: -5.5 V ... +5.5 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
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).
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
375
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
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 ).
RS485 Rx settings The following settings on the Parameters page are specific to the RS485 Rx I/O
function. For common dialog settings, refer to Common settings on page 369.
376
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Purpose To specify the inverting settings for the selected I/O function.
Description You can invert digital I/O signals and UART signals of the selected I/O function
if you select the Enable FPGA test access and scaling parameter on the FPGA
Access page of the FPGA_SETUP_BL block dialog. The possible modifications
depend on the selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital In settings The following settings on the Scaling page are specific to the Digital In I/O
function.
Invert input polarity Lets you adapt the measured values to the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
RS232 Rx settings The following settings on the Scaling page are specific to the RS232 Rx I/O
function.
377
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
RS485 Rx settings The following settings on the Scaling page are specific to the RS485 Rx I/O
function.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
378
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Description The framework provides the I/O type Digital_Mod_<x>, which you can select on
the Unit page of the block. The module number <x> depends on the slot that
the I/O module is connected to.
The number of the available channels on the selected DS2655M2 Digital I/O
Module determines the I/O functions that you can select:
§ Digital Out - Ch: 1 … Digital Out - Ch: 32
§ Digital Out-Z - Ch: 1-2 … Digital Out-Z - Ch: 31-32
§ RS232 Tx - Ch: 1 ... RS232 Tx - Ch: 29
§ RS485 Rx/Tx - Ch: 1-3 ... RS485 Rx/Tx - Ch: 29-31
§ RS485 Tx - Ch: 1-2 ... RS485 Tx - Ch: 29-30
Channel dependencies The I/O functions of the DS2655M2 I/O Module framework share the I/O
channels that provide the I/O functionality. The DS2655M2 Digital I/O Module
provides 32 I/O channels. Some channels provide only specific I/O functionalities
and some I/O functions use more than one I/O channel. These channel
dependencies limit the number of available I/O functions.
For an overview of the DS2655M2 Digital I/O Module, refer to DS2655M2 Digital
I/O Module (SCALEXIO Hardware Installation and Configuration ).
For details on the signal mapping, refer to Signal Mapping of the DS2655M2
Digital I/O Module (SCALEXIO Hardware Installation and Configuration ).
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
Digital Out description Block display If you select an Digital Out channel from the channel list, the
block display changes. Except for the inport Data, all the ports are displayed
optionally.
379
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Outputs a signal in the specified range.
To set the voltage level, use the High supply on the Parameters page or the
HighSupply Set inport.
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: 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.
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 ).
Mode Specifies the digital output mode. A new output mode takes effect only after the
Mode Set port rises from 0 to 1.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data Type: UFix_3_0
Data width: 1
Values:
§ 5: Enables the low-side switch that drives a load connected to VCC.
§ 6: Enables the high-side switch that drives a load connected to GND.
§ 7: Enables a push-pull switch that drives a load with VCC and GND.
Mode Set Sets the output mode as specified by the Mode port. A new setting overwrites the
settings of the Output Mode on the Parameters page.
Available only if the Enable Output Mode configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new mode does not take effect.
§ 0 to 1 transition: New settings are sent to the output channel. The Mode Ack
port outputs a flag if the channel is up-to-date.
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.
DriveCfg Specifies the driver configuration. A new configuration takes effect only after the
DriveCfg Set port rises from 0 to 1.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
380
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Port Description
Data width: 1
Values:
§ 0: A serial 68 Ω resistor terminates the output signal.
§ 1: The output signal is driven directly without a termination.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
DriveCfg Set Sets the configuration as specified by the DriveCfg port. A new setting overwrites
the settings of the Drive Config on the Parameters page.
Available only if the Enable Drive Config configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new configuration does not take effect.
§ 0 to 1 transition: The output channel begins to update its channel. The
DriveCfg Ack port outputs a flag if the channel is up-to-date.
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.
HighSupply Specifies the supply voltage to output high-level signals.
A new supply voltage takes effect only after the HighSupply Set port rises from 0
to 1.
Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The supply voltage for high signals is 5 V.
§ 1: The supply voltage for high signals is 3.3 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
HighSupply Sets the supply voltage to the output high-level signal as specified by the
Set HighSupply port. A new setting overwrites the setting of the High Supply
parameter on the Parameters page.
Available only if Enable High Supply configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new supply voltage does not take effect.
§ 0 to 1 transition: The new setting is sent to the output channel. The
HighSupply Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Output
381
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Mode Ack Outputs a flag that acknowledges a change of the output mode.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
DriveCfg Ack Outputs a flag that acknowledges a change of the driver configuration.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
HighSupply Outputs a flag that acknowledges a change of the high supply configuration.
Ack Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable simulation port property is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
382
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Digital Out settings The following settings on the Parameters page are specific to the Digital
Out I/O function. For common dialog settings, refer to Common settings on
page 379.
383
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
§ 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.
§ 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.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Enable Output Mode configuration ports Lets you enable ports to set the
digital output mode. The ports can overwrite the settings of the Output Mode
parameter.
The following ports are added to the block:
§ Mode
§ Mode Set
§ Mode Ack
Enable High Supply configuration ports Lets you enable ports to set the
voltage level of the high output signal. The ports can overwrite the settings of
the High supply parameter.
The following ports are added to the block:
§ HighSupply Data
§ HighSupply Set
§ HighSupply Ack
Digital Out-Z description Block display If you select an Digital Out-Z channel from the channel list, the
block display changes. Except for the Data and Enable inports, all the other
ports are displayed optionally.
384
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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 on the Parameters page
or the High Supply inport .
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: 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.
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 ).
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.
DriveCfg Specifies the driver configuration. A new configuration takes effect only after the
DriveCfg Set port rises from 0 to 1.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: A serial 68 Ω resistor terminates the output signal.
§ 1: The output signal is driven directly without a termination.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
385
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
DriveCfg Set Sets the configuration as specified by the DriveCfg port. A new setting overwrites
the settings of the Drive Config on the Parameters page.
Available only if the Enable Drive Config configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new configuration does not take effect.
§ 0 to 1 transition: The output channel begins to update its channel. The
DriveCfg Ack port outputs a flag if the channel is up-to-date.
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.
HighSupply Specifies the supply voltage to output high-level signals.
A new supply voltage takes effect only after the HighSupply Set port rises from 0
to 1.
Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The supply voltage for high signals is 5 V.
§ 1: The supply voltage for high signals is 3.3 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
HighSupply Sets the supply voltage to the output high-level signal as specified by the
Set HighSupply port. A new setting overwrites the setting of the High Supply
parameter on the Parameters page.
Available only if Enable High Supply configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new supply voltage does not take effect.
§ 0 to 1 transition: The new setting is sent to the output channel. The
HighSupply Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Output
DriveCfg Ack Outputs a flag that acknowledges a change of the driver configuration.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
386
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Port Description
HighSupply Outputs a flag that acknowledges a change of the high supply configuration.
Ack Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable simulation port property is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
387
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO 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 ).
Digital Out-Z settings The following settings on the Parameters page are specific to the Digital
Out‑Z I/O function. For common dialog settings, refer to Common settings on
page 379.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
388
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Enable High Supply configuration ports Lets you enable ports to set the
voltage level of the high output signal. The ports can overwrite the settings of
the High supply parameter.
The following ports are added to the block:
§ HighSupply Data
§ HighSupply Set
§ HighSupply Ack
RS232 Tx description Block display If you select an RS232 Tx channel from the channel list, the
block display changes. The simulation port is displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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 ).
Output
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: –5.5 V ... +5.5 V
389
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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 settings Only common dialog settings. Refer to Common settings on page 379.
RS485 Rx/Tx description Block display If you select an RS485 Rx/Tx channel from the channel list,
the block display changes. The simulation and termination ports are displayed
optionally.
Network mode With the RS485 Rx/Tx channel you can receive data from a
RS485 network in half-duplex mode.
390
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
Tx Enable Enables the output of data values to the RS485 network 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 (tri-state). The Rx Data outport
can output received data from the RS485 network.
§ 1: The output is enabled and transmits the data values of the Tx Data inport.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Specifies whether the signals lines are terminated. A new configuration takes effect
only after the Termination Set port rises from 0 to 1.
Available only if the Enable RS485 Termination configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The signal lines are driven directly without a termination.
§ 1: An internal 120 Ω resistor terminates the signal lines.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
391
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Rx Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if the Enable Rx Data simulation port is set on the Parameters
page.
Data type: Double
Data width: 1
Range: –5.5 V ... +5.5 V
Range exceeding is possible (using input bit widths > 1) and will be saturated to the
minimum or maximum values.
Output
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).
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Tx Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable Tx Data simulation configuration port is set on the
Parameters page.
Data type: Double
Data width: 1
Range: –5.5 V ... +5.5 V
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
392
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2
I/O Module framework for RS485 Rx/Tx channels. The signals are available at
the female 50-pin Sub-D I/O connector of the respective DS2655M2 Digital I/O
Module.
393
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
RS485 Rx/Tx settings The following settings on the Parameters page are specific to the RS485 Rx/Tx
I/O function.
Enable Rx Data simulation port Lets you enable an inport for offline
simulation data. The Sim Rx Data inport is added to the block to connect it
to a Simulink-based I/O environment model.
Enable Tx Data simulation port Lets you enable an outport for offline
simulation data. The Sim Tx Data outport is added to the block to connect it to
a Simulink-based I/O environment model.
RS485 Tx description Block display If you select an RS485 Tx channel from the channel list,
the block display changes. The simulation and termination ports are displayed
optionally.
Network mode With the RS485 Tx channel you can transmit data to a RS485
network in simplex mode. To connect to a RS485 network in full-duplex mode,
also use the corresponding RS485 Rx I/O function. For details on the RS485 Rx
I/O function, refer to RS485 Rx description on page 374.
To connect to a RS485 network in half-duplex mode, use the RS485 Rx/Tx I/O
function. For details, refer to RS485 Rx/Tx description on page 390.
394
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
Enable 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.
Termination Specifies whether the signals lines are terminated. A new configuration takes effect
only after the Termination Set port rises from 0 to 1.
Available only if the Enable RS485 Termination configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The signal lines are driven directly without a termination.
§ 1: An internal 120 Ω resistor terminates the signal lines.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
395
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Output
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: –5.5 V ... +5.5 V
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS2655M2
I/O Module framework for RS485 Tx channels. The signals are available at the
female 50-pin Sub-D I/O connector of the respective DS2655M2 Digital I/O
Module.
396
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for 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 ).
RS485 Tx settings The following settings on the Parameters page are specific to the RS485 Tx I/O
function. For common dialog settings, refer to Common settings on page 379.
Purpose To specify the inverting settings for the selected I/O function.
Description You can invert digital I/O signals and UART signals of the selected I/O function
if you select the Enable FPGA test access and scaling parameter on the FPGA
Access page of the FPGA_SETUP_BL block dialog. The possible modifications
depend on the selected I/O function.
397
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital Out settings The following settings on the Scaling page are specific to the Digital Out I/O
function.
Digital Out‑Z settings The following settings on the Scaling page are specific to the Digital Out‑Z I/O
function.
RS232 TX settings The following settings on the Scaling page are specific to the RS232 TX I/O
function.
RS485 Rx/Tx settings The following settings on the Scaling page are specific to the RS485 Rx/Tx I/O
function.
398
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS2655M2 I/O Module Framework
Invert input polarity Lets you adapt the electrical output signal:
§ Disabled:
If the input voltage is negative (<0 V), the Rx Data port outputs a 0.
If the input voltage is positive (≥0 V), the Rx Data port outputs a 1.
§ Enabled:
If the input voltage is negative (<0 V), the Rx Data port outputs a 1.
If the input voltage is positive (≥0 V), the Rx Data port outputs a 0.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If the Tx Data port is driven with 1, the I/O function sets the output to the
high voltage level.
If the Tx Data port is driven with 0, the I/O function sets the output to the low
voltage level.
§ Enabled:
If the Tx Data port is driven with 1, the I/O function sets the output to the low
voltage level.
If the Tx Data port is driven with 0, the I/O function sets the output to the
high voltage level.
RS485 Tx settings The following settings on the Scaling page are specific to the RS485 Tx I/O
function.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
399
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
400
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Description The framework provides the I/O types Digital_Mod_<x> and Analog_Mod_<x>,
which you can select on the Unit page of the block. The module number <x>
depends on the slot that the I/O module is connected to.
The number of the available channels on the selected DS6651 Multi-I/O Module
determines the I/O functions that you can select:
§ Analog In - Ch: 23, … , Analog In - Ch: 26
§ Analog In‑L - Ch: 27 and Analog In‑L - Ch: 28
§ Digital In - Ch: 1, … , Digital In - Ch: 16
§ RS485 Rx - Ch: 1-2, ... , RS485 Rx - Ch: 15-16
Digital channel dependencies 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 ).
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Analog In description Block display If you select an Analog In channel from the channel list, the
block display changes. The simulation port is displayed optionally.
401
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
The value range corresponds to the settings of the Input range parameter in V.
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
Data Outputs the measured values of the 16-bit AD converter.
Data type: Fix_22_5 1)
Data width: 1
The value range of the Data outport depends on the setting of the Scaling
parameter on the Parameters page. Refer to Scaling on page 403.
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. The
following example shows a logic for the Data New ports to use synchronous
analog input signals of different I/O modules.
402
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
Analog In settings The following settings on the Parameters page are specific to the Analog In I/O
function. For common dialog settings, refer to Common settings on page 401.
Input range Lets you specify the input voltage range that can be converted
from analog to digital for the chosen ADC channel. Input voltages outside the
specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Scaling Lets you select whether the I/O function scales the measuring results
of the A/D converter to mV.
§ 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.
§ Bit
To output the raw measuring results as a signed Bit value.
The value range is -32,768 … +32,767.
403
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
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.
§ Eliminate the fraction bits and the most significant bit with the Slice
block from the HDL library of the AMD® VitisTM Model Composer.
§ Reinterpret the UFix_16_0 value of the Slice block to Fix_16_0 with the
AMD Reinterpret block.
In hardware this reduction costs nothing.
Trigger mode Lets you select the trigger mode and source for sampling the
analog input voltage.
§ Free running
The ADC samples the input voltage with a fixed sample period that is set by
the Sample period parameter.
§ Trigger 1 or Trigger 2
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger description on page 445.
§ Digital In <x> (<edge type>, <filter type>)
The selected digital input channel triggers the sampling of the analog input
signal:
§ <x>: Indicates the channel number of the digital input channel.
§ <edge type>: Indicates which edge of a digital input signal triggers the
ADC. A rising edge is a low to high transition, a falling edge is a high to low
transition.
§ <filter type>: Indicates whether the digital signal is filtered. 8 ns is the time
constant of the digital low-pass filter.
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.
Analog In‑L description Block display If you select an Analog In-L channel from the channel list, the
block display changes. The simulation port is displayed optionally.
404
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
The value range corresponds to the settings of the Input range parameter in V.
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
Data Outputs the measured values of the 16-bit AD converter.
Data type: Fix_22_5 1)
Data width: 1
The value range of the Data output depends on the setting of the Scaling
parameter on the Parameters page. Refer to Scaling on page 406.
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. The
following example shows a logic for the Data New ports to use synchronous
analog input signals of different I/O modules.
405
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
Analog In-L settings The following settings on the Parameters page are specific to the Analog
In-L I/O function. For common dialog settings, refer to Common settings on
page 401.
Input range Lets you specify the input voltage range that can be converted
from analog to digital for the chosen ADC channel. Input voltages outside the
specified range are saturated.
This electrical interface setting can be changed in ConfigurationDesk.
Scaling Lets you select whether the I/O function scales the measuring results
of the A/D converter to mV.
§ 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.
§ Bit
To output the raw measuring results as a signed Bit value.
The value range is -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.
§ Eliminate the fraction bits and the most significant bit with the Slice
block from the HDL library of the AMD® VitisTM Model Composer.
§ Reinterpret the UFix_16_0 value of the Slice block to Fix_16_0 with the
AMD Reinterpret block.
In hardware this reduction costs nothing.
406
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Load Config Lets you enable a 220 Ω resistor between the analog signal and
the signal reference.
Trigger mode Lets you select the trigger mode and source for sampling the
analog input voltage.
§ Free running
The ADC samples the input voltage with a fixed sample period that is set by
the Sample period parameter.
§ Trigger 1 or Trigger 2
The ADC samples the input voltage with each trigger impulse provided by a
Trigger I/O function. Refer to Trigger description on page 445.
§ Digital In <x> (<edge type>, <filter type>)
The selected digital input channel triggers the sampling of the analog input
signal:
§ <x>: Indicates the channel number of the digital input channel.
§ <edge type>: Indicates which edge of a digital input signal triggers the
ADC. A rising edge is a low to high transition, a falling edge is a high to low
transition.
§ <filter type>: Indicates whether the digital signal is filtered. 8 ns is the time
constant of the digital low-pass filter.
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.
Digital In description Block display If you select a Digital In channel from the channel list, the
block display changes. Except for the outport Data, all the ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Threshold Voltage Specifies the threshold voltage level in mV. A new threshold voltage level takes
effect only after the Threshold Set port rises from 0 to 1.
Available only if the Enable Threshold Voltage configuration ports is set
on the Parameters page.
Data type: UFix_14_0
Data width: 1
Range: 0 mV ... 12,000 mV
Update rate: FPGA clock frequency
407
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Threshold Set Lets you set the trigger level as specified by the Threshold Voltage port.
A new setting overwrites the settings of the Threshold init voltage on the
Parameters page.
Available only if Enable Threshold Voltage configuration ports parameter
is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new voltage setting does not take
effect.
§ 0 to 1 transition: If the Threshold Set port rises from 0 to 1, the new
settings are sent to the output channel. The Threshold Ack port outputs a
flag if the channel is up-to-date.
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.
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model. The threshold voltage determines a logical 0 or 1 as
output of the Data port.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V ... 30 V
Range exceeding is possible and will be saturated to the minimum or
maximum values.
Output
Data Outputs the current results of the 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: FPGA clock frequency
For information on the electrical characteristics of the DS6651 Multi-I/O
Module, refer to DS6651 Multi-I/O Module (SCALEXIO Hardware Installation
and Configuration ).
Threshold Ack Outputs a flag that indicates whether the threshold voltage level is up-to-date.
Available only if the Enable Threshold Voltage configuration ports is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one
clock cycle.
408
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-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 DS6651 Multi-I/O
Module.
The digital I/O functions of the DS6651 Multi-I/O Module framework share the
channels that provide the digital I/O functionality. For more information, refer to
Digital channel dependencies on page 401.
Digital In settings The following settings on the Parameters page are specific to the Digital In I/O
function. For common dialog settings, refer to Common settings on page 401.
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.
409
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
RS485 Rx description Block display If you select an RS485 Rx channel from the channel list, the
block display changes. Except for the Data outport, all the ports are displayed
optionally.
Network mode With the RS485 Rx channel you can receive RS485 data
in simplex mode. To connect to RS485 networks in full-duplex mode, use the
corresponding RS485 Tx I/O function. For details on the RS485 Tx I/O function,
refer to RS485 Tx description on page 442.
To connect to a RS485 network in half-duplex mode, use the RS485 Rx/Tx I/O
function. For details, refer to RS485 Rx/Tx description on page 438.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Termination Specifies whether the signals lines are terminated. A new configuration takes effect
only after the Termination Set port rises from 0 to 1.
Available only if the Enable RS485 Termination configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The signal lines are driven directly without a termination.
§ 1: The signal lines are terminated via an internal RC termination with 120 Ω/5 nF.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
410
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: -5.5 V ... +5.5 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
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).
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-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.
411
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
The digital I/O functions of the DS6651 Multi-I/O Module framework share the
channels that provide the digital I/O functionality. For more information, refer to
Digital channel dependencies on page 401.
RS485 Rx settings The following settings on the Parameters page are specific to the RS485 Rx I/O
function. For common dialog settings, refer to Common settings on page 401.
412
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Purpose To specify the inverting settings for the selected I/O function.
Description You can invert digital I/O signals and UART signals of the selected I/O function
if you select the Enable FPGA test access and scaling parameter on the FPGA
Access page of the FPGA_SETUP_BL block dialog. The possible modifications
depend on the selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Analog In/Analog In‑L settings The following settings on the Scaling page are specific to the Analog In and
Analog In‑L I/O functions.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
413
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
414
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital In settings The following settings on the Scaling page are specific to the Digital In I/O
function.
Invert input polarity Lets you adapt the measured values to the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
RS485 Rx settings The following settings on the Scaling page are specific to the RS485 Rx I/O
function.
415
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
Description The framework provides the I/O types Digital_Mod_<x> and Analog_Mod_<x>,
which you can select on the Unit page of the block. The module number <x>
depends on the slot that the I/O module is connected to.
The number of the available channels on the selected DS6651 Multi-I/O Module
determines the I/O functions that you can select:
§ Analog Out - Ch: 17, … , Analog Out - Ch: 20
§ Analog Out‑T - Ch: 21 and Analog Out‑T - Ch: 22
§ Digital Out - Ch: 1 … Digital Out - Ch: 16
§ Digital Out-Z - Ch: 1-2 … Digital Out-Z - Ch: 15-16
§ Digital In/Out-Z - Ch: 1-3 ... Digital In/Out‑Z - Ch: 13-15
§ RS485 Rx/Tx - Ch: 1-3 ... RS485 Rx/Tx - Ch: 13-15
416
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Digital channel dependencies 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 ).
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
Analog Out description Block display If you select an Analog Out channel from the channel list, the
block display changes. The Enable port, the simulation port, and the Tx Ready
port are displayed optionally.
I/O characteristics The following table describes the ports of the block for
analog output channels:
Port Description
Input
Data Outputs a voltage signal in the specified range.
Data type: Fix_18_2 1)
Data width: 1
The Scaling parameter on the Parameters pags specifies the value range:
§ ‑10,000 mV … +10,000 mV
§ ‑32,768 … +32,776
Update rate: 10.417 MSPS
Enable Lets you enable on-demand conversion of the Data port value to save up to 64 ns
of latency compared to free-running mode. It takes 96 ns … 120 ns until a new
417
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
value can be converted. When a new value can be converted, the Tx Ready port
outputs 1 for one clock cycle.
The Tx Ready port has an internal time pattern of 32 ns. The port changes its value
to 1 only within this time pattern. Therefore, the output values can jitter up to
24 ns if you do not follow the 32 ns time pattern when setting the Enable port.
Tipp: You can ignore the Tx Ready signal if you are sure that you will never enable
the Data port in periods shorter than 96 ns.
If you enable the Data port in periods shorter than 96 ns, you can implement the
following best practise for a jitter free output signal: Set the Enable port on the
32ns time pattern by comparing a free running 2-bit counter output value to 3 and
resetting the counter by the signal from the Tx Ready port.
Note: If you connect the Tx Ready port directly to the Enable port, the analog
output channel works in the same way as in the free running mode.
Available only if the Enable Enable port is set on the Parameters page.
Data Type: UFix_1_0
Data width: 1
Output
Sim Data Simulates the analog output signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Value range: ‑10 V … +10 V
Tx Ready Outputs a flag that indicates that the analog output channel of the DS6651 Multi-
I/O Module is ready to be updated. The minimum update period is 96 ns. When
you update data values only within the time slot for updating the output signal, the
output signal has no jitter. The time slot begins two FPGA clock cycles before the
flag is set to high and ends after three clock cycles.
Time slot for signal
updating without jitter
FPGA clock
TX Ready
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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
418
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
available at the female 50-pin Sub-D I/O connector of the respective DS6651
Multi-I/O Module Module.
Analog Out settings The following settings on the Parameters page are specific to the Analog
Out I/O function. For common dialog settings, refer to Common settings on
page 417.
Enable Tx Ready port Lets you enable an outport to indicate that the analog
output channel is ready to be updated. The Tx Ready port is added to the block.
Enable Enable port Lets you enable an inport to enable the conversion of
the Data port value. The Enable port is added to the block.
If you enable the Enable port, enable the Tx Ready port, too.
Output range Displays the output range of the analog output channel.
Analog Out-T description Block display If you select an Analog Out‑T channel from the channel list, the
block display changes. The simulation port and the Tx Ready port are displayed
optionally.
419
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Data Outputs a voltage signal in the specified range.
Data type: Fix_18_2 1)
Data width: 1
The value range depends on the setting of the Scaling parameter. Refer to Scaling
on page 421.
Update rate: 10.417 MSPS
Output
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
The value range depends on the setting of the Output range parameter. Refer to
Output range on page 421.
TX Ready Outputs a flag that indicates that the analog output channel of the DS6651 Multi-
I/O Module is ready to be updated. The minimum update period is 96 ns. When
you update data values only within the time slot for updating the output signal, the
output signal has no jitter. The time slot begins two FPGA clock cycles before the
flag is set to high and ends after three clock cycles.
Time slot for signal
updating without jitter
FPGA clock
TX Ready
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
420
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Analog Out-T settings The following settings on the Parameters page are specific to the Analog
Out-T I/O function. For common dialog settings, refer to Common settings on
page 417.
Scaling Lets you select the scaling of the Data inport to specify the output
voltage.
§ mV
To specify the output voltage in mV.
The value range corresponds to the settings of the Mode parameter.
§ Bit
To specify the output voltage with a signed bit value.
The value range is -32,768 … +32,776 (16-bit converter).
Output range Lets you select the voltage range and converter mode of the
analog output channel:
§ ‑10 V … +10 V DC:
The DA converter directly outputs the voltage signal without using a
transformer. The output voltage range is ‑10 V DC … +10 V DC.
§ ‑20 V … +20 V AC:
The DA converter outputs the voltage signal via a transformer. The output
voltage range is ‑20 V AC … +20 V AC.
For the AC characteristics, refer to Data Sheet of the DS6651 Multi-I/O Module
(SCALEXIO Hardware Installation and Configuration ).
This electrical interface setting can be changed in ConfigurationDesk.
Enable Tx Ready port Lets you enable an outport to indicate that the analog
output channel is ready to be updated. The Tx Ready port is added to the block.
Digital Out description Block display If you select an Digital Out channel from the channel list, the
block display changes. Except for the Data inport, all the ports are displayed
optionally.
421
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Outputs a signal in the specified range.
To set the voltage level, use the High supply on the Parameters page or the
HighSupply Set inport.
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: 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.
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 ).
Mode Specifies the digital output mode. A new output mode takes effect only after the
Mode Set port rises from 0 to 1.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data Type: UFix_5_0
Data width: 1
Values:
§ 17: Enables the low-side switch that drives a load connected to VCC.
§ 18: Enables the high-side switch that drives a load connected to GND.
§ 19: Enables a push-pull switch that drives a load with VCC and GND.
Mode Set Sets the output mode as specified by the Mode port. A new setting overwrites the
settings of the Output Mode on the Parameters page.
Available only if the Enable Output Mode configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new mode does not take effect.
§ 0 to 1 transition: New settings are sent to the output channel. The Mode Ack
port outputs a flag if the channel is up-to-date.
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.
DriveCfg Specifies the driver configuration. A new configuration takes effect only after the
DriveCfg Set port rises from 0 to 1.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
422
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Data width: 1
Values:
§ 0: A serial 68 Ω resistor terminates the output signal.
§ 1: The output signal is driven directly without a termination.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
DriveCfg Set Sets the configuration as specified by the DriveCfg port. A new setting overwrites
the settings of the Drive Config on the Parameters page.
Available only if the Enable Drive Config configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new configuration does not take effect.
§ 0 to 1 transition: The output channel begins to update its channel. The
DriveCfg Ack port outputs a flag if the channel is up-to-date.
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.
HighSupply Specifies the supply voltage to output high-level signals.
A new supply voltage takes effect only after the HighSupply Set port rises from 0
to 1.
Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The supply voltage for high signals is 5 V.
§ 1: The supply voltage for high signals is 3.3 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
HighSupply Sets the supply voltage to the output high-level signal as specified by the
Set HighSupply port. A new setting overwrites the setting of the High Supply
parameter on the Parameters page.
Available only if Enable High Supply configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new supply voltage does not take effect.
§ 0 to 1 transition: The new setting is sent to the output channel. The
HighSupply Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Output
423
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Mode Ack Outputs a flag that acknowledges a change of the output mode.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
DriveCfg Ack Outputs a flag that acknowledges a change of the driver configuration.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
HighSupply Outputs a flag that acknowledges a change of the high supply configuration.
Ack Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable simulation port property is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-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 DS6651 Multi-I/O
Module.
The digital I/O functions of the DS6651 Multi-I/O Module framework share the
channels that provide the digital I/O functionality. For more information, refer to
Digital channel dependencies on page 417.
424
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Digital Out settings The following settings on the Parameters page are specific to the Digital
Out I/O function. For common dialog settings, refer to Common settings on
page 417.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
425
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Enable Output Mode configuration ports Lets you enable ports to set the
digital output mode. The ports can overwrite the settings of the Output Mode
parameter.
The following ports are added to the block:
§ Mode
§ Mode Set
§ Mode Ack
Enable High Supply configuration ports Lets you enable ports to set the
voltage level of the high output signal. The ports can overwrite the settings of
the High supply parameter.
The following ports are added to the block:
§ HighSupply Data
§ HighSupply Set
§ HighSupply Ack
Digital Out-Z description Block display If you select an Digital Out-Z channel from the channel list, the
block display changes. Except for the Data and Enable inports, all the other
ports are displayed optionally.
426
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Outputs a signal in the specified range.
To set the voltage level, use the High supply on the Parameters page or the
HighSupply Set inport.
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: 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.
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 ).
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.
Mode Specifies the digital output mode. A new output mode takes effect only after the
Mode Set port rises from 0 to 1.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data Type: UFix_6_0
Data width: 1
Values:
§ 33: Enables the low-side switch that drives a load connected to VCC.
§ 34: Enables the high-side switch that drives a load connected to GND.
§ 35: Enables a push-pull switch that drives a load with VCC and GND.
Mode Set Sets the output mode as specified by the Mode port. A new setting overwrites the
settings of the Output Mode on the Parameters page.
Available only if the Enable Output Mode configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new mode does not take effect.
§ 0 to 1 transition: New settings are sent to the output channel. The Mode Ack
port outputs a flag if the channel is up-to-date.
427
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
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.
DriveCfg Specifies the driver configuration. A new configuration takes effect only after the
DriveCfg Set port rises from 0 to 1.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: A serial 68 Ω resistor terminates the output signal.
§ 1: The output signal is driven directly without a termination.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
DriveCfg Set Sets the configuration as specified by the DriveCfg port. A new setting overwrites
the settings of the Drive Config on the Parameters page.
Available only if the Enable Drive Config configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new configuration does not take effect.
§ 0 to 1 transition: The output channel begins to update its channel. The
DriveCfg Ack port outputs a flag if the channel is up-to-date.
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.
HighSupply Specifies the supply voltage to output high-level signals.
A new supply voltage takes effect only after the HighSupply Set port rises from 0
to 1.
Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The supply voltage for high signals is 5 V.
§ 1: The supply voltage for high signals is 3.3 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
HighSupply Sets the supply voltage to the output high-level signal as specified by the
Set HighSupply port. A new setting overwrites the setting of the High Supply
parameter on the Parameters page.
Available only if Enable High Supply configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
428
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Values:
§ No transition, or a 1 to 0 transition: A new supply voltage does not take effect.
§ 0 to 1 transition: The new setting is sent to the output channel. The
HighSupply Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Output
Mode Ack Outputs a flag that acknowledges a change of the output mode.
Available only if the Enable Output Mode configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
DriveCfg Ack Outputs a flag that acknowledges a change of the driver configuration.
Available only if the Enable Drive Config configuration ports is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
HighSupply Outputs a flag that acknowledges a change of the high supply configuration.
Ack Available only if Enable High Supply configuration ports parameter is set on the
Parameters page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable simulation port property is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-I/O Module framework for digital output channels. The signals are available
429
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
at the female 50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O
Module.
The digital I/O functions of the DS6651 Multi-I/O Module framework share the
channels that provide the digital I/O functionality. For more information, refer to
Digital channel dependencies on page 417.
Digital Out-Z settings The following settings on the Parameters page are specific to the Digital
Out‑Z I/O function. For common dialog settings, refer to Common settings on
page 417.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
430
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
Enable Output Mode configuration ports Lets you enable ports to set the
digital output mode. The ports can overwrite the settings of the Output Mode
parameter.
The following ports are added to the block:
§ Mode
§ Mode Set
§ Mode Ack
Enable High Supply configuration ports Lets you enable ports to set the
voltage level of the high output signal. The ports can overwrite the settings of
the High supply parameter.
The following ports are added to the block:
§ HighSupply Data
§ HighSupply Set
§ HighSupply Ack
Digital In/Out‑Z description Block display If you select a Digital In/Out channel from the channel list, the
block display changes. Except for the Data In, Data Out, and Enable ports, all
the ports are displayed optionally.
431
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Out 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 on the Parameters page
or the High Supply inport .
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: 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.
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 ).
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.
Threshold Specifies a trigger level in mV. A new threshold voltage level takes effect only after
Voltage the Threshold Set port rises from 0 to 1.
432
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Available only if Enable digital in configuration ports is set on the Parameters
page.
Data type: UFix_14_0
Data width: 1
Range: 0 mV ... 12,000 mV
Update rate: FPGA clock frequency
The range can be exceeded, and saturation is performed to a minimum or maximum
value.
Threshold Set Lets you set the trigger level as specified by the Threshold Voltage port. A
new setting overwrites the settings of Threshold init voltage parameter on the
Parameters page.
Available only if the Enable digital in configuration ports is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new voltage setting does not take effect.
§ 0 to 1 transition: If the Threshold Set port rises from 0 to 1, the new settings are
sent to the output channel. The Threshold Ack port outputs a flag if the channel
is up-to-date.
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.
Mode Specifies the digital output mode. A new output mode takes effect only after the
Mode Set port rises from 0 to 1.
Available only if the Enable digital out configuration ports parameter is set on
the Parameters page.
Data Type: UFix_6_0
Data width: 1
Values:
§ 49: Enables the low-side switch that drives a load connected to VCC.
§ 50: Enables the high-side switch that drives a load connected to GND.
§ 51: Enables a push-pull switch that drives a load with VCC and GND.
Mode Set Sets the output mode as specified by the Mode port. A new setting overwrites the
settings of the Output Mode on the Parameters page.
Available only if the Enable digital out configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new mode does not take effect.
§ 0 to 1 transition: New settings are sent to the output channel. The Mode Ack
port outputs a flag if the channel is up-to-date.
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.
DriveCfg Specifies the driver configuration. A new configuration takes effect only after the
DriveCfg Set port rises from 0 to 1.
433
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Available only if the Enable digital out configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Value range:
§ 0: An internal 68 Ω resistor to GND terminates the output signal.
§ 1: The output signal is driven directly without a termination.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
DriveCfg Set Sets the configuration as specified by the DriveCfg port. A new setting overwrites
the settings of the Drive Config on the Parameters page.
Available only if the Enable digital out configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Value range:
§ No transition, or a 1 to 0 transition: A new configuration does not take effect.
§ 0 to 1 transition: The output channel begins to update its channel. The
DriveCfg Ack port outputs a flag if the channel is up-to-date.
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.
HighSupply Specifies the supply voltage to output high-level signals. A new supply voltage takes
effect only after the HighSupply Set port rises from 0 to 1.
Available only if the Enable digital out configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The supply voltage for high signals is 5 V.
§ 1: The supply voltage for high signals is 3.3 V.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
HighSupply Sets the supply voltage to the output high-level signal as specified by the
Set HighSupply port. A new setting overwrites the setting of the High Supply on
the Parameters page.
Available only if the Enable digital out configuration ports parameter is set.
Data type: UFix_1_0
Data width: 1
Range:
§ No transition, or a 1 to 0 transition: A new supply voltage does not take effect.
§ 0 to 1 transition: The new setting is sent to the output channel. The
HighSupply Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Data In Simulates an input signal that you can connect to a Simulink-based I/O environment
model. The threshold voltage determines a logical 0 or 1 as output of the Data
port.
434
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: 0 V ... 12 V
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
Data In Outputs the current results of the 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: FPGA clock frequency
For information on the electrical characteristics of the DS6651 Multi-I/O
Module, refer to DS6651 Multi-I/O Module (SCALEXIO Hardware Installation and
Configuration ).
In Threshold Outputs a flag that acknowledges a change of the threshold voltage level
Ack configuration.
Available only if the Enable digital in configuration ports is set on the
Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Mode Ack Outputs a flag that acknowledges a change of the output mode.
Available only if Enable digital out configuration ports is set on the Parameters
page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
DriveCfg Ack Outputs a flag that acknowledges a change of the driver configuration.
Available only if Enable digital out configuration ports is set on the Parameters
page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
435
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
HighSupply Outputs a flag that acknowledges a change of the high supply configuration.
Ack Available only if Enable digital out configuration ports is set on the Parameters
page.
Data type: Double
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Out Simulates an output signal that you can connect to a Simulink-based I/O
environment model. The signal is in the same range as specified for the hardware
output signal.
Available only if Enable digital in simulation port is set on the Parameters page.
Data type: Double
Output voltage: 0 V … 5 V or 0 V … 3.3 V
Update rate: FPGA clock frequency
If the value of the Data In inport exceeds the specified data width, only the
lowest bit is used. If the hardware signal or the value of the Sim Data In
inport exceeds the minimum or maximum threshold voltage, it is saturated to the
corresponding minimum or maximum value.
Note
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-I/O Module framework for digital signals. The signals are available at the
female 50-pin Sub-D I/O connector of the respective DS2655M2 Digital I/O
Module.
436
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Digital In/Out‑Z settings The following settings on the Parameters page are specific to the Digital
In/Out‑Z I/O function.
Drive Config Lets you enable/disable the termination of the signal line by an
internal resistor.
§ Direct Drive
Lets you directly drive the I/O signal. The internal termination resistor is
disabled.
§ 68 Ohm Terminated
Lets you terminate the I/O signal with an internal 68 Ω resistor.
This electrical interface setting can be changed in ConfigurationDesk.
High supply Lets you select the VCC voltage that determines the high-level
voltage for the high‑side switch.
This electrical interface setting can be changed in ConfigurationDesk.
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.
Enable digital in configuration ports Lets you enable ports to set the
threshold voltage. The ports can overwrite the settings of In Threshold init
voltage.
437
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Enable digital out simulation port Lets you enable ports to configure the
digital output. The ports can overwrite the settings of the Output Mode, Drive
Config, and High supply parameters.
The following ports are added to the block:
§ Mode
§ Mode set
§ DriveCfg
§ DriveCfg Set
§ HighSupply
§ HighSupply Set
Enable digital in simulation port Lets you enable an inport for offline
simulation data. The Sim Data In inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model. This port
is relevant only if the signal direction is in.
Enable digital out simulation port Lets you enable an outport for offline
simulation data. The Sim Data Out port is added to the block to connect it to a
Simulink-based I/O environment model.
RS485 Rx/Tx description Block display If you select an RS485 Rx/Tx channel from the channel list,
the block display changes. The simulation and termination ports are displayed
optionally.
Network mode With the RS485 Rx/Tx channel you can receive data from a
RS485 network in half-duplex mode.
To connect to a RS485 network in simplex or full-duplex mode, use the RS485 Tx
and RS485 Rx I/O functions. For details, refer to RS485 Tx description on
page 442 and RS485 Rx description on page 410.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Tx Data Outputs the data to be send to the RS485 network if the Tx Enable port is set
to 1.
The differential output voltage level depends on the High Supply setting on the
Parameters page.
Data type: UFix_1_0
438
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Data width: 1
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.
Tx Enable Enables the output of data values to the RS485 network 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 (tri-state). The Rx Data outport
can output received data from the RS485 network.
§ 1: The output is enabled and transmits the data values of the Tx Data inport.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Specifies whether the signals lines are terminated. A new configuration takes effect
only after the Termination Set port rises from 0 to 1.
Available only if the Enable RS485 Termination configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
Values:
§ 0: The signal lines are driven directly without a termination.
§ 1: The signal lines are terminated via an internal RC termination with 120 Ω/5 nF.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Sim Rx Data Simulates an input signal that you can connect to a Simulink-based I/O
environment model.
Available only if Enable Rx Data simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: ±3.3 V or ±5 V, depends on the High Supply parameter setting.
439
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
Range exceeding is possible and will be saturated to the minimum or maximum
values.
Output
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).
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Tx Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model.
Available only if the Enable Tx Data simulation port is set on the Parameters
page.
Data type: Double
Data width: 1
Range: ±3.3 V or ±5 V, depends on the High Supply parameter setting.
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-I/O Module framework for RS485 Rx/Tx channels. The signals are available
at the female 50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O
Module.
440
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
RS485 Rx/Tx settings The following settings on the Parameters page are specific to the RS485 Rx/Tx
I/O function.
High supply Lets you set the differential output voltage to ±3.3 V or ±5 V.
Enable Rx Data simulation port Lets you enable an inport for offline
simulation data. The Sim Rx Data inport is added to the block to connect it
to a Simulink-based I/O environment model.
Enable Tx Data simulation port Lets you enable an outport for offline
simulation data. The Sim Tx Data outport is added to the block to connect it to
a Simulink-based I/O environment model.
441
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
RS485 Tx description Block display If you select an RS485 Tx channel from the channel list,
the block display changes. The simulation and termination ports are displayed
optionally.
Network mode With the RS485 Tx channel you can transmit data to a RS485
network in simplex mode. To connect to a RS485 network in full-duplex mode,
also use the corresponding RS485 Rx I/O function. For details on the RS485 Rx
I/O function, refer to RS485 Rx description on page 410.
To connect to a RS485 network in half-duplex mode, use the RS485 Rx/Tx I/O
function. For details, refer to RS485 Rx/Tx description on page 438.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Outputs the data to the RS485 network if the Enable port is set to 1.
The differential output voltage level depends on the High Supply setting on the
Parameters page.
Data type: UFix_1_0
Data width: 1
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.
Enable 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.
Termination Specifies whether the signals lines are terminated. A new configuration takes effect
only after the Termination Set port rises from 0 to 1.
Available only if the Enable RS485 Termination configuration ports is set on the
Parameters page.
Data Type: UFix_1_0
Data width: 1
442
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Port Description
Values:
§ 0: The signal lines are driven directly without a termination.
§ 1: The signal lines are terminated via an internal RC termination with 120 Ω/5 nF.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Termination Lets you set the termination of the RS485 signal lines as specified by
Set the Termination port. A new setting overwrites the settings of the RS485
Termination on the Parameters page.
Available only if the Enable RS485 Termination configuration ports parameter is
set.
Data type: UFix_1_0
Data width: 1
Values:
§ No transition, or a 1 to 0 transition: A new termination setting does not take
effect.
§ 0 to 1 transition: The new settings are sent to the channel. The
Termination Ack port outputs a flag if the channel is up-to-date.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1 bit by
using only the lowest bit.
Output
Termination Outputs a flag that acknowledges a change of the termination setting.
Ack Available only if Enable RS485 Termination configuration ports parameter is set
on the Parameters page.
Data type: UFix_1_0
Data width: 1
The value 1 acknowledges the update. The flag is set high only within one clock
cycle.
Sim Data Simulates an output signal that you can connect to a Simulink-based I/O
environment model.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Range: ±3.3 V or ±5 V, depends on the High Supply parameter setting.
Note
To set the baud rate for a serial transmission, refer to Using the UART Demo
Model for SCALEXIO Systems (FPGA Programming Blockset Guide ).
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
443
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O mapping The following I/O mapping is relevant if you use the DS6651
Multi-I/O Module framework for RS485 Tx channels. The signals are available
at the female 50-pin Sub-D I/O connector of the respective DS6651 Multi-I/O
Module.
The digital I/O functions of the DS6651 Multi-I/O Module framework share the
channels that provide the digital I/O functionality. For more information, refer to
Digital channel dependencies on page 417.
RS485 Tx settings The following settings on the Parameters page are specific to the RS485 Tx I/O
function. For common dialog settings, refer to Common settings on page 417.
High supply Lets you set the differential output voltage to ±3.3 V or ±5 V.
444
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Trigger description Block display If you select a Trigger channel from the channel list, the block
display changes. The simulation and termination ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Enable Lets you trigger the analog measurement of the DS6651 Multi-I/O Module.
Data Type: UFix_1_0
Data width: 1
A transition from 0 to 1 provides a trigger impulse that can be used by the Analog
In/Analog In-L I/O functions. Refer to Analog In description on page 401 and
Analog In‑L description on page 404.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Purpose To specify the inverting settings for the selected I/O function.
Description You can invert digital I/O signals and UART signals of the selected I/O function
if you select the Enable FPGA test access and scaling parameter on the FPGA
445
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Analog Out/Analog Out‑T The following settings on the Scaling page are specific to the Analog Out and
settings Analog Out‑T I/O functions.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
446
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
447
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital Out/Digital Out‑Z The following settings on the Scaling page are specific to the Digital Out and
settings Digital Out‑Z I/O functions.
Digital In/Out‑Z settings The following settings on the Scaling page are specific to the Digital In/Out‑Z
I/O function.
Invert input polarity Lets you invert the measured values of the electrical
input signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If driven with 1, the hardware outputs a high-level signal.
If driven with 0, the hardware outputs a low-level signal.
§ Enabled:
If driven with 1, the hardware outputs a low-level signal.
If driven with 0, the hardware outputs a high-level signal.
RS485 Rx/Tx settings The following settings on the Scaling page are specific to the RS485 Rx/Tx I/O
function.
448
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS6651 Multi-I/O Module Framework
Invert input polarity Lets you adapt the electrical output signal:
§ Disabled:
If the input voltage is negative (<0 V), the Rx Data port outputs a 0.
If the input voltage is positive (≥0 V), the Rx Data port outputs a 1.
§ Enabled:
If the input voltage is negative (<0 V), the Rx Data port outputs a 1.
If the input voltage is positive (≥0 V), the Rx Data port outputs a 0.
Invert output polarity Lets you adapt the electrical output signal:
§ Disabled:
If the Tx Data port is driven with 1, the I/O function sets the output to the
high voltage level.
If the Tx Data port is driven with 0, the I/O function sets the output to the low
voltage level.
§ Enabled:
If the Tx Data port is driven with 1, the I/O function sets the output to the low
voltage level.
If the Tx Data port is driven with 0, the I/O function sets the output to the
high voltage level.
RS485 Tx settings The following settings on the Scaling page are specific to the RS485 Tx I/O
function.
Trigger settings The Scaling page is empty because this I/O function does not support FPGA
scaling.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
449
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
450
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
Description The framework provides the I/O type MGT, which you can select on the Unit
page of the block. The number of the available physical connections determines
the I/O functions that you can select:
§ Aurora 64b66b In 1 … 4
§ Aurora 64b66b 128 Bit In 1 … 4
§ MGT In
§ MGT In Opto Ready
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Aurora 64b66b In description Purpose To read 64-bit data values from an MGT communication channel
using the Aurora 64b66b link-layer protocol.
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.
Block display If you select an Aurora 64b66b In channel from the channel
list, the block display changes. The inport Sim Data is displayed optionally.
451
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Input
Ready Specifies that the communication channel is ready to read new data. Use this port
to prevent a data overflow.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The communication channel is not ready.
§ 1: New data can be read.
Sim Data Simulates a data exchange via the MGT communication bus including floating-
point to fixed-point data conversion.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Reads a 64-bit data value from the MGT communication bus.
User data transfer rate: Max. 8 Gbit/s (125 MHz FPGA clock, 64 bits)
MGT latency1):
§ With maximum data rate: 456 ns
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_64_0
Data width: 1
Data New Indicates whether a new data value was received by the MGT module.
Data type: UFix_1_0
Data width: 1
If the MGT module contains a new value, the flag changes from 0 to 1 for one
clock cycle:
§ 0: No new data available.
§ 1: New data available.
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
Aurora 64b66b In settings Only common dialog settings. Refer to Common settings on page 451.
452
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
Aurora 64b66b 128 Bit In Purpose To read 128-bit data values from an MGT communication channel
description using the Aurora 64b66b link-layer protocol.
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.
Block display If you select an Aurora 64b66b 128 Bit In channel from
the channel list, the block display changes. The inport Sim Data is displayed
optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Input
Ready Specifies that the communication channel is ready to read new data. Use this port
to prevent a data overflow.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The communication channel is not ready.
§ 1: New data can be read.
Sim Data Simulates a data exchange via the MGT communication bus including floating-
point to fixed-point data conversion. The converting can lead to inaccuracies.
Available only if the Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Reads a 128-bit data value from the MGT communication bus.
User data transfer rate: Max. 10.3125 Gbit/s, limited by the MGT module.
453
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Port Description
MGT latency1):
§ With maximum data rate: Max. 6.272 µs, typ. 6.192 µs
The latency increases, because the TX-FIFO buffer becomes full when the data
stream fills the buffer with 16 Gbit/s (128 bits at 125 MHz).
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_128_0
Data width: 1
Data New Indicates whether a new data value was received by the MGT module.
Data type: UFix_1_0
Data width: 1
If the MGT module contains a new value, the flag changes from 0 to 1 for one
clock cycle:
§ 0: No new data available.
§ 1: New data available.
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
Aurora 64b66b 128 Bit In Only common dialog settings. Refer to Common settings on page 451.
settings
MGT In description Purpose To provide the information about the connection between the GTH
transceivers and the MGT module and to specify the reference clock frequency.
The information is required for customer-specific protocol blocks that configure
the GTH transceivers. A GTH transceiver is a configurable transceiver of the AMD
UltraScale FPGA architecture.
Block display If you select an MGT In channel from the channel list, the block
display changes.
454
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Output
CLK_P Provides the MGT reference clock frequency.
CLK_N The ports represent the differential signal of an internal clock. The ports must be
connected to a block that provides the configuration for the GTH transceivers.
The reference frequency is specified on the Parameters page.
Data type: UFix_1_0
Data width: 1
RX_P Reads the raw data from the MGT module.
RX_N The ports represent the differential output signals of the MGT module. The ports
must be connected to a block 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.
Multiple clock domain support This block can be used in a user clock
domain to be synchronous to the MGT transceivers, for example. Refer to
Using Multiple Clock Domains for FPGA Modeling (FPGA Programming Blockset
Guide ).
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
MGT In settings The Parameters page provides the following dialog setting:
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 Modeling MGT Communication Using a
Customized Protocol (FPGA Programming Blockset Guide ).
455
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
the MGT module.
Port Description
Output
Opto_Ready Indicates whether the MGT module is ready for data exchange. The port changes
to 1 during the initialization phase, i.e. before the CN APP Status block changes
from stop to running.
Data type: UFix_1_0
Data width: 1
If the MGT module is ready, the flag changes from 0 to 1:
§ 0: The MGT module is not ready.
§ 1: The MGT module is ready.
Update rate: 125 MHz
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
456
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
457
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Description The framework provides the I/O type MGT, which you can select on the Unit
page of the block. The number of the available physical connections determines
the I/O functions that you can select:
§ Aurora 64b66b Out 1 … 4
§ Aurora 64b66b 128 Bit Out 1 … 4
§ MGT Out
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim Data outport is added to the block to connect it to any Simulink
signal used for simulation.
Aurora 64b66b Out Purpose To write 64-bit data values to an MGT communication channel using
description the Aurora 64b66b link-layer protocol.
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.
Block display If you select an Aurora 64b66b Out channel from the channel
list, the block display changes. The outport Sim Data is displayed optionally.
458
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
Data Writes a 64-bit data value to the MGT communication bus.
User data transfer rate: Max. 8 Gbit/s (125 MHz FPGA clock, 64 bits)
MGT latency1):
§ With maximum data rate: 456 ns
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_64_0
Data width: 1
Enable Enables the write access to the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No write access.
§ 1: The Data port value of the current clock cycle is written on the MGT
communication bus.
Output
Ready Outputs a flag that indicates that the MGT module is ready to write new data on
the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The MGT channel is busy.
§ 1: New data values can be written to the MGT communication bus.
Sim Data Simulates a data exchange via the MGT communication bus including fixed-point
to floating-point data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
1)
Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
Aurora 64b66b Out settings Only common dialog settings. Refer to Common settings on page 458.
459
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Aurora 64b66b 128 Bit Out Purpose To write 128-bit data values to an MGT communication channel
description using the Aurora 64b66b link-layer protocol.
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.
Block display If you select an MGT Out channel from the channel list, the
block display changes. The outport Sim Data is displayed optionally.
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
Data Writes a 128-bit data value to the MGT communication bus.
User data transfer rate: Max. 10.3125 Gbit/s, limited by the MGT module.
MGT latency1):
§ With maximum data rate: Max. 6.272 µs, typ. 6.192 µs
The latency increases, because the TX-FIFO buffer becomes full when the data
stream fills the buffer with 16 Gbit/s (128 bits at 125 MHz).
§ Single words: Max. 472 ns, typ. 384 ns
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 Blockset Guide ).
Data type: UFix_128_0
Data width: 1
460
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
Port Description
Enable Enables the write access to the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: No write access.
§ 1: The Data port value of the current clock cycle is written on the MGT
communication bus.
Output
Ready Outputs a flag that indicates that the MGT module is ready to write new data on
the MGT communication bus.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: The MGT channel is busy.
§ 1: New data values can be written to the MGT communication bus.
Sim Data Simulates a data exchange via the MGT communication bus including fixed-point
to floating-point data conversion. The converting can lead to inaccuracies.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
1) Latency between sender and receiver via an optical loopback.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
Aurora 64b66b 128 Bit Out Only common dialog settings. Refer to Common settings on page 458.
settings
MGT Out description Purpose To provide the information about the connection between the GTH
transceivers and the MGT module. The information is required for customer-
specific protocol blocks that configure the GTH transceivers. A GTH transceiver is
a configurable transceiver of the AMD UltraScale FPGA architecture.
461
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Block display If you select an MGT Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the MGT module:
Port Description
Input
TX_P Writes data to the MGT module.
TX_N The ports represent the differential signals of the GTH transceivers that are
connected to the MGT module. The ports must be connected to a block that
provides the configuration for the GTH transceivers.
Data type: UFix_4_0
Data width: 1
Each bit represents the input for one MGT channel.
Update rate: MGT reference clock frequency
The MGT reference clock frequency parameter of the MGT In block lets you
specify the reference frequency that is used to generate the MGT clock frequency.
Refer to MGT In description on page 454.
Multiple clock domain support This block can be used in a user clock
domain to be synchronous to the MGT transceivers, for example. Refer to
Using Multiple Clock Domains for FPGA Modeling (FPGA Programming Blockset
Guide ).
I/O mapping The MGT communication bus uses the MPO connector of the
FPGA Base Board.
The order number of the required SCALEXIO MGT adapters are as follows:
§ DS6601_MGT1 for the DS6601 FPGA Base Board.
§ DS6602_MGT1 for the DS6602 FPGA Base Board.
462
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the DS660X_MGT Framework
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
463
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
464
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
NOTICE
Description The framework provides the I/O type Other_<IO module slot>, which you can
select on the Unit page of the block. The number of the available physical
connections determines the I/O functions that you can select:
§ I‑FPGA In 1 ... 8 [Mod: <1 ... 5>]
I‑FPGA In description Purpose To provide read access to the inter-FPGA communication bus with
bus synchronization.
Block display If you select an I‑FPGA In channel from the channel list, the
block display changes. Except for the outport Data Read, all ports are displayed
optionally.
The module number Mod: <x> depends on the used I/O module slot for inter-
FPGA communication.
465
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
the inter‑FPGA communication channels.
Port Description
Input
Errors Reset Resets the Errors output.
The counter of the Errors outport possibly increases until the corresponding
I‑FPGA Out function starts working.
Available only if Bit mode is disabled on the Parameters page.
Data type: UFix_1_0
Data width: 1
Value range: 0 ... 1
Sim Data Read Simulates the data to be read from inter‑FPGA communication bus.
Available only if the Enable simulation Data Read port is set on the Parameters
page.
Data type: Double
Data width: 1
Value range: 0 … 227‑1
Sim Errors Simulates the error counter.
Available only if Bit mode is disabled on the Parameters page.
Output
Data Read Reads data from the inter‑FPGA communication bus. I‑FPGA In supports a
synchronous data exchange. The maximum number of 27 bits is available only
for one bus. If you have specified subbuses (up to 8), the maximum number of
bits depends on their configurations. Bits that exceed the configured bus width
are discarded.
Data type: UFix_27_0
Data width: 1
Value range: 0 … 227‑1
Data New Indicates whether new data was written to the Data Read register.
If the register contains new values, the flag changes from 0 to 1 for one clock
cycle. If the transmission failed, the error counter increases.
Available only if Bit mode is disabled on the Parameters page.
Data type: UFix_1_0
Data width: 1
§ 0: No new data available in the Data Read register. Either the transmission is
not yet finished, or the transmission failed (see Errors outport).
§ 1: New data available in the Data Read register.
Errors Provides the number of transmission errors. The counter is reset only at FPGA
application start or if it reset by the Errors Reset port. If the range is exceeded,
the counter restarts from 0.
Available only if Bit mode is disabled on the Parameters page.
Data type: UFix_32_0
Data width: 1
Value range: 0 … 232‑1
466
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
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 In settings The following settings on the Parameters page are specific to the I‑FPGA In I/O
function.
Startbit Lets you specify the bit with which the transmission data starts in the
range 0 … 27.
If you have configured more than one inter‑FPGA bus, you can access a
specific subbus by specifying the related start and end bits. One bit has to be
reserved for synchronization for each configured subbus. The maximum data
width of a subbus is therefore Endbit ‑ Startbit. For more information,
refer to Overview of Inter-FPGA Communication (FPGA Programming Blockset
Guide ).
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 Blockset Guide ).
Endbit Lets you specify the bit with which the transmission data ends in the
range 0 … 27.
The range of the end bit is automatically adapted to the specified start bit. The
end bit must not be less than the corresponding start bit.
If you have configured more than one inter‑FPGA bus, you can access a
specific subbus by specifying the related start and end bits. One bit has to be
reserved for synchronization for each configured subbus. The maximum data
width of a subbus is therefore Endbit ‑ Startbit. For more information,
refer to Overview of Inter-FPGA Communication (FPGA Programming Blockset
Guide ).
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 Blockset Guide ).
467
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Expert mode Lets you enable the expert mode, where you can modify the bit
length, the clock and the filter depth.
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.
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.
Clock Displays the default I‑FPGA clock of 125 MHz. This value only affects
the inter‑FPGA communication and not the clock of the FPGA.
If you have enabled Expert mode and disabled Bit mode, you can specify an
I‑FPGA clock of 200 MHz or 250 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.
468
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
If you have enabled Expert mode and disabled Bit mode, you can specify a
filter depth in the range 0 … 32 clock cycles.
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.
Bit mode Lets you enable the bit mode to read data with a lower latency
(2 clock cycles), but the bits are not synchronous.
This setting is selectable only if you have enabled Expert mode.
Note
You should enable this mode 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.
Enable simulation Data Read port Lets you enable an inport for offline
simulation data. The Sim Data Read inport is added to the block to connect it to
simulation data coming from a Simulink-based I/O environment model instead of
the inter‑FPGA communication bus.
Enable simulation Errors port Lets you enable an inport for offline
simulation data. The Sim Errors inport is added to the block to to provide the
number of simulated transmission errors.
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
469
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
470
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
NOTICE
Description The framework provides the I/O type Other_<IO module slot>, which you can
select on the Unit page of the block. The number of the available physical
connections determines the I/O functions that you can select:
§ I‑FPGA Out 1 ... 8 [Mod: <1 ... 5>]
I‑FPGA Out description Purpose To provide write access to the inter-FPGA communication bus with
bus synchronization.
Block display If you select an I‑FPGA Out channel from the channel list, the
block display changes. Except for the inport Data Write, all ports are displayed
optionally.
The module number Mod: <x> depends on the used I/O module slot for inter-
FPGA communication.
471
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
I/O characteristics The following table describes the ports of the block for
the inter‑FPGA communication channels:
Port Description
Input
Data Write Outputs data to the inter‑FPGA communication bus. The maximum number of
bits in the data buffer depends on the number of blocks connected to the
bus and the blocks settings. Bits which exceed the configured bus width are
discarded.
Data type: UFix_27_0
Data width: 1
Value range: 0 … 227‑1
Output
Data Sent Provides the last transmitted value.
Available only if Bit mode is disabled on the Parameters page.
Data type: UFix_27_0
Data width: 1
Value range: 0 … 227‑1
Ready Indicates the clock cycle in which the data is sampled for transmission. The port is
high for one clock cycle with the periodicity of the bit length.
Available only if Bit mode is disabled on the Parameters page.
Data width: 1
Sim Data Write Simulates the data to be written to the inter‑FPGA communication bus.
Available only if Enable simulation Data Write port is set on the Parameters
page.
Data type: Double
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.
The following settings on the Parameters page are specific to the I‑FPGA Out
I/O function.
Startbit Lets you specify the bit with which the transmission data starts in the
range 0 … 27.
472
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
If you have configured more than one inter‑FPGA bus, you can access a
specific subbus by specifying the related start and end bits. One bit has to be
reserved for synchronization for each configured subbus. The maximum data
width of a subbus is therefore Endbit ‑ Startbit. For more information,
refer to Overview of Inter-FPGA Communication (FPGA Programming Blockset
Guide ).
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 Blockset Guide ).
Endbit Lets you specify the bit with which the transmission data ends in the
range 0 … 27.
The range of the end bit is automatically adapted to the specified start bit. The
end bit must not be less than the corresponding start bit.
If you have configured more than one inter‑FPGA bus, you can access a
specific subbus by specifying the related start and end bits. One bit has to be
reserved for synchronization for each configured subbus. The maximum data
width of a subbus is therefore Endbit ‑ Startbit. For more information,
refer to Overview of Inter-FPGA Communication (FPGA Programming Blockset
Guide ).
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 Blockset Guide ).
Expert mode Lets you enable the expert mode, where you can modify the bit
length, the clock and the filter depth.
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.
473
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
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.
Clock Displays the default I‑FPGA clock of 125 MHz. This value only affects
the inter‑FPGA communication and not the clock of the FPGA.
If you have enabled Expert mode and disabled Bit mode, you can specify an
I‑FPGA clock of 200 MHz or 250 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.
Bit mode Lets you enable the bit mode to write data with a lower latency
(2 clock cycles), but the bits are not synchronous.
This setting is selectable only if you have enabled Expert mode.
Note
You should enable this mode 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.
Enable simulation Data Write port The Sim Data Write simulation port is
available in the block only if you enable it.
474
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the Inter-FPGA Interface Framework
Description The Scaling page is empty because the I/O functions of this framework do not
support FPGA scaling.
Frameworks with scaling The frameworks of the I/O modules support FPGA scaling:
support § DS2655M1 I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 350
§ Scaling Page (FPGA_IO_WRITE_BL) on page 363
§ DS2655M2 Digital I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 377
§ Scaling Page (FPGA_IO_WRITE_BL) on page 397
§ DS6651 Multi-I/O Module
§ Scaling Page (FPGA_IO_READ_BL) on page 413
§ Scaling Page (FPGA_IO_WRITE_BL) on page 445
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
475
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the SCALEXIO Frameworks
476
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the MicroAutoBox II Frameworks
477
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
478
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Common settings
Block Description (FPGA_XDATA_READ_BL)............................................. 45
To specify read access by the FPGA model to the processor model via
processor bus.
FPGA_XDATA_WRITE_BL......................................................................... 49
To implement write access to processor-bus data in the FPGA model.
Purpose To specify the data format and specific settings for the selected access type.
Description The FPGA1401Tp1 with Multi-I/O Module frameworks provide the following
access types that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers with a data width of 64 bits each. The values
are transmitted element by element.
479
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
If you want to access data from several registers simultaneously, you can group
these registers by specifying the same group identifier for them.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
480
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data. By default, the sample time is
inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange
including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a
intermodule bus register. The data format depends
on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary
point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
481
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 480.
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
482
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Data Outputs a 32-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 480.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
483
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange
including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an
intermodule bus register. The data format depends
on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary
point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 480.
484
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
485
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 480.
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the following standard
frameworks is included in this user documentation:
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552)
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552B1)
486
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
FPGA_XDATA_READ_BL........................................................................................................... 44
FPGA_XDATA_READ_BL (FPGA1401Tp1 with Multi-I/O Module Settings)................................ 478
Parameters Page (FPGA_XDATA_READ_BL)............................................................................. 479
Common settings
Block Description (FPGA_XDATA_WRITE_BL)............................................ 50
To specify write access by the FPGA model to the processor model via
processor bus.
FPGA_XDATA_READ_BL.......................................................................... 44
To implement read access to processor-bus data in the FPGA model.
487
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The FPGA1401Tp1 with Multi-I/O Module frameworks provide the following
access types that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
488
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
489
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 488.
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
490
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1, if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data is lost before the currently read buffer was filled.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 488.
491
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
492
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 488.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
493
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready o send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 488.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
494
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the following standard
frameworks is included in this user documentation:
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552)
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552B1)
FPGA_XDATA_WRITE_BL.......................................................................................................... 49
FPGA_XDATA_WRITE_BL (FPGA1401Tp1 with Multi-I/O Module Settings)............................... 487
Parameters Page (FPGA_XDATA_WRITE_BL)............................................................................ 488
495
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Common settings
Block Description (FPGA_IO_READ_BL).................................................... 54
To implement read access to a physical input channel in the FPGA model.
496
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Description The framework provides different I/O types, which you can select on the Unit
page of the block. The number of the available physical connections on the
DS1552 or DS1552B1 Multi-I/O Module determines the I/O functions that you
can select:
§ ADC 1 (Type A) … ADC 8 (Type A)
§ ADC 1 (Type B) … ADC 16 (Type B)
§ Digital Crank/Cam Sensor 1 ... Digital Crank/Cam Sensor 3
To provide bit-wise read access to digital camshaft and crankshaft sensors.
Each channel is 1 bit wide.
§ Digital In 1 (Type A) … Digital In 16 (Type A)
§ Digital In 1 (Type B) … Digital In 8 (Type B)
§ Inductive Zero Voltage Detector
To provide read access to an inductive zero voltage detector. If a zero crossing
from positive to negative is detected, the output signal is 1 for 1 clock cycle.
§ Status In
§ Temperature
To provide read access to the FPGA's die temperature.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block, except
for the Status In and Temperature function.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
ADC (Type A) description Block display If you select an ADC (Type A) channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
497
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range (DS1552): 0 V … +5 V
Input voltage range (DS1552B1): -10 V ... +10 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
498
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
ADC (Type A) settings Only common dialog settings. Refer to Common settings on page 497.
ADC (Type B) description Block display If you select an ADC (Type B) channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -10 V ... +10 V
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0
Range: -32768 … +32767
Update rate: 0.2 Msps
499
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
ADC (Type B) settings Only common dialog settings. Refer to Common settings on page 497.
Digital Crank/Cam Sensor Block display If you select a Digital Crank/Cam Sensor channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
500
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
Data Outputs the status of the crank/cam sensor.
Data type: UFix_1_0
§ 0: The input signal is lower than the Low threshold voltage parameter.
§ 1: The input signal is higher than the High threshold voltage parameter.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input range, Data outport is saturated to minimum or maximum range
value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Digital Crank/Cam Sensor The following settings on the Parameters page are specific to the Digital
settings Crank/Cam Sensor I/O function. For common dialog settings, refer to Common
settings on page 497.
Low threshold voltage (-40000 mV ... +40000 mV) Lets you set the low
threshold level for the selected digital input channel. Below this level a logical 0
501
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
is detected, above this level a logical 1 is detected, if the high threshold voltage
was crossed before.
High threshold voltage (-40000 mV ... +40000 mV) 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.
Digital In (Type A) description Block display If you select a Digital In (Type A) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level:
§ 3.6 V for low-high transition
§ 1.2 V for high-low transition
Output
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
§ 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: FPGA clock frequency
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 ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the corresponding minimum or
maximum value.
502
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Note
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
503
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Digital In (Type A) settings Only common dialog settings. Refer to Common settings on page 497.
Digital In (Type B) description Block display If you select a Digital In (Type B) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: 1 V ... 7.5 V (in steps of 0.1 V)
Output
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
§ 0: Input voltage of the channel is below the specified threshold voltage.
§ 1: Input voltage of the channel is higher than or equal to the specified threshold
voltage.
Update rate: FPGA clock frequency
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 ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the corresponding minimum or
maximum value.
Note
504
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
You can use the same digital channel for input and output signals.
Digital In (Type B) settings The following settings on the Parameters page are specific to the Digital In
(Type B) I/O function. For common dialog settings, refer to Common settings on
page 497.
Threshold voltage Lets you specify the threshold level for the current digital
channel in the range 1,000 mV … 7,500 mV in steps of 100 mV. If the input
signal is below this level, a logical 0 is detected, otherwise a logical 1.
The selected threshold voltage is also valid for the enabled simulation data
inport.
505
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Inductive Zero Voltage Block display If you select a Inductive Zero Voltage Detector channel from
Detector description the channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
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 1 clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input range, Data outport is saturated to minimum or maximum range
value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
506
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Inductive Zero Voltage Only common dialog settings. Refer to Common settings on page 497.
Detector settings
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
initialization sequence status information:
Port Description
Output
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.
Temperature Block display If you select the Temperature channel from the channel list, the
block display changes.
507
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -273.15 °C ... 230.70 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the raw value of the FPGA's die temperature measurement. Use the 12
MSB bits to calculate the die temperature.
Equation for calculating the die temperature:
Temperature [°C] = (float)(Temperature[hex] &
0xFFF0) · 503.975 / 65536
- 273.15
Data type: UFix_16_0
Data width: 1
Value range: 0 ... 65536
High Outputs a flag if the FPGA's die temperature exceeds 105 °C.
To reset the flag, the die temperature must fall below 85 °C.
Data type: UFix_1_0
§ 0: Die temperature does not exceed 105 °C.
§ 1: Die temperature exceeds 105 °C.
Note
Temperature settings Only common dialog settings. Refer to Common settings on page 497.
508
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
ADC (Type A and Type B) The following settings on the Scaling page are specific to the ADC (Type A) and
settings ADC (Type B) I/O functions.
Note
509
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
510
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital In (Type A and Type B) The following settings on the Scaling page are specific to the Digital In
settings (Type A) and Digital In (Type B) I/O functions.
Invert polarity Lets you adapt the measured values to the electrical input
signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Digital Crank/Cam Sensor The Scaling page is empty because this I/O function does not support FPGA
settings scaling to scale I/O signals.
511
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Inductive Zero Voltage The Scaling page is empty because this I/O function does not support FPGA
Detector scaling to scale I/O signals.
Status In The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Temperature The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Description The Description page provides detailed information about the I/O type that you
selected on the corresponding Unit page. The information is either in the text
field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the I/O function that is provided by the following standard
frameworks is included in this user documentation:
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552)
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552B1)
FPGA_IO_READ_BL................................................................................................................... 54
FPGA_IO_READ_BL (FPGA1401Tp1 with Multi-I/O Module Settings)....................................... 496
Parameters Page (FPGA_IO_READ_BL).................................................................................... 496
Scaling Page (FPGA_IO_READ_BL)........................................................................................... 509
512
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Common settings
Block Description (FPGA_IO_WRITE_BL)................................................... 59
To implement write access to a physical output channel in the FPGA
model.
513
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Description The framework provides the three I/O types Analog, Digital, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections on the DS1552 Multi-I/O Module determines the I/O
functions that you can select:
§ DAC 1 … DAC 4
§ Digital Out 1 (Type A) … Digital Out 16 (Type A)
§ Digital Out 1 (Type B) … Digital Out 8 (Type B)
§ LED Out
§ Sensor Supply
§ UART 1 (RS232) … UART 2 (RS232)
§ UART 1 (RS422/485) … UART 2 (RS422/485)
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out and Sensor Supply functions.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim_Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
If you have selected one of the UART functions, this setting is replaced by
function-specific simulation settings.
DAC description Block display If you have select a DAC channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog output voltage and the
input of the block is:
514
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Input
Data Outputs a signal in the specified range.
Data type: UFix_16_0
Output voltage range: 0 … +65535
The range can be exceeded, and saturation is performed to a minimum or maximum
value.
Hardware update rate: 2.1 Msps
If the values are updated at a higher FPGA model rate, intermediate values are not
updated by the DAC.
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output voltage range: 0 V … +5 V
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
DAC settings Only common dialog settings. Refer to Common settings on page 514.
Digital Out (Type A) Block display If you select a Digital Out (Type A) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
515
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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
set to the specified high supply voltage (VDRIVE).
The hardware output is only driven if the Enable port is set to 1, otherwise the
output is set to high impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data
outport, otherwise it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V ... 45 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
516
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Digital Out (Type A) settings The following settings on the Parameters page are specific to the Digital Out
(Type A) I/O function. For common dialog settings, refer to Common settings on
page 514.
Simulated VDRIVE pin Lets you select the voltage for the simulated high
side switch for all digital output channels in the range 0 … 45000 mV.
Note
You can specify the simulated voltage value only globally for all digital
output channels.
Digital Out (Type B) Block display If you select a Digital Out (Type B) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
The hardware output is only driven if the Enable port is set to 1, otherwise the
output is set to high impedance (High-Z).
Data Type: UFix_1_0
517
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data
outport, otherwise it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V … 3.3 V or 0 V … 5 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
You can use the same digital channel for input and output signals.
Digital Out (Type B) settings The following settings on the Parameters page are specific to the Digital Out
(Type B) I/O function. For common dialog settings, refer to Common settings on
page 514.
518
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
High supply Lets you select the voltage for the high side switch (3.3 V or 5 V)
for all digital output channels.
Note
You can specify the high supply voltage value only globally for all digital
output channels.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the FPGA status LED near the DS1514 ZIF I/O connector.
Data type: UFix_1_0
§ 0: LED lights up green.
§ 1: LED lights up orange.
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used (=1).
Sensor Supply description Block display If you select the Sensor Supply channel from the channel list,
the block display changes.
519
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Output voltage: 2 V … 20 V according to the specified supply voltage
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Sensor Supply settings The following settings on the Parameters page are specific to the Sensor
Supply I/O function. For common dialog settings, refer to Common settings on
page 514.
Supply voltage Lets you enter the supply voltage a connected sensor is to be
driven with in the range 2000 mV … 20000 mV in steps of 100 mV.
UART (RS232) description Block display If you select an UART (RS232) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
520
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
Write_Enable must be set to 1 for only one clock cycle.
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to
get the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
The hardware output port is driven with the values from the TX FIFO buffer.
It is synchronously running to the UART clock defined by the UART baud
rate. The hardware port has inverted voltage levels of ‑6 V (logical high)
and +6 V (logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
RTS Specifies the Ready‑To‑Send (RTS) signal.
The RTS/CTS handshake is handled by the user, the RTS signal is just passed
through and adapted to the physical layer.
Data type: UFix_1_0
Data width: 1
The hardware port is synchronously running to the UART clock defined by
the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
521
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_CTS Simulates the Clear‑To‑Send (CTS) hardware signal.
Available only if Enable simulation CTS port is set on the Parameters
page.
The RTS/CTS handshake is handled by the user. The Sim_CTS signal is just
passed through to CTS.
Data type: Double
Data width: 1
Range:
§ 0: CTS inactive
§ 1: CTS active
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the buffer
(Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
522
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Data width: 1
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
CTS Outputs the state of the Clear‑To‑Send (CTS) hardware port.
RTS/CTS handshake is handled by the user. CTS is just passed through with
conversion to logical 1 and 0.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: CTS inactive
§ 1: CTS active
The CTS hardware port is synchronously running to the UART clock defined
by the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the TX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
523
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Range:
§ 0: Low
§ 1: High
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_RTS Simulates the Ready‑To‑Send (RTS) hardware signal.
Available only if Enable simulation RTS port is set on the Parameters
page.
The signal is in logical format and only passed through to the RTS signal.
Data type: Double
Data width: 1
Range:
§ 0: RTS inactive
§ 1: RTS active
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
UART (RS232) settings The following settings on the Parameters page are specific to the UART
(RS232) I/O function.
524
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Baud rate Lets you select the baud rate in the range 50 … 1,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation CTS port Lets you enable an inport for offline simulation
data. The Sim_CTS inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
Enable simulation RTS port Lets you enable an outport for offline
simulation data. The Sim_RTS outport is added to the block to connect it to
a Simulink-based I/O environment model.
UART (RS422/485) description Block display If you select an UART (RS422/485) channel from the channel
list, the block display changes. The simulation ports are displayed optionally.
525
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
Write_Enable must be set to 1 for only one clock cycle.
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to get
the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
The hardware output port is driven with the values from the TX FIFO buffer. It
is synchronously running to the UART clock defined by the UART baud rate.
The hardware port has inverted voltage levels of ‑6 V (logical high) and +6 V
(logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
526
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Port Description
Driver_Enable Specifies to enable the output driver in the transceiver for data transmission.
If you use the UART (RS485/422) function in half-duplex mode, the output
driver must be disabled while receiving data.
Data type: UFix_1_0
Data width: 1
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the
buffer (Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
Data width: 1
527
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the RX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
Range:
§ 0: Low
§ 1: High
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1401Tp1 with Multi-I/O Module frameworks. The signals are available
528
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
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:
UART (RS422/485) settings The following settings on the Parameters page are specific to the UART
(RS422/485) I/O function.
Baud rate Lets you select the baud rate in the range 50 … 10,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
529
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
Termination Lets you enable an internal termination between RX‑ and RX+
and between TX‑ and TX+.
Setting Meaning
Open No termination
Terminated The RX and TX signals are terminated via an
internal 120 Ω resistor.
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
530
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
DAC settings The following settings on the Scaling page are specific to the DAC I/O function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
531
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
532
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital Out (Type A and The following settings on the Scaling page are specific to the Digital Out
Type B) settings (Type A) and Digital Out (Type B) I/O functions.
LED Out settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Sensor Supply settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
UART settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
533
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Description The Description page provides detailed information about the I/O type that you
selected on the corresponding Unit page. The information is either in the text
field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the I/O function that is provided by the following standard
frameworks is included in this user documentation:
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552)
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552B1)
FPGA_IO_WRITE_BL.................................................................................................................. 58
FPGA_IO_WRITE_BL (FPGA1401Tp1 with Multi-I/O Module Settings)...................................... 513
Parameters Page (FPGA_IO_WRITE_BL)................................................................................... 513
Scaling Page (FPGA_IO_WRITE_BL)......................................................................................... 531
534
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
Common settings
Unit Page (FPGA_INT_BL)......................................................................... 64
To specify the interrupt channel used to trigger a task in the processor
model.
Description The FPGA1401Tp1 with Multi-I/O Module frameworks provide 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.
Int description Block display The figure below shows the block display with the optional
simulation port.
535
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function-call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
Description The Description page provides detailed information about the I/O type that you
selected on the corresponding Unit page. The information is either in the text
field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the I/O function that is provided by the following standard
frameworks is included in this user documentation:
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552)
§ FPGA1401Tp1 (7K325) with Multi-I/O Module (DS1552B1)
536
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Multi-I/O Module Frameworks
FPGA_INT_BL............................................................................................................................ 62
FPGA_INT_BL (FPGA1401Tp1 with Multi-I/O Module Settings)................................................ 534
Parameters Page (FPGA_INT_BL)............................................................................................. 535
537
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
538
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Common settings
Block Description (FPGA_XDATA_READ_BL)............................................. 45
To specify read access by the FPGA model to the processor model via
processor bus.
FPGA_XDATA_WRITE_BL......................................................................... 49
To implement write access to processor-bus data in the FPGA model.
Purpose To specify the data format and specific settings for the selected access type.
Description The DS1554 Engine Control I/O Module framework provides the following access
types, which you can select on the Unit page of the block's dialog:
§ Fixed-point format:
Signed or unsigned data format with adjustable binary point 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.
539
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 46.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to any Simulink
signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
540
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange
including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from an
intermodule bus register. The data format depends
on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary
point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 540.
541
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
542
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Port Description
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 540.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange
including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on
the Parameters page.
Data type: Double
543
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an
intermodule bus register. The data format depends
on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary
point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the
register status. If the flag changes from 0 to 1 and
then to 0 again, the requested register contains a
new value. The flag is set to 1 only within one clock
cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 540.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
544
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 540.
545
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard FPGA1401Tp1
(7K325) with Engine Control I/O Module (DS1554) framework is included in
this user documentation. The descriptions of the access type of customized
frameworks, installed I/O modules, or IP modules are available as a separate
documents.
FPGA_XDATA_READ_BL........................................................................................................... 44
FPGA_XDATA_READ_BL (FPGA1401Tp1 with Engine Control I/O Module Settings)................. 538
Parameters Page (FPGA_XDATA_READ_BL)............................................................................. 539
546
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Common settings
Block Description (FPGA_XDATA_WRITE_BL)............................................ 50
To specify write access by the FPGA model to the processor model via
processor bus.
FPGA_XDATA_READ_BL.......................................................................... 44
To implement read access to processor-bus data in the FPGA model.
Purpose To specify the data format and specific settings for the selected access type.
547
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides the following access types, which you can select on the
Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
There are settings that are common to both access types and settings that are
specific to each access type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
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.
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 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).
548
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block so you can connect
it to any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
549
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 548.
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
550
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Port Description
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via the intermodule bus in
the following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer, and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 548.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enable the
simulation data port. The Sim_Status outport is added to the block.
551
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 548.
552
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready o send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
553
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 548.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
554
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard FPGA1401Tp1
(7K325) with Engine Control I/O Module (DS1554) framework is included in
this user documentation. The descriptions of the access type of customized
frameworks, installed I/O modules, or IP modules are available as a separate
documents.
FPGA_XDATA_WRITE_BL.......................................................................................................... 49
FPGA_XDATA_WRITE_BL (FPGA1401Tp1 with Engine Control I/O Module Settings)................ 547
Parameters Page (FPGA_XDATA_WRITE_BL)............................................................................ 547
Common settings
Block Description (FPGA_IO_READ_BL).................................................... 54
To implement read access to a physical input channel in the FPGA model.
555
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Description The framework provides different I/O types, which you can select on the Unit
page of the block. The number of the available physical connections on the
DS1554 Engine Control I/O Module determines the I/O functions that you can
select:
§ Status In
§ Digital Crank/Cam Sensor 1 ... Digital Crank/Cam Sensor 5
To provide bit-wise read access to digital camshaft and crankshaft sensors.
Each channel is 1 bit wide.
§ Inductive Zero Voltage Detector
To provide read access to an inductive zero voltage detector. If a zero crossing
from positive to negative is detected, the output signal is 1 for 1 clock cycle.
§ Temperature
To provide read access to the FPGA's die temperature.
§ Digital In 1 (Type B) … Digital In 8 (Type B)
§ ADC 1 (Type A) … ADC 14 (Type A)
§ Knock Sensor 1 ... Knock Sensor 4
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block, except
for the Status In and Temperature functions.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to simulation
data coming from a Simulink-based I/O environment model.
556
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
initialization sequence status information:
Port Description
Output
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 finished.
Digital Crank/Cam Sensor Block display If you select a Digital Crank/Cam Sensor channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
557
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Data Outputs the status of the crank/cam sensor.
Data type: UFix_1_0
§ 0: The input signal is lower than the Low threshold voltage parameter.
§ 1: The input signal is higher than the High threshold voltage parameter.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input range, the Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Digital Crank/Cam Sensor The following settings on the Parameters page are specific to the Digital
settings Crank/Cam Sensor I/O function. For common dialog settings, refer to Common
settings on page 556.
Low threshold voltage (-40000 mV ... +40000 mV) Lets you set the low
threshold level for the selected digital input channel in steps of 100 mV. Below
this level, a logical 0 is detected, above this level, a logical 1 is detected if the
high threshold voltage was crossed before.
High threshold voltage (-40000 mV ... +40000 mV) Lets you set the high
threshold level for the selected digital input channel in steps of 100 mV. The
logical 1 is output if this level is crossed and stays 1 until the signal falls below
the low threshold level.
Inductive Zero Voltage Block display If you select an Inductive Zero Voltage Detector channel from
Detector description the channel list, the block display changes. The simulation ports are displayed
optionally.
558
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
I/O characteristics The following table describes the ports of the block for
Inductive Zero Voltage Detector channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
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 1 clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input range, the Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Inductive Zero Voltage Only common dialog settings. Refer to Common settings on page 556.
Detector settings
559
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Temperature description Block display If you select the Temperature channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -273.15 °C ... 230.70 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the raw value of the FPGA's die temperature measurement. Use the
12 MSB bits to calculate the die temperature.
Equation for calculating the die temperature:
Temperature [°C] = (float)(Temperature[hex] &
0xFFF0) · 503.975 / 65536
- 273.15
Data type: UFix_16_0
Data width: 1
Value range: 0 ... 65536
High Outputs a flag if the FPGA's die temperature exceeds 105 °C.
To reset the flag, the die temperature must fall below 85 °C.
Data type: UFix_1_0
§ 0: Die temperature does not exceed 105 °C.
§ 1: Die temperature exceeds 105 °C.
Note
560
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Temperature settings Only common dialog settings. Refer to Common settings on page 556.
Digital In (Type B) description Block display If you select a Digital In (Type B) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: 1 V ... 7.5 V (in steps of 0.1 V)
Output
Data Outputs the current results of the digital input channel.
Data type: UFix_1_0
§ 0: Input voltage of the channel is below the specified threshold voltage.
§ 1: Input voltage of the channel is higher than or equal to the specified threshold
voltage.
Update rate: FPGA clock frequency
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 Data Sheet DS1554 Engine Control I/O Module
(MicroAutoBox II Hardware Reference ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the appropriate minimum or
maximum value.
Note
561
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Digital In (Type B) settings The following settings on the Parameters page are specific to the Digital In
(Type B) I/O function. For common dialog settings, refer to Common settings on
page 556.
Threshold voltage Lets you specify the threshold level for the current digital
channel in the range 1,000 mV … 7,500 mV in steps of 100 mV. If the input
signal is below this level, a logical 0 is detected, otherwise a logical 1.
The selected threshold voltage is also valid for the enabled simulation data
inport.
562
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
ADC (Type A) description Block display If you select an ADC (Type A) channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -10 V ... +10 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input voltage range, Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
563
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
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.
ADC (Type A) settings Only common dialog settings. Refer to Common settings on page 556.
564
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Knock Sensor description Block display If you select the Knock Sensor channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for knock sensor input
channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: –5 V ... +5 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input voltage range, Data outport is saturated to the minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
565
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
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.
Knock Sensor settings Only common dialog settings. Refer to Common settings on page 556.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
566
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
ADC (Type A) settings The following settings on the Scaling page are specific to the ADC (Type A) I/O
function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
567
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
568
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital In (Type B) settings The following settings on the Scaling page are specific to the Digital In
(Type B) I/O function.
Invert polarity Lets you adapt the measured values to the electrical input
signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Digital Crank/Cam Sensor The Scaling page is empty because this I/O function does not support FPGA
settings scaling to scale I/O signals.
Inductive Zero Voltage The Scaling page is empty because this I/O function does not support FPGA
Detector scaling to scale I/O signals.
Knock Sensor The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Status In The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Temperature The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
569
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard FPGA1401Tp1
(7K325) with Engine Control I/O Module (DS1554) framework is included in
this user documentation. The descriptions of the access type of customized
frameworks, installed I/O modules, or IP modules are available as a separate
documents.
FPGA_IO_READ_BL................................................................................................................... 54
FPGA_IO_READ_BL (FPGA1401Tp1 with Engine Control I/O Module Settings)........................ 555
Parameters Page (FPGA_IO_READ_BL).................................................................................... 556
Scaling Page (FPGA_IO_READ_BL)........................................................................................... 566
570
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Common settings
Block Description (FPGA_IO_WRITE_BL)................................................... 59
To implement write access to a physical output channel in the FPGA
model.
Description The framework provides the three I/O types Analog, Digital, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections on the DS1554 Engine Control I/O Module determines the
I/O functions that you can select:
§ LED Out
§ Sensor Supply
§ Digital Out 1 (Type A) … Digital Out 40 (Type A)
§ Digital Out 1 (Type B) … Digital Out 8 (Type B)
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out function.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim_Data outport is added to the block so you can connect it to a
Simulink-based I/O environment model.
571
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the FPGA status LED. The LED is located near the
DS1514 ZIF I/O connector.
Data type: UFix_1_0
§ 0: LED lights up green.
§ 1: LED lights up orange.
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used (=1).
Sensor Supply description Block display If you select the Sensor Supply channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
Sim_Data Simulates an output signal in the same range as that specified
for the real output signal.
Output voltage: 13.14 V
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.
572
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Sensor Supply settings Only common dialog settings. Refer to Common settings on page 571.
Digital Out (Type A) Block display If you select a Digital Out (Type A) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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 set to the
specified high-supply voltage (VDRIVE).
The hardware output is driven only if the Enable port is set to 1, otherwise the output is set to high
impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data outport, otherwise
it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V ... 45 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
573
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
574
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Digital Out (Type A) settings The following settings on the Parameters page are specific to the Digital Out
(Type A) I/O function. For common dialog settings, refer to Common settings on
page 571.
Simulated VDRIVE pin Lets you select the voltage for the simulated high-
side switch for all digital output channels in the range 0 … 45000 mV in steps of
100 mV.
Note
You can specify the simulated voltage value only globally for all digital
output channels.
Digital Out (Type B) Block display If you select a Digital Out (Type B) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
The hardware output is driven only if the Enable port is set to 1, otherwise the output is set to high
impedance (High-Z).
Data Type: UFix_1_0
575
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Port Description
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data outport, otherwise
it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V … 3.3 V or 0 V … 5 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Digital Out (Type B) settings The following settings on the Parameters page are specific to the Digital Out
(Type B) I/O function. For common dialog settings, refer to Common settings on
page 571.
576
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
High supply Lets you select the voltage for the high-side switch (3.3 V or 5 V)
for all digital output channels.
Note
You can specify the high-supply voltage value only globally for all digital
output channels.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital Out (Type A and The following settings on the Scaling page are specific to the Digital Out
Type B) settings (Type A) and Digital Out (Type B) I/O functions.
577
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
LED Out settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Sensor Supply settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
The description of the access type that is provided by the standard FPGA1401Tp1
(7K325) with Engine Control I/O Module (DS1554) framework is included in
this user documentation. The descriptions of the access type of customized
frameworks, installed I/O modules, or IP modules are available as a separate
documents.
FPGA_IO_WRITE_BL.................................................................................................................. 58
FPGA_IO_WRITE_BL (FPGA1401Tp1 with Engine Control I/O Module Settings)....................... 570
Parameters Page (FPGA_IO_WRITE_BL)................................................................................... 571
Scaling Page (FPGA_IO_WRITE_BL)......................................................................................... 577
578
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
Common settings
Unit Page (FPGA_INT_BL)......................................................................... 64
To specify the interrupt channel used to trigger a task in the processor
model.
Description The FPGA1401Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework 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.
579
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
Int description Block display The following illustration shows the block display with the
optional simulation port:
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function-call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block so you can connect it to a function-
call subsystem in the processor model.
Description The Description page provides detailed information about the access type that
you selected on the corresponding Unit page. The information is either in the
text field itself or in an external help document that you can open by clicking the
function-specific Help button on this page.
580
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1401Tp1 with Engine Control I/O Module Framework
The description of the access type that is provided by the standard FPGA1401Tp1
(7K325) with Engine Control I/O Module (DS1554) framework is included in
this user documentation. The descriptions of the access type of customized
frameworks, installed I/O modules, or IP modules are available as a separate
documents.
FPGA_INT_BL............................................................................................................................ 62
FPGA_INT_BL (FPGA1401Tp1 with Engine Control I/O Module Settings)................................. 579
Parameters Page (FPGA_INT_BL)............................................................................................. 579
581
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox II Frameworks
582
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the MicroAutoBox III Frameworks
583
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
584
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The FPGA1403Tp1 with Multi-I/O Module frameworks provide the following
access types that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an intermodule
bus buffer. The bus access type lets you use Simulink buses to model the data
exchange between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 46.
585
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to any Simulink signal
used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data. By default, the sample time is
inherited. You must only specify the sample time explicitly, if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
586
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from a intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 586.
587
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
588
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 586.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an intermodule bus register. The data
format depends on the related dialog settings.
589
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 586.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
590
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 586.
591
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
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.
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.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
592
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 586.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
593
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The FPGA1403Tp1 with Multi-I/O Module frameworks provide the following
access types that you can select in the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
594
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
§ Bus
If you select Bus as the access type, the data is written to an intermodule
bus buffer. The bus access type lets you use Simulink buses to model the data
exchange between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block to connect it to
any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
595
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 595.
596
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
597
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1, if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data is lost before the currently read buffer was filled.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 595.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
598
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 595.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
599
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready o send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
Available only if the bus transfer mode is disabled on the Parameters page.
Data type: UFix_1_0
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
600
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 595.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to a buffer for data transmission.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Output
601
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the number of bus signals.
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 595.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
If clicked, the FPGA Programming Blockset analyzes the connected Simulink
bus and sets the Data port to a matching bus topology. For instructions,
refer to How to Use Simulink Buses of the FPGA Model to Model Processor
Communication (FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
602
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Description The framework provides different I/O types, which you can select on the Unit
page of the block. The number of the available physical connections on the
DS1552 or DS1552B1 Multi-I/O Module determines the I/O functions that you
can select:
§ Analog In 10 Channel 1 … Analog In 10 Channel 8 (only DS1552)
§ Analog In 11 Channel 1 … Analog In 11 Channel 8 (only DS1552B1)
§ Analog In 12 Channel 1 … Analog In 12 Channel 16
§ Digital Crank/Cam Sensor 1 ... Digital Crank/Cam Sensor 3
To provide bit-wise read access to digital camshaft and crankshaft sensors.
Each channel is 1 bit wide.
§ Digital In 5 Channel 1 … Digital In 5 Channel 16
§ Digital InOut 6 Channel 1 … Digital InOut 6 Channel 8
603
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block, except
for the Status In and Temperature function.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Analog In 10 description Hardware support Only the DS1552 Multi‑I/O Module provides the
Analog In 10 channels.
Block display If you select an Analog In 10 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: 0 V … +5 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
604
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Analog In 10 settings Only common dialog settings. Refer to Common settings on page 604.
Analog In 11 description Hardware support Only the DS1552B1 Multi‑I/O Module provides the
Analog In 11 channels.
605
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Block display If you select an Analog In 11 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: ‑10 V ... +10 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
606
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Analog In 11 settings Only common dialog settings. Refer to Common settings on page 604.
Analog In 12 description Block display If you select an Analog In 12 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
607
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -10 V ... +10 V
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: Fix_16_0
Range: -32768 … +32767
Update rate: 0.2 Msps
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input voltage range, Data outport is saturated to minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Analog In 12 settings Only common dialog settings. Refer to Common settings on page 604.
608
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Digital Crank/Cam Sensor Block display If you select a Digital Crank/Cam Sensor channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
Data Outputs the status of the crank/cam sensor.
Data type: UFix_1_0
§ 0: The input signal is lower than the Low threshold voltage parameter.
§ 1: The input signal is higher than the High threshold voltage parameter.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input range, Data outport is saturated to minimum or maximum range
value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
609
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Digital Crank/Cam Sensor The following settings on the Parameters page are specific to the Digital
settings Crank/Cam Sensor I/O function. For common dialog settings, refer to Common
settings on page 604.
Low threshold voltage (-40000 mV ... +40000 mV) 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.
High threshold voltage (-40000 mV ... +40000 mV) 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.
Digital In 5 description Block display If you select a Digital In 5 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level:
§ 3.6 V for low-high transition
§ 1.2 V for high-low transition
Output
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
§ 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.
610
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Update rate: FPGA clock frequency
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 ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the corresponding minimum or
maximum value.
Note
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
611
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Digital In 5 settings Only common dialog settings. Refer to Common settings on page 604.
Digital InOut 6 (In) description Block display If you select a Digital InOut 6 (In) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: 1 V ... 7.5 V (in steps of 0.1 V)
Output
612
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Data Outputs the current results of digital input channel.
Data type: UFix_1_0
§ 0: Input voltage of the channel is below the specified threshold voltage.
§ 1: Input voltage of the channel is higher than or equal to the specified threshold
voltage.
Update rate: FPGA clock frequency
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 ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the corresponding minimum or
maximum value.
Note
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
613
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
You can use the same digital channel for input and output signals.
Digital InOut 6 (In) settings The following settings on the Parameters page are specific to the Digital InOut
6 (In) I/O function. For common dialog settings, refer to Common settings on
page 604.
Threshold voltage Lets you specify the threshold level for the current digital
channel in the range 1,000 mV … 7,500 mV in steps of 100 mV. If the input
signal is below this level, a logical 0 is detected, otherwise a logical 1.
The selected threshold voltage is also valid for the enabled simulation data
inport.
Inductive Zero Voltage Block display If you select a Inductive Zero Voltage Detector channel from
Detector description the channel list, the block display changes. The simulation ports are displayed
optionally.
614
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
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 1 clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input range, Data outport is saturated to minimum or maximum range
value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Inductive Zero Voltage Only common dialog settings. Refer to Common settings on page 604.
Detector settings
615
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
initialization sequence status information:
Port Description
Output
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.
Subsystem Clock description Block display If you select the Subsysten Clock channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Subsystem Outputs the clock signal of the selected subsystem clock domain. You specify the
Clock subsystem clock domain in the FPGA Setup block. Refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
616
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
System Clock description Block display If you select the Systen Clock channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
System Signal Block Block display If you select the System Signal Block channel from the channel
description list, the block display changes.
617
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
CN App Outputs the state of the processor application.
Status Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Opto_Ready Indicates whether an MGT module is ready for data exchange.
The port value remains 0, because the used dSPACE hardware does not support
MGT modules.
Temperature Block display If you select the Temperature channel from the channel list, the
block display changes.
618
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -273.15 °C ... 230.70 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the raw value of the FPGA's die temperature measurement. Use the 12
MSB bits to calculate the die temperature.
Equation for calculating the die temperature:
Temperature [°C] = (float)(Temperature[hex] &
0xFFF0) · 503.975 / 65536
- 273.15
Data type: UFix_16_0
Data width: 1
Value range: 0 ... 65536
High Outputs a flag if the FPGA's die temperature exceeds 105 °C.
To reset the flag, the die temperature must fall below 85 °C.
Data type: UFix_1_0
§ 0: Die temperature does not exceed 105 °C.
§ 1: Die temperature exceeds 105 °C.
Note
Temperature settings Only common dialog settings. Refer to Common settings on page 604.
619
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Analog in settings The following settings on the Scaling page are specific to the Analog In 10,
Analog In 11, and Analog In 12 I/O functions.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
620
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
621
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital in settings The following settings on the Scaling page are specific to the Digital In 5 and
Digital InOut 6 (In) I/O functions.
Invert polarity Lets you adapt the measured values to the electrical input
signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Digital Crank/Cam Sensor The Scaling page is empty because this I/O function does not support FPGA
settings scaling to scale I/O signals.
Inductive Zero Voltage The Scaling page is empty because this I/O function does not support FPGA
Detector settings scaling to scale I/O signals.
622
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Status In settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Temperature settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
623
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Description The framework provides the three I/O types Analog, Digital, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections on the DS1552 Multi-I/O Module determines the I/O
functions that you can select:
§ Analog Out 13 Channel 1 … Analog Out 13 Channel 4
§ Digital Out 5 Channel 1 … Digital Out 5 Channel 16
§ Digital InOut 6 Channel 1 … Digital InOut 6 Channel 8
§ LED Out
§ Sensor Supply
§ UART 3 (RS232) Channel 1 … UART 3 (RS232) Channel 2
§ UART 3 (RS422/485) Channel 1 … UART 3 (RS422/485) Channel 2
§ User Clock Out 1 … User Clock Out 32
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out and Sensor Supply functions.
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim_Data outport is added to the block to connect it to a Simulink-
based I/O environment model.
If you have selected one of the UART functions, this setting is replaced by
function-specific simulation settings.
Analog Out 13 description Block display If you have selected an Analog Out 13 channel from the
channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The scaling between the analog output voltage and the
input of the block is:
624
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Input
Data Outputs a signal in the specified range.
Data type: UFix_16_0
Output voltage range: 0 … +65535
The range can be exceeded, and saturation is performed to a minimum or maximum
value.
Hardware update rate: 2.1 Msps
If the values are updated at a higher FPGA model rate, intermediate values are not
updated by the DAC.
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output voltage range: 0 V … +5 V
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Analog Out 13 settings Only common dialog settings. Refer to Common settings on page 624.
625
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Digital Out 5 description Block display If you select a Digital Out 5 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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
set to the specified high supply voltage (VDRIVE).
The hardware output is only driven if the Enable port is set to 1, otherwise the
output is set to high impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 Out 5 Characteristics (MicroAutoBox III Hardware Installation
and Configuration ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data
outport, otherwise it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V ... 45 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
626
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Digital Out 5 settings The following settings on the Parameters page are specific to the Digital
Out 5 I/O function. For common dialog settings, refer to Common settings on
page 624.
Simulated VDRIVE pin Lets you select the voltage for the simulated high
side switch for all digital output channels in the range 0 … 45000 mV.
Note
You can specify the simulated voltage value only globally for all digital
output channels.
Digital InOut 6 (Out) Block display If you select a Digital InOut 6 (Out) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
627
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
The hardware output is only driven if the Enable port is set to 1, otherwise the
output is set to high impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data
outport, otherwise it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V … 3.3 V or 0 V … 5 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
628
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
You can use the same digital channel for input and output signals.
Digital InOut 6 (Out) settings The following settings on the Parameters page are specific to the Digital InOut
6 (Out) I/O function. For common dialog settings, refer to Common settings on
page 624.
High supply Lets you select the voltage for the high side switch (3.3 V or 5 V)
for all digital output channels.
Note
You can specify the high supply voltage value only globally for all digital
output channels.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the FPGA status LED near the DS1514 ZIF I/O connector.
Data type: UFix_1_0
§ 0: LED lights up green.
§ 1: LED lights up orange.
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used (=1).
629
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Sensor Supply description Block display If you select the Sensor Supply channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output
signal.
Output voltage: 2 V … 20 V according to the specified supply voltage
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
Sensor Supply settings The following settings on the Parameters page are specific to the Sensor
Supply I/O function. For common dialog settings, refer to Common settings on
page 624.
Supply voltage Lets you enter the supply voltage a connected sensor is to be
driven with in the range 2000 mV … 20000 mV in steps of 100 mV.
630
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
UART 3 (RS232) description Block display If you select an UART 3 (RS232) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
Write_Enable must be set to 1 for only one clock cycle.
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to
get the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
631
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
The hardware output port is driven with the values from the TX FIFO buffer.
It is synchronously running to the UART clock defined by the UART baud
rate. The hardware port has inverted voltage levels of ‑6 V (logical high)
and +6 V (logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
RTS Specifies the Ready‑To‑Send (RTS) signal.
The RTS/CTS handshake is handled by the user, the RTS signal is just passed
through and adapted to the physical layer.
Data type: UFix_1_0
Data width: 1
The hardware port is synchronously running to the UART clock defined by
the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_CTS Simulates the Clear‑To‑Send (CTS) hardware signal.
Available only if Enable simulation CTS port is set on the Parameters
page.
The RTS/CTS handshake is handled by the user. The Sim_CTS signal is just
passed through to CTS.
Data type: Double
Data width: 1
Range:
§ 0: CTS inactive
§ 1: CTS active
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
632
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the buffer
(Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
CTS Outputs the state of the Clear‑To‑Send (CTS) hardware port.
RTS/CTS handshake is handled by the user. CTS is just passed through with
conversion to logical 1 and 0.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: CTS inactive
§ 1: CTS active
The CTS hardware port is synchronously running to the UART clock defined
by the UART baud rate. The hardware port has voltage levels of +6 V (active,
logical high) and ‑6 V (inactive).
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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
633
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
value is valid, instead of one clock cycle when using the Write_Fifo_Full
signal.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the TX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
Range:
§ 0: Low
§ 1: High
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Sim_RTS Simulates the Ready‑To‑Send (RTS) hardware signal.
Available only if Enable simulation RTS port is set on the Parameters
page.
The signal is in logical format and only passed through to the RTS signal.
Data type: Double
Data width: 1
Range:
§ 0: RTS inactive
§ 1: RTS active
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
634
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. The signals are available at
the DS1514 ZIF I/O connector.
UART 3 (RS232) settings The following settings on the Parameters page are specific to the UART 3
(RS232) I/O function.
Baud rate Lets you select the baud rate in the range 50 … 1,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation CTS port Lets you enable an inport for offline simulation
data. The Sim_CTS inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
635
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
Enable simulation RTS port Lets you enable an outport for offline
simulation data. The Sim_RTS outport is added to the block to connect it to
a Simulink-based I/O environment model.
UART 3 (RS422/485) Block display If you select an UART (RS422/485) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Read_Enable Specifies to start receiving a value.
After three clock cycles, the value is available and can be read from the RX
FIFO buffer. The value remains valid until the next Read_Enable signal.
Before you read data from the RX FIFO buffer, you should check the
Read_Fifo_Empty signal not to be set. The Read_Fifo_Empty signal
switches one clock cycle after the RX FIFO value has been read.
Do not use the Read_Data_Count signal (Read_Data_Count < 0) to check
the RX FIFO buffer, because it requires one additional clock cycle to get the
count value.
You can read one value per clock cycle from the UART.
Data Type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Write_Enable Specifies to start sending a value.
The Write_Data value is written to the TX FIFO buffer, from which it is
automatically send to the TX output pin of the I/O connector using the
specified UART communication settings.
Write_Enable must be set to 1 for only one clock cycle.
636
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Before you write data to the TX FIFO buffer, you should check the
Write_Fifo_Full signal not to be set. The Write_Fifo_Full signal switches
one clock cycle after the Write_Enable signal has been set.
Do not use the Write_Data_Count signal (Write_Data_Count < 2047) to
check the TX FIFO buffer, because it requires one additional clock cycle to get
the count value.
Data type: UFix_1_0
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
The hardware output port is driven with the values from the TX FIFO buffer. It
is synchronously running to the UART clock defined by the UART baud rate.
The hardware port has inverted voltage levels of ‑6 V (logical high) and +6 V
(logical low).
Write_Data Specifies the value to be send.
The Write_Data signal is transferred at each clock cycle with Write_Enable
set to 1.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
Range exceeding is possible. Then, only the lowest bits 5 … 9 will be used.
Because of the unsigned data type, negative values will be interpreted as
positive values and the saturation will always be towards the maximum
value.
Driver_Enable Specifies to enable the output driver in the transceiver for data transmission.
If you use the UART (RS485/422) function in half-duplex mode, the output
driver must be disabled while receiving data.
Data type: UFix_1_0
Data width: 1
Sim_RX Simulates an RX value in the RX FIFO buffer.
Available only if Enable simulation RX port is set on the Parameters page.
Data type: Double
Data width: 1
The signal has to be in logical format with 1 as high and 0 as low, and
not in the inverted values of the physical layer (‑12 V high, +12 V low).
The format of this serial bitstream has to correspond to the specified UART
communication settings.
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Output
Read_Data_Count Outputs the number of new entries in the RX FIFO buffer.
Two clock cycles are required to return the number of entries.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
637
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
The range can be exceeded, and saturation is performed to a minimum or
maximum value.
Read_Data Outputs the last read data from the RX FIFO buffer.
The read_data is available after three clock cycles after the Read_Enable
signal. The return value is 0, if the data is read before anything has been
received by the RX hardware input.
Data type: UFix_9_0
Data width: 1
Range: 0 … 511
It is not possible to exceed the range.
The hardware input receives serial data for the UART RX FIFO buffer using
inverted voltage levels of ‑6 V (logical high) and +6 V (logical low).
Read_Fifo_Empty Outputs the status of the RX FIFO buffer.
If the status of the buffer is not empty, then you can start reading the data
using the Read_Enable signal.
The Read_Fifo_Empty signal switches one clock cycle after the FIFO value
has been read.
Do not use the Read_Data_Count signal to check the status of the
buffer (Read_Data_Count>0), because this requires one additional clock cycle
before its value is valid.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The RX FIFO buffer is not empty.
§ 1: The RX FIFO buffer is empty.
It is not possible to exceed the range.
Write_Data_Count Outputs the number of values in the TX FIFO buffer.
The values in the TX FIFO buffer has not been sent already.
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.
Data type: UFix_11_0
Data width: 1
Range: 0 … 2047
It is not possible to exceed the range.
Write_Fifo_Full Outputs the status of the TX FIFO buffer.
You can use the signal to check the RX FIFO buffer before you start writing
data to the buffer. The Write_Fifo_Full signal switches one clock cycle after
the Write_Enable signal has been set.
Data type: UFix_1_0
Data width: 1
Range:
§ 0: The TX FIFO buffer is not full.
§ 1: The TX FIFO buffer is full.
It is not possible to exceed the range.
638
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Port Description
Sim_TX Simulates the TX hardware signal.
Available only if Enable simulation TX port is set on the Parameters page.
The signal is in logical format and not in inverted values from the physical
layer (‑6 V high, +6 V low). The format of the serial bitstream corresponds to
the specified UART communication settings.
Data type: Double
Data width: 1
Range:
§ 0: Low
§ 1: High
Range exceeding is possible (using input bit widths > 1) and will be cast to 1
bit by using only the lowest bit.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
I/O mapping The following I/O mapping is relevant if you use one of the
FPGA1403Tp1 with Multi-I/O Module frameworks. 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:
639
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
UART 3 (RS422/485) settings The following settings on the Parameters page are specific to the UART 3
(RS422/485) I/O function.
Baud rate Lets you select the baud rate in the range 50 … 10,000,000 baud
(bits per second) from the given list.
Word length Lets you select the word length in the range 5 … 9 bits. The
word length includes the number of data bits and the optional parity bit.
For example, if a message consists of 8 data bits and the parity bit, you have to
set the word length to 9.
Note
The parity bit cannot be controlled via dialog setting. You have to consider
an optional parity bit in your own model implementation.
The Write_Data and Read_Data ports handle raw bits. If you want to use
a parity bit with the Write_Data port, you have to explicitly generate it and
provide it as the last bit of the port. If you want to use a parity bit with the
Read_Data port, you have to explicitly check it and read it as the last bit of the
port.
Stop bits Lets you select the number of stop bits in the range 1, 1.5 and 2.
Termination Lets you enable an internal termination between RX‑ and RX+
and between TX‑ and TX+.
Setting Meaning
Open No termination
Terminated The RX and TX signals are terminated via an
internal 120 Ω resistor.
640
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Enable simulation RX port Lets you enable an inport for offline simulation
data. The Sim_RX inport is added to the block to connect it to simulation data
coming from a Simulink-based I/O environment model.
Enable simulation TX port Lets you enable an outport for offline simulation
data. The Sim_TX outport is added to the block to connect it to a Simulink-based
I/O environment model.
User Clock Out 1 … 32 Block display If you select the User Clock Out channel from the channel list,
description the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
User Clock Clock signal for the clock domain used within the subsystem to which the block
belongs. For more information, refer to Using Multiple Clock Domains for FPGA
Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
User Clock Out 1 … 32 The Parameters page provides the following dialog setting:
settings
User clock period Lets you specify the expected clock period used within the
subsystem to which the block belongs. A common value for the clock period is in
the range 20 ns ... 4 ns (50 MHz ... 250 MHz).
The value is used during the build process when no user clock is available, for
example, to specify timing constraints.
User clock offline simulation period Lets you specify the clock period to be
used in offline simulation mode. The value must be greater than or equal to the
value of the User clock period parameter.
641
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Analog out settings The following settings on the Scaling page are specific to the Analog Out 13
I/O function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
642
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
Scaling factor Lets you specify the scaling factor. The scaling factor gains
the signal of the Data port or the replace value (FPGA test access) before it is
saturated.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling factor parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Scaling offset parameter
will be saturated to the minimum and maximum values that the scaling format
and the hardware supports.
Saturation minimum value Lets you specify the minimum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the scaled Data inport signal is saturated before it is output via an analog output
channel.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
643
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital outsettings The following settings on the Scaling page are specific to the Digital Out 5 and
Digital InOut 6 (out) I/O functions.
LED Out settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Sensor Supply settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
UART settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
644
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Multi-I/O Module Frameworks
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
Description The FPGA1403Tp1 with Multi-I/O Module frameworks provide 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.
645
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Int description Block display The figure below shows the block display with the optional
simulation port.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function-call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block to connect it to a function-call
subsystem in the processor model.
646
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
647
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Purpose To specify the data format and specific settings for the selected access type.
Description The DS1554 Engine Control I/O Module framework provides the following access
types that you can select on the Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
Ungrouped registers are automatically combined into one register group with
group ID Ungrouped to optimize data transfer. Since register groups can be
only accessed by one task, you have to explicitly group registers which are
used by different tasks.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is read from an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
§ Bus
If you select Bus as the access type, the data is read from an intermodule
bus buffer. The bus access type lets you use Simulink buses to model the data
exchange between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 46.
648
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_READ_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data outport are in floating‑point format. The fraction width
is displayed.
Format Lets you select 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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to any Simulink
signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the
ports used for simulation, for example, Sim_Data. By default, the sample time
is inherited. You must only specify the sample time explicitly if the modeling
situation inhibits to inherit the sample time, for example, if the corresponding
PROC block is part of an asynchronous task or is used for multiple access to the
same channel.
649
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Register In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 32-bit data value to be read from an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 649.
650
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Buffer In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 32-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
651
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 649.
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.
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.
Register64 In description Block display If you specify the register access type, the block display
changes. The simulation ports are optionally displayed.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Output
Data Outputs a 64-bit data value to be read from an intermodule bus register. The data
format depends on the related dialog settings.
652
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Port Description
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the register status. If the flag changes
from 0 to 1 and then to 0 again, the requested register contains a new value. The
flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 In settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 649.
Buffer64 In description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
653
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates an intermodule bus data exchange including floating-point to fixed-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Address Specifies an element in the buffer you want to read. The block requires 3 clock
cycles to update the value of the Data outport according to the specified address.
The maximum port range depends on the specified buffer size in the Parameters
page. The valid port range depends on the number of elements currently in the
buffer (see Data Count outport). If you request data from an address that is greater
than the Data Count value, the output of the Data outport is undefined. The first
element of a buffer is addressed by 0.
Data type: UFix_16_0
Output
Data Outputs a 64-bit data value to be read from an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type if the bus transfer mode is disabled on the Parameters page:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
Data Count Outputs the number of elements in the current buffer.
The maximum range depends on the specified buffer size. You can use the value to
define the valid range for the Address inport of 0 … (Data Count -1).
Data type: UFix_16_0
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Buffer64 In settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 649.
654
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
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.
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-bit in the FPGA
memory. This applies to any specified buffer and its related swinging buffer.
Bus In description Block display If you specify the access type, the block display changes. The
simulation port is optionally displayed.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Sim_Data Simulates a bus data exchange including floating-point to fixed-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768
Output
Data Outputs the signals of the Simulink bus. The data types of the signals depend
on the bus topology that is copied via Copy bus topology from corresponding
processor block or Copy bus topology from gcb on the Parameters page. The
maximum bit wide is 64 bits.
The resolution of the data types is restricted to 53 bits, because the data type of the
received bus signals from the processor application is double and the block converts
the signals to the signal data types.
Data New Outputs a flag that indicates the changes of the buffer status. If the flag changes
from 0 to 1 and then to 0 again, the requested buffer contains new values and is
ready to be read. The flag is set to 1 only within one clock cycle.
Data type: UFix_1_0
655
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Note
The range can be exceeded for the Data outport. The outport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Bus In settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 649.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64-bit in the FPGA memory. This
applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Copy bus topology from gcb Lets you copy an existing FPGA bus topology
from the selected Simulink Bus Creator block, subsystem inport block, or
subsystem outport block to the Data port of the Bus In block.
You cannot copy a bus topology from the processor model, because these
topologies do not include the FPGA data types. For instructions, refer to How
to Use Simulink Buses of the FPGA Model to Model Processor Communication
(FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
656
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Purpose To specify the data format and specific settings for the selected access type.
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework provides the following access types, which you can select on the
Unit page of the block's dialog:
§ Register/Register64
If you select Register or Register64 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 and 128 registers 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.
§ Buffer/Buffer64
If you select Buffer or Buffer64 as the access type, the data is written to an
intermodule bus buffer. 32 buffers are available that provides elements with a
data width of 32 bits each and 32 buffers that provides elements with a data
width of 64 bits each. Each buffer has a variable buffer size of 1 up to 32768
elements.
657
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
§ Bus
If you select Bus as the access type, the data is written to an intermodule
bus buffer. The bus access type lets you use Simulink buses to model the data
exchange between the processor and the FPGA.
There are settings that are common and settings that are specific to each access
type.
For more information, refer to Details on the access types on page 51.
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_XDATA_WRITE_BL block.
Binary point position (or fraction width) This setting depends on the
format selected in the Format setting.
§ 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 and the binary point position of the 64‑bit value in the range 0 … 64.
0 represents the lowest bit position, 32 or 64 the highest bit position.
§ floating‑point
The values of the Data inport are in floating‑point format. The fraction width
is displayed.
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.
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 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 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 displayed in the Binary point position (or fraction
width) setting.
Enable simulation data port Lets you enable an outport for offline
simulation data. The Sim_Data outport is added to the block so you can connect
it to any Simulink signal used for simulation.
Simulation ports sample time Lets you specify the sample time of the ports
used for simulation, for example, Sim_Data and Sim_Status. By default, the
sample time is inherited. You must only specify the sample time explicitly, if
the modeling situation inhibits to inherit the sample time, for example, if the
corresponding PROC block is part of an asynchronous task or is used for multiple
access to the same channel.
658
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Register Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 658.
659
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Buffer Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 32-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_32_<Binary point position>/Fix_32_<Binary point position>
§ Floating‑point format
XFloat_8_24
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready to send, even if it is not completely filled. The
buffer is switched and the data values are accessible via the intermodule bus in
the following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size.
660
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Port Description
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer, and Enable simulation port
is set on the Parameters page.
Data type: UInt32
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 658.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you enable the
simulation data port. The Sim_Status outport is added to the block.
Register64 Out description Block display If you specify the register access type, the block display
changes. The simulation ports are displayed optionally.
661
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block in
register access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus register. The data
format depends on the related dialog settings.
Data type:
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Note
The range can be exceeded for the Data inport. The inport's value is
then cast to the specified data format. This might cause truncation and
bit wrapping if insufficient bits are used before and after the binary point
position to represent the input value.
Register64 Out settings The following dialog settings are specific for the Register access type. For
common dialog settings, refer to Common settings on page 658.
Buffer64 Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
662
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to an intermodule bus buffer. The data
format depends on the related dialog settings.
§ Fixed‑point format
UFix_64_<Binary point position>/Fix_64_<Binary point 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 format
XFloat_11_53
Enable Specifies the current valid Data port value.
Data type: UFix_1_0
§ 0: The Data value to be written is not stored in the buffer.
§ 1: The Data value to be written is stored in the buffer. The value of the current
clock cycle is used.
Ready Explicitly specifies the buffer state as ready to send immediately, even if the buffer
is not completely filled. The data values are written to a new buffer in the following
clock cycle. While the port value is 1, the buffer switches every clock cycle. You are
therefore recommended to set the value for only one clock cycle. If the buffer is
completely filled, it is automatically switched, and the data values are stored in a
new buffer.
Data type: UFix_1_0
§ 0: The buffer is not ready to send.
§ 1: The buffer is marked as ready o send, even if it is not completely filled. The
buffer is switched and the data values are accessible via intermodule bus in the
following clock cycle.
The ready flag must be set no later than the last data value, otherwise the buffer
switches twice.
Output
Sim_Data Simulates an intermodule bus data exchange including fixed-point to floating-point
data conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the specified buffer size or
the number of bus signals.
Overflow Outputs a flag that indicates that a buffer overflow occurred. An overflow occurs if
the old buffer is not read completely before a new buffer is ready to be read.
§ 0: No overflow occurred.
§ 1: An overflow occurred. This value is set for one clock cycle.
Data type: UFix_1_0
Sim_Status Outputs information about the simulated data exchange on the Sim_Data outport.
Available only if the access type is specified as Buffer and Enable simulation port
is set on the Parameters page.
Data type: UInt32
663
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
Data width: 3
§ Sim_Status[0]: Contains the number of valid elements in the Sim_Data vector.
§ Sim_Status[1]: Indicates whether the current buffer contains new or old values. It
is 1 if the buffer contains new values.
§ Sim_Status[2]: Indicates whether a buffer overflow occurred. At least one buffer
was not read and its data was lost before the currently read buffer was filled.
Buffer64 Out settings The following dialog settings are specific for the Buffer access type. For common
dialog settings, refer to Common settings on page 658.
Buffer size Lets you specify the size of the buffer in the range 1 … 32768.
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.
Enable simulation status port Lets you enable an outport to get status
information about the simulation data that is available when you have enabled
the simulation data port. The Sim_Status outport is added to the block.
Bus Out description Block display If you specify the buffer access type, the block display changes.
The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block in
buffer access mode:
Port Description
Input
Data Specifies a 64-bit data value to be written to a buffer for data transmission.
The data types of the signals depend on the bus topology that is set via Copy bus
topology from corresponding processor block or Copy bus topology from gcb
on the Parameters page. The maximum bit width is 64 bits.
The resolution of the data type is restricted to 53 bits, because the block converts all
data values to double for transmission.
Output
664
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Port Description
Sim_Data Simulates a data transmission including fixed-point to floating-point data
conversion.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1 … 32768. The vector width depends on the number of bus signals.
Bus Out settings The following dialog settings are specific for the Bus access type. For common
dialog settings, refer to Common settings on page 658.
Buffer size Displays the size of the buffer in the range 1 … 32,768. The
buffer size depends on the number of bus signals.
Note
The FPGA memory blocks reserved for buffers have a granularity of 1,024
words. For example, a buffer with a buffer size of 1 allocates a memory
block of 1,024 words with a data width of 64 bits in the FPGA memory.
This applies to any buffer and the related swinging buffer.
Copy bus topology from corresponding processor block Lets you copy an
existing bus topology from the corresponding processor block in the processor
model. For more information, refer to How to Use Simulink Buses of the
Processor Model to Model the Processor Communication (FPGA Programming
Blockset Guide ).
Analyze bus topology of input Lets you set the Data inport to the bus
topology of the connected Simulink bus.
If clicked, the FPGA Programming Blockset analyzes the connected Simulink
bus and sets the Data port to a matching bus topology. For instructions,
refer to How to Use Simulink Buses of the FPGA Model to Model Processor
Communication (FPGA Programming Blockset Guide ).
Reset bus topology Lets you clear the bus topology of the Data port.
665
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Description The framework provides different I/O types, which you can select on the Unit
page of the block. The number of the available physical connections on the
DS1554 Engine Control I/O Module determines the I/O functions that you can
select:
§ Status In
§ Digital Crank/Cam Sensor 1 ... Digital Crank/Cam Sensor 5
To provide bit-wise read access to digital camshaft and crankshaft sensors.
Each channel is 1 bit wide.
§ Inductive Zero Voltage Detector
To provide read access to an inductive zero voltage detector. If a zero crossing
from positive to negative is detected, the output signal is 1 for 1 clock cycle.
§ Temperature
To provide read access to the FPGA's die temperature.
§ Digital InOut 8 Channel 1 … Digital InOut 8 Channel 8
666
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_READ_BL block.
Enable simulation port Lets you enable an inport for offline simulation data.
The Sim_Data inport is added to the block so you can connect it to simulation
data coming from a Simulink-based I/O environment model.
Status In description Block display If you select the Status In channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
initialization sequence status information:
Port Description
Output
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 finished.
667
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Digital Crank/Cam Sensor Block display If you select a Digital Crank/Cam Sensor channel from the
description channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block for
crank/cam input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
Data Outputs the status of the crank/cam sensor.
Data type: UFix_1_0
§ 0: The input signal is lower than the Low threshold voltage parameter.
§ 1: The input signal is higher than the High threshold voltage parameter.
Update rate: FPGA clock frequency
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input range, the Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
668
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Digital Crank/Cam Sensor The following settings on the Parameters page are specific to the Digital
settings Crank/Cam Sensor I/O function. For common dialog settings, refer to Common
settings on page 667.
Low threshold voltage (-40000 mV ... +40000 mV) Lets you set the low
threshold level for the selected digital input channel in steps of 100 mV. Below
this level, a logical 0 is detected, above this level, a logical 1 is detected if the
high threshold voltage was crossed before.
High threshold voltage (-40000 mV ... +40000 mV) Lets you set the high
threshold level for the selected digital input channel in steps of 100 mV. The
logical 1 is output if this level is crossed and stays 1 until the signal falls below
the low threshold level.
Inductive Zero Voltage Block display If you select an Inductive Zero Voltage Detector channel from
Detector description the channel list, the block display changes. The simulation ports are displayed
optionally.
I/O characteristics The following table describes the ports of the block for
Inductive Zero Voltage Detector channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -40 V ... +40 V
Output
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 1 clock cycle.
Data type: UFix_1_0
§ 0: No zero crossing.
§ 1: Zero crossing is detected.
Update rate: FPGA clock frequency
669
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
If the hardware input signal or the value of the Sim_Data inport exceeds
the specified input range, the Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Inductive Zero Voltage Only common dialog settings. Refer to Common settings on page 667.
Detector settings
Temperature description Block display If you select the Temperature channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block for
the die temperature input channel:
Port Description
Input
Sim_Temp Simulates the FPGA's die temperature (internal chip temperature).
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input temperature range: -273.15 °C ... 230.70 °C
The range can be exceeded. The values are then saturated to the minimum or
maximum values.
Output
RAW_temp Outputs the raw value of the FPGA's die temperature measurement. Use the
12 MSB bits to calculate the die temperature.
Equation for calculating the die temperature:
670
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Port Description
Temperature [°C] = (float)(Temperature[hex] &
0xFFF0) · 503.975 / 65536
- 273.15
Data type: UFix_16_0
Data width: 1
Value range: 0 ... 65536
High Outputs a flag if the FPGA's die temperature exceeds 105 °C.
To reset the flag, the die temperature must fall below 85 °C.
Data type: UFix_1_0
§ 0: Die temperature does not exceed 105 °C.
§ 1: Die temperature exceeds 105 °C.
Note
Temperature settings Only common dialog settings. Refer to Common settings on page 667.
Digital InOut 8 (In) description Block display If you select a Digital InOut 8 (In) channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
671
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range specified for the real input signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Threshold level: 1 V ... 7.5 V (in steps of 0.1 V)
Output
Data Outputs the current results of the digital input channel.
Data type: UFix_1_0
§ 0: Input voltage of the channel is below the specified threshold voltage.
§ 1: Input voltage of the channel is higher than or equal to the specified threshold
voltage.
Update rate: FPGA clock frequency
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 ).
If the hardware signal or the value of the Sim_Data inport exceeds the minimum
or maximum threshold voltage, it is saturated to the appropriate minimum or
maximum value.
Note
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.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
672
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
Digital InOut 8 (In) settings The following settings on the Parameters page are specific to the Digital InOut
8 (In) I/O function. For common dialog settings, refer to Common settings on
page 667.
Threshold voltage Lets you specify the threshold level for the current digital
channel in the range 1,000 mV … 7,500 mV in steps of 100 mV. If the input
signal is below this level, a logical 0 is detected, otherwise a logical 1.
The selected threshold voltage is also valid for the enabled simulation data
inport.
Analog In 14 description Block display If you select an Analog In 14 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
673
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for analog input channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: -10 V ... +10 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input voltage range, Data outport is saturated to the minimum or
maximum value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
674
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Analog In 14 settings Only common dialog settings. Refer to Common settings on page 667.
Knock Sensor description Block display If you select the Knock Sensor channel from the channel list,
the block display changes. The simulation ports are displayed optionally.
675
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The scaling between the analog input voltage and the
output of the block is:
The following table describes the ports of the block for knock sensor input
channels:
Port Description
Input
Sim_Data Simulates an input signal in the same range as that specified for the real input
signal.
Available only if Enable simulation port is set on the Parameters page.
Data type: Double
Data width: 1
Input voltage range: –5 V ... +5 V
Data_soc Triggers the sampling of the A/D converter. When the value is set to 1 for at least
one clock cycle, the ADC starts the conversion. The port allows a precise definition
of the starting point of ADC sampling. The Data_eoc outport signals the end of the
conversion process.
Setting this value permanently to 1 results in continuous sampling.
Data type: UFix_1_0
Range: 0 or 1
Output
Data Outputs the current results of the A/D conversions on the current channel.
Data type: UFix_16_0
Range: 0 … +65535
Update rate: 1 Msps
Data_eoc Outputs an end of conversion signal if the conversion result is available. 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
Range: 0 or 1
If the hardware input signal or the value of the Sim_Data inport exceeds the
specified input voltage range, Data outport is saturated to the minimum or
maximum range value.
Multiple clock domain support This block must be used with the FPGA
base rate. The block cannot be used in a user clock domain.
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.
676
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Knock Sensor settings Only common dialog settings. Refer to Common settings on page 667.
Subsystem Clock description Block display If you select the Subsysten Clock channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
Subsystem Outputs the clock signal of the selected subsystem clock domain. You specify the
Clock subsystem clock domain in the FPGA Setup block. Refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
System Clock description Block display If you select the Systen Clock channel from the channel list, the
block display changes.
677
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
System Signal Block Block display If you select the System Signal Block channel from the channel
description list, the block display changes.
I/O characteristics The following table describes the ports of the block for
digital input channels:
Port Description
Output
System Clock Outputs the clock signal of the FPGA (base clock rate).
Data type: UFix_1_0
Data width: 1
Init Done Outputs the state of the initialization sequence that is started after programming
the FPGA.
Data type: UFix_1_0
Data width: 1
Values:
§ 0: Initialization sequence is in progress.
§ 1: Initialization sequence has finished.
678
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Port Description
CN App Outputs the state of the processor application.
Status Data type: UFix_1_0
Data width: 1
Values:
§ 0: The processor application is stopped.
§ 1: The processor application is running.
Opto_Ready Indicates whether an MGT module is ready for data exchange.
The port value remains 0, because the used dSPACE hardware does not support
MGT modules.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
679
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Analog in settings The following settings on the Scaling page are specific to the Analog In 14 I/O
function.
Note
Scaling format Lets you select the data format for scaling and saturation.
§ Signed/Unsigned:
The values of the parameters for scaling and saturation are in fixed‑point
format. The signed fixed-point format reserves one bit for the sign.
You can specify the number of bits and the binary point position with the
Number of bits and Binary point (fraction width) parameters.
§ Single:
The values of the parameters for scaling and saturation are 32-bit values in
the single-precision floating‑point format with a fraction width of 24, which
complies with the IEEE 754 standard (single).
§ Double:
The values of the parameters for scaling and saturation are 64-bit values in
the double-precision floating‑point format with a fraction width of 53, which
complies with the IEEE 754 standard (double).
Binary point (fraction width) This setting depends on the Scaling format
setting.
§ Fixed-point format:
Lets you specify the binary point position of the scaling parameters and the
Data port. The position 0 represents the lowest bit position
§ Floating-point format:
Displays the fraction width of the scaling parameters and the Data port.
680
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Scaling factor Lets you specify the scaling factor. The scaling factor gains the
signal of the Data port before it is saturated or replaced via FPGA test access.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling factor parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Scaling offset Lets you add a signal offset after the signal of the Data port is
scaled with the scaling factor.
You must check whether the specified and displayed value is supported by
the specified scaling format. The value of the Scaling offset parameter will
be executed with the maximum accuracy of the specified scaling format
and saturated to the minimum and maximum values that the scaling format
supports.
Saturation minimum value Lets you specify the minimum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation minimum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Saturation maximum value Lets you specify the maximum value to which
the measured and scaled signal is saturated before it is output via the Data port.
You must check whether the specified and displayed value is supported by the
specified scaling format or hardware. The value of the Saturation maximum
value parameter will be saturated to the minimum and maximum values that the
scaling format and the hardware supports.
Multiplier latency Lets you specify the latency that is caused by the
multiplier for scaling. The multiplier is used to multiply the signal with the value
of the Scaling factor parameter.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The multiplication will be implemented without latency.
§ 1 ... 20: The multiplication will be implemented with the specified latency.
Use this value range in the exceptional case that the optimized latency cause
timing problems during the build process.
Adder latency Lets you specify the latency that is caused by the offset adder.
The offset adder is used to add the value of the Scaling offset parameter to the
signal.
The following values are possible:
§ -1: The latency is optimized during the build process for speed and FPGA
utilization.
This is the recommended setting.
§ 0: The adding will be implemented without latency.
§ 1 ... 20: The adding will be implemented with the specified latency.
681
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Use this value range in the exceptional case that the optimized latency causes
timing problems during the build process.
Digital in settings The following settings on the Scaling page are specific to the Digital InOut 8
I/O function.
Invert polarity Lets you adapt the measured values to the electrical input
signal:
§ Disabled:
The Data port outputs the signals as measured: A low-high transition results in
a 1 and vice versa.
§ Enabled:
The output of the Data port is inverted: A low-high transition results in a 0
and vice versa.
Digital Crank/Cam Sensor The Scaling page is empty because this I/O function does not support FPGA
settings scaling to scale I/O signals.
Inductive Zero Voltage The Scaling page is empty because this I/O function does not support FPGA
Detector settings scaling to scale I/O signals.
Knock Sensor settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Status In settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Temperature settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
682
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Description The framework provides the three I/O types Analog, Digital, and Other, which
you can select on the Unit page of the block. The number of the available
physical connections on the DS1554 Engine Control I/O Module determines the
I/O functions that you can select:
§ LED Out
§ Sensor Supply
§ Digital Out 7 Channel 1 … Digital Out 7 Channel 40
§ Digital InOut 8 Channel 1 … Digital InOut 8 Channel 8
§ User Clock Out 1 … User Clock Out 32
Common settings The following settings on the Parameters page are common to the I/O functions
that you can select on the Unit page of the FPGA_IO_WRITE_BL block, except
for the LED Out function.
683
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Enable simulation port Lets you enable an outport for offline simulation
data. The Sim_Data outport is added to the block so you can connect it to a
Simulink-based I/O environment model.
LED Out description Block display If you select the LED Out channel from the channel list, the
block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Data Controls the FPGA status LED. The LED is located near the
DS1514 ZIF I/O connector.
Data type: UFix_1_0
§ 0: LED lights up green.
§ 1: LED lights up orange.
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used (=1).
Sensor Supply description Block display If you select the Sensor Supply channel from the channel list,
the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Output
Sim_Data Simulates an output signal in the same range as that specified
for the real output signal.
Output voltage: 13.14 V
684
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
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.
Sensor Supply settings Only common dialog settings. Refer to Common settings on page 683.
Digital Out 7 description Block display If you select a Digital Out 7 channel from the channel list, the
block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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 set to the
specified high-supply voltage (VDRIVE).
The hardware output is driven only if the Enable port is set to 1, otherwise the output is set to high
impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data outport, otherwise
it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V ... 45 V
Update rate: FPGA clock frequency
685
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
686
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Digital Out 7 settings The following settings on the Parameters page are specific to the Digital
Out 7 I/O function. For common dialog settings, refer to Common settings on
page 683.
Simulated VDRIVE pin Lets you select the voltage for the simulated high-
side switch for all digital output channels in the range 0 … 45000 mV in steps of
100 mV.
Note
You can specify the simulated voltage value only globally for all digital
output channels.
Digital InOut 8 (Out) Block display If you select a Digital InOut 8 (Out) channel from the channel
description list, the block display changes. The simulation ports are displayed optionally.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
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.
687
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Port Description
The hardware output is driven only if the Enable port is set to 1, otherwise the output is set to high
impedance (High-Z).
Data Type: UFix_1_0
Update rate: FPGA clock frequency
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 ).
Enable Controls the hardware output. If set to 1, the hardware output reacts to the Data outport, otherwise
it is set to High-Z.
Data type: UFix_1_0
Output
Sim_Data Simulates an output signal in the same range as that specified for the real output signal.
Available only if Enable simulation port is set on the Parameters page.
Output voltage: 0 V … 3.3 V or 0 V … 5 V
Update rate: FPGA clock frequency
If the value of the Data inport exceeds the specified data width, only the lowest
bit is used.
Multiple clock domain support This block can be used with an individual
clock period to customize the update rate of digital I/O.
A higher update rate increases the time resolution to generate or sample a digital
signal. A higher update rate does not affect the minimum pulse duration or
frequency of the digital channel.
For instructions on using multiple time domains, refer to Using Multiple Clock
Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
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.
688
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Digital InOut 8 (Out) settings The following settings on the Parameters page are specific to the Digital InOut
8 (Out) I/O function. For common dialog settings, refer to Common settings on
page 683.
High supply Lets you select the voltage for the high-side switch (3.3 V or 5 V)
for all digital output channels.
Note
You can specify the high-supply voltage value only globally for all digital
output channels.
User Clock Out 1 … 32 Block display If you select the User Clock Out channel from the channel list,
description the block display changes.
I/O characteristics The following table describes the ports of the block:
Port Description
Input
User Clock Clock signal for the clock domain used within the subsystem to which the block
belongs. For more information, refer to Using Multiple Clock Domains for FPGA
Modeling (FPGA Programming Blockset Guide ).
Data type: UFix_1_0
Data width: 1
User Clock Out 1 … 32 The Parameters page provides the following dialog setting:
settings
User clock period Lets you specify the expected clock period used within the
subsystem to which the block belongs. A common value for the clock period is in
the range 20 ns ... 4 ns (50 MHz ... 250 MHz).
The value is used during the build process when no user clock is available, for
example, to specify timing constraints.
689
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
User clock offline simulation period Lets you specify the clock period to be
used in offline simulation mode. The value must be greater than or equal to the
value of the User clock period parameter.
Purpose To specify the inverting, scaling, and saturation settings for the selected I/O
function.
Description You can modify the I/O signal of the selected I/O function if you select the
Enable FPGA test access and scaling parameter on the FPGA Access page
of the FPGA_SETUP_BL block dialog. The possible modifications depend on the
selected I/O function.
Common settings The following settings on the Scaling page are common to the I/O functions that
you can select on the Unit page.
Enable FPGA test access and scaling for this block Lets you disable FPGA
test access and scaling for the selected I/O function.
Digital out settings The following settings on the Scaling page are specific to the Digital Out 7 and
Digital InOut 8 (out) I/O functions.
LED Out settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
Sensor Supply settings The Scaling page is empty because this I/O function does not support FPGA
scaling to scale I/O signals.
690
FPGA Programming Blockset - FPGA Interface Reference May 2024
Block Settings for the FPGA1403Tp1 with Engine Control I/O Module Framework
Basics on FPGA Test Access and Scaling (FPGA Programming Blockset Guide )
Description The FPGA1403Tp1 (7K325) with Engine Control I/O Module (DS1554)
framework 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.
691
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Block Settings for the MicroAutoBox III Frameworks
Int description Block display The following illustration shows the block display with the
optional simulation port:
I/O characteristics The following table describes the ports of the block:
Port Description
Input
Int Provides the interrupt request line.
Data type: UFix_1_0
0 to 1: Interrupt is requested (edge-triggered).
0: No interrupt is requested. Last requested interrupt is saved.
Output
Sim_Int Simulates an interrupt by performing a function-call to enable a function-call
subsystem.
Available only if Enable simulation port is set on the Parameters page.
Data type: Function call
Int settings Enable simulation port Lets you enable an outport for a simulated interrupt.
The Sim_Int outport is added to the block so you can connect it to a function-
call subsystem in the processor model.
692
FPGA Programming Blockset - FPGA Interface Reference May 2024
Enhancements to the Simulink Menus
693
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
Advanced Preferences
Description The Advanced Preferences dialog lets you change preferences to perform
workarounds or for convenience. For more information, refer to Dialog Settings
of the Advanced Preferences Dialog on page 700.
694
FPGA Programming Blockset - FPGA Interface Reference May 2024
Menu Commands for FPGA Programming
Purpose To generate a processor interface block that corresponds to the selected block.
Description The generated block is added to the FPGA model. Move the block to the
processor model to use it as a processor interface.
References
695
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
Purpose To show where the corresponding processor interface block of the selected block
is used in the processor model.
Description The subsystem with the corresponding processor interface block opens and
highlights the corresponding block.
References
Access This command is available only if the following preconditions are fulfilled:
§ A subsystem with the FPGA Setup block is open.
§ The FPGAC file of the last build process is available.
The ConfigurationDesk Interface page of the FPGA Setup block shows the
last build results.
Purpose To update all scaling subsystems of an FPGAC file without rebuilding the FPGA
application.
Description The FPGA build process inserts all build result files into an FPGAC file. Building
the FPGA application takes a lot of time. If you have changed only scaling
subsystems, you do not need to rebuild the FPGA subsystem. Updating the
selected scaling subsystem only updates the preprocessing and/or postprocessing
of the processor signals, the FPGA application remains unchanged.
The command updates the FPGAC file without changing the unique ID.
696
FPGA Programming Blockset - FPGA Interface Reference May 2024
Menu Commands for FPGA Programming
Preprocessing and Postprocessing the Signals Between the FPGA and the Processor
Model (FPGA Programming Blockset Guide )
HowTos
Access This command is available only if the following preconditions are fulfilled:
§ At least one scaling subsystem is selected.
§ The FPGAC file of the last build process is available.
The ConfigurationDesk Interface page of the FPGA Setup block shows the
last build results.
Purpose To update the selected scaling subsystems of an FPGAC file without rebuilding
the FPGA application.
Description The FPGA build process inserts all build result files into an FPGAC file. Building
the FPGA application takes a lot of time. If you have changed only scaling
subsystems, you do not need to rebuild the FPGA subsystem. Updating the
selected scaling subsystem only updates the preprocessing and/or postprocessing
of the processor signals, the FPGA application remains unchanged.
The command updates the FPGAC file without changing the unique ID.
Preprocessing and Postprocessing the Signals Between the FPGA and the Processor
Model (FPGA Programming Blockset Guide )
697
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
HowTos
Description The word length calculator lets you calculate an optimal fixed-point data type
for a user-defined floating-point value. For more information, refer to Dialog
Settings of the Word Length Calculator on page 707.
698
FPGA Programming Blockset - FPGA Interface Reference May 2024
Advanced Preferences Dialog
Opening the dialog In the Simulink model, click dSPACE FPGA - Advanced Preferences.
699
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
Overview
Set to Default button Lets you reset all preferences to the default setting.
Load from file Lets you set all preferences to a setting that you saved before
to a JSON file.
Save to File Lets you save the current settings to a JSON file.
Changes are effective only for one MATLAB session. To reuse the settings in
several sessions, save the settings to reload them in the next session.
Preferences Changing the preferences lets you change the default behavior of the FPGA
Programming Blockset to perform workarounds or disable features.
Note
§ The changes are effective for one MATLAB session only. When you exit
MATLAB, the preferences are reset to the default values.
§ It is recommended that you use the default settings and change the
preferences only in exceptional cases.
DISABLE_BLOCK_RENAMING
700
FPGA Programming Blockset - FPGA Interface Reference May 2024
Advanced Preferences Dialog
BUILD_DONT_ASK
DISABLE_BUILD_TIMER
FLATTEN_MODEL
Value range: 0, 1
Default 0
Description: Lets you flatten the model to avoid errors during the code
generation such as multidriven networks and 0-signals in HIL.
§ 0: No changes to the model.
§ 1: Removes all subsystem and signal hierarchies, sets mask
parameters in the blocks. The model is reduced to blocks
with direct signal lines without buses in the root level. The
functionality of the model does not change.
IGNORE_CLOCK_INTERACTION_PROBLEMS
701
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
For instructions on using multiple clock domains, refer to How to Use Multiple
Clock Domains for FPGA Modeling (FPGA Programming Blockset Guide ).
IGNORE_CRITICAL_WARNINGS
IGNORE_WRONG_XILINX_VERSION
DISABLE_OFFLINESIM
Value range: 0, 1, 2
Default 0
Description: Lets you deactivate offline simulation to fix problems when using
different MATLAB versions. Different MATLAB versions can lead
to problems with the offline simulation, for example, when using
the Fixed Point Toolbox and the data type uint64.
§ 0: Offline simulation is activated.
§ 1: Offline simulation is deactivated.
§ 2: Offline simulation is deactivated for blocks with the tag
dsOfflineSimDisable = 1.
PASTE_KEEP_CHANNEL_NUM
702
FPGA Programming Blockset - FPGA Interface Reference May 2024
Advanced Preferences Dialog
XILINX_BRAM_OPTIMIZATION
XILINX_VIVADO_GUI_MODE
XILINX_VIVADO_MONITORING
XILINX_VIVADO_RLOC_WORKAROUND
703
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
XILINX_VIVADO_SRL32_WORKAROUND
XILINX_XSG_FALSE_PATHS_WORKAROUND
XILINX_XSG_MULTICYCLE_CE_FILTER_WORKAROUND
XILINX_XSG_INVALID_MULTICYCLE_WORKAROUND
704
FPGA Programming Blockset - FPGA Interface Reference May 2024
Advanced Preferences Dialog
705
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
Opening the dialog Possible methods to open the dialog of the word length calculator:
§ In the Simulink® model, click dSPACE FPGA - dSPACE Word Length
Calculator.
706
FPGA Programming Blockset - FPGA Interface Reference May 2024
Word Length Calculator
Overview The following illustration shows the dialog of the word length calculator.
Input value and fixed-point Lets you enter the maximum value to be represented. The table displays the
representation resulting fixed-point value.
Value Lets you enter the maximum floating-point value that your application
can perform. The calculator supports the following values:
§ Positive or negative value
§ Scalar value
§ Variable defined in the workspace
§ MATLAB constants like pi
Not supported are Inf, Nan, or complex values.
Output type Lets you select the arithmetic type and displays the precision, range, resolution,
and error of the calculated fixed-point data type.
Arithmetic type Lets you select whether the estimated fixed-point data type
is signed or unsigned.
Fixed-point precision Displays the calculated number of bits and the binary
point of the calculated fixed-point data type.
707
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Enhancements to the Simulink Menus
Range and resolution Displays the calculated value range and the resolution
of the calculated fixed-point data type.
§ If the specified word length is too short, the maximum value is highlighted in
red.
§ If the input value is negative and the arithmetic type is set to unsigned, the
minimum value will be set to zero and highlighted in red.
Error Displays the absolute and relative error between the input value and the
calculated fixed-point data type.
Computation method Lets you select the computation method to calculate the fixed-point data type.
The computation automatically starts when all the necessary input values are
available.
Word length Enables the calculation of the fixed-point data type based on a
specified word length.
Error Enables the calculation of the fixed-point data type based on the
maximum tolerable error.
You specify the relative error between the input value and the resulting fixed-
point data type. The maximum word length is 130 bits.
Resolution Enables the calculation of the fixed-point data type based on the
maximum resolution.
You can specify a positive value smaller than or equal to one. The fixed-point
data type is calculated in a way so that at least the specified resolution can be
represented.
708
FPGA Programming Blockset - FPGA Interface Reference May 2024
Index
Index
Aurora 64b66b In DS6602 FPGA Base Board 296
A MicroLabBox II 155 FPGA1403Tp1 with DS1552 592
SCALEXIO 451 FPGA1403Tp1 with DS1554 655
access type 46, 51
Aurora 64b66b Out MicroLabBox II 131
ADC (Class 1)
MicroLabBox II 175 Bus Out
DS1202 FPGA I/O Type 1 89
SCALEXIO 458 DS2655 FPGA Base Board 215
ADC (Class 2)
DS6601 FPGA Base Board 260
DS1202 FPGA I/O Type 1 91
B DS6602 FPGA Base Board 307
ADC (Type A)
FPGA1403Tp1 with DS1552 601
FPGA1401Tp1 with DS1552 497 buffer
FPGA1403Tp1 with DS1552B1 601
FPGA1401Tp1 with DS1552B1 497 access type 46, 51
FPGA1403Tp1 with DS1554 664
FPGA1401Tp1 with DS1554 563 Buffer In
MicroLabBox II 142
ADC (Type B) DS1202 FPGA I/O Type 1 73
Buzzer
FPGA1401Tp1 with DS1552 499 DS2655 FPGA Base Board 200
DS1202 FPGA I/O Type 1 103
FPGA1401Tp1 with DS1552B1 499 DS6601 FPGA Base Board 245
Analog In DS6602 FPGA Base Board 292
DS2655M1 I/O Module 345 FPGA1401Tp1 with DS1552 482 C
DS6651 Multi-I/O Module 401 FPGA1401Tp1 with DS1552B1 482 CN App Status
Analog In 10 FPGA1401Tp1 with DS1554 542 DS2655 FPGA Base Board 221
FPGA1403Tp1 with DS1552 604 FPGA1403Tp1 with DS1552 588 DS6601 FPGA Base Board 266
Analog In 11 FPGA1403Tp1 with DS1552B1 588 DS6602 FPGA Base Board 313
FPGA1403Tp1 with DS1552B1 605 FPGA1403Tp1 with DS1554 651 MicroLabBox II 159
Analog In 12 MicroLabBox II 128 commands
FPGA1403Tp1 with DS1552 607 Buffer Out Advanced Preferences 694
FPGA1403Tp1 with DS1552B1 607 DS1202 FPGA I/O Type 1 82 Generate Corresponding Block 695
Analog In 14 DS2655 FPGA Base Board 209 Show Corresponding Block 695
FPGA1403Tp1 with DS1554 673 DS6601 FPGA Base Board 254 Show in ConfigurationDesk 698
Analog In 23 DS6602 FPGA Base Board 301 Update All Scaling Subsystems for Last
MicroLabBox II 148 FPGA1401Tp1 with DS1552 490 Build 696
Analog In 24 FPGA1401Tp1 with DS1552B1 490 Update Selected Scaling Subsystems for Last
MicroLabBox II 149 FPGA1401Tp1 with DS1554 550 Build 697
Analog In 25 FPGA1403Tp1 with DS1552 597 Common Program Data folder 13
MicroLabBox II 151 FPGA1403Tp1 with DS1552B1 597
Analog In‑L FPGA1403Tp1 with DS1554 660 D
DS6651 Multi-I/O Module 404 MicroLabBox II 137
DAC
Analog Out Buffer64 In
FPGA1401Tp1 with DS1552 514
DS2655M1 I/O Module 354 DS1202 FPGA I/O Type 1 76
FPGA1401Tp1 with DS1552B1 514
DS6651 Multi-I/O Module 417 DS2655 FPGA Base Board 202
DAC (Class 1)
Analog Out 13 DS6601 FPGA Base Board 247
DS1202 FPGA I/O Type 1 101
FPGA1403Tp1 with DS1552 624 DS6602 FPGA Base Board 294
DDR 4 32 Mode 1
FPGA1403Tp1 with DS1552B1 624 FPGA1401Tp1 with DS1552 485
DS6602 FPGA Base Board 326
Analog Out 19 FPGA1401Tp1 with DS1552B1 485
DDR 4 32 Mode 2
MicroLabBox II 170 FPGA1401Tp1 with DS1554 544
DS6602 FPGA Base Board 330
Analog Out 20 FPGA1403Tp1 with DS1552 590
DDR 4 64 Mode 1
MicroLabBox II 171 FPGA1403Tp1 with DS1552B1 590
DS6602 FPGA Base Board 328
Analog Out-T FPGA1403Tp1 with DS1554 653
DDR 4 64 Mode 2
DS6651 Multi-I/O Module 419 MicroLabBox II 129
DS6602 FPGA Base Board 333
APU Master Buffer64 Out
Description page
DS2655 FPGA Base Board 230 DS1202 FPGA I/O Type 1 84
empty 20
DS6601 FPGA Base Board 277 DS2655 FPGA Base Board 212
Digital Crank/Cam Sensor
DS6602 FPGA Base Board 324 DS6601 FPGA Base Board 257
FPGA1401Tp1 with DS1552 500
MicroLabBox II 173 DS6602 FPGA Base Board 304
FPGA1401Tp1 with DS1554 557
APU Slave FPGA1401Tp1 with DS1552 493
FPGA1403Tp1 with DS1552 609
DS2655 FPGA Base Board 219 FPGA1401Tp1 with DS1552B1 493
FPGA1403Tp1 with DS1554 668
APU Slave 1 ... 6 FPGA1401Tp1 with DS1554 553
Digital In
DS6601 FPGA Base Board 264 FPGA1403Tp1 with DS1552 599
DS2655M1 I/O Module 347
DS6602 FPGA Base Board 311 FPGA1403Tp1 with DS1552B1 599
DS2655M2 I/O Module 369
MicroLabBox II 153 FPGA1403Tp1 with DS1554 662
DS6651 Multi-I/O Module 407
Aurora 64b66b 128 Bit In MicroLabBox II 140
Digital In (Type A)
MicroLabBox II 157 bus
FPGA1401Tp1 with DS1552 502
SCALEXIO 453 access type 46, 51
Digital In (Type B)
Aurora 64b66b 128 Bit Out Bus In
FPGA1401Tp1 with DS1552 504
MicroLabBox II 176 DS2655 FPGA Base Board 204
FPGA1401Tp1 with DS1554 561
SCALEXIO 460 DS6601 FPGA Base Board 249
709
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Index
710
FPGA Programming Blockset - FPGA Interface Reference May 2024
Index
DS1202 FPGA I/O Type 1 122 DS6651 Multi-I/O Module 416 FPGA1401Tp1 with DS1554 547
DS1303 (KU15P) Multi-I/O Board 192 FPGA1401Tp1 with DS1552 513 FPGA1403Tp1 with DS1552 594
DS2655 FPGA Base Board 239 FPGA1401Tp1 with DS1552B1 513 FPGA1403Tp1 with DS1552B1 594
DS6601 FPGA Base Board 286 FPGA1401Tp1 with DS1554 571 FPGA1403Tp1 with DS1554 657
DS6602 FPGA Base Board 343 FPGA1403Tp1 with DS1552 623 unit page 51
FPGA1401Tp1 with DS1552 535 FPGA1403Tp1 with DS1552B1 623 FPGA1401Tp1 with DS1552
FPGA1401Tp1 with DS1552B1 535 FPGA1403Tp1 with DS1554 683 ADC (Type A) 497
FPGA1401Tp1 with DS1554 579 Inter-FPGA Interface 471 ADC (Type B) 499
FPGA1403Tp1 with DS1552 645 MGT module 458 Buffer In 482
FPGA1403Tp1 with DS1552B1 645 scaling page Buffer Out 490
FPGA1403Tp1 with DS1554 691 DS1202 FPGA I/O Type 1 117 Buffer64 In 485
unit page 64 DS1303 (KU15P) Multi-I/O Board 188 Buffer64 Out 493
FPGA_IO_READ_BL 54 DS2655M1 I/O Module 363 DAC 514
block description 54 DS2655M2 I/O Module 397 Digital Crank/Cam Sensor 500
description page 56 DS6651 I/O Module 445 Digital In (Type A) 502
DS1202 FPGA I/O Type 1 98 FPGA1401Tp1 with DS1552 531 Digital In (Type B) 504
FPGA1401Tp1 with DS1552 512 FPGA1401Tp1 with DS1552B1 531 Digital Out (Type A) 515
FPGA1401Tp1 with DS1552B1 512 FPGA1401Tp1 with DS1554 577 Digital Out (Type B) 517
FPGA1401Tp1 with DS1554 570 FPGA1403Tp1 with DS1552 642 Inductive Zero Voltage Detector 506
parameters page FPGA1403Tp1 with DS1552B1 642 Int 535
DS1202 FPGA I/O Type 1 88 FPGA1403Tp1 with DS1554 690 LED Out 519
DS1303 (KU15P) Multi-I/O Board 147 unit page 60 Register In 481
DS2655 FPGA Base Board 218 FPGA_SETUP_BL 24 Register Out 489
DS2655M1 I/O Module 345 block description 24 Register64 In 483
DS2655M2 I/O Module 369 ConfigurationDesk interface page 33 Register64 Out 492
DS6601 FPGA Base Board 263 parameters page 26 Sensor Supply 519
DS6602 FPGA Base Board 310 subsystem clocks page 30 Status In 507
DS6651 Multi-I/O Module 401 tracing page 31 Temperature 507
FPGA1401Tp1 with DS1552 496 unit page 25 UART (RS232) 520
FPGA1401Tp1 with DS1552B1 496 FPGA_XDATA_READ_BL 44 UART (RS422/485) 525
FPGA1401Tp1 with DS1554 556 block description 45 FPGA1401Tp1 with DS1552B1
FPGA1403Tp1 with DS1552 603 description page 48 ADC (Type A) 497
FPGA1403Tp1 with DS1552B1 603 DS1202 FPGA I/O Type 1 77 ADC (Type B) 499
FPGA1403Tp1 with DS1554 666 FPGA1401Tp1 with DS1552 486 Buffer In 482
Inter-FPGA Interface 465 FPGA1401Tp1 with DS1554 546 Buffer Out 490
MGT module 451 parameters page Buffer64 In 485
scaling page DS1202 FPGA I/O Type 1 70 Buffer64 Out 493
DS1202 FPGA I/O Type 1 95 DS1303 (KU15P) Multi-I/O Board 126 DAC 514
DS1303 (KU15P) Multi-I/O Board 165 DS2655 FPGA Base Board 197 Digital Out (Type A) 515
DS2655M1 I/O Module 350 DS6601 FPGA Base Board 242 Int 535
DS2655M2 I/O Module 377, 413 DS6602 FPGA Base Board 289 LED Out 519
FPGA1401Tp1 with DS1552 509 FPGA1401Tp1 with DS1552 479 Register In 481
FPGA1401Tp1 with DS1552B1 509 FPGA1401Tp1 with DS1552B1 479 Register Out 489
FPGA1401Tp1 with DS1554 566 FPGA1401Tp1 with Engine Control 539 Register64 In 483
FPGA1403Tp1 with DS1552 620 FPGA1403Tp1 with DS1552 585 Register64 Out 492
FPGA1403Tp1 with DS1552B1 620 FPGA1403Tp1 with DS1552B1 585 Sensor Supply 519
FPGA1403Tp1 with DS1554 679 FPGA1403Tp1 with Engine Control 648 Temperature 507
unit page 55 unit page 46 UART (RS232) 520
FPGA_IO_WRITE_BL 58 FPGA_XDATA_WRITE_BL 49 UART (RS422/485) 525
block description 59 block description 50 FPGA1401Tp1 with DS1554
description page 60 description page 53 ADC (Type A) 563
DS1202 FPGA I/O Type 1 121 DS1202 FPGA I/O Type 1 86 Buffer In 542
FPGA1401Tp1 with DS1552 534 FPGA1401Tp1 with DS1552 495 Buffer Out 550
FPGA1401Tp1 with DS1552B1 534 FPGA1401Tp1 with DS1552B1 495 Buffer64 In 544
FPGA1401Tp1 with DS1554 578 FPGA1401Tp1 with DS1554 554 Buffer64 Out 553
parameters page parameters page Digital Crank/Cam Sensor 557
DS1202 FPGA I/O Type 1 100 DS1202 FPGA I/O Type 1 79 Digital In (Type B) 561
DS1303 (KU15P) Multi-I/O Board 169 DS1303 (KU15P) Multi-I/O Board 135 Digital Out (Type A) 573
DS2655 FPGA Base Board 230 DS2655 FPGA Base Board 206 Digital Out (Type B) 575
DS2655M1 I/O Module 354 DS6601 FPGA Base Board 251 Inductive Zero Voltage Detector 558
DS2655M2 I/O Module 378 DS6602 FPGA Base Board 298 Int 580
DS6601 FPGA Base Board 276 FPGA1401Tp1 with DS1552 488 Knock Sensor 565
DS6602 FPGA Base Board 323 FPGA1401Tp1 with DS1552B1 488 LED Out 572
711
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Index
Register In 541 Buffer64 Out 662 DS6601 FPGA Base Board 271
Register Out 549 Bus In 655 DS6602 FPGA Base Board 318
Register64 In 543 Bus Out 664 MicroLabBox II 161
Register64 Out 552 Digital Crank/Cam Sensor 668
Sensor Supply 572 Digital InOut 8 (In) 671 K
Status In 557 Digital InOut 8 (Out) 687
Knock Sensor
Temperature 560 Digital Out 7 685
FPGA1401Tp1 with DS1554 565
FPGA1403Tp1 with DS1552 Inductive Zero Voltage Detector 669
FPGA1403Tp1 with DS1554 675
Analog In 10 604 Int 692
Analog In 12 607 Knock Sensor 675
Analog Out 13 624 LED Out 684 L
Buffer In 588 Register In 650 LED Out
Buffer Out 597 Register Out 659 DS1202 FPGA I/O Type 1 107
Buffer64 In 590 Register64 In 652 DS2655 FPGA Base Board 237
Buffer64 Out 599 Register64 Out 661 DS6601 FPGA Base Board 284
Bus In 592 Sensor Supply 684 DS6602 FPGA Base Board 340
Bus Out 601 Status In 667 FPGA1401Tp1 with DS1552 519
Digital Crank/Cam Sensor 609 Subsystem Clock 677 FPGA1401Tp1 with DS1552B1 519
Digital In 5 610 System Signal Block 678 FPGA1401Tp1 with DS1554 572
Digital InOut 6 (In) 612 Temperature 670 FPGA1403Tp1 with DS1552 629
Digital InOut 6 (Out) 627 User Clock Out 689 FPGA1403Tp1 with DS1552B1 629
Digital Out 5 626 FPGA1403Tp1 with DS1554 684
Inductive Zero Voltage Detector 614 I MicroLabBox II 186
Int 646 Local Program Data folder 13
I‑FPGA In
LED Out 629
DS2655 FPGA Base Board 465
Register In 587
I-FPGA In (IOCNET) M
Register Out 596
DS2655 FPGA Base Board 222 MGT In
Register64 In 589
DS6601 FPGA Base Board 267 MicroLabBox II 161
Register64 Out 598
DS6602 FPGA Base Board 314 SCALEXIO 454
Sensor Supply 630
I‑FPGA Out MGT In Opto Ready
Status In 616
DS2655 FPGA Base Board 471 MicroLabBox II 163
Subsystem Clock 616, 617
I-FPGA Out (IOCNET) SCALEXIO 456
System Signal Block 617
DS6601 FPGA Base Board 232, 279 MGT Out
Temperature 618
DS6602 FPGA Base Board 335 MicroLabBox II 187
UART 3 (RS232) 631
I-FPGA64 In (IOCNET) SCALEXIO 461
UART 3 (RS422/485) 636
DS2655 FPGA Base Board 224 MicroLabBox II
User Clock Out 641
DS6601 FPGA Base Board 269 Analog In 23 148
FPGA1403Tp1 with DS1552B1
DS6602 FPGA Base Board 316 Analog In 24 149
Analog In 11 605
I-FPGA64 Out (IOCNET) Analog In 25 151
Analog In 12 607
DS6601 FPGA Base Board 235, 281 Analog Out 19 170
Analog Out 13 624
DS6602 FPGA Base Board 338 Analog Out 20 171
Buffer In 588
Inductive Zero Voltage Detector APU Master 173
Buffer Out 597
FPGA1401Tp1 with DS1552 506 APU Slave 1 ... 6 153
Buffer64 In 590
FPGA1401Tp1 with DS1554 558 Aurora 64b66b 128 Bit In 157
Buffer64 Out 599
FPGA1403Tp1 with DS1552 614 Aurora 64b66b 128 Bit Out 176
Bus Out 601
FPGA1403Tp1 with DS1554 669 Aurora 64b66b In 155
Digital Out 5 626
Int Aurora 64b66b Out 175
Int 646
DS1202 FPGA I/O Type 1 123 Buffer In 128
LED Out 629
DS2655 FPGA Base Board 240 Buffer Out 137
Register In 587
DS6601 FPGA Base Board 287 Buffer64 In 129
Register Out 596
DS6602 FPGA Base Board 343 Buffer64 Out 140
Register64 In 589
FPGA1401Tp1 with DS1552 535 Bus In 131
Register64 Out 598
FPGA1401Tp1 with DS1552B1 535 Bus Out 142
Sensor Supply 630
FPGA1401Tp1 with DS1554 580 CN App Status 159
Temperature 618
FPGA1403Tp1 with DS1552 646 Digital In/Out 14 (In) 159
UART 3 (RS232) 631
FPGA1403Tp1 with DS1552B1 646 Digital In/Out 14 (In/Out‑Z) 178
UART 3 (RS422/485) 636
FPGA1403Tp1 with DS1554 692 Digital In/Out 15 183
User Clock Out 641
MicroLabBox II 192 Int 192
FPGA1403Tp1 with DS1554
Inter-FPGA Interface 464 IOCNET Global Time 161
Analog In 14 673
I‑FPGA In 465 LED Out 186
Buffer In 651
I‑FPGA Out 471 MGT In 161
Buffer Out 660
IOCNET Global Time MGT In Opto Ready 163
Buffer64 In 653
DS2655 FPGA Base Board 226 MGT Out 187
712
FPGA Programming Blockset - FPGA Interface Reference May 2024
Index
Register In 132 FPGA1403Tp1 with DS1554 661 FPGA1401Tp1 with DS1554 560
Register Out 144 MicroLabBox II 145 FPGA1403Tp1 with DS1552 618
Register64 In 133 RS232 Rx FPGA1403Tp1 with DS1552B1 618
Register64 Out 145 DS2655M2 I/O Module 372 FPGA1403Tp1 with DS1554 670
Status In 163 RS232 Tx Trigger
Watchdog 164 DS2655M2 I/O Module 389 DS6651 Multi-I/O Module 445
RS485 Rx
P DS2655M2 I/O Module 374 U
DS6651 Multi-I/O Module 410
Parameters page UART (RS232)
RS485 Rx/Tx
empty 20 DS1202 FPGA I/O Type 1 108
DS2655M2 I/O Module 390
Proc App Status FPGA1401Tp1 with DS1552 520
DS6651 Multi-I/O Module 438
DS1202 FPGA I/O Type 1 95 FPGA1401Tp1 with DS1552B1 520
RS485 Tx
UART (RS422/485)
DS2655M2 I/O Module 394
R DS1202 FPGA I/O Type 1 113
DS6651 Multi-I/O Module 442
FPGA1401Tp1 with DS1552 525
register
FPGA1401Tp1 with DS1552B1 525
access type 46, 51 S UART 3 (RS232)
Register In
SCALEXIO FPGA1403Tp1 with DS1552 631
DS1202 FPGA I/O Type 1 72
Aurora 64b66b 128 Bit In 453 FPGA1403Tp1 with DS1552B1 631
DS2655 FPGA Base Board 198
Aurora 64b66b 128 Bit Out 460 UART 3 (RS422/485)
DS6601 FPGA Base Board 243
Aurora 64b66b In 451 FPGA1403Tp1 with DS1552 636
DS6602 FPGA Base Board 290
Aurora 64b66b Out 458 FPGA1403Tp1 with DS1552B1 636
FPGA1401Tp1 with DS1552 481
FPGA blockset 196, 241, 288, 464 User Clock Out
FPGA1401Tp1 with DS1552B1 481
MGT In 454 DS2655 FPGA Base Board 238
FPGA1401Tp1 with DS1554 541
MGT In Opto Ready 456 DS6601 FPGA Base Board 284
FPGA1403Tp1 with DS1552 587
MGT Out 461 DS6602 FPGA Base Board 341
FPGA1403Tp1 with DS1552B1 587
Sensor Supply FPGA1403Tp1 with DS1552 641
FPGA1403Tp1 with DS1554 650
FPGA1401Tp1 with DS1552 519 FPGA1403Tp1 with DS1552B1 641
MicroLabBox II 132
FPGA1401Tp1 with DS1552B1 519 FPGA1403Tp1 with DS1554 689
Register Out
FPGA1401Tp1 with DS1554 572
DS1202 FPGA I/O Type 1 81
FPGA1403Tp1 with DS1552 630 W
DS2655 FPGA Base Board 208
FPGA1403Tp1 with DS1552B1 630
DS6601 FPGA Base Board 253 Watchdog
FPGA1403Tp1 with DS1554 684
DS6602 FPGA Base Board 300 DS6601 FPGA Base Board 275
Status In
FPGA1401Tp1 with DS1552 489 DS6602 FPGA Base Board 322
DS1202 FPGA I/O Type 1 94
FPGA1401Tp1 with DS1552B1 489 MicroLabBox II 164
DS2655 FPGA Base Board 226
FPGA1401Tp1 with DS1554 549
DS6601 FPGA Base Board 271
FPGA1403Tp1 with DS1552 596
DS6602 FPGA Base Board 318
FPGA1403Tp1 with DS1552B1 596
FPGA1401Tp1 with DS1552 507
FPGA1403Tp1 with DS1554 659
FPGA1401Tp1 with DS1554 557
MicroLabBox II 144
FPGA1403Tp1 with DS1552 616
Register64 In
FPGA1403Tp1 with DS1554 667
DS1202 FPGA I/O Type 1 75
MicroLabBox II 163
DS2655 FPGA Base Board 201
Subsystem Clock
DS6601 FPGA Base Board 246
DS2655 FPGA Base Board 227
DS6602 FPGA Base Board 293
DS6601 FPGA Base Board 272
FPGA1401Tp1 with DS1552 483
DS6602 FPGA Base Board 319
FPGA1401Tp1 with DS1552B1 483
FPGA1403Tp1 with DS1552 616, 617
FPGA1401Tp1 with DS1554 543
FPGA1403Tp1 with DS1554 677
FPGA1403Tp1 with DS1552 589
System Signal Block
FPGA1403Tp1 with DS1552B1 589
DS2655 FPGA Base Board 228
FPGA1403Tp1 with DS1554 652
DS6601 FPGA Base Board 273
MicroLabBox II 133
DS6602 FPGA Base Board 320
Register64 Out
FPGA1403Tp1 with DS1552 617
DS1202 FPGA I/O Type 1 83
FPGA1403Tp1 with DS1554 678
DS2655 FPGA Base Board 211
DS6601 FPGA Base Board 256
DS6602 FPGA Base Board 303 T
FPGA1401Tp1 with DS1552 492 Temperature
FPGA1401Tp1 with DS1552B1 492 DS6601 FPGA Base Board 274
FPGA1401Tp1 with DS1554 552 DS6602 FPGA Base Board 321
FPGA1403Tp1 with DS1552 598 FPGA1401Tp1 with DS1552 507
FPGA1403Tp1 with DS1552B1 598 FPGA1401Tp1 with DS1552B1 507
713
May 2024 FPGA Programming Blockset - FPGA Interface Reference
Index
714
FPGA Programming Blockset - FPGA Interface Reference May 2024