Access the full text.
Sign up today, get DeepDyve free for 14 days.
Hardware/software partitioning is the problem of dividing an application's computations into a part that executes as sequential instructions on a microprocessor (the "software") and a part that runs as parallel circuits on some IC fabric like an ASIC or FPGA (the "hardware"), such as to achieve design goals set for metrics like performance, power, size, and cost. The circuit part commonly acts as a coprocessor for the microprocessor. For example, a video compression application may be partitioned such that most of the frame handling computations execute on a microprocessor, while the compute-intensive DCT (discrete cosine transformation) part of the compression application is offloaded to execute in a fast DCT coprocessor circuit. Circuits can execute some computations thousands of times faster than sequential instructions, due largely to their parallel execution. For example, if a computation consists of 100 multiplications of independent data items, then while a microprocessor would have to execute the multiplications one (or a few) at a time thus requiring hundreds of clock cycles, a circuit could potentially (subject to data availability) execute all 100 multiplications in parallel using 100 multipliers and thus requiring just 1 or a few clock cycles. Energy reductions can also result.
ACM SIGDA Newsletter – Association for Computing Machinery
Published: Jun 1, 2009
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.