Professional Documents
Culture Documents
FEATURES SUMMARY
■ Glueless Connection to DSP Figure 1. Packages
– Easily add memory, logic, and I/O to DSP
■ 128K Byte Flash Memory
– For Bootloading and/or Data Overlay Memory
– Programmable Decoding and Paging Logic
allows accessing Flash memory as Byte DMA
(BDMA) and as External Data Overlay mem-
PQFP52 (T)
ory
– Rapidly access Flash memory with BDMA for
booting and loading internal DSP Overlay
memory. Alternatively access the same Flash
memory as External Data Overlay memory to
efficiently write Flash memory with code up-
dates and data, a byte at a time with no DMA
setup overhead
– Individual 16K Byte Flash memory sectors
match size of DSP External Data Overlay
window for efficient data management. Inte-
PLCC52 (K)
grated page logic provides easy DSP access
to all 128K Bytes.
– DSM connects to lower byte of 16-bit DSP ■ In-System Programming (ISP) with JTAG
data bus. Byte-wide accesses to 8-bit BDMA
– Program entire chip in 10-20 seconds with no
space. Half-word accesses to 16-bit Data
involvement of the DSP
Memory Overlay and 16-bit I/O Mem space.
– Eliminate sockets for pre-programmed mem-
■ 5V and 3.3V Devices (±10%)
ory and logic devices
■ Up to 16 Multifunction I/O Pins
– Efficient manufacturing allows easy product
– Increase total DSP system I/O capability testing and Just-In-Time inventory
– I/O controlled by DSP software or PLD logic – Use low-cost FlashLINKTM cable with PC
– 8mA I/O pin drive at 5 Vcc, 4mA at 3.3 Vcc ■ Content Security
■ General purpose PLD – Programmable Security Bit blocks access of
– Over 3,000 Gates of PLD with 16 macro cells device programmers and readers
– Use for peripheral glue logic to keypads, con- ■ Zero-Power Technology
trol panel, displays, LCD, UART devices, etc. – 75 µA standby at VCC =5V, 25µA at VCC=3.3V
– Eliminate PLDs and external logic devices ■ Small Packaging
– Create state machines, chip selects, simple – 52-pin PQFP or 52-pin PLCC
shifters and counters, clock dividers, delays
■ Memory Speed
– Simple PSDsoft ExpressTM software ...Free
– 90 ns at 5V Vcc, 150 ns at 3.3V Vcc
SUMMARY DESCRIPTION
These are system memory devices for use with product and manage inventory by rapidly pro-
Digital Signal Processors from the popular Analog gramming test code, then application code as de-
Devices ADSP-218X family. DSM means Digital termined by inventory requirements (Just-In Time
signal processor System Memory. A DSM device inventory). Additionally, JTAG ISP reduces devel-
brings in-system programmable Flash memory, opment time by turning fast iterations of DSP code
programmable logic, and additional I/O to DSP in the lab. Code updates in the field require no dis-
systems. The result is a simple and flexible two- assembly of product. The FlashLINKTM JTAG pro-
chip solution for DSP designs. DSM devices pro- gramming cable costs $59 USD and plugs into any
vide the flexibility of Flash memory and smart PC or note-book parallel port.
JTAG programming techniques for both manufac-
turing and the field. On-chip integrated memory Figure 3. PQFP Connections
decode logic and memory paging logic make it
easy to add large amounts of external Flash mem-
ory to the ADSP-218X family for bootloading upon
40 CNTLO
41 RESET
43 CNTL1
42 CNTL2
power-up and/or overlay memory. The DSP ac-
46 GND
52 PB0
51 PB1
50 PB2
49 PB3
48 PB4
47 PB5
45 PB6
44 PB7
cesses this Flash memory using either its Byte
DMA (BDMA) interface or as external data overlay
memory (no DMA setup overhead). PD2 1 39 AD15
PD1 2 38 AD14
PD0 3 37 AD13
PC7 4 36 AD12
Figure 2. PLCC Connections PC6 5 35 AD11
PC5 6 34 AD10
RESET
PC4 7 33 AD9
CNTL2
CNTL0
CNTL1
GND
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
VCC 8 32 AD8
GND 9 31 VCC
PC3 10 30 AD7
PC2 11 29 AD6
4
7
6
5
3
2
52
51
50
49
48
47
PC1 12 28 AD5
1
PC0 13 27 AD4
PD2 8 46 AD15
PD1 9 45 AD14
PD0 10 44 AD13
AD3 26
PA7 14
PA6 15
PA5 16
PA4 17
PA3 18
GND 19
PA2 20
PA1 21
PA0 22
AD0 23
AD1 24
AD2 25
PC7 11 43 AD12
PC6 12 42 AD11
13 AI02858
PC5 41 AD10
PC4 14 40 AD9
VCC 15 39 AD8
GND 16 38 VCC In addition to ISP Flash memory, DSM devices
PC3 17 37 AD7 add programmable logic (PLD) and up to 16 con-
18
PC2 36 AD6
figurable I/O pins to the DSP system. The state of
PC1 19 35 AD5
PC0 20 34 AD4
each I/O pin can be driven by DSP software or
PLD logic. PLD and I/O configuration are program-
21
22
23
24
25
26
27
28
29
31
32
33
30
PA2
PA1
PA0
AD1
AD2
AD3
GND
AD0
2/67
DSM2180F3
AI04910
I/O, PLD, CHIP SELECTS
AREAS
ISP TO
PORTS
PORTS
JTAG
8 I/O
8 I/O
ALL
I/O BUS
DSP SYSTEM MEMORY
POWER MANAGEMENT
MEM PAGE CONTROL
CONTENT SECURITY
16 MACROCELL PLD
FLASH MEMORY
DSM2180F3
I/O CONTROL
128k X 8
WR, RD, BMS, DMS, IOMS
22 ADDRESS
8 DATA
ADSP-218X
DEVICES
ANALOG
FAMILY
DSP
13 FLAGS / 4 INTR
DEVICE
DEVICE
SERIAL
SERIAL
The two-chip combination of a DSP and a DSM automatically go to standby between memory ac-
device is ideal for systems which have limitations cesses or logic input changes, producing low ac-
on size, EMI levels, and power consumption. DSM tive and standby current consumption, which is
memory and logic are “zero-power”, meaning they ideal for battery powered products.
3/67
DSM2180F3
A programmable security bit in the DSM protects only way to defeat the security bit is to erase the
its contents from unauthorized viewing and copy- entire DSM device, after which the device is blank
ing. When set, the security bit will block access of and may be used again. The DSP will always have
programming devices (JTAG or others) to the access to Flash memory contents through the 8-bit
DSM Flash memory and PLD configuration. The data port even while the security bit is set.
DSM2180F3-90 128K Bytes Eight 16K Byte Sectors 16 macro cells Up to 16 5V ±10% 90 ns
DSM2180F3V-15 128K Bytes Eight 16K Byte Sectors 16 macro cells Up to 16 3.3V ±10% 150 ns
4/67
DSM2180F3
ARCHITECTURAL OVERVIEW
Major functional blocks are shown in Figure 5. lows the DSP to alternatively access Flash memo-
DSP Address/Data/Control Interface ry as data overlay memory (using DMS instead of
BMS). Writing Flash memory this way is faster and
These DSP signals attach directly to the DSM in-
requires simpler code. Note: During a DSP data
puts for a glueless connection. An 8-bit data con-
access using the DMS strobe, only the upper byte
nection is formed and all 22 DSP address lines
of a 16-bit DSP data word is used.
can be decoded while the DSP operates in full
memory mode. DSP memory strobes; BMS, DMS , DSM Flash memory sector size of 16K bytes
and IOMS are used for BDMA, data, & I/O access matches the DSP external Data Memory Overlay
respectively (no program memory access, PMS). window size of 16K locations (two 8K windows
when DMOVLAY register is used, see Analog De-
Flash Memory vices ADSP-218X data sheets). This alignment
The 1 Mbit (128K x 8) Flash memory is divided into provides convenient data management. Also,
eight equally-sized 16K byte sectors that are indi- each 16K byte sector can be loaded with contents
vidually selectable through the Decode PLD. Each from different firmware or data files specified in
Flash memory sector can be located at any ad- PSDsoft ExpressTM.
dress as defined by the user with PSDsoft Ex-
Miscellaneous: The DSP can erase Flash memory
press. The flexibility of the Decode PLD and Page
by individual sectors or the entire Flash memory
Register logic allow the DSP to access Flash
array may be erased at one time. The Flash mem-
memory as Byte DMA (BDMA) or as external data ory automatically goes to standby between DSP
overlay memory across several memory pages.
read or write accesses to conserve power. Maxi-
BDMA transfers are good for initial bootloading
mum access times include sector decoding time.
and for loading internal overlay memory at runt-
Maximum erase cycles is 100K and data retention
ime, but BDMA is not efficient writing to Flash is 15 years minimum. Flash memory, as well as
memory because Flash memory is unlocked, writ-
the entire DSM device may be programmed with
ten, and status is checked one byte at a time, re-
the JTAG ISP interface with no DSP involvement.
quiring an initialization of the BDMA channel for
each and every byte transfer. The DSM device al-
5/67
DSM2180F3
AD9
EXTERNAL CHIP SELECTS, ESC0-2 I/O PORT
AD10 EXTERNAL
AD11 CHIP SELECTS PB0
3 OPTIONAL OUTPUTS TO PORT D
AD12 PB1
AD13 PB2
AD14 COMPLEX PLD PB3
(CPLD) A A A A A A A A
AD15 ALLO- PB4
B B B B B B B B
PC2 CATOR PB5
B B B B B B B B PB6
PC7 AND C C C C C C C C PB7
ARRAY
16 OUTPUT MICRO<>CELLS
DSP
I/O PORT
CONTROL B B B B B B B B
PC0
CNTL0 C C C C C C C C
PC1
CNTL1 16 INPUT
CNTL2 MICRO<>CELLS PC3
PD0 PC4
PD1 PC5
PD2 PC6
RST\ JTAG-ISP
PIN FEEDBACK
TO ALL AREAS
OF CHIP
NODE FEEDBACK
AI04911
Programmable Logic (PLDs) lowing them to be loaded and read directly by the
The DSM family contains two PLDS that may op- DSP at runtime. This direct access is good for
tionally run in Turbo or Non-Turbo mode. PLDs op- making small peripheral devices (shifters,
erate faster (less propagation delay) while in counters, state machines, etc.) that are accessed
Turbo mode but consume more power than Non- directly by the DSP with little overhead. DPLD in-
Turbo mode. Non-Turbo mode allows the PLDs to puts include DSP address and control signals,
automatically go to standby when no inputs are Page Register outputs, DSM Port Pins, and CPLD
change to conserve power. The Turbo mode set- feedback.
ting is controlled at runtime by DSP software. OMCs: The general structure of the CPLD is simi-
Decode PLD (DPLD). This is programmable log- lar in nature to a 22V10 PLD device with the famil-
ic used to select one of the eight individual Flash iar sum-of-products (AND-OR) construct. True
memory segments or the group of control registers and compliment versions of 64 input signals are
within the DSM device. The DPLD can also option- available to a large AND array. AND array outputs
ally drive external chip select signals on Port D feed into a multiple product-term OR gate within
pins. DPLD input signals include: DSP address each OMC (up to 10 product-terms for each
and control signals, Page Register outputs, DSM OMC). Logic output of the OR gate can be passed
Port Pins, CPLD logic feedback. on as combinatorial logic or combined with a flip-
flop within in each OMC to realize sequential logic.
Complex PLD (CPLD). This programmable logic
OMCs can be used as a buried nodes with feed-
is used to create both combinatorial and sequen-
back to the AND array or OMC output can be rout-
tial general purpose logic. The CPLD contains 16
ed to pins on Port B or PortC.
Output MicroCells (OMCs) and 16 Input Micro-
Cells (IMCs). The term MicroCells is used to differ- IMCs: Inputs from pins on Port B or Port C are
entiate them from the industry standard term, routed to IMCs for conditioning (clocking or latch-
MacroCells. MicroCell registers are unique in that ing) as they enter the chip, which is good for sam-
that have direct connection to the DSP data bus al- pling and debouncing inputs. Alternatively, IMCs
6/67
DSM2180F3
can pass Port input signals directly to PLD inputs DSP. A blank DSM device soldered to a circuit
without clocking or latching. The DSP may read board can be completely programmed in 10 to 20
the IMCs at any time. seconds. The basic JTAG signals; TMS, TCK,
Runtime Control Registers TDI, and TDO form the IEEE-1149.1 interface.
The DSM device does not implement the IEEE-
A block of 256 bytes is decoded inside the DSM
1149.1 Boundary Scan functions. The DSM uses
device as DSM control and status registers. 27
the JTAG interface for ISP only. However, the
registers are used in the block of 256 locations to
DSM device can reside in a standard JTAG chain
control the output state of I/O pins, to read I/O
with other JTAG devices and it will remain in BY-
pins, to control power management, to read/write PASS mode while other devices perform Bound-
microcells, and other functions at runtime. See Ta-
ary Scan.
ble 4 for description. The base address of these
256 locations is referred to in this data sheet as ISP programming time can be reduced as much as
csiop (Chip Select I/O Port). Individual registers 30% by using two more signals on Port C, TSTAT
within this block are accessed with an offset from and TERR in addition to TMS, TCK, TDI and TDO.
the base address. The DSP accesses csiop regis- The FlashLINKTM JTAG programming cable is
ters using I/O memory with the IOMS strobe. csiop available from STMicroelectronics for $59USD
registers are accessed as bytes, so only the lower and PSDsoft Express software is available at no
half of a DSP I/O word is used during access. charge from www.psdst.com. That is all that is
needed to program a DSM device using the paral-
Memory Page Register
lel port on any PC or note-book. See section titled
This 8-bit register can be loaded and read by the “Programming In-Circuit using JTAG ISP” on page
DSP at runtime as one of the csiop registers. Its 39.
outputs feed directly into the PLDs. The page reg-
Power Management
ister is a powerful feature that allows the DSP to
access all 128K Bytes of DSM Flash memory in The DSM has bits in csiop control registers that
16K byte pages. This size matches the 16K loca- are configured at run-time by the DSP to reduce
tion data overlay window the ADSP-218X family. power consumption of the CPLD. The Turbo bit in
Page register outputs may also be used as CPLD the PMMR0 register can be set to logic 1 and the
inputs for general use. CPLD will go to Non-Turbo mode, meaning it will
latch its outputs and go to sleep until the next tran-
I/O Ports
sition on its inputs. There is a slight penalty in PLD
The DSM has 19 individually configurable I/O pins performance (longer propagation delay), but sig-
distributed over the three ports (Ports B, C, and D). nificant power savings are realized.
Each I/O pin can be individually configured for dif-
Additionally, bits in two csiop registers can be set
ferent functions such as standard MCU I/O ports
by the DSP to selectively block signals from enter-
or PLD I/O on a pin by pin basis. (MCU I/O means
ing the CPLD which reduces power consumption.
that for each pin, its output state can be controlled
See section titled “Power Management” on page
or its input value can be read by the DSP at runt-
37.
ime using the csiop registers like an MCU would
do.) Security and NVM Sector Protection
Port C hosts the JTAG ISP signals. Since JTAG- A programmable security bit in the DSM protects
ISP does not occur frequently during the life of a its contents from unauthorized viewing and copy-
product, those Port C pins are under-utilized. In ing. When set, the security bit will block access of
applications that need every I/O pin, JTAG signals programming devices (JTAG or others) to the
can be multiplexed with general I/O signals to use DSM Flash memory and PLD configuration. The
them for I/O when not performing ISP. See section only way to defeat the security bit is to erase the
titled “Programming In-Circuit using JTAG ISP” on entire DSM device, after which the device is blank
page 39 for muxing JTAG pins on Port C, and Ap- and may be used again.
plication Note AN1153. Additionally, the contents of each individual Flash
The static configuration of all Port pins is defined memory sector can be write protected (sector pro-
with the PSDsoft ExpressTM software develop- tection) by configuration with PSDsoft ExpressTM.
ment tool. The dynamic action of the Ports pins is This is typically used to protect DSP boot code
controlled by DSP runtime software. from being corrupted by inadvertent writes to
Flash memory from the DSP.
JTAG ISP Port
Pin Assignments
In-System Programming (ISP) can be performed
through the JTAG signals on Port C. This serial in- Pin assignment are shown for the 52-pin PLCC
terface allows programming of the entire DSM package in Figure 2, and the 52-pin PQFP pack-
device or subsections (that is, only Flash memory age in Figure 3.
but not the PLDs) without the participation of the
7/67
DSM2180F3
CNTL0 In Active low write strobe input (WR) from the DSP
CNTL1 In Active low read strobe input (RD) from the DSP.
CNTL2 In Active low Byte Memory Select (BMS) signal from the DSP.
Active low reset input from system. Resets DSM I/O Ports, Page Register contents, and other
Reset In
DSM configuration registers. Must be logic Low at Power-up.
PA0-7 I/O Eight data bus signals connected to DSP pins D8 - D15.
Eight configurable Port B signals with the following functions:
1. MCU I/O – DSP may write or read pins directly at runtime with csiop registers.
2. CPLD Output MicroCell (McellAB0-7 or McellBC0-7) outputs.
PB0-7 I/O 3. Inputs to the PLDs (Input MicroCells).
Note: Each of the four Port B signals PB0-PB3 may be configured at run-time as either standard
CMOS or for high slew rate. Each of the four Port B signals PB3-PB7 may be configured at
run-time as either standard CMOS or Open Drain Outputs.
Eight configurable Port C signals with the following functions:
1. MCU I/O – DSP may write or read pins directly at runtime with csiop registers.
2. CPLD Output MicroCell (McellBC0-7) output.
3. Input to the PLDs (Input MicroCells).
4. Pins PC0, PC1, PC5, and PC6 can optionally form the JTAG IEEE-1149.1 ISP serial
interface as signals TMS, TCK, TDI, and TDO respectively.
5. Pins PC3 and PC4 can optionally form the enhanced JTAG signals TSTAT and TERR
respectively. Reduces ISP programming time by up to 30% when used in addition to the
standard four JTAG signals: TDI, TDO, TMS, TCK.
6. Pin PC3 can optionally be configured as the Ready/Busy output to indicate Flash memory
PC0-7 I/O
programming status during parallel programming. May be polled by DSP or used as DSP
interrupt to indicate when Flash memory byte programming or erase operations are
complete.
Note 1: Port C pin PC2 input (or any PLD input pin) can be connected to DSP D18 output which
functions as DSP address A16 in DSP Full Memory Mode. See Figure 6.
Note 2: Port C pin PC7 input (or any PLD input pin) can be connected to DSP D19 output which
functions as DSP address A17 in DSP Full Memory Mode. See Figure 6.
Note 3: When used as general I/O, each of the eight Port C signals may be configured at run-time
as either standard CMOS or Open Drain Outputs.
Note 4: The JTAG ISP pins may be multiplexed with other I/O functions.
Three configurable Port D signals with the following functions:
1. MCU I/O – DSP may write or read pins directly at runtime with csiop registers.
2. Input to the PLDs (no associated Input MicroCells, routes directly into PLDs).
3. CPLD output (External Chip Select). Does not consume Output MicroCells.
4. Pin PD1 can optionally be configured as CLKIN, a common clock input to PLD.
5. Pin PD2 can optionally be configured as CSI, an active low Chip Select Input to select Flash
memory. Flash memory is disabled to conserve more power when CSI is logic high. Can
PD0-2 I/O
connect CSI to ADSP-218X PWDACK output signal.
Note 1: It is recommended to connect Port D pin PD0 input to DSP IOMS output which is the
active low I/O Memory Select strobe. See Figure 6.
Note 2: It is recommended to connect Port D pin PD1 input to DSP DMS output which is the active
low Data Memory Select strobe. See Figure 6.
Note 3: It is recommended to connect Port D pin PD2 input to DSP PWDACK output if the DSP
Power Down mode is used. See Figure 6.
VCC Supply Voltage
8/67
DSM2180F3
TYPICAL CONNECTIONS
Figure 6 shows a typical connection scheme. programmer before it is installed on the circuit
Many connection possibilities exist since most board. Using no JTAG makes more I/O available.
DSM pins are multipurpose. The scheme illustrat- Pin PD1. If Flash memory will be accessed only
ed is ideal for a design that needs fast JTAG ISP, using Byte DMA mode in your design, and no ex-
Eight additional general I/O with PLD capability, ternal Data Overlay memory accesses are used,
access to Flash memory as Byte DMA or as Data then pin PD1 can be used for other purposes
Overlay memory, and the DSP uses Power Down (MCUI/O, common CPLD clock input, external
mode. If your design needs more I/O, or Byte DMA chip select, or PLD input)
access to Flash memory is all that is needed (no
Pin PD2. If the DSP will not use Power Down
Data Overlay), or lowest power consumption is not
mode, then PD2 can be used for other purposes
an issue, then consider the following options.
(MCUI/O, external chip select, PLD input)
Port C JTAG: Figure 6 shows all six JTAG sig-
Pins PC2 and PC7. In Figure 6, these two pins
nals in use full time (not multiplexed with I/0). Us-
are used as dedicated address inputs connected
ing six-pin JTAG can reduce ISP time by as much
as 30% compared to four-pin JTAG. Alternatively, to DSP address outputs. This will route DSP ad-
dress signals A16 and A17 directly into the DPLD.
four-pin JTAG (TMS, TCK, TDI, TDO) can be used
Be aware that any free pin on Port B, Port C, or
if more general I/O pins are needed and the few
Port D may be used for DSP address inputs, it
extra seconds of programming time is not crucial,
does not have to be pins PC2 and PC7.
freeing up pins PC3 and PC4. Other JTAG options
include mutiplexing JTAG pins with general I/O Pin PB0. This pin is shown as a chip select for an
(see “Programming In-Circuit using JTAG ISP” on external peripheral device such as a 16450 or
page 39 and Application Note AN1153) or not us- 16550 UART. Equivalently, any free pin on Ports
ing JTAG at all. If no JTAG is used, the DSM de- B, C, or D may be used for this.
vice has to be programmed on a conventional
9/67
10/67
OPTIONAL
DSM2180F3
_RESET
AI04912
DSM2180F3
MEMORY MAP
Figure 7 shows a typical system memory map. through the BDMA channel and is selected when-
The nomenclature fs0..fs7 are individual 16K Byte ever the DSP BMS signal is active.
Flash memory segment designators. csiop desig- Flash memory in the DSM device must be un-
nates the DSM control register block. The DSP locked and written by the DSP one byte at a time,
runs in Full Memory Mode. Memory contents of checking status after each write (typical Flash
the DSM device may lie in one or more of three dif- memory programming algorithm). A DMA channel
ferent DSP address spaces; I/O space, Byte DMA is not optimum for this scenario since the channel
space, and/or External Data Overlay Memory must be initialized on each byte access. That is
space. Since the DSM device is a byte-wide mem- why the 128K Bytes of Flash memory also lie in
ory, it typically is not used in DSP Program Mem- DSP Data Overlay Memory space as described
ory space (PMS active). next.
The designer may easily specify memory mapping Data Overlay Memory Address Space. All
in a point-and-click software environment using 128K Bytes of Flash memory also reside in DSP
PSDsoft ExpressTM. Since the memory mapping is External Data Overlay Memory space, selected by
implemented with the DPLD and the Page Regis- DMS , allowing more efficient byte writes to Flash
ter, many possibilities exist. Figure 7 shows a typ- memory. The DSP uses its external data overlay
ical memory map with the following attributes: window of 8K locations to access external memory
I/O Address Space. The 256 byte locations for as data. The DSP doubles the size of this window
DSM control registers (csiop) reside in DSP I/O to 16K locations by manipulating its A13 address
address space, selected by the DSP IOMS signal. line using its DMOVLAY register (See ADSP-218X
Since DSP I/O accesses are by 16 bits, not 8 bits, data sheets for details). Since all 128K Bytes of
the upper byte of a 16-bit DSP I/O access must be Flash memory must be accessed through a win-
ignored. dow of only 16K locations, the DSP uses the Page
Byte DMA Address Space. The DSP may boot- Register inside the DSM device to page through 8
load or fetch overlay bytes from 128K Bytes of pages of 16K Bytes as shown in Figure 7. Since
Flash memory using the DSP BDMA channel. The DSP Data accesses are by 16 bits, not 8 bits, the
DSP may also write to Flash memory using the upper byte of a 16-bit DSP Data access must be
Byte DMA channel. DSM Flash memory is access- ignored.
ed in 128K continuous byte address locations
11/67
12/67
DSP I/O Memory DSP Byte DMA Memory DSP Data Memory
DSM2180F3
1BFFF
fs6
16 KBytes
Flash Memory
18000
17FFF
fs5
Figure 7. Typical System Memory Map
16 KBytes
14000 Flash Memory
13FFF
fs4
16 KBytes
Nothing Flash Memory Nothing
10000
Mapped Mapped
0FFFF Flash Memory Paged Over 8 Pages
fs3
16 KBytes
Flash Memory PAGE 7
0C000 03FFF
A13 = 1
0BFFF PAGE 6 fs7
A13 = 1
fs2 PAGE 5 A13 = 0
16 KBytes A13 = 1 fs6 00000
Flash Memory PAGE 4 A13 = 0
08000 fs5
A13 = 1
PAGE 3 A13 = 0
07FFF fs4
A13 = 1
fs1 PAGE 2 A13 = 0
16 KBytes A13 = 1 fs3
Flash Memory PAGE 1 A13 = 0
04000 A13 = 1 fs2
00208 _cs_uart A13 = 0
00200 8 UART REGS 03FFF 03FFF PAGE 0 fs1
A13 = 1
fs0 A13 = 0
fs0
16 KBytes 16 KBytes
000FF csiop Flash Memory A13 = 0
(8 KWords)
00000 256 CONTROL REGS 00000 00000
AI04913
DSM2180F3
Figure 8. HDL Statements Generated from PSDsoft Express to Implement Memory Map
csiop = ((address >= ^h0000) & (address <= ^h00FF) & (!_ioms & _dms & _bms));
fs0 = ((address >= ^h0000) & (address <= ^h3FFF) & (_ioms & _dms & !_bms))
# ((page == 0) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs1 = ((address >= ^h4000) & (address <= ^h7FFF) & (_ioms & _dms & !_bms))
# ((page == 1) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs2 = ((address >= ^h8000) & (address <= ^hBFFF) & (_ioms & _dms & !_bms))
# ((page == 2) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs3 = ((address >= ^hC000) & (address <= ^hFFFF) & (_ioms & _dms & !_bms))
# ((page == 3) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs4 = ((address >= ^h10000) & (address <= ^h13FFF) & (_ioms & _dms & !_bms))
# ((page == 4) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs5 = ((address >= ^h14000) & (address <= ^h17FFF) & (_ioms & _dms & !_bms))
# ((page == 5) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs6 = ((address >= ^h18000) & (address <= ^h1BFFF) & (_ioms & _dms & !_bms))
# ((page == 6) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
fs7 = ((address >= ^h1C000) & (address <= ^h1FFFF) & (_ioms & _dms & !_bms))
# ((page == 7) & (address >= ^h0000) & (address <= ^h3FFF) & (_ioms & !_dms &
_bms));
! _cs_uart = ((address >= ^h0200) & (address <= ^h0207) & (!_ioms & _dms & _bms));
Specifying these equations using PSDsoft Ex- BMS) and the memory page number coming from
pressTM is very simple. Figure 9 shows how to the DSM Page Register outputs. This specification
specify the equation for the 16K Byte Flash mem- process is repeated for all other Flash memory
ory segment, fs2. Notice how fs2 can reside in two segments, the csiop register block, and any exter-
different address spaces depending on the state of nal chip select signals (UART, etc.).
the control signals from the DSP (IOMS , DMS , or
13/67
DSM2180F3
AI03779
14/67
DSM2180F3
15/67
DSM2180F3
DETAILED OPERATION
Figure 5 shows major functional areas of the de- Memory Operation. The Flash memory is ac-
vice: cessed through the DSP Address, Data, and Con-
■ Flash Memory trol Bus Interface. The DSP can access Flash
memory as BDMA mode or as External Data
■ PLDs (DPLD, CPLD, Page Register) Memory Overlay. But from the DSM perspective, it
■ DSP Bus Interface (Address, Data, Control) sees either type of access as a series of byte op-
erations (reads and writes). If the DSP accesses
■ I/O Ports the DSM in BDMA mode, then the DSP BDMA
■ Runtime Control Registers channel must be initialized and run for each byte
(or block of bytes) read from Flash memory or it
■ JTAG ISP Interface
must initialize the DMA channel for each byte writ-
The following describes these functions in more ten to Flash memory. Alternatively, if the DSP ac-
detail. cesses the DSM in External Data Memory Overlay
Flash Memory mode, then the DSP must only ensure the PSD
The Flash memory array is divided evenly into Page Register and the DSP DMOVLAY register
eight equal 16K byte sectors. Each sector is se- contains the correct value, then it performs a nor-
mal data read or data write operation without the
lected by the DPLD can be separately protected
burden of initializing the BDMA channel for each
from program and erase cycles. This configuration
is specified by using PSDsoft ExpressTM. operation (upper byte of 16-bit word is ignored).
Memory Sector Select Signals. The DPLD gen- DSPs and MCUs cannot write to Flash memory as
it would an SRAM device. Flash memory must first
erates the Select signals for all the internal memo-
be “unlocked” with a special sequence of byte
ry blocks (see Figure 14). Each of the eight sectors
of the Flash memory has a Select signal (FS0- write operations to invoke an internal algorithm,
FS7 ) which contains up to three product terms. then a single data byte is written to the Flash mem-
ory array, then programming status is checked by
Having three product terms for each Select signal
a byte read operation or by checking the Ready/
allows a given sector to be mapped into multiple
areas of system memory. Busy pin (PC3). Table 5 lists all of the special in-
struction sequences to program (write) data to the
Ready/Busy (PC3). This signal can be used to Flash memory array, erase the array, and check
output the Ready/Busy status of the device. The for different types of status from the array. These
output on Ready/Busy (PC3) is a 0 (Busy) when instruction sequences are different combinations
Flash memory is being written, or when Flash of individual byte write and byte read operations.
memory is being erased. The output is a 1 (Ready)
Once the Flash memory array is programmed
when no Write or Erase cycle is in progress. This
(written) and then it is in “Read Array” mode, the
signal may be polled by the DSP or used as a DSP
interrupt to indicate when an erase or program cy- DSP will read from Flash memory just as if would
cle is complete. from any 8-bit ROM or SRAM device.
16/67
DSM2180F3
17/67
DSM2180F3
18/67
DSM2180F3
section entitled “Programming Flash Memory”, on toggles to 0 for about 100 µs and then returns to
page 19, for details. the previous addressed byte.
Data Polling Flag (DQ7). When erasing or pro- Error Flag (DQ5). During a normal Program or
gramming in Flash memory, the Data Polling Flag Erase cycle, the Error Flag (DQ5) bit is to 0. This
(DQ7) bit outputs the complement of the bit being bit is set to 1 when there is a failure during Flash
entered for programming/writing on the Data Poll- memory Byte Program, Sector Erase, or Bulk
ing Flag (DQ7) bit. Once the Program instruction Erase cycle.
sequence or the write operation is completed, the
true logic value is read on the Data Polling Flag In the case of Flash memory programming, the Er-
(DQ7) bit (in a read operation). ror Flag (DQ5) bit indicates the attempt to program
a Flash memory bit from the programmed state, 0,
Flash memory instruction features: to the erased state, 1, which is not valid. The Error
■ Data Polling is effective after the fourth Write Flag (DQ5) bit may also indicate a Time-out condi-
pulse (for a Program instruction sequence) or tion while attempting to program a byte.
after the sixth Write pulse (for an Erase In case of an error in a Flash memory Sector Erase
instruction sequence). It must be performed at or Byte Program cycle, the Flash memory sector in
the address being programmed or at an address which the error occurred or to which the pro-
grammed byte belongs must no longer be used.
within the Flash memory sector being erased. Other Flash memory sectors may still be used.
■ During an Erase cycle, the Data Polling Flag The Error Flag (DQ5) bit is reset after a Reset
(DQ7) bit outputs a 0. After completion of the Flash instruction sequence.
cycle, the Data Polling Flag (DQ7) bit outputs Erase Time-out Flag (DQ3). The Erase Time-
the last bit programmed (it is a 1 after erasing). out Flag (DQ3) bit reflects the time-out period al-
lowed between two consecutive Sector Erase in-
■ If the byte to be programmed is in a protected struction sequence bytes. The Erase Time-out
Flash memory sector, the instruction sequence Flag (DQ3) bit is reset to 0 after a Sector Erase cy-
is ignored. cle for a time period of 100 µs + 20% unless an ad-
ditional Sector Erase instruction sequence is
■ If all the Flash memory sectors to be erased are
decoded. After this time period, or when the addi-
protected, the Data Polling Flag (DQ7) bit is tional Sector Erase instruction sequence is decod-
reset to 0 for about 100 µs, and then returns to ed, the Erase Time-out Flag (DQ3) bit is set to 1.
the previous addressed byte. No erasure is Programming Flash Memory
performed. When a byte of Flash memory is programmed, in-
Toggle Flag (DQ6). The device offers another dividual bits are programmed to logic 0. You can-
way for determining when the Flash memory Pro- not program a bit in Flash memory to a logic 1
gram cycle is completed. During the internal write once it has been programmed to a logic 0. A bit
operation and when the Sector Select FS0-FS7 is must be erased to logic 1, and programmed to log-
true, the Toggle Flag (DQ6) bit toggles from 0 to 1 ic 0. That means Flash memory must be erased
and 1 to 0 on subsequent attempts to read any prior to being programmed. A byte of Flash mem-
byte of the memory. ory is erased to all 1s (FFh). The DSP may erase
When the internal cycle is complete, the toggling the entire Flash memory array all at once or indi-
stops and the data read on the Data Bus D0-7 is vidual sector-by-sector, but not byte-by-byte.
the addressed memory byte. The device is now However, the DSP may program Flash memory
accessible for a new read or write operation. The byte-by-byte.
cycle is finished when two successive reads yield The Flash memory requires the DSP to send an in-
the same output data. Flash memory specific fea- struction sequence to program a byte or to erase
tures: sectors (see Table 5).
■ The Toggle Flag (DQ6) bit is effective after the Once the DSP issues a Flash memory Program or
fourth write operation (for a Program instruction Erase instruction sequence, it must check for the
sequence) or after the sixth write operation (for status bits for completion. The embedded algo-
rithms that are invoked inside the device provide
an Erase instruction sequence). several ways give status to the DSP. Status may
■ If the byte to be programmed belongs to a be checked using any of three methods: Data Poll-
protected Flash memory sector, the instruction ing, Data Toggle, or Ready/Busy (pin PC3).
sequence is ignored. Data Polling. Polling on the Data Polling Flag
(DQ7) bit is a method of checking whether a Pro-
■ If all the Flash memory sectors selected for
erasure are protected, the Toggle Flag (DQ6) bit
19/67
DSM2180F3
gram or Erase cycle is in progress or has complet- Figure 10. Data Polling Flowchart
ed. Figure 10 shows the Data Polling algorithm.
When the DSP issues a Program instruction se- START
quence, the embedded algorithm within the device
begins. The DSP then reads the location of the
byte to be programmed in Flash memory to check READ DQ5 & DQ7
at VALID ADDRESS
status. The Data Polling Flag (DQ7) bit of this lo-
cation becomes the compliment of bit 7 of the orig-
inal data byte to be programmed. The DSP
continues to poll this location, comparing the Data DQ7 YES
=
Polling Flag (DQ7) bit and monitoring the Error DATA
Flag (DQ5) bit. When the Data Polling Flag (DQ7) NO
bit matches bit7 of the original data, and the Error
Flag (DQ5) bit remains 0, then the embedded al-
NO
gorithm is complete. If the Error Flag (DQ5) bit is DQ5
=1
1, the DSP should test the Data Polling Flag (DQ7)
bit again since the Data Polling Flag (DQ7) bit may YES
have changed simultaneously with the Error Flag
(DQ5) bit (see Figure 10). READ DQ7
20/67
DSM2180F3
Figure 11. Data Toggle Flowchart set to the Read Flash memory status. The Bulk
Erase command may be addresses to any one in-
START dividual valid Flash memory segment (FS0-FS7)
and the entire array (all segments) will be erased.
During a Bulk Erase, the memory status may be
READ checked by reading the Error Flag (DQ5) bit, the
DQ5 & DQ6
Toggle Flag (DQ6) bit, and the Data Polling Flag
(DQ7) bit, as detailed in the section entitled “Pro-
gramming Flash Memory”, on page 19. The Error
DQ6 NO
= Flag (DQ5) bit returns a 1 if there has been an
TOGGLE
Erase Failure (maximum number of Erase cycles
YES have been executed).
It is not necessary to program the memory with
NO
00h because the device automatically does this
DQ5 before erasing to 0FFh.
=1
During execution of the Bulk Erase instruction se-
YES
quence, the Flash memory does not accept any in-
READ DQ6 struction sequences.
The address provided with the Flash Bulk Erase
command sequence (Table 5) may select any one
DQ6
= NO of the eight internal Flash memory Sector Select
TOGGLE signals (FS0 - FS7). An erase of the entire Flash
YES
memory array will occur even though the com-
mand was sent to just one Flash memory sector.
FAIL PASS Flash Sector Erase. The Sector Erase instruc-
tion sequence uses six write operations, as de-
AI01370B
scribed in Table 5. Additional Flash Sector Erase
codes and Flash memory sector addresses can be
written subsequently to erase other Flash memory
The Error Flag (DQ5) bit is set if either an internal
sectors in parallel, without further coded cycles, if
time-out occurred while the embedded algorithm
the additional bytes are transmitted in a shorter
attempted to program the byte, or if the DSP at-
time than the time-out period of about 100 µs. The
tempted to program a 1 to a bit that was not erased
input of a new Sector Erase code restarts the time-
(not erased is logic 0).
out period.
It is suggested (as with all Flash memories) to read
The status of the internal timer can be monitored
the location again after the embedded program-
through the level of the Erase Time-out Flag (DQ3)
ming algorithm has completed, to compare the
bit. If the Erase Time-out Flag (DQ3) bit is 0, the
byte that was written to Flash memory with the
Sector Erase instruction sequence has been re-
byte that was intended to be written.
ceived and the time-out period is counting. If the
When using the Data Toggle method after an Erase Time-out Flag (DQ3) bit is 1, the time-out
Erase cycle, Figure 11 still applies. the Toggle period has expired and the device is busy erasing
Flag (DQ6) bit toggles until the Erase cycle is com- the Flash memory sector(s). Before and during
plete. A 1 on the Error Flag (DQ5) bit indicates a Erase time-out, any instruction sequence other
time-out condition on the Erase cycle, a 0 indi- than Suspend Sector Erase and Resume Sector
cates no error. The DSP can read any location Erase instruction sequences abort the cycle that is
within the sector being erased to get the Toggle currently in progress, and reset the device to Read
Flag (DQ6) bit and the Error Flag (DQ5) bit. Array mode. It is not necessary to program the
PSDsoft Express generates ANSI C code func- Flash memory sector with 00h as the device does
tions which implement these Data Toggling algo- this automatically before erasing (byte=FFh).
rithms. During a Sector Erase, the memory status may be
Erasing Flash Memory checked by reading the Error Flag (DQ5) bit, the
Flash Bulk Erase. The Flash Bulk Erase instruc- Toggle Flag (DQ6) bit, and the Data Polling Flag
tion sequence uses six write operations followed (DQ7) bit, as detailed in the section entitled “Pro-
by a read operation of the status register, as de- gramming Flash Memory”, on page 19.
scribed in Table 5. If any byte of the Bulk Erase in- During execution of the Erase cycle, the Flash
struction sequence is wrong, the Bulk Erase memory accepts only Reset and Suspend Sector
instruction sequence aborts and the device is re- Erase instruction sequences. Erasure of one
21/67
DSM2180F3
Flash memory sector may be suspended, in order – The Flash memory cannot be programmed, and
to read data from another Flash memory sector, only responds to Resume Sector Erase and Re-
and then resumed. set Flash instruction sequences (Read is an op-
The address provided with the initial Flash Sector eration and is allowed).
Erase command sequence (Table 5) must select – If a Reset Flash instruction sequence is re-
the first desired sector (FS0 - FS7) to erase. Sub- ceived, data in the Flash memory sector that
sequent sector erase commands that are append- was being erased is invalid.
ed on within the time-out period must be Resume Sector Erase. If a Suspend Sector
addressed to other desired segments (FS0 - FS7). Erase instruction sequence was previously exe-
Suspend Sector Erase. When a Sector Erase cuted, the erase cycle may be resumed with this
cycle is in progress, the Suspend Sector Erase in- instruction sequence. The Resume Sector Erase
struction sequence can be used to suspend the instruction sequence consists of writing 030h to
cycle by writing 0B0h to any address when an ap- any address while an appropriate Sector Select
propriate Sector Select (FS0-FS7) is selected (FS0-FS7) is active. (See Table 5.)
(See Table 5). This allows reading of data from an- Flash Memory Sector Protect.
other Flash memory sector after the Erase cycle
Each Flash memory sector can be separately pro-
has been suspended. Suspend Sector Erase is
tected against Program and Erase cycles. Sector
accepted only during an Erase cycle and defaults
Protection provides additional data security be-
to Read mode. A Suspend Sector Erase instruc-
cause it disables all Program or Erase cycles. This
tion sequence executed during an Erase time-out
mode can be activated through the JTAG Port or a
period, in addition to suspending the Erase cycle,
Device Programmer. Sector protection can be se-
terminates the time out period.
lected for each sector using PSDsoft Express.
The Toggle Flag (DQ6) bit stops toggling when the
device internal logic is suspended. The status of This automatically protects selected sectors when
the device is programmed through the JTAG Port
this bit must be monitored at an address within the
or a Device Programmer. Flash memory sectors
Flash memory sector being erased. The Toggle
can be unprotected to allow updating of their con-
Flag (DQ6) bit stops toggling between 0.1 µs and
tents using the JTAG Port or a Device Program-
15 µs after the Suspend Sector Erase instruction
mer. The DSP can read (but cannot change) the
sequence has been executed. The device is then
sector protection bits.
automatically set to Read mode.
Any attempt to program or erase a protected Flash
If an Suspend Sector Erase instruction sequence
was executed, the following rules apply: memory sector is ignored by the device. The Verify
operation results in a read of the protected data.
– Attempting to read from a Flash memory sector This allows a guarantee of the retention of the Pro-
that was being erased outputs invalid data. tection status.
– Reading from a Flash memory sector that was The sector protection status can be read by the
not being erased is valid. DSP through the Flash memory protection regis-
ters (in the csiop block) as defined in Table 7.
22/67
DSM2180F3
23/67
DSM2180F3
The DPLD performs address decoding, and gen- Turbo Bit. The PLDs in the device can minimize
erates select signals for internal and external com- power consumption by switching off when inputs
ponents, such as memory, registers, and I/O ports. remain unchanged for an extended time of about
The DPLD can generates External Chip Select 70 ns. Resetting the Turbo bit to 0 (Bit 3 of the
(ECS0-ECS2) signals on Port D. PMMR0 register) automatically places the PLDs
The CPLD can be used for logic functions, such as into standby if no inputs are changing. Turning the
loadable counters and shift registers, state ma- Turbo mode off increases propagation delays
chines, and encoding and decoding logic. These while reducing power consumption. Additionally,
logic functions can be constructed using the 16 five bits are available in the PMMR registers in
Output MicroCells (OMC), 16 Input MicroCells csiop to block DSP control signals from entering
(IMC), and the AND Array. the PLDs. This reduces power consumption and
can be used only when these DSP control signals
The AND Array is used to form product terms.
are not used in PLD logic equations. Each of the
These product terms are configured from the logic two PLDs has unique characteristics suited for its
definition entered in PSDsoft Express. An Input
applications. They are described in the following
Bus consisting of 64 signals is connected to the
sections.
PLDs. Input signals are shown in Table 9.
8
PAGE
REGISTER
Data
Bus
8
DECODE PLD Flash Memory Selects
64 (DPLD)
1
CSIOP Select
3
External Chip Selects to PORT D
1
JTAG Select
PLD INPUT BUS
16 Output Microcell Feedback Direct Microcell Access from MCU Data Bus
16 INPUT MICROCELL
(PORT B,C)
3 PORT D Inputs
AI04900
24/67
DSM2180F3
(INPUTS) 3
FS0
I/O PORTS (PORT A,B,C) (16)
3
FS1
MCELLAB.FB [7:0] (Feedback) (8)
3
FS2
MCELLBC.FB [7:0] (Feedback) (8)
3
FS3 8 Flash Memory
PG0 -PG7 (8)
3 Sector Selects
FS4
A[15:0] (16)
3
FS5
PD[ 2:0] (3)
3
FS6
CNTRL[2:0 ] (Read/Write Control Signals) (3)
3
FS7
RESET (1)
RD_BSY (1)
1 CSIOP I/O Decoder
Select
1 JTAGSEL JTAG ISP
1 ECS0
AI04901
25/67
DSM2180F3
FROM OTHER
MICROCELLS
TO OTHER I/O PORTS
PRODUCT TERMS
MICROCELL CPLD OUTPUT
OUT TO
MCU
POLARITY
MUX
SELECT
PR DI LD
D/T Q SELECT
PT
CLOCK CPLD PDR
D/T/JK FF COMB. OUTPUT INPUT
SELECT /REG
MUX
GLOBAL
PLD INPUT BUS
CLOCK SELECT
CK MICROCELL
TO
CL I/O PORT
CLOCK ALLOC. D Q
SELECT DIR
WR REG.
PT CLEAR
Q D
Q D
PT INPUT LATCH GATE/CLOCK G
AI04902
Output MicroCell (OMC). Eight of the Output Mi- The Output MicroCell (OMC) architecture is shown
croCells (OMC) are connected to Port B pins and in Figure 17. As shown in the figure, there are na-
are named as McellAB0-McellAB7. The other tive product terms available from the AND Array,
eight MicroCells are connected to Ports B or C and borrowed product terms available (if unused)
pins and are named as McellBC0-McellBC7. from other Output MicroCells (OMC). The polarity
OMCs may be used for internal feedback only of the product term is controlled by the XOR gate.
(buried registers), or their outputs may be routed The Output MicroCell (OMC) can implement either
to external Port pins. sequential logic, using the flip-flop element, or
26/67
DSM2180F3
combinatorial logic. The multiplexer selects be- Routing can occur on a bit-by-bit basis, spitting
tween the sequential or combinatorial logic out- assignment between the Ports. However, one
puts. The multiplexer output can drive a port pin OMC can be routed to one Port pin only, not both.
and has a feedback path to the AND Array inputs.
The flip-flop in the Output MicroCell (OMC) block Figure 16. OMC Allocator
can be configured as a D, T, JK, or SR type in PS-
Dsoft ExpressTM. The flip-flop’s clock, preset, and
clear inputs may be driven from a product term of PORT B PINS PORT C PINS
the AND Array. Alternatively, CLKIN (PD1) can be 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
used for the clock input to the flip-flop. The flip-flop
is clocked on the rising edge of CLKIN (PD1). The
preset and clear are active High inputs. Each clear
input can use up to two product terms. 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
OMCs (MCELLAB) OMCs (MCELLBC)
Output MicroCell Allocator. Outputs of the 16
OMCs can be routed to a combination of pins on AI04915
McellAB5 Port B5 3 6 D5
McellAB6 Port B6 3 6 D6
McellAB7 Port B7 3 6 D7
McellBC0 Port B0 or C0 4 5 D0
McellBC1 Port B1 or C1 4 5 D1
McellBC2 Port B or, C2 4 5 D2
McellBC3 Port B3 orC3 4 5 D3
27/67
DSM2180F3
Each MicroCell may only borrow product terms Loading and Reading the Output MicroCells
from certain other MicroCells. Product terms al- (OMCs). Each of the two OMC blocks (8 OMCs
ready in use by one MicroCell are not available for each) occupies a memory location in the DSP ad-
another MicroCell. Product term allocation does dress space, as defined in the csiop block
not add any propagation delay to the logic. MCELLAB0-7 and MCELLBC0-7 (see Table 4).
If an equation requires more product terms than The flip-flops in each of the 16 OMCs can be load-
are available to it through product term allocation, ed from the data bus by a DSP. Loading the OMCs
then “external” product terms are required, which with data from the DSP takes priority over internal
consumes other Output MicroCells (OMC). This is functions. As such, the preset, clear, and clock in-
called product term expansion and also happens puts to the flip-flop can be overridden by the DSP.
automatically in PSDsoft ExpressTM as needed. The ability to load the flip-flops and read them
Product tern expansion causes additional propa- back is useful in such applications as loadable
gation delay because an OMC is consumed by the counters and shift registers, mailboxes, and hand-
expansion and it’s output is rerouted (or fed back) shaking protocols.
into the AND array. Data is loaded into the Output MicroCells (OMC)
You can examine the fitter report generated by on the trailing edge of Write Strobe (WR, CNTL0).
PSDsoft Express to see resulting product term al-
location and product term expansion.
MASK
REG.
WR
PT Direction
Allocator Register
ENABLE (.OE)
PRESET(.PR) COMB/REG
AND ARRAY
SELECT
PT
PT
DIN PR
PLD INPUT BUS
CLKIN MUX
Feedback (.FB)
AI04903
28/67
DSM2180F3
The OMC Mask Register. There is one Mask The Output Enable of the OMC. The Output Mi-
Register for each of the two groups of eight Output croCells (OMC) block can be connected to an I/O
MicroCells (OMC). The Mask Registers can be port pin as a PLD output. The output enable of
used to block the loading of data to individual Out- each port pin driver is controlled by a single prod-
put MicroCells (OMC). The default value for the uct term from the AND Array, ORed with the Direc-
Mask Registers is 00h, which allows loading of the tion Register output. The pin is enabled upon
Output MicroCells (OMC). When a given bit in a Power-up if no output enable equation is defined
Mask Register is set to a 1, the DSP is blocked and if the pin is declared as a PLD output in PSD-
from writing to the associated Output MicroCells soft Express.
(OMC). For example, suppose McellAB0-3 are be- If the Output MicroCell (OMC) output is specified
ing used for a state machine. You would not want as an internal node and not as a port pin output in
a DSP write to McellAB to overwrite the state ma- the PSDsoft Express, then the port pin can be
chine registers. Therefore, you would want to load used for other I/O functions. The internal node
the Mask Register for McellAB (Mask MicroCell feedback can be routed as an input to the AND Ar-
AB) with the value 0Fh. ray.
OUTPUT
PT Microcells BC
AND
AND ARRAY
Microcells AB
I/O Pin
PT
Port
PLD INPUT BUS
Driver
MUX Q D
PT
D FF
Feedback Q D
G
LATCH
Input Microcell
AI04904
29/67
DSM2180F3
DATA OUT
REG.
DATA OUT
D Q
WR
PORT PIN
OUTPUT
MUX
MICROCELL OUTPUTS
EXT CS
READ MUX
INTERNAL DATA BUS
P OUTPUT
SELECT
D
DATA IN
B
ENABLE OUT
DIR REG.
D Q
WR
CPLD -INPUT
AI04905
As shown in Figure 19, the ports contain an output ■ External Chip Selects ESC0-2 from the DPLD to
multiplexer whose select signals are driven by the Port D pins only.
configuration bits determined by PSDsoft Express.
Inputs to the multiplexer include the following: The Port Data Buffer (PDB) is a tri-state buffer that
allows only one source at a time to be read by the
■ Output data from the Data Out register (for MCU
DSP. The Port Data Buffer (PDB) is connected to
I/O mode) the Internal Data Bus for feedback and can be
■ CPLD MicroCell output (OMC) read by the DSP. The Data Out and MicroCell out-
30/67
DSM2180F3
puts, Direction Registers, and port pin input are all bouncing), as transparent latches, or direct inputs
connected to the Port Data Buffer (PDB). to the PLDs. The registers and latches are clocked
The Port pin’s tri-state output driver enable is con- by a product term from the PLD AND Array. The
trolled by a two input OR gate whose inputs come outputs from the IMCs drive the PLD input bus and
from the CPLD AND Array enable product term can be read by the DSP. See the section entitled
and the Direction Register. If the enable product “Input MicroCell”, on page 29.
term of any of the Array outputs are not defined Port Operating Modes
and that port pin is not defined as a CPLD output The I/O Ports have several modes of operation.
in PSDsoft ExpressTM, then the Direction Register Modes are defined using PSDsoft ExpressTM, and
has sole control of the buffer that drives the port then runtime control from the DSP can occur using
pin. the registers in the csiop block. See Application
The contents of these registers can be altered by Note AN1171 for more detail.
the DSP. The Port Data Buffer (PDB) feedback Table 11 summarizes which modes are available
path allows the DSP to check the contents of the on each port. Each of the port operating modes
registers. are described in the following sections.
Ports B, and C have embedded IMCs. The IMCs
can be configured as registers (for sampling or de-
31/67
DSM2180F3
port. The three Port Configuration Registers Table 14. Port Pin Direction Control, Output
(PCR), are shown in Table 12. Default is logic 0. Enable P.T. Defined
Direction Output Enable
Port Pin Mode
Table 12. Port Configuration Registers (PCR) Register Bit P.T.
Register Name Port DSP Access 0 0 Input
Data In B,C,D Read 0 1 Output
Data Out B,C,D Write/Read 1 0 Output
Direction B,C,D Write/Read 1 1 Output
1 B,C,D Write/Read
Drive Select
Table 15. Port Direction Assignment Example
Note: 1. See Table 16 for Drive Register bit definition.
Data In Register. The DSP may read the Data In Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
registers in the csiop block at any time to deter- 0 0 0 0 0 1 1 1
mine the logic state of a Port pin. This will be the
state at the pin regardless of whether it is driven by Figure 20 and Figure 21 show the Port Architec-
a source external to the DSM or driven internally ture diagrams for Ports B and C, respectively. The
from the DSM device. Reading a logic zero for a bit direction of data flow for Ports B, and C are con-
in a Data In register means the corresponding Port trolled not only by the direction register, but also by
pin is also at logic zero. Reading logic one means the output enable product term from the PLD AND
the pin is logic one. Each bit in a Data In register Array. If the output enable product term is not ac-
corresponds to an individual Port pin. For a given tive, the Direction Register has sole control of a
Port, bit 0 in a Data In register corresponds to pin given pin’s direction.
0 of the Port. Example, bit 0 of the Data In register An example of a configuration for a Port with the
for Port B corresponds to Port B pin PB0. three least significant bits set to output and the re-
Data Out Register. The DSP may write (or read) mainder set to input is shown in Table 15. Since
the Data Out register in the csiop block at any Port D only contains three pins (shown in Figure
time. Writing the Data Out register will change the 23), the Direction Register for Port D has only the
logic state of a Port pin only if it is not driven or three least significant bits active.
controlled by the CPLD. Writing a logic zero to a bit Drive Select Register. The Drive Select Register
in a Data Out register will force the corresponding configures the pin driver as Open Drain or CMOS
Port pin to be logic zero. Writing logic one will drive (standard push/pull) for some port pins, and con-
the pin to logic one. Each bit in the Data Out reg- trols the slew rate for the other port pins. An exter-
isters correspond to Port pins the same way as the nal pull-up resistor should be used for pins
Data In registers described above. When some configured as Open Drain. Open Drain outputs are
pins of a Port are driven by the CPLD, writing to diode clamped, thus the maximum voltage on an
the corresponding bit in a Data Out register will pin configured as Open Drain is Vcc + 0.7V.
have no effect as the CPLD overrides the Data Out A pin can be configured as Open Drain if its corre-
register. sponding bit in the Drive Select Register is set to a
Direction Register. The Direction Register, in 1. The default pin drive is CMOS.
conjunction with the output enable (except for Port Note that the slew rate is a measurement of the
D), controls the direction of data flow in the I/O rise and fall times of an output. A higher slew rate
Ports. Any bit set to 1 in the Direction Register means a faster output response and may create
causes the corresponding pin to be an output, and more electrical noise. A pin operates in a high slew
any bit set to 0 causes it to be an input. The default rate when the corresponding bit in the Drive Reg-
mode for all port pins is input. ister is set to 1. The default rate is standard slew.
Table 16 shows the Drive Register for Ports B, C,
Table 13. Port Pin Direction Control, Output and D. It summarizes which pins can be config-
Enable P.T. Not Defined ured as Open Drain outputs and which pins the
Direction Register Bit Port Pin Mode slew rate can be set for.
0 Input
1 Output
32/67
DSM2180F3
DATA OUT
REG.
DATA OUT
D Q
WR
PORT B
PIN
OUTPUT
MUX
MACROCELL OUTPUTS
READ MUX
INTERNAL DATA BUS
P OUTPUT
SELECT
D DATA IN
B
ENABLE OUT
DIR REG.
D Q
WR
CPLD -INPUT
AI04906
Ports B – Functionality and Structure ■ CPLD Input – Via the Input MicroCells (IMC).
Port B can be configured to perform one or more ■ Open Drain/Slew Rate – pins PB3-PB0 can be
of the following functions: configured to fast slew rate, pins PB7-PB4 can
■ MCU I/O Mode be configured to Open Drain Mode.
■ CPLD Output – MicroCells McellAB7-McellAB0
can be connected to Port B. McellBC7-
McellBC0 can be connected to Port B or Port C.
33/67
DSM2180F3
DATA OUT
REG.
DATA OUT
D Q
WR
PORT C PIN
JTAG ISP OUTPUT
MUX
MCELLBC[ 7:0]
READ MUX
INTERNAL DATA BUS
P OUTPUT
SELECT
D
DATA IN
B
ENABLE OUT
DIR REG.
D Q
WR
INPUT
MACROCELL
AI04907
Port C – Functionality and Structure ■ In-System Programming (ISP) – JTAG port can
Port C can be configured to perform one or more be enabled for programming/erase of the
of the following functions (see Figure 21): device. (See the section entitled “Programming
■ MCU I/O Mode In-Circuit Using JTAG ISP”, and Application
■ CPLD Output – McellBC7-McellBC0 outputs Note AN1153, for more information on JTAG
can be connected to Port B or Port C. programming.)
■ CPLD Input – via the Input MicroCells (IMC) ■ Open Drain – Port C pins can be configured in
Open Drain Mode
34/67
DSM2180F3
PORT D PIN
OUTPUT
MUX
ECS [ 2: 0]
READ MUX
INTERNAL DATA BUS
P OUTPUT
SELECT
D
B DATA IN
ENABLE PRODUCT
DIR REG. TERM (.OE)
D Q
WR
CPLD -INPUT AI02889
Port D – Functionality and Structure ■ PSD Chip Select Input (CSI, PD2). Driving this
Port D has three I/O pins. See Figure 22 and Fig- signal logic High disables the Flash memory,
ure 23. Port D can be configured to perform one or putting it in standby mode.
more of the following functions:
External Chip Select. The DPLD also provides
■ MCU I/O Mode three External Chip Select outputs (ESC0-2) on
■ DPLD Output – External Chip Selects, ECS0-2 Port D pins that can be used to select external de-
does not consume OMCs vices as defined in PSDsoft Express. Each Exter-
nal Chip Select consists of one product term that
■ CPLD Input – direct input to the CPLD, does not can be configured active High or Low. The output
use IMCs enable of the pin is controlled by either the output
■ Slew rate – pins can be set up for fast slew rate enable product term or the Direction Register.
(See Figure 23.) External Chip Selects for Port D
Port D pins can be configured in PSDsoft as in- pins do not consume OMCs. External chip select
put pins for other dedicated functions: outputs can also come from the CPLD if chip se-
■ CLKIN (PD1) as input to the OMCs Flip-flops lect equations are specified in PSDsoft Express for
Ports B or C.
35/67
DSM2180F3
POLARITY
CPLD AND ARRAY
BIT
PLD INPUT BUS
POLARITY
BIT
ENABLE (.OE) DIRECTION
REGISTER
POLARITY
BIT AI02890
36/67
DSM2180F3
POWER MANAGEMENT
The device offers configurable power saving op- compared to when Turbo mode is on. When the
tions. These options may be used individually or in Turbo mode is on, there is a significant DC
combinations, as follows: current component and the AC component is
■ All memory blocks in the device are built with higher.
zero-power management technology. Zero-
Further significant power savings can be
power technology puts the memories into achieved by blocking signals that are not used
standby mode when address/data inputs are in DPLD or CPLD logic equations. The “blocking
not changing (zero DC current). As soon as a bits” in PMMR registers can be set to logic 1 by
transition occurs on an input, the affected the DSP to block designated signals from reach-
memory “wakes up”, changes and latches its ing both PLDs. Current consumption of the
PLDs is directly related to the composite fre-
outputs, then goes back to standby. The
quency of the changes on their inputs (see Fig-
designer does not have to do anything special to ure 25 and Figure 26), so blocking unused PLD
achieve memory standby mode when no inputs inputs can significantly lower PLD operating fre-
are changing—it happens automatically. quency and power consumption. The DSP also
has the option of blocking certain PLD input
Both PLDs (DPLD and CPLD) are also Zero-
when not needed, then letting them pass for
power, but this is not the default operation. The
when needed for specific logic operations. Ta-
DSP must set a bit at run-time to achieve Zero-
ble 17 and Table 18 define the PMMR registers.
power as described next.
■ PSD Chip Select Input (CSI, PD2) can be used
■ The PMMR registers can be written by the DSP
to disable the internal memories and csiop
at run-time to manage power. The device has a
registers, placing them in standby mode even if
Turbo bit in the PMMR0 register. This bit can be
inputs are changing. This feature does not block
set to turn the Turbo mode off (the default is with
any internal signals or disable the PLDs. There
Turbo mode turned on). While Turbo mode is
is a slight penalty in memory access time when
off, the PLDs can achieve standby current when
PSD Chip Select Input (CSI, PD2) makes its
no PLD inputs are changing (zero DC current).
initial transition from deselected to selected.
Even when inputs do change, significant power
can be saved at lower frequencies (AC current),
37/67
DSM2180F3
PLD Power Management composite frequency of less than 15 MHz (10 MHz
The power and speed of the PLDs are controlled for 3.3 V devices). When the Turbo bit is reset to 0
by the Turbo bit (bit 3) in the PMMR0. By setting (turned on), the PLDs run at full power and speed.
the bit to 1, the Turbo mode is off and the PLDs The Turbo bit affects the PLD’s DC power, AC
consume the specified stand-by current when the power, and propagation delay.
inputs are not switching for an extended time of Blocking MCU control signals with the bits of the
70 ns (100 ns for 3.3 V devices). The propagation PMMR registers can further reduce PLD AC power
delay time is increased by 10 ns after the Turbo bit consumption by lowering the effective composite
is set to 1 (turned off) when the inputs change at a frequency of inputs to the PLDs.
PLD Array 0 = on Cntl0 input to the PLD AND Array is passed onto PLDs.
Bit 2
CNTL0 1 = off Cntl0 input to PLD AND Array is blocked, saving power.
PLD Array 0 = on Cntl1 input to the PLD AND Array is passed onto PLDs.
Bit 3
CNTL1 1 = off Cntl1 input to PLD AND Array is blocked, saving power.
PLD Array 0 = on Cntl2 input to the PLD AND Array is passed onto PLDs.
Bit 4
CNTL2 1 = off Cntl2 input to PLD AND Array is blocked, saving power.
PLD Array 0 = on PD0 input to the PLD AND Array is passed onto PLDs.
Bit 5
PD0 1 = off PD0 input to PLD AND Array is blocked, saving power.
PLD Array 0 = on PC7 input to the PLD AND Array is passed onto PLDs.
Bit 6
PC7 1 = off PC7 input to PLD AND Array is blocked, saving power.
38/67
DSM2180F3
VCC (min)
VCC
t NLNH
t NLNH-PO tOPR tNLNH-A tOPR
Power-On Reset Warm Reset
RESET
AI02866b
Power On Reset, Warm Reset, Power-down The Flash memory is reset to the Read Array
Power On Reset. Upon Power-up, the device re- mode upon Power-up. Sector Select FS0-FS7
quires a Reset (RESET) pulse of duration tNLNH-PO must all be Low, Write Strobe (WR , CNTL0) High,
after VCC is steady. During this time period, the de- during Power On Reset for maximum security of
vice loads internal configurations, clears some of the data contents and to remove the possibility of
the registers and sets the Flash memory into Op- a byte being written on the first edge of Write
erating mode. After the rising edge of Reset (RE- Strobe (WR, CNTL0). Any Flash memory Write cy-
SET ), the device remains in the Reset mode for an cle initiation is prevented automatically when VCC
additional period, tOPR, before the first memory ac- is below VLKO.
cess is allowed.
Table 19. Status During Power-On Reset, Warm Reset and Power-down Mode
Port Config uration Power-On Reset Warm Reset Power-down Mode
MCU I/O Input mode Input mode Unchanged
Valid after internal PSD Depends on inputs to PLD
PLD Output configuration bits are Valid (addresses are blocked in
loaded PD mode)
39/67
DSM2180F3
ISP programming time can be reduced as much as case, a single PLD input from Ports B, C, or D
30% by using two more signals on Port C, TSTAT must be dedicated to switch the Port C pins from I/
and TERR in addition to TMS, TCK, TDI and TDO. O mode back to ISP mode at any time. It is recom-
See Table 20. The FlashLINKTM JTAG program- mended to physically connect this dedicated PLD
ming cable available from STMicroelectronics for input pin to the JEN\ output signal from the
$59USD and PSDsoft Express software that is Flashlink cable when multiplexing JTAG signals.
available at no charge from www.psdst.com is all See Application Note AN1153 for details.
that is needed to program a DSM device using the Method 3 is rarely used to control JTAG pin oper-
parallel port on any PC or laptop. ation. The DSP can set the port C pins to function
By default, the four pins on Port C are enabled for as JTAG ISP by setting the JTAG Enable bit in a
the basic JTAG signals TMS, TCK, TDI, and TDO register of the csiop block, but as soon as the DSM
on a blank device (and as shipped from factory) chip is reset, the csiop block registers are cleared,
See Application Note AN1153 for more details on which turns off the JTAG-ISP function. Controlling
JTAG In-System Programming (ISP). JTAG pins using this method is not recommended.
Standard JTAG Signals. The standard JTAG
signals (TMS, TCK, TDI, and TDO) can be en- Table 20. JTAG Port Signals
abled by any of three different conditions that are Port C Pin JTAG Signals Description
logically ORed. When enabled, TDI, TDO, TCK,
and TMS are inputs, waiting for a JTAG serial PC0 TMS Mode Select
command from an external JTAG controller device
PC1 TCK Clock
(such as FlashLINK or Automated Test Equip-
ment). When the enabling command is received, PC3 TSTAT Status
TDO becomes an output and the JTAG channel is
fully functional inside the device. The same com- PC4 TERR Error Flag
mand that enables the JTAG channel may option- PC5 TDI Serial Data In
ally enable the two additional JTAG signals,
TSTAT and TERR. PC6 TDO Serial Data Out
The following symbolic logic equation specifies the JTAG Extensions. TSTAT and TERR are two
conditions enabling the four basic JTAG signals JTAG extension signals (must be used as a pair)
(TMS, TCK, TDI, and TDO) on their respective enabled by a command received over the four
Port C pins. For purposes of discussion, the logic standard JTAG signals (TMS, TCK, TDI, and
label JTAG_ON is used. When JTAG_ON is true, TDO) by PSDsoft Express. They are used to
the four pins are enabled for JTAG operation. speed Program and Erase cycles by indicating
When JTAG_ON is false, the four pins can be status on device pins instead of having to scan the
used for general device I/O as specified in PSD- status out serially using the standard JTAG chan-
soft Express. JTAG_ON can become true by any nel. See Application Note AN1153.
of three different ways as shown: TERR indicates if an error has occurred when
erasing a sector or programming a byte in Flash
JTAG_ON = memory. This signal goes Low (active) when an
1. PSDsoft Express Pin Configuration -OR- Error condition occurs.
2. PSDsoft Express PLD equation -OR- TSTAT behaves the same as Ready/Busy de-
scribed previously. TSTAT is inactive logic 1 when
3. DSP writes to register in csiop block the device is in Read mode (Flash memory con-
tents can be read). TSTAT is logic 0 when Flash
Method 1 is most common. This is when the JTAG memory Program or Erase cycles are in progress.
pins are selected in PSDsoft Express to be “dedi- TSTAT and TERR can be configured as open-
cated” JTAG pins. They can always transmit and drain type signals with PSDsoft Express. This fa-
receive JTAG information because they are “full- cilitates a wired-OR connection of TSTAT signals
time” JTAG pins. from multiple DSM2180F3 devices and a wired-
Method 2 is used only when the JTAG pins are OR connection of TERR signals from those same
multiplexed with general I/O functions. For de- devices. This is useful when several devices are
signs that need every I/O pin, the JTAG pins may “chained” together in a JTAG environment. PSD-
be used for general I/O when they are not used for soft Express puts TSTAT and TERR signals to
ISP. However, when JTAG pins are multiplexed open-drain by default. Click on ’Properties’ in the
with general I/O functions, the designer must in- JTAG-ISP window of PSDsoft Express to change
clude a way to get the pins back into JTAG mode to standard CMOS push-pull. It is recommended
when it is time for JTAG operations again. In this
40/67
DSM2180F3
to use 10 kΩ pull-up resistors to VCC on all JTAG- Configuration Register bits are set to 0. The code,
ISP signals on your circuit board. configuration, and PLD logic are loaded using the
Initial Delivery State programming procedure. The four basic JTAG ISP
signals (TCK, TMS, TDI, TDO) are ready for ISP
When delivered from ST, the device has all bits in
function.
the memory and PLDs erased to logic 1. The DSM
41/67
DSM2180F3
AC/DC PARAMETERS
These tables describe the AD and DC parameters The following are issues concerning the parame-
of the device: ters presented:
❏ DC Electrical Specification ■ In the DC specification the supply current is
❏ AC Timing Specification given for different modes of operation. Before
■ PLD Timing calculating the total power consumption,
– Combinatorial Timing determine the percentage of time that the
device is in each mode. Also, the supply power
– Synchronous Clock Mode
is considerably different if the Turbo bit is 0.
– Asynchronous Clock Mode ■ The AC power component gives the PLD and
– Input MicroCell Timing Flash memory a mA/MHz specification. Figure
■ DSP Timing 25 and Figure 26 show the PLD mA/MHz as a
– Read Timing function of the number of Product Terms (PT)
used.
– Write Timing
■ In the PLD timing parameters, add the required
– Reset Timing
delay when Turbo bit is 0.
70
ICC – (mA)
)
(25%
FF
60
O ON
O
TURB
O
50
RB
TU
40
30
F PT 100%
20 OF
B O
UR PT 25%
T
10
0
0 5 10 15 20 25
42/67
DSM2180F3
40
ICC – (mA)
30
FF
5%)
O
(2
O ON
O
TURB
RB
20 TU
PT 100%
10 F
OF PT 25%
O
RB
TU
0
0 5 10 15 20 25
43/67
DSM2180F3
MAXIMUM RATING
Stressing the device above the rating listed in the plied. Exposure to Absolute Maximum Rating con-
Absolute Maximum Ratings table may cause per- ditions for extended periods may affect device
manent damage to the device. These are stress reliability. Refer also to the STMicroelectronics
ratings only and operation of the device at these or SURE Program and other relevant quality docu-
any other conditions above those indicated in the ments.
Operating sections of this specification is not im-
44/67
DSM2180F3
DC AND AC PARAMETERS
This section summarizes the operating and mea- ment Conditions summarized in the relevant
surement conditions, and the DC and AC charac- tables. Designers should check that the operating
teristics of the device. The parameters in the DC conditions in their circuit match the measurement
and AC Characteristic tables that follow are de- conditions when relying on the quoted parame-
rived from tests performed under the Measure- ters.
CL Load Capacitance 30 pF
Figure 27. AC Measurement I/O Waveform Figure 28. AC Measurement Load Circuit
2.01 V
3.0V
195 Ω
TEST POINT 1.5V
DEVICE
0V
UNDER TEST
CL = 30 pF
AI03103 (INCLUDING
SCOPE AND JIG
AI03104 CAPACITANCE)
45/67
DSM2180F3
B VSTBY Output
M Output MicroCell
Example: tAVWL – Time from Address Valid to
Write input Low.
46/67
DSM2180F3
AI03102
47/67
DSM2180F3
VIL Input Low Voltage 4.5 V < VCC < 5.5 V –0.5 0.8 V
VIH1 Reset High Level Input Voltage (Note 1) 0.8VCC VCC +0.5 V
VIL1 Reset Low Level Input Voltage (Note 1) –0.5 0.2V CC –0.1 V
Output High Voltage Except IOH = –20 µA, V CC = 4.5 V 4.4 4.49 V
VOH
VSTBY On IOH = –2 mA, VCC = 4.5 V 2.4 3.9 V
IIDLE Idle Current (VSTBY input) VCC > VSTBY –0.1 0.1 µA
ILO Output Leakage Current 0.45 < VOUT < VCC –10 ±5 10 µA
PLD_TURBO = Off,
0 µA/PT
f = 0 MHz (Note 5)
PLD Only
PLD_TURBO = On,
400 700 µA/PT
ICC (DC) Operating f = 0 MHz
Supply
(Note 5) Current During Flash memory Write/
15 30 mA
Flash memory Erase Only
Read Only, f = 0 MHz 0 0 mA
Note: 1. Reset (Reset) has hysteresis. VIL1 is valid at or below 0.2V CC –0.1. VIH1 is valid at or above 0.8VCC .
2. CSI deselected.
3. PLD is in non-Turbo mode, and none of the inputs are switching.
4. Please see Figure 25 for the PLD current calculation.
5. IOUT = 0 mA
48/67
DSM2180F3
VIL Low Level Input Voltage 3.0 V < VCC < 3.6 V –0.5 0.8 V
VIH1 Reset High Level Input Voltage (Note 1) 0.8VCC VCC +0.5 V
VIL1 Reset Low Level Input Voltage (Note 1) –0.5 0.2V CC –0.1 V
Output High Voltage Except IOH = –20 µA, V CC = 3.0 V 2.9 2.99 V
VOH
VSTBY On IOH = –2 mA, VCC = 3.0 V 2.7 2.6 V
IIDLE Idle Current (VSTBY input) VCC > VSTBY –0.1 0.1 µA
ILO Output Leakage Current 0.45 < VIN < VCC –10 ±5 10 µA
PLD_TURBO = Off,
0 µA/PT
f = 0 MHz (Note 3)
PLD Only
PLD_TURBO = On,
200 400 µA/PT
Operating f = 0 MHz
ICC (DC)
Supply
(Note 5) Current During Flash memory Write/
10 25 mA
Flash memory Erase Only
Read Only, f = 0 MHz 0 0 mA
Note: 1. Reset (Reset) has hysteresis. VIL1 is valid at or below 0.2V CC –0.1. VIH1 is valid at or above 0.8VCC .
2. CSI deselected.
3. PLD is in non-Turbo mode, and none of the inputs are switching.
4. Please see Figure 26 for the PLD current calculation.
5. IOUT = 0 mA
49/67
DSM2180F3
50/67
DSM2180F3
Maximum Frequency
1/(tS+tCO) 30.30 MHz
External Feedback
Maximum Frequency
fMAX Internal Feedback 1/(tS+tCO–10) 43.48 MHz
(fCNT)
Maximum Frequency
1/(tCH+tCL) 50.00 MHz
Pipelined Data
tS Input Setup Time 15 Add 2 Add 10 ns
Maximum Frequency
1/(tS+tCO) 18.8 MHz
External Feedback
Maximum Frequency
fMAX 1/(tS+tCO–10) 23.2 MHz
Internal Feedback (fCNT)
Maximum Frequency
1/(tCH+tCL) 33.3 MHz
Pipelined Data
51/67
DSM2180F3
Maximum Frequency
1/(t SA+tCOA) 26.32 MHz
External Feedback
Maximum Frequency
fMAXA Internal Feedback 1/(tSA+tCOA–10) 35.71 MHz
(fCNTA)
Maximum Frequency
1/(tCHA+tCLA) 41.67 MHz
Pipelined Data
tSA Input Setup Time 8 Add 2 Add 10 ns
Maximum Frequency
1/(t SA+tCOA) 19.2 MHz
External Feedback
Maximum Frequency
fMAXA 1/(tSA+tCOA–10) 23.8 MHz
Internal Feedback (fCNTA)
Maximum Frequency
1/(tCHA+tCLA) 27 MHz
Pipelined Data
tSA Input Setup Time 12 Add 4 Add 20 ns
52/67
DSM2180F3
INPUT
tER tEA
INPUT TO
OUTPUT
ENABLE/DISABLE
AI02863
RESET/PRESET
INPUT
tARP
REGISTER
OUTPUT
AI02864
CLKIN
tS tH
INPUT
tCO
REGISTERED
OUTPUT
AI02860
CLOCK
tSA tHA
INPUT
tCOA
REGISTERED
OUTPUT
AI02859
53/67
DSM2180F3
PT CLOCK
t IS t IH
INPUT
OUTPUT
t INO
AI03101
54/67
DSM2180F3
tAVQV
ADDRESS
ADDRESS
NON-MULTIPLEXED
VALID
BUS
DATA DATA
NON-MULTIPLEXED VALID
BUS
tSLQV
CSI
tRLQV
tRHQX
tRLRH
RD
tRHQZ
AI04908
55/67
DSM2180F3
56/67
DSM2180F3
tAVWL
ADDRESS
ADDRESS
NON-MULTIPLEXED
VALID
BUS
DATA DATA
NON-MULTIPLEXED VALID
BUS
tSLWL
CSI
tDVWH t WHDX
WR t WLWH
t WHAX
AI04909
57/67
DSM2180F3
Table 41. Flash Memory Program, Write and Erase Times (5V)
Symbol Parameter Min. Typ. Max. Unit
Table 42. Flash Memory Program, Write and Erase Times (3.3V)
Symbol Parameter Min. Typ. Max. Unit
1 3 30 s
Flash Bulk Erase (pre-programmed)
Flash Bulk Erase (not pre-programmed) 5 s
tWHQV3 Sector Erase (pre-programmed) 1 30 s
tWHQV2 Sector Erase (not pre-programmed) 2.2 s
tWHQV1 Byte Program 14 1200 µs
Program / Erase Cycles (per Sector) 100,000 cycles
tWHWLO Sector Erase Time-Out 100 µs
tQ7VQV DQ7 Valid to Output (DQ7-DQ0) Valid (Data Polling)2 30 ns
Note: 1. Programmed to all zero before erase.
2. The polling status, DQ7, is valid tQ7VQV time units before the data byte, DQ0-DQ7, is valid for reading.
t NLNH
t NLNH-PO tOPR tNLNH-A tOPR
Power-On Reset Warm Reset
RESET
AI02866b
58/67
DSM2180F3
tNLNH 1 300 ns
RESET Active Low Time
tNLNH–PO Power On Reset Active Low Time 1 ms
tISCCF Clock (TCK, PC1) Frequency (except for PLD) (Note 1) 18 MHz
tISCCH Clock (TCK, PC1) High Time (except for PLD) (Note 1) 26 ns
tISCCL Clock (TCK, PC1) Low Time (except for PLD) (Note 1) 26 ns
tISCCHP Clock (TCK, PC1) High Time (PLD only) (Note 2) 240 ns
tISCCLP Clock (TCK, PC1) Low Time (PLD only) (Note 2) 240 ns
59/67
DSM2180F3
tISCCF Clock (TCK, PC1) Frequency (except for PLD) (Note 1) 10 MHz
tISCCH Clock (TCK, PC1) High Time (except for PLD) (Note 1) 45 ns
tISCCL Clock (TCK, PC1) Low Time (except for PLD) (Note 1) 45 ns
tISCCHP Clock (TCK, PC1) High Time (PLD only) (Note 2) 240 ns
tISCCLP Clock (TCK, PC1) Low Time (PLD only) (Note 2) 240 ns
TCK
t ISC CL
t ISCP SU t ISC PH
TDI/TMS
t ISCP ZV
t ISCPC O
ISC OUTPUTS/TDO
t ISCP VZ
ISC OUTPUTS/TDO
AI02865
60/67
DSM2180F3
PACKAGE MECHANICAL
D A1
D1 A2 M1
M
1 N
b1
E1 E D2/E2 D3/E3 e
b
L1
L
C
A
CP
PLCC-B
61/67
DSM2180F3
2 PB5 28 PA1
3 PB4 29 PA0
4 PB3 30 AD0
5 PB2 31 AD1
6 PB1 32 AD2
7 PB0 33 AD3
8 PD2 34 AD4
9 PD1 35 AD5
10 PD0 36 AD6
11 PC7 37 AD7
12 PC6 38 VCC
13 PC5 39 AD8
14 PC4 40 AD9
15 VCC 41 AD10
16 GND 42 AD11
17 PC3 43 AD12
62/67
DSM2180F3
D1
D2 A2
Ne E2 E1 E
b
N
1
Nd A
CP
L1
QFP A1 α L
63/67
DSM2180F3
2 PD1 28 AD5
3 PD0 29 AD6
4 PC7 30 AD7
5 PC6 31 VCC
6 PC5 32 AD8
7 PC4 33 AD9
8 VCC 34 AD10
9 GND 35 AD11
10 PC3 36 AD12
11 PC2 37 AD13
12 PC1 38 AD14
13 PC0 39 AD15
14 PA7 40 CNTL0
15 PA6 41 RESET
16 PA5 42 CNTL2
17 PA4 43 CNTL1
18 PA3 44 PB7
19 GND 45 PB6
20 PA2 46 GND
21 PA1 47 PB5
22 PA0 48 PB4
23 AD0 49 PB3
24 AD1 50 PB2
25 AD2 51 PB1
26 AD3 52 PB0
64/67
DSM2180F3
PART NUMBERING
Example: DSM21 80 F3 V - 15 T 6
Device Type
DSM21 = DSP System Memory for ADSP-21XX Family
DSP Applicability
80 = Analog Devices ADSP-218X family
Memory Density
F3 = 1 Mbit x 8 (128K Bytes)
Access Time
90 = 90 nsec
15 = 150 nsec
Package
K = 52-pin PLCC
T = 52-pin PQFP
Temperature Range
6 = –40 to 85oC (Industrial)
For a list of available options (speed, package, device, please contact your nearest ST Sales Of-
etc.) or for further information on any aspect of this fice.
65/67
DSM2180F3
REVISION HISTORY
66/67
DSM2180F3
Information furnished is believed to be accurate and reliable. However, STMicroelectronics assumes no responsibility for the consequences
of use of such information nor for any infringement of patents or other rights of third parties which may result from its use. No license is granted
by implication or otherwise under any patent or patent rights of STMicroelectronics. Specifications mentioned in this publication are subject
to change without notice. This publication supersedes and replaces all information previously supplied. STMicroelectronics products are not
authorized for use as critical components in life support devices or systems without express writt en approval of STMicroelectronics.
67/67