-
公开(公告)号:EP2257874A2
公开(公告)日:2010-12-08
申请号:EP09724182.2
申请日:2009-03-25
发明人: TAL, Uri , MIZRACHI, Shay , BEN-DAVID, Tomer
IPC分类号: G06F9/45
CPC分类号: G06F17/5022 , G06F8/45 , G06F17/505
摘要: A method for design simulation includes partitioning a verification task of a design (100) into a first plurality of atomic Processing Elements (PEs-108) having execution dependencies (112), each execution dependency specifying that a respective first PE is to be executed before a respective second PE. The method further includes computing an order for executing the PEs on a multiprocessor device (32), which includes a second plurality of processors (44) operating in parallel and schedules the PEs for execution by the processors according to a built-in scheduling policy. The order induces concurrent execution of the PEs by different ones of the processors without violating the execution dependencies, irrespective of the scheduling policy. The PEs are executed on the processors in accordance with the computed order and the scheduling policy, to produce a simulation result. A performance of the design is verified responsively to the simulation result.
-
公开(公告)号:EP2297647A2
公开(公告)日:2011-03-23
申请号:EP09794083.7
申请日:2009-06-30
发明人: MIZRACHI, Shay , TAL, Uri , BEN-DAVID, Tomer
IPC分类号: G06F15/16
CPC分类号: G06F8/456 , G06F8/4442 , G06F8/451
摘要: A computing method includes accepting a definition of a computing task (68), which includes multiple atomic Processing Elements (PEs - 76) having execution dependencies (80). Each execution dependency specifies that a respective first PE is to be executed before a respective second PE. The computing task is compiled for concurrent execution on a multiprocessor device (32), which includes multiple processors (44) that are capable of executing a first number of the PEs simultaneously, by arranging the PEs, without violating the execution dependencies, in an invocation data structure (90) including a second number of execution sequences (98) that is greater than one but does not exceed the first number. The multiprocessor device is invoked to run software code that executes the execution sequences in parallel responsively to the invocation data structure, so as to produce a result of the computing task.
-