Academic Library
Home Register Login FAQ Contact Us Logout

Floating Point Coprocessors

TitleFloating Point Coprocessors
# of Words2746
# of Pages (250 words per page double spaced)10.98

Floating Point Coprocessors



Floating Point Coprocessors


     The designer of any microprocessor would like to extend its instruction
set almost infinitely but is limited by the quantity of silicon available (not
to mention the problems of testability and complexity). Consequently, a real
microprocessor represents a compromise between what is desirable and what is
acceptable to the majority of the chip's users. For example, the 68020
microprocessor is not optimized for calculations that require a large volume of
scientific (i.e. floating point) calculations. One method to significantly
enhance the performance of such a microprocessor is to add a coprocessor. To
increase the power of a microprocessor, it does not suffice to add a few more
instructions to the instruction set, but it involves adding an auxiliary
processor that works in parallel to the MPU (Micro Processing Unit). A system
involving concurrently operating processors can be very complex, since there
need to be dedicated communication paths between the processors, as well as
software to divide the tasks among them. A practical multiprocessing system
should be as simple as possible and require a minimum overhead in terms of both
hardware and software. There are various techniques of arranging a coprocessor
alongside a microprocessor. One technique is to provide the coprocessor with an
instruction interpreter and program counter. Each instruction fetched from
memory is examined by both the MPU and the coprocessor. If it is a MPU
instruction, the MPU executes it; otherwise the coprocessor executes it. It can
be seen that this solution is feasible, but by no means simple, as it would be
difficult to keep the MPU and coprocessor in step. Another technique is to equip
the microprocessor with a special bus to communicate with the external
coprocessor. Whenever the microprocessor encounters an operation that requires
the intervention of the coprocessor, the special bus provides a dedicated high-
speed communication between the MPU and the coprocessor. Once again, this
solution is not simple. There are more methods of connecting two (or more)
concurrently operating processors, which will be covered in more detail during
the specific discussions of the Intel and Motorola floating point coprocessors.

     Motorola Floating Point Coprocessor (FPC) 68882

     The designers of the 68000-family coprocessors decided to implement
coprocessors that could work with existing and future generations of
microprocessors with minimal hardware and software overhead. The actual approach
taken by the Motorola engineers was to tightly couple the coprocessor to the
host microprocessor and to treat the coprocessor as a memory-mapped peripheral
lying inside the CPU address space. In effect, the MPU fetches instructions from
memory, and, if an instruction is a coprocessor instruction, the MPU passes it
to the coprocessor by means of the MPU's asynchronous data transfer bus. By
adopting this approach, the coprocessor does not have to fetch or interpret
instructions itself. Thus if the coprocessor requires data from memory, the MPU
must fetch it. There are advantages and disadvantages to this design. Most
notably, the coprocessor does not have to deal with, for example, bus errors, as
all fetching is performed by the host MPU. On the other hand, the FPC can not
act as a bus master (making it a non-DMA device), making memory accesses by the
FPC slower than if it were directly connected to the address and data bus.
     In order for the coprocessor to work as a memory mapped device, the
designers of the 68000 series of MPU's had to set aside certain bit patterns to
represent opcodes for the FPC. In the case of the 68000's, the FPC is accessed
through the opcode 1111(2). This number is the same as ‘F' in hexadecimal
notation, so this bit pattern is often referred to as the F-line.

     Interface

     The 68882 FPC employs an entirely conventional asynchronous bus
interface like all 68000 class devices, and absolutely no new signals whatsoever
are required to connect the unit to an MC 68020 MPU. The 68882 can be ...

This is ONLY a preview of the article. If you would like to view the entire document, you must subscribe to Academic Library. Please register below now!

Subscribe to Academic Library

When you subscribe to the Academic Library, you get 24-hour access to the online database containing full-text articles written by thousands of scholarly students. For only $8.95 per month, you receive unlimited monthly access to view and download all of our 40,000 articles available online. That is less than the price of one textbook!

This price includes:
  • 24-hours-a-day, 7 days a week unlimited access on any computer with Internet access
  • Complete access to all 40,000 articles, essays, and research papers
  • Ability to view and download virtually unlimited number of documents
  • Ability to browse through perfectly arranged catalog of articles
  • Superior search and relevancy ranking techniques using Google SiteSearch and our local search engine
  • Instant access to the online database after registration

You can pay by credit card, checking account. You get instant access after registration:

You will be billed $ 8.95 every 30 days (recurring billing) starting on the day you subscribe.
Your credit card will automatically be renewed for your convenience until you cancel.

If you are already registered, please click here to login.


Home | Register | Login | FAQ | Forgot Password | Privacy Policy | Disclaimer | Close Account | Contact Us | Logout

Copyright 1998-2007 Academic Library. Academic Library is designed only to assist students and researchers in the preparation of their own work. Anybody who use our services are responsible not only for writing their own papers, but also for citing Academic Library as a source when doing so. By accessing and using this page you agree to the Disclaimer.

If you wish to cancel your subscription to Academic Library, please click here.