Apr6008 – Rainbow Electronics APR6008 User Manual

Page 3

Advertising
background image

Voice Recording & Playback Device

Page 3

Revision 2.1

Memory Organization

The APR6008 memory array is organized to allow the great-
est flexibility in message management and digital storage.
The smallest addressable memory unit is called a “sector”.
The APR6008 contains 640 sectors.

Figure 3 Memory Map.

Sectors 0 through 639 can be used for analog storage. Du -
ring audio recording one memory cell is used per sample
clock cycle. When recording is stopped an end of data (EOD)
bit is programed into the memory. This prevents playback of
silence when partial sectors are used. Unused memory that
exists between the EOD bit and the end of the sector can not
be used.

Sectors 0 through 9 are tested and guaranteed for digital
storage. Other sectors, with the exception of sector 639, can
store data but have not been tested, and are thus not guaran-
teed to provide 100% good bits. This can be managed with
error correction or forward check-before-store methods.
Once a write cycle is initiated all previously written data in the
chosen sector is lost.

Mixing audio signals and digital data within the same sector is
not possible.

Note: There are a total of 15bits reserved for addressing. The

APR6008 only

requires 10 bits. The additional 5 bits are used

for larger devices within the APR6008 family.

SPI Interface

All memory management is handled by an external host pro-
cessor. The host processor communicates with the APR6008
through a simple Serial Peripheral Interface (SPI) Port. The
SPI port can run on as little as three wires or as many as
seven depending on the amount of control necessary. This
section will describe how to manage memory using the
APR6008 SPI Port and associated OpCode commands.
This topic is broken down into the following sections:

• Sending Commands to the Device

• OpCode Command Description

• Receiving Device Information

• Current Device Status (CDS)

• Reading the Silicon Identification (SID)

• Writing Digital Data

• Reading Digital Data

• Recording Audio Data

• Playing Back Audio Data

• Handshaking Signals

Sending Commands to the Device
This section describes the process of sending OpCodes to
the APR6008 All Opcodes are sent in the same way with the
exception of the

DIG_WRITE

and

DIG_READ

commands

.

The

DIG_WRITE and DIG_READ

commands

are

described

in the

Writing Digital Data

and

Reading Digital Data

sections

that follow. The minimum SPI configuration needed to send
commands uses the DI, /CS, and SCLK pins. The device will
accept inputs on the DI pin whenever the /CS pin is low.
OpCode commands are clocked in on the rising edge of the
SPI clock. Figure 4 shows the timing diagram for shifting
OpCode commands into the device. Figure 5 is a description
of the OpCode stream.

You must wait for a command to finish executing before send-
ing a new command. This is accomplished by monitoring the /
BUSY pin. You can substitute monitoring of the busy pin by
inserting a fixed delay between commands. The required
delay is specified as T

next1

,T

n ex t2

,T

next3

o r T

next4

. Figure 6

shows the timing diagram for sending consecutive com-
mands. Table 1 describes which T

nex t

specification to use.

Sector 0

Sector 1

Sector 639

Can Not be Used for Digital Data

SAC Trigger Point

APR6008

Advertising