Programmable accelerators: hardware performance with software flexibility
By Dr. Andrea Kroll, CoWare, Inc., U.S.A.
Programmable accelerators combine the performance of custom hardware with the flexibility of software--and they are surprisingly easy to design. This article shows how to specify, profile, and debug a programmable accelerator, all in a matter of weeks.
Higher product design costs and risks have been driving the electronics industry to an increased focus on developing "product platforms." The architecture often needs to be able to support new product requirements over the lifetime of the platform without a chip re-spin.
This creates conflicting requirements for the platform. On one hand, the solution needs to be customized to achieve performance and cost close to that of an ASIC. On the other hand, there is a need for the flexibility of a programmable solution, where modifications and enhancements can be done by software changes rather then by re-spins of the hardware. But what if the performance requirements are too high for an off-the-shelf processor? What if many tasks need to be executed in parallel, but cost constraints prohibit use of separate off-the-shelf processors for each task?
In the following article we will present a language-based tools approach that enables the designer to:
Programmable accelerators combine the performance of custom hardware with the flexibility of software--and they are surprisingly easy to design. This article shows how to specify, profile, and debug a programmable accelerator, all in a matter of weeks.
Higher product design costs and risks have been driving the electronics industry to an increased focus on developing "product platforms." The architecture often needs to be able to support new product requirements over the lifetime of the platform without a chip re-spin.
This creates conflicting requirements for the platform. On one hand, the solution needs to be customized to achieve performance and cost close to that of an ASIC. On the other hand, there is a need for the flexibility of a programmable solution, where modifications and enhancements can be done by software changes rather then by re-spins of the hardware. But what if the performance requirements are too high for an off-the-shelf processor? What if many tasks need to be executed in parallel, but cost constraints prohibit use of separate off-the-shelf processors for each task?
In the following article we will present a language-based tools approach that enables the designer to:
- Add programmability to hardware accelerators
- Customize programmable architectures to achieve a more than 100 times performance improvement over off-the-shelf processors
- Introduce software flexibility into the design without sacrificing design productivity
To read the full article, click here
Related Semiconductor IP
- Generative AI Edge Processor
- AXI NoC Non-Coherent Mesh
- CXS c/d/Lite Verification IP
- USB OTG 2.0 with xHCI Verification IP
- DDR5 RDIMM Verification IP
Related Articles
- Adaptable Hardware with Unlimited Flexibility for ASIC & SoC ICs
- A Flexible, Low Power, High Performance DSP IP Core for Programmable Systems-on-Chip
- H.264 Baseline Encoder with ADI Blackfin DSP and Hardware Accelerators
- Bridging software and hardware to accelerate SoC validation
Latest Articles
- BARE-AI: Bit-Flip Attack Resilience in AI Hardware through Built-in Performance Monitors
- RFChipAgent: Multi-Agentic AI Flow for Analog/RF Chip Design
- Anechoic: Onsager-Corrected Parallel Annealing for Sub-0.1 ms Dense Max-Cut on an FPGA
- Power, Performance, and Area of HPC-Based Malware Detectors: An FPGA and Open-PDK ASIC Study
- Terracotta: Enabling the Adoption of New DRAM Techniques via a Flexible DRAM Interface and Memory Controller