Xilinx UG129 Answering Machine User Manual


 
PicoBlaze 8-bit Embedded Microcontroller www.xilinx.com 11
UG129 (v1.1.2) June 24, 2008
R
Chapter 1
Introduction
The PicoBlaze™ microcontroller is a compact, capable, and cost-effective fully embedded
8-bit RISC microcontroller core optimized for the Spartan
®
-3, Virtex
®
-II, and Virtex-II Pro
FPGA families. The PicoBlaze microcontroller provides cost-efficient microcontroller-
based control and simple data processing.
The PicoBlaze microcontroller is optimized for efficiency and low deployment cost. It
occupies just 96 FPGA slices, or only 12.5% of an XC3S50 FPGA and a miniscule 0.3% of an
XC3S5000 FPGA. In typical implementations, a single FPGA block RAM stores up to 1024
program instructions, which are automatically loaded during FPGA configuration. Even
with such resource efficiency, the PicoBlaze microcontroller performs a respectable 44 to
100 million instructions per second (MIPS) depending on the target FPGA family and
speed grade.
The PicoBlaze microcontroller core is totally embedded within the target FPGA and
requires no external resources. The PicoBlaze microcontroller is extremely flexible. The
basic functionality is easily extended and enhanced by connecting additional FPGA logic
to the microcontroller’s input and output ports.
The PicoBlaze microcontroller provides abundant, flexible I/O at much lower cost than
off-the-shelf controllers. Similarly, the PicoBlaze peripheral set can be customized to meet
the specific features, function, and cost requirements of the target application. Because the
PicoBlaze microcontroller is delivered as synthesizable VHDL source code, the core is
future-proof and can be migrated to future FPGA architectures, effectively eliminating
product obsolescence fears. Being integrated within the FPGA, the PicoBlaze
microcontroller reduces board space, design cost, and inventory.
The PicoBlaze FPC is supported by a suite of development tools including an assembler, a
graphical integrated development environment (IDE), a graphical instruction set
simulator, and VHDL source code and simulation models. Similarly, the PicoBlaze
microcontroller is also supported in the Xilinx System Generator development
environment.
The various PicoBlaze code examples throughout this application note are written for the
Xilinx KCPSM3 assembler. The Mediatronix pBlazIDE assembler has a code import
function that reads the KCPSM3 syntax.
PicoBlaze Microcontroller Features
As shown in the block diagram in Figure 1-1, the PicoBlaze microcontroller supports the
following features:
16 byte-wide general-purpose data registers
1K instructions of programmable on-chip program store, automatically loaded during
FPGA configuration