Changes between Version 8 and Version 9 of Component/MPC7447A


Ignore:
Timestamp:
May 17, 2010, 3:11:04 PM (14 years ago)
Author:
Nicolas Pouillon
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Component/MPC7447A

    v8 v9  
    1 UNDER DEVELOPMENT
    2 
    3 
    4 == MPC7447A Processor Functional Description ==
    5 
    6 This hardware component is a Freescale MPC7447A, a 32-bit implementation of the PowerPC architecture used for both general purpose (PowerMacintosh and CHRP machines) and embedded applications (industrial and network).
    7 This model is still in development and currently uses [wiki:Component/IssWrapper IssWrapper] to connect the ISS to the VCI xcache.
    8 The model should run applications not requiring the standard PowerPC MMU, and the PowerPC specific TLB and cache instructions.
    9 
    10 == Compiling the ISS ==
    11 
    12 Some additionnal step are necessary to compile the model that will be removed once the model will be stable enough.
    13 The model needs three things to compile:
    14  * the macro SOCLIB must be defined: add '-DSOCLIB' to 'cflags'
    15  * libxml2 development headers must be installed: add -L/usr/include/libxml2 to the 'cflags' and -lxml2 to the 'libs'
    16  * UNISIM Library somewhere on the file system and do a symbolic link into source and include directories.
    17    The following shell commands should be enough to do the job as long as SoCLib utilities (especially soclib-cc tool) are in you PATH:
    18 
    19 {{{
    20 $ svn --username guest --password "" export https://unisim.org/svn/devel/unisim_lib/unisim@10987
    21 $ export SOCLIB=`soclib-cc --getpath`
    22 $ ln -s unisim ${SOCLIB}/soclib/lib/mpc7447a/src/iss/unisim
    23 $ ln -s unisim ${SOCLIB}/soclib/lib/mpc7447a/include/iss/unisim
    24 }}}
    25 
    26 Here is a sample for '~/.soclib/global.conf' to make it compile:
    27 
    28 {{{
    29 def _platform():
    30         """
    31         Retrieves platform information and make it look-like systemc's
    32         lib-xxx thing.
    33 
    34         Working so far with:
    35          * linux
    36          * darwin
    37         """
    38         import sys
    39         pf = sys.platform
    40         # Strip numeric suffix from platform name
    41         while pf[-1] in "0123456789":
    42                 pf = pf[:-1]
    43 
    44         remap_pf = {'darwin':'macosx'}
    45         if pf in remap_pf:
    46                 pf = remap_pf[pf]
    47         return pf
    48 
    49 config.systemc = Config(
    50         base = config.systemc,
    51         dir = "${SYSTEMC}",
    52         os = _platform(),
    53         )
    54 
    55 config.mytoolchain = Config(
    56         base= config.toolchain,
    57         cflags=['-DSOCLIB', '-I/usr/include/libxml2'],
    58         libs=['-lxml2', '-lbfd']
    59         )
    60 
    61 config.default = Config(
    62         base = config.build_env,
    63         systemc = config.systemc,
    64         toolchain = config.mytoolchain,
    65         repos = "/tmp/build/sc",
    66         )
    67 }}}
    68 
    69 
    70 == Example platform ==
    71 
    72 An example platform is available in directory soclib/soclib/platform/topcells/caba-vgmn-mpc7447a
    73 It uses one MPC7447A module (Wrapped ISS), one VGMN interconnect module, two memory banks, and one output console (TTY).
    74 An software example is provided. The software includes a primitive firmware with some installed exceptions handlers and a primitive library to write characters on the TTY.
    75 
    76 [[Image(caba-vgmn-mpc7447a-tty-soft.png)]]
     1This component is deprecated and got removed at [1673].
     2If you want to try (without support), you can search through history of this page and SVN.