IL197314A

Performing diagnostic operations upon an asymmetric multiprocessor apparatus

Abstract

This record has no abstract on file.

IL197314A, drawing sheet 1
Sheet 1 of 5

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

16 claims: 9 independent, 7 dependent

  1. 1
    An asymmetric multiprocessor apparatus (2) comprising:a plurality of execution mechanisms (6, 8. 10) responsive to respective program instructions to perform data processing operations, a thread of program instruction execution being time-multiplexed between said plurality of execution mechanisms, at least one of said plurality of execution mechanisms having a different processing architecture than one or more other of said plurality of execution mechanisms;a plurality of slave diagnostic units (20, 22, 24) each associated with a respective execution mechanism to perform diagnostic operations thereupon;a master diagnostic unit (26) coupled to said plurality of slave diagnostic units and responsive to a migration of execution of said given thread between execution mechanisms to make a corresponding change in which of said slave diagnostic units is currently active to perform diagnostic operations in respect of said given thread such that said master diagnostic tracks changes in which execution mechanism is executing said given thread;wherein said migration of execution is by a synchronous remote procedure call from one execution mechanism to another execution mechanism.
  2. 3
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said master diagnostic unit provides diagnostic output from an execution mechanism and is responsive to a change in execution mechanism for said given thread to make a corresponding change in said diagnostic output.
  3. 4
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said master diagnostic unit directs diagnostic commands in respect of said given thread to a slave diagnostic unit associated with an execution mechanism, currently executing said given thread.
  4. 5
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said master diagnostic unit sets a breakpoint in respect of a portion of said given thread upon each of those execution mechanisms upon which said portion can be executed.
  5. 8
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, comprising a plurality of memories and wherein said master diagnostic unit sets a watchpoint for a data item in respect of each of said plurality of memories that can store said data item.
  6. 11
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said slave diagnostic units are slave tracing units, said master diagnostic unit is a master tracing unit and said master tracing unit tracks migration of execution of said given thread between different execution mechanisms when forming a trace output for said given thread.
  7. 12
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said slave diagnostic units are slave profiling units, said master diagnostic unit is a master profiling unit and said master profiling unit tracks migration of execution of said given thread between different execution mechanisms when forming a profiling output for said given thread.
  8. 13
    An asymmetric multiprocessor apparatus as claimed in any one of the preceding claims, wherein said plurality of execution mechanisms include one or more of:a general purpose processor;a direct memory access unit;a coprocessor;an VL1W processor;a digital signal processor;and a hardware accelerator unit.
  9. 15
    A method of performing diagnostic operations upon an asymmetric multiprocessor apparatus (2), said method comprising the steps of:in response to respective program instructions performing data processing operations with a plurality of execution mechanisms (6, 8, 10), a thread of program instruction execution being time-multiplexed between said plurality of execution mechanisms, at least, one of said plurality of execution mechanisms having a different processing architecture than one or more other of said plurality of execution mechanisms;performing diagnostic operations upon said plurality of execution mechanisms with respective slave diagnostic units (20, 22, 24) associated therewith;using a master diagnostic unit (26) coupled to said plurality of slave diagnostic units and responsive to a migration of execution of said given thread between execution mechanisms to make a corresponding change in which of said slave diagnostic units is currently active to perform diagnostic operations in respect of said given thread such that said master diagnostic tracks changes in which execution mechanism is executing said given thread: wherein said migration of execution is by a synchronous remote procedure call from one execution mechanism to another execution mechanism.