Access Data Store at Higher Level in Model Hierarchy
This example shows how to access the data stored in the Data Store Memory block at a higher level in the model hierarchy.
In this example:
The model has two hierarchical components: the top-level model
DataStoreMemoryTop
and the referenced modelDataStoreMemoryBot
. The Data Store Memory block at the top-level model defines the data storeAAA
.An Event Scheduler creates function-call events based on the sine wave amplitude.
Based on the function-call events, the Data Store Read and the Data Store Write blocks within the referenced model access the data store
AAA
at the top-level model.
Configure Blocks Inside the Referenced Model
At the top-level model, a Model block references to the DataStoreMemoryBot
model. To allow the Data Store Read and Data Store Write blocks inside the referenced model to access the data store:
Place a Data Store Memory block inside a referenced model
DataStoreMemoryBot
. In the Data Store Memory block dialog box, select Data store reference. Set Data store name to the same value as the data store name:AAA
.
On the Signal Attributes tab, specify the Data type as
int32
, Dimensions as[1 1]
, and Signal type asreal
. These values are the same values as for the input signalmySig
.
Upon receiving the Read
function-call signal at the read port of the Model block, the Data Store Read block reads data from the data store. The output is displayed at the Scope block. Similarly, when the model receives the Write
function-call signal at the write port of the Model block, the input signal value 5
is multiplied by the Gain
parameter value 2
, and the Data Store Write block writes to the data store.
Model Function-Call Events Using Event Scheduler
Use a Stateflow® chart to model an event schedule that generates the Read
and Write
function-call events based on the sine wave amplitude. These function-call events control the execution of the DataStoreMemoryTop
model.
Review Results
Simulate the model.
sim('DataStoreMemoryTop');
The model executes based on function-call events. From the Scope block output, you can observe that:
The
Control signal
andoutput
signals represent the input to the Event Scheduler and the system output, respectively.Between 0 to approximately 3.2 seconds, the Data Store Read block reads the Initial value
-10
of the Data Store Memory block defined in the top-level model, and displays the output in the Scope block.Between 3 seconds to approximately 6.4 seconds, the input signal value is multiplied by the
Gain
parameter. The Data Store Write block writes the value to the data store.Between 6 seconds to 9 seconds, the Data Store Read block reads the value from the data store and displays the output in the Scope block.
See Also
Data Store Memory | Data Store Read | Data Store Write | Function-Call Subsystem