3 firmware messaging, 1 communication overview, 2 writing to the dsp – Cirrus Logic CS4970x4 User Manual

Page 95: 3 firmware messaging -2

Advertising
background image

7-2

Copyright 2013 Cirrus Logic, Inc.

DS810UM6

Firmware Messaging
CS4953x4/CS4970x4 System Designer’s Guide

The overlay architecture thus imposes limits on the types of concurrent firmware features (or modules)
are available. The DSP Condenser tool set helps system designers understand and work within the
concurrency limitations imposed by the firmware architecture.

7.3 Firmware Messaging

While using the CS4953x4/CS4970x4 it is necessary to communicate with the DSP in order to control or
monitor the various downloaded firmware modules. We refer to this process of communication firmware
messaging
. The purpose of this section is to cover the types and formats of these firmware messages. In
general, with firmware messaging, the user can control the firmware module running on the DSP and
subsequently perform various tasks such as:

Configure the module after firmware download (e.g. enabling DTS decode, Kick-starting the DSP,
etc.)

Change run-time parameters (e.g. adjusting the Volume, switching Pro Logic II modes, etc.)

Obtain information from the DSP (e.g. current state of the firmware registers, data stream
information, etc.)

7.3.1 Communication Overview

From a “micro-programmer” point of view, the CS4953x4/CS4970x4 firmware modules can be thought of
as a blocks of several 32-bit registers (variables) that either control the behavior of the firmware or store
information about the state of the firmware at the time of operation. Each register has a unique index.
Access to the register involves a combination of a specified opcode for that firmware module together with
the register index. For each firmware module, the following Operation codes (Opcodes) are available:

Write Opcode - Issues a command to write to a specific module.

Read Opcode - Issues a command to read from a specific module.

Read Response Opcode - Indicates module and index that has been read.

These available opcodes permit the following types of communication with the DSP:

Writing to the DSP

Solicited read from the DSP

Unsolicited read from the DSP

The following sub-sections cover the communication types listed above.

7.3.2 Writing to the DSP

A write session consists of one 8-byte message from the host to the DSP. In essence, the write message
consists of a 32-bit command word followed by a 32-bit data word. The command word is formed by
combining the write opcode for that module with the index of the register that needs to be written. The 32-
bit data word is the value of the data written to that register.

The following diagrams shows the format of a write message:

Write Command Word:

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

16

1

Module ID [6:0]

R/W

0

WordCount-1 [4:0]

Index [15:0]

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

Advertising
This manual is related to the following products: