Overview of ’C64x Architectural Enhancements
8-2
8.1
Overview of ’C64x Architectural Enhancements
The ’C64x is a fixed-point digital signal processor (DSP) and is the first DSP
to add VelociTI.2 extensions to the existing high-performance VelociTI archi-
tecture. VelociTI.2 extensions provide the following features:
-
Greater scheduling flexibility for existing instructions
-
Greater memory bandwidth with double-word load and store instructions
-
Support for packed 8-bit and 16-bit data types
-
Support for non-aligned memory accesses
-
Special purpose instructions for communications-oriented applications
8.1.1
Improved Scheduling Flexibility
The ’C64x improves scheduling flexibility using three different methods. First,
it makes several existing instructions available on a larger number of units.
Second, it adds cross-path access to the D-unit so that arithmetic and logical
operations which use a cross-path may be scheduled there. Finally, it removes
a number of scheduling restrictions associated with 40-bit operations, allowing
more flexible scheduling of high-precision code.
8.1.2
Greater Memory Bandwidth
The ’C64x provides double-word load and store instructions (LDDW and
STDW) which can access 64 bits of data at a time. Up to two double-word load
or store instructions can be issued every cycle. This provides a peak band-
width of 128 bits per cycle to on-chip memory.
8.1.3
Support for Packed Data Types
The ’C64x builds on the ’C62x’s existing support for packed data types by im-
proving support for packed signed 16-bit data and adding new support for
packed unsigned 8-bit data. Packed data types are supported using new pack/
unpack, logical, arithmetic and multiply instructions for manipulating packed
data.
Packed data types store multiple pieces of data within a single 32-bit register.
Pack and unpack instructions provide a method for reordering this packed
data, and for converting between packed formats. Shift and merge instructions
(SHLMB and SHRMB) also provide a means for reordering packed 8-bit data.
New arithmetic instructions include standard addition, subtraction, and com-
parison, as well as advanced operations such as minimum, maximum, and av-