Electrical computers and digital processing systems: processing – Processing control – Processing sequence control
Reexamination Certificate
1999-08-31
2003-08-12
Ellis, Richard L. (Department: 2183)
Electrical computers and digital processing systems: processing
Processing control
Processing sequence control
C712S010000, C712S228000
Reexamination Certificate
active
06606704
ABSTRACT:
BACKGROUND
This invention relates to parallel processors.
Parallel processing is an efficient form of information processing of concurrent events in a computing process. Parallel processing demands concurrent execution of many programs in a computer, in contrast to sequential processing. In the context of a parallel processor, parallelism involves doing more than one thing at the same time. Unlike a serial paradigm where all tasks are performed sequentially at a single station or a pipelined machine where tasks are performed at specialized stations, with parallel processing, a plurality of stations are provided with each capable of performing all tasks. That is, in general all or a plurality of the stations work simultaneously and independently on the same or common elements of a problem. Certain problems are suitable for solution by applying parallel processing.
Thus, types of computer processing include single instruction stream, single data stream, the conventional serial von Neumann computer in which there is a single stream of instructions. A second processing type is the single instruction stream, multiple data streams process (SIMD). This processing can have multiple arithmetic-logic processors and a single control processor. Each of the processors perform operations on the data in lock-step. These machines are synchronized by the control processor. A third type is multiple instruction streams, single data stream (MISD) process. This processing has the same data stream flows through a linear array of processors executing different instruction streams. A fourth is multiple instruction streams, multiple data streams (MIMD). This processing uses multiple processors, each executing its own instruction stream to process a data stream fed to each of the processors. Multiple instruction streams, multiple data streams (MIMD) processors may have several instruction processing units and therefore several data streams.
SUMMARY
According to an aspect of the present invention, a parallel hardware-based multithreaded processor includes a general purpose processor that coordinates system functions and a plurality of microengines that support multiple hardware threads.
According to an additional aspect of the present invention, a parallel hardware-based multithreaded processor includes a general purpose processor that coordinates system functions and a plurality of microengines that support multiple hardware threads. The processor also includes a memory control system including a first memory controller that sorts memory references based on whether the memory references are directed to an even bank or an odd bank of memory and a second memory controller that optimizes memory references based upon whether the memory references are read references or write references.
One or more of the following advantages may be provided by one or more aspects of the invention.
This parallel multithreaded architecture provides a very general purpose microprocessor architecture. The processor can be connected to other devices to process large amounts of data. The system is especially useful for tasks that can be broken into parallel subtasks or functions. The hardware-based multithreaded processor is useful for tasks that are bandwidth oriented rather than latency oriented. The hardware-based multithreaded processor has multiple microengines each with multiple hardware controlled threads that can be simultaneously active and independently work on a task. One example of an application for the hardware-based multithreaded processor is as a network processor. As a network processor, the hardware-based multithreaded processor can interfaces to network devices such as a media access controllers. As a network processor, the hardware-based multithreaded processor can interface to any type of communication device or interface that receives/sends large amounts of data. The processor can be used a print engine for a postscript processor or as a processor for a storage subsystem, i.e., RAID disk storage. A further use is as a matching engine. In the securities industry for example, the advent of electronic trading requires the use of electronic matching engines to match orders between buyers and sellers. These and other parallel types of tasks can be accomplished on the processor used in a system.
REFERENCES:
patent: 3478322 (1969-11-01), Evans
patent: 3792441 (1974-02-01), Wymore et al.
patent: 4514807 (1985-04-01), Nogi
patent: 4745544 (1988-05-01), Renner et al.
patent: 5915123 (1999-06-01), Mirsky et al.
patent: 6023742 (2000-02-01), Ebeling et al.
patent: 6079008 (2000-06-01), Clery, III
patent: 6272616 (2001-08-01), Fernando et al.
patent: WO 94/15287 (1994-07-01), None
patent: WO 97/38372 (1997-10-01), None
Wazlowski, M., Agarwal, L., Lee T., Smith, A., Lam, E., Athanas, P., Silverman, H., Ghosh, S.,PRISM-II compiler and architecture, IEEE PRoceedings, Workshop on FPGAs for Custom Computing Machines, 1993, IEEE.*
Trimberger, S., Carberry, D., Johnson, A., Wong, J.,A time-multiplexed FPGA, Proceedings of The 5thAnnual IEEE Symposium on Field-Programmable Custom Computing Machines, 1997, IEEE.*
Haug, G., Rosenstiel, W.,Reconfigurable hardware as shared resource for parallel threads, IEEE Symposium on FPGAs for Custom Computing Machines, 1998, IEEE.*
Hauser, J.R., Wawrzynek, J.,Garp: a MIPS processor with a reconfigurable coprocessor, Proceedings of The 5thAnnual IEEE Symposium on Field-Programmable Custom Computing Machines, 1997, IEEE.*
“Multithreaded Processor Architectures”, IEEE Spectrum, 32 (1995) Aug., No. 8, New York, US, pp. 38-46.
“A Three Dimensional Register File For Superscalar Processors”, M. Tremblay et al., IEEE Proceedings of the 28thAnnual Hawaii Int'l Conference on Systems Sciences, 1995, pp. 191-201.
“A Processor Architecture For Horizon”, M.R. Thistle et al., IEEE 1998, pp. 35-41.
“The M-Machine Multicomputer”, M. Fillo et al., IEEE Proceedings of MICRO-28, 1995, pp. 146-156.
“StrongARMing Portable Communications”, T. Litch et al., IEEE Micro 1998, pp. 48-55.
Adiletta Matthew J.
Wheeler William
Wolrich Gilbert
Fish & Richardson P.C.
Intel Corporation
LandOfFree
Parallel multithreaded processor with plural microengines... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Parallel multithreaded processor with plural microengines..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Parallel multithreaded processor with plural microengines... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3114198