| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Real-Time Workshop |
| Contents | Index |
• Introduction to Real-Time Workshop Technology
• Developing Models for Code Generation
• Defining Data Representation and Storage for Code Generation
• Preparing Models for Code Generation
• Generating Code and Building Executables
• Converting MATLAB Code to C Code
• Integrating External Code With Generated C and C++ Code
• Setting Up Generated Code To Interface With Components in the Run-Time Environment
• Verifying Generated Code Applications
• Introducing the Target Language Compiler
• What Is the Target Language Compiler?
• Target Language Compiler Capabilities
• Target Language Compiler Tutorials
• Reading Record Files with TLC
• Inlining S-Functions with TLC
• Exploring Variable Names and Loop Rolling
• Code Generation Architecture
• Understanding the model.rtw File
Introduction to the model.rtw File
Using Scopes in the model.rtw File
• Object Information in the model.rtw File
• Directives and Built-In Functions
• Writing Block Target Files to Inline S-Functions
Inlining Fortran (F-MEX) S-Functions
Begin Identifiers with Uppercase Letters
Begin Global Variable Assignments with Uppercase Letters
Begin Local Variable Assignments with Lowercase Letters
Begin Functions Declared in block.tlc Files with Fcn
Do Not Hard-Code Variables Defined in commonsetup.tlc
• TLC Function Library Reference
• Target Language Compiler Function Conventions
LibBlockInputPortIndexMode(block, pidx)
LibBlockInputSignal(portIdx, ucv, lcv, sigIdx)
LibBlockInputSignalAddr(portIdx, ucv, lcv, sigIdx)
LibBlockInputSignalAliasedThruDataTypeName(portIdx, reim)
LibBlockInputSignalConnected(portIdx)
LibBlockInputSignalDataTypeId(portIdx)
LibBlockInputSignalDataTypeName(portIdx, reim)
LibBlockInputSignalDimensions(portIdx)
LibBlockInputSignalIsComplex(portIdx)
LibBlockInputSignalIsFrameData(portIdx)
LibBlockInputSignalLocalSampleTimeIndex(portIdx)
LibBlockInputSignalNumDimensions(portIdx)
LibBlockInputSignalOffsetTime(portIdx)
LibBlockInputSignalSampleTime(portIdx)
LibBlockInputSignalSampleTimeIndex(portIdx)
LibBlockOutputPortIndexMode(block, pidx)
LibBlockOutputSignal(portIdx, ucv, lcv, sigIdx)
LibBlockOutputSignalAddr(portIdx, ucv, lcv, sigIdx)
LibBlockOutputSignalAliasedThruDataTypeName(portIdx, reim)
LibBlockOutputSignalBeingMerged(portIdx)
LibBlockOutputSignalConnected(portIdx)
LibBlockOutputSignalDataTypeId(portIdx)
LibBlockOutputSignalDataTypeName(portIdx, reim)
LibBlockOutputSignalDimensions(portIdx)
LibBlockOutputSignalIsComplex(portldx)
LibBlockOutputSignalIsFrameData(portIdx)
LibBlockOutputSignalLocalSampleTimeIndex(portIdx)
LibBlockOutputSignalNumDimensions(portIdx)
LibBlockOutputSignalOffsetTime(portIdx)
LibBlockOutputSignalSampleTime(portIdx)
LibBlockMatrixParameter(param, rucv, rlcv, ridx, cucv, clcv, cidx)
LibBlockMatrixParameterAddr(param, rucv, rlcv, ridx, cucv, clcv, cidx)
LibBlockMatrixParameterBaseAddr(param)
LibBlockParamSetting(bType, psType)
LibBlockParameter(param, ucv, lcv, sigIdx)
LibBlockParameterAddr(param, ucv, lcv, idx)
LibBlockParameterBaseAddr(param)
LibBlockParameterDataTypeId(param)
LibBlockParameterDataTypeName(param, reim)
LibBlockParameterDimensions(param)
LibBlockParameterIsComplex(param)
LibBlockParameterString(param)
• Block State and Work Vector Functions
LibBlockContinuousState(ucv, lcv, idx)
LibBlockContinuousStateDerivative(ucv, lcv, idx)
LibBlockContStateDisabled(ucv, lcv, idx)
LibBlockDWork(dwork, ucv, lcv, idx)
LibBlockDWorkAddr(dwork, ucv, lcv, idx)
LibBlockDWorkDataTypeId(dwork)
LibBlockDWorkDataTypeName(dwork, reim)
LibBlockDWorkStorageClass(dwork)
LibBlockDWorkStorageTypeQualifier(dwork)
LibBlockDWorkUsedAsDiscreteState(dwork)
LibBlockDiscreteState(ucv, lcv, idx)
LibBlockIWork(definediwork, ucv, lcv, idx)
LibBlockNonSampledZC(ucv, lcv, NSZCIdx)
LibBlockPWork(definedpwork, ucv, lcv, idx)
• Block Path and Error Reporting Functions
LibBlockReportError(block, errorstring)
LibBlockReportFatalError(block, errorstring)
• Code Configuration Functions
LibAddSourceFileCustomSection(file, builtInSection, newSection)
LibAddToCommonIncludes(incFileName)
LibCacheFunctionPrototype(buffer)
LibCallSetEventForThisBaseStep(buffername)
LibCreateSourceFile(type, creator, name)
LibGetSourceFileCustomSection(file, attrib)
LibGetSourceFileFromIdx(fileIdx)
LibMdlRegCustomCode(buffer, location)
LibMdlStartCustomCode(buffer, location)
LibMdlTerminateCustomCode(buffer, location)
LibSetSourceFileCodeTemplate(opFile, name)
LibSetSourceFileCustomSection(file, attrib, value)
LibSetSourceFileOutputDirectory(opFile, name)
LibSetSourceFileSection(fileH, section, value)
LibSystemDerivativeCustomCode(system, buffer, location)
LibSystemDisableCustomCode(system, buffer, location)
LibSystemEnableCustomCode(system, buffer, location)
LibSystemInitializeCustomCode(system, buffer, location)
LibSystemOutputCustomCode(system, buffer, location)
LibSystemUpdateCustomCode(system, buffer, location)
LibWriteModelInput(tid, rollThreshold)
LibAsynchronousTriggeredTID(tid)
LibAsyncTaskAccessTimeInFcn(tid, fcnType)
LibGetClockTickDataTypeId(tid)
LibGetElapseTimeCounter(system)
LibGetElapseTimeCounterDTypeId(system)
LibGetElapseTimeResolution(system)
LibGetGlobalTIDFromLocalSFcnTID(sfcnTID)
LibGetNumSFcnSampleTimes(block)
LibGetSampleTimePeriodAndOffset(tid, idx)
LibIsSFcnSpecialSampleHit(sfcnSTI, sfcnTID)
LibNumAsynchronousSampleTimes()
LibNumSynchronousSampleTimes()
LibPortBasedSampleTimeBlockIsTriggered(block)
LibBlockExecuteFcnCall(sfcnBlock, callIdx)
LibBlockInputSignalAliasedThruDataTypeId(idx)
LibBlockOutputSignalAliasedThruDataTypeId(idx)
LibCallFCSS(system, simObject, portEl, tidVal)
LibDisableFCSS(system, simObject, portEl, tidVal)
LibEnableFCSS(system, simObject, portEl, tidVal)
LibExecuteFcnCall(ssBlock, portEl, tidVal)
LibExecuteFcnDisable(ssBlock, portEl, tidVal)
LibExecuteFcnEnable(ssBlock, portEl, tidVal)
LibGenConstVectWithInit(data, typeId, varId)
LibGetBlockAttribute(block, attr)
LibGetCallerClockTickCounter(sfcnBlock)
LibGetCallerClockTickCounterHigh(sfcnBlock)
LibGetDataTypeComplexNameFromId(id)
LibGetDataTypeIdAliasedThruToFromId(id)
LibGetDataTypeIdAliasedToFromId(id)
LibGetDataTypeIdResolvesToFromId(id)
LibGetDataTypeSLSizeFromId(id)
LibGetDataTypeStorageIdFromId(id)
LibGetFcnCallBlock(sfcnblock,callIdx)
LibManageAsyncCounter(sfcnBlock, callIdx)
LibNeedAsyncCounter(sfcnBlock, callIdx)
LibSetAsyncClockTicks(sfcnBlock, callIdx, buf1, buf2)
LibSetAsyncCounter(sfcnBlock, callIdx, buf)
LibAppendToModelReferenceUserData(data)
LibBlockInputSignalBufferDstPort(portIdx)
LibBlockInputSignalStorageClass(portIdx, sigIdx)
LibBlockInputSignalStorageTypeQualifier(portIdx, sigIdx)
LibBlockOutputSignalIsGlobal(portIdx)
LibBlockOutputSignalIsInBlockIO(portIdx)
LibBlockOutputSignalIsValidLValue(portIdx)
LibBlockOutputSignalStorageClass(portIdx)
LibBlockOutputSignalStorageTypeQualifier(portIdx)
LibBlockSrcSignalBlock(portIdx, sigIdx)
LibBlockSrcSignalIsDiscrete(portIdx, sigIdx)
LibBlockSrcSignalIsGlobalAndModifiable(portIdx, sigIdx)
LibBlockSrcSignalIsInvariant(portIdx, sigIdx)
LibGetModelReferenceUserData(modelName)
LibIsModelReferenceRTWTarget()
• Configuration Parameters for Simulink Models
• Blocks
| Learn more about Real-Time Workshop |
| Introducing the Target Language Compiler | Provides an overview of the Target Language Compiler and the code generation process, and the advantages of inlining S-functions. |
| Getting Started | Describes the process that the Target Language Compiler uses to generate code, and general inlining S-function concepts. |
| Target Language Compiler Tutorials | Provides a series of Target Language Compiler tutorials |
| Code Generation Architecture | Describes the TLC files and the build process. It also provides a tutorial on how to write target language files. |
| Understanding the model.rtw File | Describes the model.rtw file. |
| Directives and Built-In Functions | Contains the language syntax for the Target Language Compiler. |
| Debugging TLC Files | Explains how to use the TLC debugger. |
| Inlining S-Functions | Describes how to use the Target Language Compiler and how to inline S-functions. |
| TLC Function Library Reference | Contains abstracts for the Target Language Compiler functions. |
| TLC Error Handling | Lists the error messages that the Target Language Compiler can generate, as well as how to best use the errors. |
| Introducing the Target Language Compiler | ![]() |

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |
Store

