Ultrasound system with parallel processing architecture
First Claim
1. A method of processing ultrasound information in a medical diagnostic imaging ultrasound system having multiple CPUs configured to perform parallel ultrasound operations, said method comprising:
- collecting data sets representative of patient ultrasound scans of an area of interest of a patient;
dividing a signal processing operation into parallel signal processing tasks;
instructing multiple CPUs to perform, in parallel, signal processing tasks upon said data sets to form processed data sets, said multiple CPUs processing said signal processing tasks simultaneously and in parallel;
reassigning uncompleted signal processing tasks among said multiple CPUs based upon completion of at least one of said signal processing tasks; and
presenting ultrasound information to a user representative of said ultrasound scans based on said processed data sets.
1 Assignment
0 Petitions
Accused Products
Abstract
An ultrasound system operating on a personal computer architecture comprising multiple processors controlled to operate in parallel to share ultrasound operations of the system. The multiple processors are controlled by software to share the operations associated with system setup, system control, scanning, data acquisition, beamforming, user interface service, signal processing, and scan conversion. The ultrasound system utilizes management software which divides operations associated with each function (such as signal processing and scan conversion) into parallel sub-operations or tasks. Each task is assigned by the operating system to a CPU. Any of the CPUs may be capable of performing any of the tasks. The CPUs operate in parallel to carry out the assigned tasks. Once all of the CPUs have completed the assigned tasks, the system may serially advance to the next ultrasound function.
98 Citations
48 Claims
-
1. A method of processing ultrasound information in a medical diagnostic imaging ultrasound system having multiple CPUs configured to perform parallel ultrasound operations, said method comprising:
-
collecting data sets representative of patient ultrasound scans of an area of interest of a patient;
dividing a signal processing operation into parallel signal processing tasks;
instructing multiple CPUs to perform, in parallel, signal processing tasks upon said data sets to form processed data sets, said multiple CPUs processing said signal processing tasks simultaneously and in parallel;
reassigning uncompleted signal processing tasks among said multiple CPUs based upon completion of at least one of said signal processing tasks; and
presenting ultrasound information to a user representative of said ultrasound scans based on said processed data sets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
dividing a scan conversion operation into parallel scan conversion tasks; and
instructing said multiple CPUs to perform, in parallel, scan conversion tasks upon said processed data sets.
-
-
3. The method of claim 1, further comprising instructing the multiple CPUs to perform said scan conversion tasks simultaneously and in parallel with said parallel signal processing tasks.
-
4. The method of claim 1, further comprising:
instructing the multiple CPUs to perform system control tasks simultaneously and in parallel with said signal processing tasks.
-
5. The method of claim 1, further comprising:
-
interrupting operation of at least one of the multiple CPUs while performing associated parallel signal processing tasks; and
instructing an interrupted CPU to perform a user-interface operation, while uninterrupted CPUs continue to perform associated parallel signal processing tasks.
-
-
6. The method of claim 1, further comprising:
-
determining when a first CPU completes an associated first parallel signal processing task and at least a second CPU has not completed an associated second parallel signal processing task; and
instructing the first CPU to complete the second parallel signal processing task and the second CPU to cease performing the second parallel signal processing task.
-
-
7. The method of claim 1, wherein said dividing step includes dividing a data set associated with a single image frame into data subsets based on a number of CPUs, wherein each data subset corresponds to a unique segment of the image frame and wherein said instructing step instructs each CPU to perform a parallel signal processing task upon a corresponding data subset of a single image frame.
-
8. The method of claim 1, wherein the dividing step divides the data set into at least two data subsets corresponding to at least two unique quadrants of an ultrasound scan and having substantially equal complexity.
-
9. The method of claim 1, wherein the collecting step collects at least first and second data sets corresponding to first and second image frames of an area of interest, respectively;
- and the instructing step instructs first and second CPUs to perform all signal processing upon corresponding first and second data sets, respectively.
-
10. The method of claim 1, wherein each parallel signal processing task includes all signal processing for a data set associated with an image frame of the area of interest.
-
11. The method of claim 1, wherein the instructing step assigns each CPU to a data set associated with a complete image frame of the area of interest, the multiple CPUs being assigned to successive image frames.
-
12. The method of claim 1, wherein the instructing step directs at least two CPUs to perform parallel signal processing tasks upon at least two unique data subsets representing unique segments of a single ultrasound scan.
-
13. The method of claim 1, further comprising:
waiting until completion of said signal processing operation by all of the multiple CPUs before beginning another ultrasound operation.
-
14. The method of claim 1, further comprising:
-
dividing setup operations into parallel setup tasks, at least first and second parallel setup tasks including generation of beamformer tables and scan conversion tables, respectively; and
instructing first and second CPUs to perform simultaneously said first and second parallel setup tasks, respectively.
-
-
15. The method of claim 1, further comprising:
-
re-dividing the signal processing operation into a new set of parallel signal processing tasks; and
instructing the multiple CPUs to perform the new set of parallel signal processing tasks.
-
-
16. The method of claim 1, wherein said dividing and instructing steps are carried out by a symmetrical multiprocessing operating system.
-
17. The method of claim 1, further comprising:
-
configuring a personal computer to include said multiple CPUs; and
operating a symmetrical multiprocessing operating system in the personal computer to carry out the dividing and instructing steps.
-
-
18. The method of claim 1, further comprising:
configuring a personal computer to include said multiple CPUs.
-
19. A method of processing ultrasound information in a medical diagnostic imaging ultrasound system having multiple CPUs configured to perform parallel ultrasound operations, said method comprising:
-
collecting data sets representative of patient ultrasound scans of an area of interest of a patient;
dividing a scan conversion operation into parallel scan conversion tasks;
instructing multiple CPUs to perform, in parallel, scan conversion tasks upon said data sets to form scan converted data sets, said multiple CPUs processing said scan conversion operations simultaneously and in parallel;
reassigning uncompleted scan conversion tasks among said multiple CPUs based upon completion of at least one of said scan conversion tasks; and
presenting to a user ultrasound information related to said ultrasound scan based on said scan converted data sets. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
dividing signal processing operations into parallel signal processing tasks; and
instructing the multiple CPUs to perform, in parallel, signal processing tasks and scan conversion tasks upon data sets to form processed data sets.
-
-
21. The method of claim 19, further comprising:
instructing the multiple CPUs to perform parallel system control tasks simultaneously and in parallel with said parallel scan conversion tasks.
-
22. The method of claim 19, further comprising:
-
interrupting operation of at least one of the multiple CPUs while performing associated parallel scan conversion tasks; and
instructing an interrupted CPU to perform a user-interface operation, while uninterrupted CPUs continue to perform associated parallel scan conversion tasks.
-
-
23. The method of claim 19, further comprising:
-
determining when a first CPU completes an associated first parallel scan conversion task and at least a second CPU has not completed an associated second parallel scan conversion task; and
instructing the first CPU to complete the second parallel scan conversion task and the second CPU to cease performing the second parallel scan conversion task.
-
-
24. The method of claim 19, wherein said dividing step includes dividing a data set associated with a single image frame into data subsets based on a number of CPUs, wherein each data subset corresponds to a unique segment of the image frame and wherein said instructing step instructs each CPU to perform a parallel scan conversion task upon a corresponding data subset of a single image frame.
-
25. The method of claim 19, wherein the dividing step divides the data set into at least two data subsets corresponding to at least two unique quadrants of an ultrasound scan and having substantially similar complexity.
-
26. The method of claim 19, wherein the collecting step collects at least first and second data sets corresponding to first and second image frames of an area of interest, respectively;
- and the instructing step instructs first and second CPUs to perform all scan conversion upon corresponding first and second data sets, respectively.
-
27. The method of claim 19, wherein each parallel scan conversion task includes all scan conversion for a data set associated with an image frame of the area of interest.
-
28. The method of claim 19, wherein the instructing step assigns each CPU to a data set associated with a complete image frame of the area of interest, the multiple CPUs being assigned to successive image frames.
-
29. The method of claim 19, wherein the instructing step directs at least two CPUs to perform parallel scan conversion tasks upon at least two unique data subsets representing unique segments of a single ultrasound scan.
-
30. The method of claim 19, further comprising:
waiting until completion of said scan conversion operation by all of the multiple CPUs before beginning another ultrasound operation.
-
31. The method of claim 19, further comprising:
-
re-dividing the scan conversion operation into a new set of parallel scan conversion tasks; and
instructing the multiple CPUs to perform the new set of parallel scan conversion tasks.
-
-
32. The method of claim 19, wherein said dividing and instructing steps are carried out by a simultaneous multiprocessing operating system.
-
33. The method of claim 19, further comprising:
-
configuring a personal computer to include said multiple CPUs; and
operating a simultaneous multiprocessing operating system in the personal computer to carry out the dividing and instructing steps.
-
-
34. The method of claim 19, further comprising:
configuring a personal computer to include said multiple CPUs.
-
35. An ultrasound apparatus for presenting medical diagnostic imaging ultrasound information to a user representative of an ultrasound scan of an area of interest, said apparatus comprising:
-
an input receiving data values representative of echo signals of patient ultrasound scans of an area of interest of a patient;
multiple CPUs configured to perform ultrasound operations in parallel upon data values received at said input;
operating modules for instructing said multiple CPUs to perform ultrasound operations upon said data values to produce ultrasound information, at least one of said operating modules dividing a corresponding ultrasound operation into a plurality of tasks, each of said multiple CPUs being assigned a unique task, said CPUs performing said tasks associated with a single ultrasound operation in parallel, at least one of said operating modules reassigning uncompleted tasks among said multiple CPUs based upon completion of at least one task from said plurality of tasks; and
an output for presenting said ultrasound information to a user. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
a user-interface for accepting input from a user; and
a user-interface module interrupting operation of at least one of said multiple CPUs and instructing an interrupted CPU to perform a user-interface operation based on a user input, while uninterrupted CPUs continue to perform parallel tasks.
-
-
43. The apparatus of claim 35, wherein said operating module includes a 3-D rendering module that divides 3-D rendering operations in 3-D rendering tasks, each 3D rendering task operating upon a unique subset of data values.
-
44. The apparatus of claim 35, further comprising a probe receiving echo signals and a front end subsystem, said front end subsystem having a plurality of A/D converters to convert analog echo signals associated with each element of the probe into said digital values and having buffer memory for storing said data values, said front end subsystem passing the data values to a beamformer software module which instructs said multiple CPUs to perform beamforming operations upon the data values.
-
45. The apparatus of claim 35, further comprising a probe receiving echo signals.
-
46. The apparatus of claim 35, further comprising:
a simultaneous multiple processor operating system controlling said multiple CPUs in accordance with instructions from said operating modules.
-
47. The apparatus of claim 35, further comprising:
a personal computer including said multiple CPUs and including a simultaneous multiple processor operating system to control said multiple CPUs in accordance with instructions from said operating modules.
-
48. The apparatus of claim 35, further comprising:
a personal computer including said multiple CPUs.
Specification