Custom Instruction Hardware Integration within a SoC Hybrid Environment
#1

Abstract
Traditionally, common processor augmentation solutions have involved the addition of coprocessors or the datapath integration of custom instructions within extensible processors as Instruction Set Extensions (ISE). Rarely is the hybrid option of using both techniques explored. Much research already exists concerning the identification and selection of custom hardware blocks from hardware/software partitioning techniques, but the question of how to best use this hardware within a user system where both coprocessors and datapath augmentations are possible remains. This paper looks to extend existing ISE algorithms which provide custom hardware as dataflow graphs (DFG) and place them appropriately within a hybrid System-on-Chip (SoC) using standard combinatorial optimization techniques. A combinatorial model is presented to address this placement issue and is applied to two well known kernel programs. We further show that such standard techniques can execute within a reasonable time frame alleviating the need for heuristics.
I. INTRODUCTION
Much work exists concerning the identification of possible custom instructions for hardware implementations from a given software program [1], [2]. Many commercial tools can effectively convert identified software segments to hardware such as Altera’s C2H compiler [3]. An important question that is rarely addressed is how these custom hardware blocks can be integrated into the entire system. Due to the closed nature of existing IP cores it is not overly common that a user is able to modify a datapath directly, but with more open source projects becoming readily available this is indeed becoming a potential design space exploration (DSE) avenue. A few vendors offer products that allow the addition of custom hardware directly to the datapath, more precisely the ALU or in parallel to the existing ALU. Note that these procedures and implementations are often proprietary and not available to the end-user. All of these products place the internal and external selection and placement problem on the user. Here we will consider two possible solutions to the processor augmentation problem yielding a hybrid SoC (Fig. 1); integration directly into or parallel with the datapath, more succinctly the ALU itself or the addition of standardized coprocessors. The ultimate goal of such selections is a maximized speedup due to the optimal hybrid placement of hardware blocks within the processor itself and as coprocessors. Fig. 1. Hybrid SoC with internal custom instruction extensions and external coprocessors. The selection and placement problem itself can be modeled as a binary linear program (BLP). Using traditional combinatorial optimization techniques, the problem can be solved efficiently and quickly if appropriately constrained. Most importantly, using such BLP solution techniques as Branch-and- Bound with a single objective problem, the solution can be guaranteed to offer the best speedup for a given target chip. For these techniques to be justified, System-on-Chip targets are considered. As SoCs are typically targeted with ASIC and FPGA design flows, hardware will not be minimized but constrained to the size of the user selected chip or finite group of candidate chips. Looking at a set of finite targets ensures that all available resources are used effectively in achieving the best speedup. Systems will not be created that only use a fraction of the target chip as this is not feasible from an economic standpoint for FPGA targets. In this case, another target will be tried. By removing the hardware minimization consideration, a simplified mathematical model arises that when solved can guarantee the maximum speedup within the selected candidate target chips. The area constraint becomes an upper bound.


Download full report
http://googleurl?sa=t&source=web&cd=1&ve...873058.pdf%3Farnumber%3D5873058&ei=tGZbTtUSxMitB8GwidcK&usg=AFQjCNGSCzN9xtRCq2pv8lVBcMpP5-6gkg
Reply

Important Note..!

If you are not satisfied with above reply ,..Please

ASK HERE

So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: mba project titles in custom clearance, steganography based on soc and vq, g dec custom settings, custom iir filter design, summer training report on custom house agent, instruction for construction of multistory building, 6th sense custom tackle co,

[-]
Quick Reply
Message
Type your reply to this message here.

Image Verification
Please enter the text contained within the image into the text box below it. This process is used to prevent automated spam bots.
Image Verification
(case insensitive)

Possibly Related Threads...
Thread Author Replies Views Last Post
  DEVELOPMENT OF SOFTWARE & HARDWARE FOR MICROCONTROLLER BASED SMART NOTICE BOARD (US Electrical Fan 3 3,867 09-08-2016, 11:27 AM
Last Post: jaseela123d
  SoC Estimation of Rechargeable Batteries full report smart paper boy 1 1,511 04-02-2013, 05:20 PM
Last Post: santosh_bangaru
  MONITOR AND CONTROL OF GREENHOUSE ENVIRONMENT project report helper 2 2,683 07-12-2012, 02:05 PM
Last Post: seminar details
  Monitor and Control of Greenhouse Environment GreenBee seminar class 1 2,394 07-12-2012, 02:05 PM
Last Post: seminar details
  Design of Hybrid Encoded Booth Multiplier with Reduced Switching Activity Technique seminar class 1 9,410 01-12-2012, 12:08 PM
Last Post: seminar details
  AN INTELLIGENT HYBRID FUZZY PID CONTROLLER seminar class 1 1,654 26-11-2012, 12:57 PM
Last Post: seminar details
  DC System Technologies for Large Scale Integration of Wind Energy Systems seminar class 1 1,553 06-11-2012, 01:26 PM
Last Post: seminar details
  Integration of CAN Protocol in Automotives computer science topics 4 4,331 16-10-2012, 12:43 PM
Last Post: seminar details
  HYBRID SOLAR-WIND POWER SYSTEM seminar presentation 3 6,328 03-10-2012, 01:45 PM
Last Post: seminar details
  hybrid power generation system seminar presentation 1 2,621 03-10-2012, 01:45 PM
Last Post: seminar details

Forum Jump: