Architecture Exploration

Parent Previous Next

Adding DMA Controller



VisualSim Model

Refer Fig 1 for the intended VisualSim Model.

AEA DMA Model
Figure 1: VisualSim Model

VisualSim Model for the tutorial can be found in following location

$VS\doc\Training_Material\Tutorial\WebHelp\Tutorial\Architecture_Exploration\Processor_Modeling_Tutorial\Processor_Modeling_Part1_DMA.xml

Building the VisualSim Model

Blocks Used


In addition to the blocks used in Scenario 4, this model uses the blocks listed in the following table.

S.No.
Library Block
Description
1
Device Interface

AEA Device Interface

This block adds the device name to the Routing Table and maps the incoming data structures fields to the equivalent in the Processor_DS.

Click here for detailed description and examples.

2
DMA

AEA DMA Block
This block represents a memory controller that sits between the Processor or bus or I_O Block and the Memory bank. The IO Controller acts as an intermediate block and just transfers the transactions from bus or DMA Controller to appropriate memory bank or devices connected to the IO Controller.

Click here for further details.
3
DMA Database

AEA Datbase block
This block is a lookup table or database containing rows and columns. Each row is a data structure. Each column of the row is a field of the data structure.

Click here for further details.



Initial Setup


Sets the value for the size of the tasks (Store and Load).


Architectural Elements


Add the following architectural elements to the ones existing in scenario 4.


Traffic Parameters
Figure 1: Traffic Parameters

Generate random numbers to assist in the selection of tasks. Adds a field to the datastructure to store the name of the device that sends the transactions. Use random numbers to select a task. This flag is set to true when the memory sends an acknowledgment for a Store task. Then, the behavior flow is triggered. Adds a field to the datastructure to store the name of the task. Adds a field to store the value for the size of a task. This value is set as part of the initial parameters.

The rest of the parameters retain the default settings.

DMA ExpressionList Parameters
Figure 2: ExpressionList Parameters


The rest of the parameters retain the default settings.
AEA Device Interface Parameters
Figure 3: Device Interface Parameters



A_Task_Name    A_Instruction    A_IDX    A_Task_Source    Burst_Word_Size    A_Task_Address  A_Command    A_Bytes    A_Priority    A_Destination    ;
Display_Task       Load              0       DRAM                  32            1          Read               DMA_Bytes         0                 DMA ;
Display_Task      Store              0       DRAM                  32            1          Write       DMA_Bytes         1                 DMA ;




DMA Database Parameters
Figure 4: DMA Database Parameters

The DMA block references DMADatabase for details of the tasks.



DMA Parameters
Figure 5: DMA Parameters


The rest of the parameters retain the default settings.

DMA BusInterface Parameters
Figure 6: BusInterface Parameters


Behavior Flow


Modify the following blocks from Scenario 4.


DMA TriggeredTraffic Parameters
Figure 7: TriggeredTraffic Parameters


This field ensures that the selected processor processes the subsequent tasks.
AEA DMA SelectProcessor Parameters
Figure 8: Select Processor Parameters