
ADSP-2191M
–4–
REV. 0
The two address buses (PMA and DMA) share a single external 
address bus, allowing memory to be expanded off-chip, and the 
two data buses (PMD and DMD) share a single external data 
bus. Boot memory space and I/O memory space also share the 
external buses.
Program memory can store both instructions and data, permit-
ting the ADSP-2191M to fetch two operands in a single cycle, 
one from program memory and one from data memory. The 
DSP’s dual memory buses also let the ADSP-219x core fetch an 
operand from data memory and the next instruction from 
program memory in a single cycle.
DSP Peripherals Architecture
The functional block diagram 
on page 1
 shows the DSP’s 
on-chip peripherals, which include the external memory inter-
face, Host port, serial ports, SPI-compatible ports, UART port, 
JTAG test and emulation port, timers, flags, and interrupt con-
troller. These on-chip peripherals can connect to off-chip devices 
as shown in 
Figure 1
.
The ADSP-2191M has a 16-bit Host port with DMA capability 
that lets external Hosts access on-chip memory. This 24-pin 
parallel port consists of a 16-pin multiplexed data/address bus 
and provides a low-service overhead data move capability. Con-
figurable for 8 or 16 bits, this port provides a glueless interface 
to a wide variety of 8- and 16-bit microcontrollers. Two 
chip-selects provide Hosts access to the DSP’s entire memory 
map. The DSP is bootable through this port.
The ADSP-2191M also has an external memory interface that is 
shared by the DSP’s core, the DMA controller, and DMA 
capable peripherals, which include the UART, SPORT0, 
SPORT1, SPORT2, SPI0, SPI1, and the Host port. The external 
port consists of a 16-bit data bus, a 22-bit address bus, and 
control signals. The data bus is configurable to provide an 8 or 
16 bit interface to external memory. Support for word packing 
lets the DSP access 16- or 24-bit words from external memory 
regardless of the external data bus width. When configured for 
an 8-bit interface, the unused eight lines provide eight program-
mable, bidirectional general-purpose Programmable Flag lines, 
six of which can be mapped to software condition signals. 
The memory DMA controller lets the ADSP-2191M move data 
and instructions from between memory spaces: internal-to-exter-
nal, internal-to-internal, and external-to- external. On-chip 
peripherals can also use this controller for DMA transfers. 
The ADSP-2191M can respond to up to seventeen interrupts at 
any given time: three internal (stack, emulator kernel, and 
power-down), two external (emulator and reset), and twelve 
user-defined (peripherals) interrupts. The programmer assigns a 
peripheral to one of the 12 user-defined interrupts. The priority 
of each peripheral for interrupt service is determined by these 
assignments. 
There are three serial ports on the ADSP-2191M that provide a 
complete synchronous, full-duplex serial interface. This interface 
includes optional companding in hardware and a wide variety of 
framed or frameless data transmit and receive modes of opera-
tion. Each serial port can transmit or receive an internal or 
external, programmable serial clock and frame syncs. Each serial 
port supports 128-channel Time Division Multiplexing.
The ADSP-2191M provides up to sixteen general-purpose I/O 
pins, which are programmable as either inputs or outputs. Eight 
of these pins are dedicated-general purpose Programmable Flag 
pins. The other eight of them are multifunctional pins, acting as 
general-purpose I/O pins when the DSP connects to an 8-bit 
external data bus and acting as the upper eight data pins when 
the DSP connects to a 16-bit external data bus. These Program-
mable Flag pins can implement edge- or level-sensitive 
interrupts, some of which can be used to base the execution of 
conditional instructions.
Figure 1. System Diagram
SERIAL
DEVICE
(OPTIONAL)
DATA15–8
IOMS
ADSP-2191M
BMS
MS3–0
BR
BG
ACK
WR
RD
ADDR21–0
DATA7–0
DATA15–8
ADDR21–0
DATA7–0
CS
ACK
WE
OE
EXTERNAL
MEMORY
(OPTIONAL)
DATA15–8
ADDR21–0
DATA7–0
CS
ACK
WE
OE
BOOT
MEMORY
(OPTIONAL)
DATA15–8
ADDR17–0
DATA7–0
CS
ACK
WE
OE
EXTERNAL
I/O MEMORY
(OPTIONAL)
A
C
D
ADDR16
CS0
ADDR15–0/
CS1
ACK
ALE
WR
RD
HOST
PROCESSOR
(OPTIONAL)
HAD15–0
HA16
HCMS
HCIOMS
HRD
HWR
HACK
HALE
HACK_P
TCLK0
TFS0
DT0
RCLK0
RFS0
DR0
TCLK1
TFS1
DT1
RCLK1
RFS1
DR1
TCLK2/SCK0
TFS2/MOSI0
DT2/MISO0
RCLK2/SCK1
RFS2/MOSI1
DR2/MISO1
RXD
TXD
RESET
JTAG
SPORT1
SPORT2
SPORT0
CLKIN
XTAL
MSEL6–0/PF6–0
DF/PF7
BYPASS
BMODE1–0
OPMODE
CLKOUT
TMR2–0
UART
SPI0
SPI1
SERIAL
DEVICE
(OPTIONAL)
SERIAL
DEVICE
(OPTIONAL)
UART
DEVICE
(OPTIONAL)
CLOCK
OR
CRYSTAL
TIMER
OUT OR
CAPTURE
CLOCK
MULTIPLY
AND
RANGE
BOOT
AND OP
MODE
6
BGH