Dear all,

finally, a big blob with some first multicore changes plus some massive
changes in newlib for better usability. Summary:

 * mor1kx changes (https://github.com/wallento/mor1kx/tree/multicore)
  * adds SPR_COREID and SPR_NUMCORES
  * cherry-pick Stefan's l.lwa/l.swa
  * adds snoop port to abort atomic on write to same address
  * adds trace port (mor1kx_monitor does not work for two cores), this
    can then be used for synthesizable trace processing
  * adds ISR0 and ISR1 as "shadow register" alternative for calculations
    in the prolog of exceptions

 * or1k-src general changes (https://github.com/wallento/or1k-src)
  * reentrant libc as we may want to use libc in exception handling
  * different stacks for exception and software due to virtual memory
  * Extend or1k support with restore and some service functions
  * malloc_lock and malloc_unlock to avoid interrupts during malloc

 * multicore stuff (https://github.com/wallento/or1k-src/tree/multicore)
  * build two libgloss versions: libor1k.a and libor1k_mc.a, crt0{_mc}.o
  * use SPR_COREID and SPR_NUMCORES in or1k_coreid() and or1k_numcores()
  * cherry-pick Stefan's l.lwa/l.swa
  * Basic synchronization functions in or1k-support
  * Reentrant or1k-support for multiple cores
  * libc Reentrancy for multiple cores
  * malloc_lock uses l.lwa/l.swa

 * or1k-gcc (https://github.com/wallento/or1k-gcc/tree/multicore)
  * Add -mmulticore to switch between libor1k.a/crt0.o and
    libor1k_mc.a/crt0_mc.o

You can run a demo (currently in Modelsim only) using fusesoc:

 * Modified orpsoc-cores at
   https://github.com/wallento/orpsoc-cores/tree/multicore-demo
 * (for 64-bit Modelsim: fusesoc at https://github.com/wallento/fusesoc)

There is a very small example at: http://pastebin.com/1dyUnygK

When you want to try it out and have ~20 minutes, try this walkthrough:
http://pastebin.com/uDsh5DJE

I am looking forward to all discussion and input.

Bye,
Stefan




Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc

Reply via email to