Parallel Processor Simulation Scheduler with Debug Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current simulation technologies, such as the SIMICS simulator, are inefficient in simulating multiple processors in parallel, as they schedule one processor at a time, preventing parallel simulation and debugging of multiple processors.
Innovation Solution
A scheduler creates slave threads using a master thread to map and invoke corresponding processors, enabling parallel simulation by executing instructions through a first execute interface and facilitating debugging via a debug interface, thereby improving simulation efficiency and resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If one processor is scheduled at a time to execute instructions, then the scheduling control is simple, but parallel simulation of multiple processors cannot be implemented and simulation efficiency is reduced
Solution Approach 1:
The scheduler divides the simulation workload into multiple threads, with each thread responsible for simulating specific processors. This segmentation enables parallel execution of multiple processors simultaneously while maintaining manageable control through thread-level organization.
Solution Approach 2:
The scheduler dynamically manages multiple threads to simulate multiple processors in parallel. The system can adaptively allocate and manage thread resources based on simulation requirements, enabling flexible parallel simulation that improves efficiency without requiring overly complex static scheduling structures.
2Ease of operation
If serial simulation of multiple processors is performed, then the system structure is simple, but debugging during parallel simulation cannot be implemented
Solution Approach 1:
The scheduler acts as an intermediary between the debugging interface and multiple processor simulation threads. It manages debug interface information mapping and coordinates debugging operations across parallel threads, enabling debugging capability while maintaining a relatively simple overall system structure through centralized coordination.
3Productivity
If multiple processors are simulated in parallel using multiple threads, then simulation efficiency is improved and host machine resources are fully utilized, but the scheduler must manage complex thread-to-processor mappings and debug interface information
Solution Approach 1:
The scheduler is designed as a universal management structure that handles multiple functions: thread creation, processor mapping, debug interface coordination, and parallel execution control. This multi-functional design consolidates complexity into a single manageable component rather than distributing it across multiple separate systems.
Data Source
AI summary
The present invention provides a method and a system for simulating multiple processors in parallel, and a scheduler. In this embodiment, the scheduler maps debug interface information of a to-be-simulated processor requiring debugging onto the scheduler during parallel simulation of multiple processors, so that the scheduler is capable of debugging, by using a master thread, the to-be-simulated processor requiring debugging via a debug interface of the to-be-simulated processor requiring debugging pointed by the debug interface information, thereby implementing debugging during parallel simulation of multiple processors.


