Application-specific instruction set processor: Difference between revisions

Content deleted Content added
not all ASIPs are configurable
Citation bot (talk | contribs)
Removed URL that duplicated identifier. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 161/1032
 
(83 intermediate revisions by 52 users not shown)
Line 1:
{{Short description|Processor with an instruction set customized (optimized) for a specific task}}
An '''Application Specific Instruction-Set Processor''' ('''ASIP''') is a component used in [[System-on-a-Chip]] design. The [[instruction set]] of an ASIP is tailored to benefit a specific application. This specialization of the core provides a tradeoff between the flexibility of a general purpose [[Central_processing_unit|CPU]] and the performance of an [[ASIC]].
{{Use American English|date=March 2019}}
{{Use mdy dates|date = March 2019}}
{{More footnotes|date=January 2015}}
An '''Applicationapplication-specific Specificinstruction Instruction-Setset Processorprocessor''' ('''ASIP''') is a component used in [[System-system on- a-Chip chip]] design. The [[instruction set architecture]] of an ASIP is tailored to benefit a specific application. This specialization of the core provides a tradeoff between the flexibility of a general purpose [[Central_processing_unit|CPUcentral processing unit]] (CPU) and the performance of an [[ASICapplication-specific integrated circuit]] (ASIC).
 
Some ASIPs have a configurable instruction set. Usually, these cores are divided into two parts: ''static'' logic which defines a minimum ISA (instruction-set architecture) and ''configurable'' logic which can be used to design new instructions. The configurable logic can be programmed either in the "field" in a similar fashion to a [[FPGAfield-programmable gate array]] (FPGA) or during the chip synthesis. ASIPs have two ways of generating code: either through a retargetable code generator or through a retargetable compiler generator. The retargetable code generator uses the application, ISA, and Architecture Template to create the code generator for the object code. The retargetable compiler generator uses only the ISA and Architecture Template as the basis for creating the compiler. The application code will then be used by the compiler to create the object code.<ref>{{Cite book|last1=Jain|first1=M.K.|last2=Balakrishnan|first2=M.|last3=Kumar|first3=A.|title=VLSI Design 2001. Fourteenth International Conference on VLSI Design |chapter=ASIP design methodologies: Survey and issues |date=2001|___location=Bangalore, India|publisher=IEEE Comput. Soc|pages=76–81|doi=10.1109/ICVD.2001.902643|isbn=978-0-7695-0831-3|s2cid=14053636 }}</ref>
 
ASIPs can be used as an alternative of hardware accelerators for baseband signal processing<ref>Shahabuddin, Shahriar et al., "Design of a transport triggered vector processor for turbo decoding", Springer Journal of Analog Integrated Circuits and Signal Processing, March 2014.</ref> or video coding.<ref>Hautala, Ilkka, et al. "Programmable Low-Power Multicore Coprocessor Architecture for HEVC/H.265 In-Loop Filtering" in IEEE Transactions on Circuits and Systems for Video Technology, November 2014</ref> Traditional hardware accelerators for these applications suffer from inflexibility. It is very difficult to reuse the hardware datapath with handwritten [[finite-state machine]]s (FSM). The retargetable compilers of ASIPs help the designer to update the program and reuse the datapath. Typically, the ASIP design is more or less dependent on the tool flow because designing a processor from scratch can be very complicated. One approach is to describe the processor using a high level language and then to automatically generate the ASIP's software toolset.<ref>Masarík, UML in design of ASIP, IFAC Proceedings Volumes 39(17):209-214, September 2006</ref>
 
== Examples ==
[[RISC-V|RISC-V Instruction Set Architecture]] (ISA) provides minimum base instruction sets that can be extended with additional application-specific instructions.<ref>{{Cite book |last=Krste |first=CALIFORNIA UNIV BERKELEY DEPT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCES Waterman, Andrew Lee, Yunsup Patterson, David A Asanovi |title=The RISC-V Instruction Set Manual. Volume 1: User-Level ISA, Version 2.0 |date=2014-05-06 |oclc=913589579}}</ref> The base instruction sets provide simplified control flow, memory and arithmetic operations on registers. Its modular design allows the base instructions to be extended for standard application-specific operations such as integer multiplication/division (M), single-precision floating point (F), or bit manipulation (B). For the non-standard instruction extensions, encoding space of the ISA is divided into three parts: ''standard, reserverd,'' and ''custom.'' The ''custom'' encoding space is used for vendor-specific extensions.
 
==See also==
* [[Application-specific integrated circuit]]
* [[System on Chip]]
* [[Digital signal processor]]
 
==References==
{{reflist}}
* {{cite paper
 
| author = Cong, J. and Fan, Y. and Han, G. and Zhang, Z.
==Literature==
| title = Application-specific instruction generation for configurable processor architectures
* {{cite book |title=Embedded DSP Processor Design: Application Specific Instruction Set Processors |author=Dake Liu |year=2008 |publisher=Elsevier Mogan Kaufmann |___location=MA |isbn=978-0-12-374123-3 }}
| publisher = ACM Press New York, NY, USA
* {{cite book |title=Optimized ASIP Synthesis from Architecture Description Language Models |author1=Oliver Schliebusch |author2=Heinrich Meyr |author3=Rainer Leupers |year=2007 |publisher=Springer |___location=Dordrecht |isbn=978-1-4020-5685-7 }}
| year = 2004
* {{cite book |title=Customizable Embedded Processors |year=2006 |publisher=Morgan Kaufmann |___location=San Mateo, CA |editor-last2=Ienne |editor-first2=Paolo |isbn=978-0-12-369526-0 |editor-last=Leupers |editor-first=Rainer}}
| journal = International Symposium on Field Programmable Gate Arrays
* {{cite book |title=Building ASIPs: The Mescal Methodology |author= |year=2005 |publisher=Springer |___location=New York |editor-last2=Keutzer |editor-first2=Kurt |isbn=978-0-387-26057-0 |editor-last=Gries |editor-first=Matthias}}
| pages=183-189
 
}}
==External links==
* {{cite paper
*[http://tce.cs.tut.fi TTA-Based Codesign Environment (TCE), an open source (MIT licensed) toolset for design of application specific TTA processors.]
| author = Wirthlin, M.J. and Hutchings, B.L.
| title = A Dynamic Instruction Set Computer
| publisher = IEEE Computer Society Press
| year = 1995
| journal = IEEE Symposium on FPGAs for Custom Computing Machines
| pages=99-107
}}
* {{cite paper
| author = M. Jain and M. Balakrishnan and A. Kumar
| title = ASIP Design Methodologies : Survey and Issues
| publisher = IEEE
| year = 2001
| journal = Proceedings of the Fourteenth International Conference on VLSI Design
| pages=76-81
}}
* {{cite web
| author = Zebo Peng
| title = Application Specific Instruction Set Processor Architecture
| url = http://citeseer.ist.psu.edu/326812.html
}}
 
{{Template:CPU technologies}}
 
[[Category:ComputerApplication-specific architectureintegrated circuits]]
[[Category:Central processing unitCoprocessors]]
[[Category:Computer hardware]]
[[Category:Gate arrays]]
[[Category:Instruction processing]]
[[Category:Integrated circuits]]
{{Template:CPU technologies}}