1    /*
     2     *  Copyright (c) 2014 by Texas Instruments and others.
     3     *  All rights reserved. This program and the accompanying materials
     4     *  are made available under the terms of the Eclipse Public License v1.0
     5     *  which accompanies this distribution, and is available at
     6     *  http://www.eclipse.org/legal/epl-v10.html
     7     *
     8     *  Contributors:
     9     *      Texas Instruments - initial implementation
    10     *
    11     * */
    12    
    13    /*
    14     *  ======== Platform.xdc ========
    15     *  Platform support for TDA3XX
    16     *
    17     */
    18    
    19    /*!
    20     *  ======== Platform ========
    21     *  Platform support for TDA3XX
    22     *
    23     *  This module implements xdc.platform.IPlatform and defines configuration
    24     *  parameters that correspond to this platform's Cpu's, Board's, etc.
    25     *
    26     *  The configuration parameters are initialized in this package's
    27     *  configuration script (package.cfg) and "bound" to the TCOM object
    28     *  model.  Once they are part of the model, these parameters are
    29     *  queried by a program's configuration script.
    30     *
    31     *  This particular platform has 1 EVE, 1 Benelli/IPU sub-system (Dual M4's)
    32     *  and 2 C66x DSP's.
    33     */
    34    metaonly module Platform inherits xdc.platform.IPlatform
    35    {
    36        readonly config xdc.platform.IPlatform.Board BOARD = {
    37            id:             "0",
    38            boardName:      "evmTDA3XX",
    39            boardFamily:    "evmTDA3XX",
    40            boardRevision:  null,
    41        };
    42    
    43        readonly config xdc.platform.IExeContext.Cpu DSP = {
    44            id:             "0",
    45            clockRate:      600.0,
    46            catalogName:    "ti.catalog.c6000",
    47            deviceName:     "TDA3XX",
    48            revision:       "1.0",
    49        };
    50    
    51        /* Benelli M4 Subsystem */
    52        readonly config xdc.platform.IExeContext.Cpu M4 = {
    53            id:             "1",
    54            clockRate:      212.8,
    55            catalogName:    "ti.catalog.arm.cortexm4",
    56            deviceName:     "TDA3XX",
    57            revision:       "1.0",
    58        };
    59    
    60        /* EVE */
    61        readonly config xdc.platform.IExeContext.Cpu EVE = {
    62            id:             "2",
    63            clockRate:      535.0,
    64            catalogName:    "ti.catalog.arp32",
    65            deviceName:     "TDA3XX",
    66            revision:       "1.0"
    67        };
    68    
    69    instance:
    70    
    71        /*!
    72         *  ======== externalMemoryMap ========
    73         *  Memory regions as defined in the TDA3XX Specification
    74         */
    75        override readonly config xdc.platform.IPlatform.Memory
    76            externalMemoryMap[string] = [
    77                ["EXT_RAM", {
    78                    comment: "1 GB External RAM Memory",
    79                    name: "EXT_RAM",
    80                    base: 0x80000000,
    81                    len:  0x40000000
    82                }]
    83            ];
    84    
    85        /*
    86         *  ======== l1PMode ========
    87         *  Define the amount of L1P RAM used for L1 Program Cache.
    88         *
    89         *  Check the device documentation for valid values.
    90         */
    91        config String l1PMode = "32k";
    92    
    93        /*
    94         *  ======== l1DMode ========
    95         *  Define the amount of L1D RAM used for L1 Data Cache.
    96         *
    97         *  Check the device documentation for valid values.
    98         */
    99        config String l1DMode = "32k";
   100    
   101        /*
   102         *  ======== l2Mode ========
   103         *  Define the amount of L2 RAM used for L2 Cache.
   104         *
   105         *  Check the device documentation for valid values.
   106         */
   107        config String l2Mode = "0k";
   108    };
   109    /*
   110     *  @(#) ti.platforms.evmTDA3XX; 1, 0, 0, 0,18; 3-22-2014 18:57:58; /db/ztree/library/trees/platform/platform-o48x/src/
   111     */
   112