UNDER DEVELOPMENT == MPC7447A Processor Functional Description == 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). This model is still in development and currently uses [wiki:Component/IssWrapper IssWrapper] to connect the ISS to the VCI xcache. The model should run applications not requiring the standard PowerPC MMU, and the PowerPC specific TLB and cache instructions. == Compiling the ISS == The model needs two things to compile: * the macro SOCLIB must be defined * libxml2 development headers must be installed Here is a sample for soclib.conf to make it compile: {{{ # -*- python -*- # Maintainers: nipo def _platform(): """ Retrieves platform information and make it look-like systemc's lib-xxx thing. Working so far with: * linux * darwin """ import sys pf = sys.platform # Strip numeric suffix from platform name while pf[-1] in "0123456789": pf = pf[:-1] remap_pf = {'darwin':'macosx'} if pf in remap_pf: pf = remap_pf[pf] return pf config.systemc = Config( base = config.systemc, dir = "${SYSTEMC}", os = _platform(), ) config.mytoolchain = Config( base= config.toolchain, cflags=['-DSOCLIB', '-I/usr/include/libxml2'], libs=['-lxml2', '-lbfd'] ) config.default = Config( base = config.build_env, systemc = config.systemc, toolchain = config.mytoolchain, repos = "/tmp/build/sc", ) }}} == Example platform == An example platform is available in directory soclib/soclib/platform/topcells/caba-vgmn-mpc7447a It uses one MPC7447A module (Wrapped ISS), one VGMN interconnect module, two memory banks, and one output console (TTY). 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. [[Image(caba-vgmn-mpc7447a-tty-soft.png)]]