by Dinesh Thakur

A coprocessor is a chip that works side-by-side with the computer's main processor (the chip called the central processing unit, or CPU). The coprocessor handles some of the more specialized tasks, such as doing math calculations or displaying graphics on the screen, thereby taking some of the work load off the main processor so it can go on with the business of directing and keeping order over the whole show. A coprocessor is installed to reduce the burden on a computer's CPU and thus free it for more general duties such as transferring data and handling multiple tasks. 

Math coprocessors, for example, are specialized for performing calculations on numbers, and they are much faster at it than the main processor in your computer. So if you have a program that does many math calculations, such as a spreadsheet or a CAD program, then adding a math coprocessor to your system can sometimes remarkably improve your computing speed.

There are video coprocessors that are used to speed up the display of graphics on your screen. Again, if you use any graphics-based application, including Windows, then adding a video coprocessor to your system on an add-in board can speed up your system even more than buying a faster computer.

One catch, however, with any kind of coprocessor, is that the software you use must be written so that it knows the coprocessor is there, otherwise your system will not recognize its existence and won't be able to use it.

A coprocessor may be designed to work just with a particular type of CPU, in which case its instructions can be included in the main program and are passed on to the coprocessor by the CPU as it encounters them. In other cases, the coprocessor may require its own separate program and program memory, and communicates with the CPU by interrupts or message passing via a shared memory region.