DatasheetQ Logo
Electronic component search and free download site. Transistors,MosFET ,Diode,Integrated circuits

DSPIC33FJ128GP706AI View Datasheet(PDF) - Microchip Technology

Part Name
Description
Manufacturer
DSPIC33FJ128GP706AI
Microchip
Microchip Technology 
DSPIC33FJ128GP706AI Datasheet PDF : 350 Pages
First Prev 71 72 73 74 75 76 77 78 79 80 Next Last
dsPIC33FJXXXGPX06A/X08A/X10A
can operate on any W register pointer. However, it is not
advisable to use W14 or W15 for Modulo Addressing
since these two registers are used as the Stack Frame
Pointer and Stack Pointer, respectively.
In general, any particular circular buffer can only be
configured to operate in one direction as there are
certain restrictions on the buffer start address (for incre-
menting buffers), or end address (for decrementing
buffers), based upon the direction of the buffer.
The only exception to the usage restrictions is for
buffers which have a power-of-2 length. As these
buffers satisfy the start and end address criteria, they
may operate in a bidirectional mode (i.e., address
boundary checks will be performed on both the lower
and upper address boundaries).
4.4.1 START AND END ADDRESS
The Modulo Addressing scheme requires that a starting
and ending address be specified and loaded into the
16-bit Modulo Buffer Address registers: XMODSRT,
XMODEND, YMODSRT and YMODEND (see
Table 4-1).
Note:
Y space Modulo Addressing EA
calculations assume word sized data (LSb
of every EA is always clear).
The length of a circular buffer is not directly specified. It
is determined by the difference between the
corresponding start and end addresses. The maximum
possible length of the circular buffer is 32K words
(64 Kbytes).
4.4.2
W ADDRESS REGISTER
SELECTION
The Modulo and Bit-Reversed Addressing Control
register, MODCON<15:0>, contains enable flags as well
as a W register field to specify the W Address registers.
The XWM and YWM fields select which registers will
operate with Modulo Addressing. If XWM = 15, X RAGU
and X WAGU Modulo Addressing is disabled. Similarly, if
YWM = 15, Y AGU Modulo Addressing is disabled.
The X Address Space Pointer W register (XWM), to
which Modulo Addressing is to be applied, is stored in
MODCON<3:0> (see Table 4-1). Modulo Addressing is
enabled for X data space when XWM is set to any value
other than ‘15’ and the XMODEN bit is set at
MODCON<15>.
The Y Address Space Pointer W register (YWM) to
which Modulo Addressing is to be applied is stored in
MODCON<7:4>. Modulo Addressing is enabled for Y
data space when YWM is set to any value other than
15’ and the YMODEN bit is set at MODCON<14>.
FIGURE 4-7:
Byte
Address
0x1100
0x1163
MODULO ADDRESSING OPERATION EXAMPLE
MOV
#0x1100, W0
MOV
W0, XMODSRT ;set modulo start address
MOV
#0x1163, W0
MOV
W0, MODEND
;set modulo end address
MOV
#0x8001, W0
MOV
W0, MODCON
;enable W1, X AGU for modulo
MOV
#0x0000, W0 ;W0 holds buffer fill value
MOV
#0x1110, W1 ;point W1 to buffer
DO
AGAIN, #0x31
MOV
W0, [W1++]
AGAIN: INC W0, W0
;fill the 50 buffer locations
;fill the next location
;increment the fill value
Start Addr = 0x1100
End Addr = 0x1163
Length = 0x0032 words
© 2011 Microchip Technology Inc.
DS70593C-page 73

Share Link: 

datasheetq.com  [ Privacy Policy ]Request Datasheet ] [ Contact Us ]