Altera Corporation 9–1
October 2005
9. Developing Components
for SOPC Builder
Introduction
This chapter describes the design flow to develop a custom SOPC Builder
component. This chapter provides tutorial steps that guide you through
the process of creating a custom component, integrating it into a system,
and downloading it to hardware.
This chapter is divided into the following sections:
■ Component Development Flow (see page 9–3).
■ Design Example: Pulse-Width Modulator (PWM) Slave (see page 9–8).
This design example demonstrates developing a component with a
single Avalon
®
slave interface. In this section, you will start with a
ready-made HDL design, package it into a SOPC Builder
component, and then instantiate it in a system. If you have a
development board, you can download the design to hardware and
see the PWM work.
■ Sharing Components (see page 9–28). This section shows you how to
relocate component files to use them in other systems, or share them
with other designers.
SOPC Builder Components & the Component Editor
SOPC Builder provides a component editor that lets you create and edit
your own SOPC Builder components. By following the procedures
described in this document, you will learn to use the component editor
and turn any custom logic module into an SOPC Builder component.
Once your custom logic is packaged as component, you can instantiate it
in an SOPC Builder system in the same manner as commercially available
SOPC Builder Ready components. You can share your component with
other designers to encourage design reuse.
Typically, a component is comprised of the following:
■ Hardware files: HDL modules that describe the component
hardware
■ Software files: A C-language header file that defines the component
register map, and driver software that allows programs to control the
component
■ Component description file (class.ptf): This file defines the structure
of the component, and provides SOPC Builder the information it
needs to integrate the component into a system. The component
QII54007-5.1.0