Sign In
Upload
Manuals
Brands
National Instruments Manuals
Network Card
AutoCode NI MATRIX
National Instruments AutoCode NI MATRIX Manuals
Manuals and User Guides for National Instruments AutoCode NI MATRIX. We have
1
National Instruments AutoCode NI MATRIX manual available for free PDF download: Reference
National Instruments AutoCode NI MATRIX Reference (250 pages)
National Instruments NI MATRIXx Reference Manual
Brand:
National Instruments
| Category:
Network Card
| Size: 2 MB
Table of Contents
Important Information
3
Table of Contents
5
Chapter 1 Introduction
14
Manual Organization
14
General Information
15
Configuration File
15
Language-Specific Information
15
Structure and Content of the Generated Code
16
Using Matrixx Help
16
Additional Netscape Information
16
Related Publications
17
Chapter 2 C Language Reference
18
Stand-Alone Simulation
18
Compiling on Various Supported Platforms
18
Stand-Alone Library
19
System-Specific Files
19
Target-Specific Utilities
22
Enable( ), Disable( ), and Background( ) Functions
23
Error( ) and Fatalerr( ) Functions
23
Fatalerr( ): Stand-Alone Utilities Detected Errors
24
ERROR: Conditions Detected in the Generated Code
25
Implementation_Initialize( ) Function
26
Implementation_Terminate( ) Function
26
External_Input ( ) Function
27
External_Output ( ) Function
27
Usercode Blocks
27
Linking Handwritten Ucbs with Autocode Applications
28
Implementing Handwritten Ucbs
30
Linking Handwritten Ucbs (for Autocode) with Systembuild
33
Variable Interface UCB
35
Inputs and Outputs
35
Interface Ordering
35
Function Prototype
36
Linking a Variable Interface UCB with the Simulator
37
Procedure Superblocks
37
Generating Reusable Procedures
37
Linking Procedures with the Systembuild Simulator
37
Linking Procedures with Real-Time Applications or Simulator
39
Invoking Generated Procedures Directly
39
Invoking Procedures Using Generated UCB Wrapper Function
41
Invoking Procedures Using Generated Subsystem Function
42
C Fixed-Point Arithmetic
43
Fixed-Point Autocode/C Implementation
43
Generated Code with Fixed-Point Variables
45
Fixed-Point Data Types
45
User Types
47
Overflow Protection
48
Stand-Alone Files
48
Macro Interface
49
Function Interface
50
Fixed-Point Conversion and Arithmetic Macros
52
Conversion Macros
52
Arithmetic Macros
55
Implementation of the Addition and Subtraction Macros
57
32-Bit Multiplication
59
32-Bit Multiplication and Division Macros
59
Selecting Wordsize Extension in the Preprocessor Macro
59
16-Bit by 8-Bit Division
60
32-Bit by 16-Bit Division
60
32-Bit Division
60
Fixed-Point Relational Macros
61
Some Relevant Issues
62
Chapter 3 Ada Language Reference
63
Stand-Alone Simulation
63
Supported Ada Compilers for the Stand-Alone Library
63
Supplied Templates
64
Ada_Rt.tpl Template
64
Ada_Sim.tpl Template
64
Ada_Fxpt_Sys.tpl Template
64
Ada_Fxpt_Sub.tpl Template
64
Stand-Alone Library
65
System-Specific Files
65
Data Types
67
Target-Specific Utilities
68
Enable( ), Disable( ), and Background( ) Procedures
69
Error Procedure( ) Procedure
69
Implementation_Initialize( ) Procedure
70
External_Input ( ) Procedure
72
Implementation_Terminate( ) Procedure
72
External_Output( ) Procedure
73
Usercode Blocks
73
Linking Handwritten Ucbs with Autocode Applications
73
Calling Ucbs
74
Procedure Superblocks
76
Generating Reusable Procedures
76
Linking Procedures with Real-Time Applications or Simulator
76
Ada Fixed-Point Arithmetic
78
How to Generate Real-Time Code
78
Fixed-Point Autocode/Ada Architecture
78
Fixed-Point Data Types
79
Generic Functions
79
Instantiated Functions
79
Package Dependencies
80
Generated Code with Fixed-Point Variables
81
User Types
81
System-Level Parameters to Generate User Types
82
Overflow Protection
82
Stand-Alone Files
83
Compilation Example
83
Fixed-Point Type Declarations
85
Generic Functions
85
Bit-Wise Functions
88
Instantiated Functions Package
88
Operator Instantiations
88
Conversion Function Instantiations
89
Sample Package
90
Addition and Subtraction Functions
91
Multiplication and Division Functions
93
32-Bit Division
93
32-Bit Multiplication
93
Conversion Functions
93
Explicit Rounding Conversion
94
Language-Defined Conversion
94
Truncation Conversion
94
Using System-Level Parameters to Generate Instantiations
95
Using Subsystem-Level Parameters to Generate Instantiations
95
System Scope Operators and Conversions
96
Known Ada Compiler Problems
97
Comparing Results to Systembuild's Simulator
97
No-Op Conversion Function
98
Chapter 4 Generating Code for Real-Time Operating Systems
100
Real-Time Operating System Configuration File
100
Configuration Items
101
Table Syntax
101
File Comments
102
Table Column Contents
102
Table Naming Convention
102
Table Orderings
102
RTOS Configuration File Contents
102
Processors Table
102
Scheduler Priority Table
103
Subsystem Table
103
Interrupt Procedure Superblock Table
104
Background Procedure Superblock Table
105
Processor IP Name Table
106
Startup Procedure Superblock Table
106
Version Table
107
Using the Configuration File
107
Chapter 5 Generated Code Architecture
109
Symbolic Name Creation
109
Default Names
109
Signal Naming
110
Duplicate Names
110
Selection of a Signal Name
110
Subsystem and Procedure Boundaries
110
Typecheck Feature and Data Types
110
Global Storage
111
Percent Vars (%Var)
111
Global Variable Blocks
111
Sequencing Variable Blocks
111
Global Variable Block and %Var Equivalence
112
Optimization for Read-From Variable Blocks
112
Global Scope Signal Capability
112
Subsystems
113
Discrete and Continuous Superblocks Versus Subsystems
113
Top-Level Superblock
114
Block Ordering
114
Interface Layers
114
Scheduler External Interface Layer
115
System External Interface Layer
115
Discrete Subsystem Interface Layer
116
Multi-Rate System
116
Sample and Hold
116
Single-Rate System
116
Static Data Within Subsystems
117
Iinfo
117
R_P and I_P
117
State Data
117
Procedure Data
118
Pre-Init Phase
118
Init, Output, and State Phases
118
Copy Back and Duplicates
118
Error Handling
119
Standard Procedures
119
Structure-Based Interface
119
Unrolled Interface
120
Phases and Error Handling
120
Referenced Percent Variables
120
Procedure Arguments
123
U, Y, S, and I
123
Extended Procedure Information Structure
126
Caller Identification
126
Compatibility Issues
127
Macro Procedure
128
Interface
128
Asynchronous Procedures
129
Interrupt
129
Background
129
Startup
129
Changing %Var Values During Startup
130
Condition Block
130
Default Mode
130
No-Default Mode
130
Sequential Mode
130
Blockscript Block
130
Inputs and Outputs
131
Environment Variables
132
Local Variables
132
Init, Output, and State Phases
133
Default Phase
134
States
134
Local Variables and Phases
135
Discrete Semantics
135
Continuous Semantics
137
Looping Concepts
137
Terminology
137
Loops and Scalar Code
137
Rolling Loops with Scalar Code Generation
138
Vectorized Code
139
Types of Loops
139
Examples of Rolled and Unrolled Loops
140
Parameters
141
Using Parameters Instead of States in a Discrete Model
141
Optimizations
143
Constant Propagation/Hard-Coding
143
Dead Code Elimination
143
Implicit Type Conversion
144
Special Directives
144
Usercode Block
145
Phases of the UCB
145
Indirect Terms
145
Parameterized UCB Callout
146
Software Constructs
147
Ifthenelse Block
147
WHILE Block
147
BREAK Block
148
CONTINUE Block
148
Local Variable Block
148
Sequencer Block
149
Difference between Local and Global Variable Blocks
149
Scope
149
Lifetime
149
Continuous Subsystem
149
Explicit Phases
150
Integrator
150
Limitations
150
Multiprocessor Code Generation
151
Shared Memory Architecture
151
Distributed Memory Architecture
152
Shared Memory Callouts
152
Callout Naming Convention
152
Mapping Command Options
153
Fixed-Point Support for Multiprocessor Autocode
153
Definitions and Conventions
153
Shared Memory Fixed-Point Callouts in Autocode/C
154
Shared Variable Block Support
155
Shared Memory Callout Option
158
Callout Pairs
159
Global Variable Block Callouts
159
Non-Shared (Local) Global Variable Blocks
159
Shared Global Variable Blocks
161
Chapter 6 Vectorized Code Generation
164
Introduction
164
How Code Is Generated
164
Scalar Gain Block Example
165
Vectorized Gain Block Example
166
Array Subscripts
167
Signal Connectivity
168
Block Inputs
168
Block Outputs
168
Vectorization Modes
170
Maximal Vectorization
170
Mixed Vectorization
170
Vector Labels and Names
171
Example
171
Vectorization Features
177
Multiple Arrays Within a Block
178
Split-Merge Inefficiency
180
Split Vector
180
Merge
182
External Outputs
184
Copy-Back
184
Eliminating Copy-Back
186
Other Copy-Back Scenarios
186
Vectorized Standard Procedure Interface
186
Ada Array Aggregates and Slices
188
Vectorization of the Blockscript Block
190
Matrix Outputs
191
Chapter 7 Code Optimization
192
Read from Variable Blocks
192
Restart Capability
196
Merging INIT Sections
199
Reuse of Temporary Block Outputs
202
Reuse Temporaries as Specified
202
Maximal Reuse of Temporaries
202
Constant Propagation
204
Optimizing with Matrix Blocks
207
Optimizing with Constant Blocks
207
Optimizing with Callout Blocks
208
Optimizing with Division Blocks
208
Optimizing with Inverse Blocks
208
Summary
210
Chapter 8 Autocode Sim Cdelay Scheduler
211
Introduction
211
Task Posting Policies
212
Standard Autocode Scheduler
213
Scheduler Pipeline
215
Managing Datastores in the Scheduler
217
Sim Cdelay Scheduler
219
State Transition Diagrams of Tasks under Sim Cdelay
220
Implementing the Sim Cdelay Autocode Scheduler
222
Implementation Details
222
Datastore Priority Problem
223
Using the Sim Cdelay Scheduler
224
Template Configuration for Enhanced Performance
225
Shortcomings of the Sim Cdelay Scheduler
226
Chapter 9 Global Scope Signals and Parameterless Procedures
228
Introduction
228
Data Monitoring/Injection
229
Specifying Monitored Signals
229
Generating Code for Monitored Signals
230
Limitations
231
Connection to External Output
231
Monitored Signals Within a Procedure Superblock
231
Monitoring Procedure External Outputs
231
Unsupported Blocks
231
Variable Block Aliasing
231
Parameterless Procedure
232
Specifying Parameterless Procedure Interface
232
Input Specification
232
Output Specification
233
Using a Parameterless Procedure
233
Global Output Connection
233
Global-To-Global Input Connection
233
Condition Block Code Generation
234
Reusing a Parameterless Procedure
234
Generating Code for Parameterless Procedures
234
Issues and Limitations
235
Communication between Subsystems
235
Systembuild Simulator
235
Variable Blocks Versus Global Scope
235
Connection to External Output
236
Recommendations
236
Explicit Sequencing
236
Model Documentation
236
Naming Convention
236
Analyzer and Autocode Warnings
237
Changing Scope Class
237
Command Options
237
Advertisement
Advertisement
Related Products
National Instruments AutoCode NI MATRIXx
National Instruments DAQ AT-MIO-16X
National Instruments AMUX-64T
National Instruments AI-16XE-10
National Instruments AT-MIO-16E-2
National Instruments AT-MIO-16E-10
National Instruments AT-MIO-64F-5
National Instruments AT-232/2
National Instruments AT-485/4
National Instruments ATE Core Configurations
National Instruments Categories
Control Unit
I/O Systems
Controller
Computer Hardware
Measuring Instruments
More National Instruments Manuals
Login
Sign In
OR
Sign in with Facebook
Sign in with Google
Upload manual
Upload from disk
Upload from URL