1    /*
     2     *  Copyright (c) 2011 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     */
    16    
    17    package ti.platforms.simArctic;
    18    
    19    /*!
    20     *  ======== Platform ========
    21     *  Platform support for the simArctic
    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 a single Cpu, and therefore, only
    32     *  declares a single CPU configuration object.  Multi-CPU platforms
    33     *  would declare multiple Cpu configuration parameters (one per
    34     *  platform CPU).
    35     */
    36    metaonly module Platform inherits xdc.platform.IPlatform
    37    {
    38        readonly config xdc.platform.IPlatform.Board BOARD = {      
    39            id:             "0",
    40            boardName:      "simArctic",
    41            boardFamily:    "simArctic",
    42            boardRevision:  null,
    43        };
    44    
    45        readonly config xdc.platform.IExeContext.Cpu ARP32 = {
    46            id:             "0",
    47            clockRate:      200.0,
    48            catalogName:    "ti.catalog.arp32",
    49            deviceName:     "ARP32",
    50            revision:       "",
    51        };
    52    
    53        readonly config xdc.platform.IExeContext.Cpu DSP = {        
    54            id:             "1",
    55            clockRate:      300.0,
    56            catalogName:    "ti.catalog.c6000",
    57            deviceName:     "Arctic",
    58            revision:       "",
    59        };
    60    
    61    
    62    instance:
    63    
    64        /* 
    65         *  DDR is 2GByte but we need to share it with ARP32.
    66         */
    67        override readonly config xdc.platform.IPlatform.Memory
    68            externalMemoryMap[string] = [
    69                ["DDR",  {name: "DDR",  base: 0x80000000, len: 0x80000000}],
    70            ];
    71    
    72        /*
    73         *  ======== sectMap ========
    74         *  Define a placement of compiler generated output sections into
    75         *  memory regions defined in the memTab above.
    76         */
    77        override config string codeMemory = "DDR";
    78        
    79        override config string dataMemory = "DDR";
    80    
    81        override config string stackMemory = "DDR";
    82    
    83        /*
    84         *  ======== l1PMode ========
    85         *  Define the amount of L1P RAM used for L1 Program Cache.
    86         *
    87         *  Check the device documentation for valid values.
    88         */
    89        config String l1PMode = "32k";
    90        
    91        /*
    92         *  ======== l1DMode ========
    93         *  Define the amount of L1D RAM used for L1 Data Cache.
    94         *
    95         *  Check the device documentation for valid values.
    96         */
    97        config String l1DMode = "32k";
    98        
    99        /*
   100         *  ======== l2Mode ========
   101         *  Define the amount of L2 RAM used for L2 Cache.
   102         *
   103         *  Check the device documentation for valid values.
   104         */
   105        config String l2Mode = "0k";
   106    };
   107    /*
   108     *  @(#) ti.platforms.simArctic; 1, 0, 0,13; 4-26-2011 10:55:52; /db/ztree/library/trees/platform/platform-m16x/src/
   109     */
   110