Parallel IO Device Enumeration Across Multiple Processors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing hardware system architectures, such as x86 and Itanium, face inefficiencies in initializing system IO buses and enumerating IO devices, leading to prolonged system startup times, which hinder user satisfaction and increase product development costs due to repeated restarts during the design and verification process.
Innovation Solution
A method and device that acquire identifiers of processors and IO centralized controllers, instruct multiple processors to simultaneously enumerate IO devices, and collect related information, thereby distributing the enumeration task across multiple processors to reduce the time consumed in the process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If one processor enumerates all IO devices sequentially, then resource allocation consistency is maintained, but system startup time is prolonged
Solution Approach 1:
The patent divides the IO device enumeration task into multiple segments, assigning each processor to enumerate specific IO devices or IO bus segments. This segmentation allows parallel execution of enumeration tasks across multiple processors while maintaining resource allocation consistency through coordinated management of the divided tasks.
2Productivity
If multiple processors simultaneously enumerate IO devices, then enumeration efficiency is improved, but system complexity increases
Solution Approach 1:
The patent segments the enumeration task among multiple processors, with each processor handling specific portions of the IO device enumeration. This division enables simultaneous execution of enumeration operations by multiple processors, improving overall productivity while managing system complexity through structured task distribution.
Solution Approach 2:
The patent implements feedback mechanisms where processors communicate enumeration results and status to coordinate their parallel operations. This feedback system ensures that multiple processors working simultaneously on enumeration tasks can synchronize their actions, avoid conflicts, and maintain system consistency without excessive complexity.
3Reliability
If system firmware performs IO device enumeration, then hardware detection is complete, but product development verification time increases
Solution Approach 1:
The patent applies segmentation to the verification process by enabling multiple processors to simultaneously perform hardware detection and enumeration tasks. This parallel execution maintains complete hardware detection capability while reducing the total verification time required during product development and testing phases.
Data Source
AI summary
Embodiments of the present disclosure relate to a method and a device for enumerating input/output devices (IO devices). The method for enumerating input/output devices includes: acquiring an identifier of each processor and an identifier of each input/output (IO) centralized controller in a system; separately instructing processors to simultaneously enumerate a specific IO centralized controller and an input/output IO device connected to the specific IO centralized controller, according to the identifier of each processor and the identifier of each IO centralized controller; and acquiring related information of IO devices enumerated by the instructed processors. According to the embodiments of the present disclosure, the work of enumerating the system IO devices may be allocated to multiple processors to be carried out simultaneously, so as to greatly reduce time consumed in the enumeration process, and to accelerate a system initialization process.


