Main Content

Formalize Requirements in Simulink Models

Evaluate logic before and during simulation with Requirements Table blocks

Formalize requirements in Simulink® models by using the Requirements Table block to evaluate logic before and at run time. Define requirements that check the outputs of your model or execute block outputs.

Configure the formal requirements directly in the block, in the Requirements Editor, or with programmatic commands in MATLAB®.


Requirements TableFormally model requirements with input conditions


expand all

slreq.modeling.createCreate new model with Requirements Table block
slreq.modeling.findFind Requirements Table blocks
slreq.loadLoad requirement set or link set


expand all

RequirementsTableConfigure Requirements Table blocks
SymbolConfigure data in Requirements Table blocks
RequirementRowWork with requirements in Requirements Table block
AssumptionRowWork with assumptions in Requirements Table block

Object Functions

expand all

Manage Block Data

addSymbolAdd data to Requirements Table block
findSymbolRetrieve data in Requirements Table block

Manage Block Rows

addAssumptionRowAdd assumption to Requirements Table block
addRequirementRowAdd requirement to Requirements Table block
addChildAdd child requirement or assumption to Requirements Table block
getRequirementRowsRetrieve requirements in Requirements Table block
getAssumptionRowsRetrieve assumptions in Requirements Table block
getChildrenRetrieve child requirements and assumptions in Requirements Table block
slreq.getCurrentObjectGet selected objects in Requirements Editor, Requirements Browser, or Requirements Table block
clearClear row in Requirements Table block
removeRowRemove Requirements Table block row

Manage Block Columns

hideAssumptionColumnHide Precondition column in Assumptions tab
hideRequirementColumnHide columns in Requirements tab
showAssumptionColumnShow Precondition column in Assumptions tab
showRequirementColumnShow columns in Requirements tab


expand all

Temporal Logic

durationTime during which condition is valid
isStartupWhether simulation time is 0
getPreviousPrevious value of data
tElapsed time of simulation

Change Detection

hasChangedDetect change in data since last time step
hasChangedFromDetect change in data from specified value
hasChangedToDetect change in data to specified value



Troubleshoot Requirements Table Blocks

Resolve issues with cell entries, identify inconsistent and incomplete requirement sets, and find read-before-write issues.