DSPIC30F6010A-30I/PF Microchip Technology Inc., DSPIC30F6010A-30I/PF Datasheet - Page 18

no-image

DSPIC30F6010A-30I/PF

Manufacturer Part Number
DSPIC30F6010A-30I/PF
Description
16 BIT MCU/DSP 80LD 30MIPS 144 KB FLASH
Manufacturer
Microchip Technology Inc.
Type
DSPr
Datasheet

Specifications of DSPIC30F6010A-30I/PF

A/d Inputs
16-Channels, 10-Bit
Cpu Speed
30 MIPS
Eeprom Memory
4K Bytes
Input Output
68
Interface
CAN, I2C, SPI, UART/USART
Ios
68
Memory Type
Flash
Number Of Bits
16
Package Type
80-pin TQFP
Programmable Memory
144K Bytes
Ram Size
8K Bytes
Timers
5-16-bit, 2-32-bit
Voltage, Range
2.5-5.5
Lead Free Status / Rohs Status
RoHS Compliant part

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
DSPIC30F6010A-30I/PF
Manufacturer:
AD
Quantity:
2 100
Part Number:
DSPIC30F6010A-30I/PF
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
DSPIC30F6010A-30I/PF
0
dsPIC30F6010A/6015
2.3
The dsPIC DSC devices feature a 16/16-bit signed
fractional divide operation, as well as 32/16-bit and
16/16-bit signed and unsigned integer divide opera-
tions, in the form of single instruction iterative divides.
The following instructions and data sizes are
supported:
1.
2.
3.
4.
5.
TABLE 2-1:
2.4
The DSP engine consists of a high-speed 17-bit x
17-bit multiplier, a barrel shifter, and a 40-bit adder/sub-
tractor (with two target accumulators, round and
saturation logic).
The dsPIC30F devices have a single instruction flow
which can execute either DSP or MCU instructions.
Many of the hardware resources are shared between
the DSP and MCU instructions. For example, the
instruction set has both DSP and MCU multiply
instructions which use the same hardware multiplier.
The DSP engine also has the capability to perform inher-
ent accumulator-to-accumulator
require no additional data. These instructions are ADD,
SUB and NEG.
The DSP engine has various options selected through
various bits in the CPU Core Configuration register
(CORCON), as listed below:
1.
2.
3.
4.
5.
6.
7.
DS70150B-page 16
DIVF
DIV.sd
DIV.s
DIV.ud
DIV.u
Note:
DIVF – 16/16 signed fractional divide
DIV.sd – 32/16 signed divide
DIV.ud – 32/16 unsigned divide
DIV.s – 16/16 signed divide
DIV.u – 16/16 unsigned divide
Fractional or Integer DSP Multiply (IF).
Signed or Unsigned DSP Multiply (US).
Conventional or Convergent Rounding (RND).
Automatic Saturation On/Off for AccA (SATA).
Automatic Saturation On/Off for AccB (SATB).
Automatic Saturation On/Off for Writes to Data
Memory (SATDW).
Accumulator
(ACCSAT).
Divide Support
DSP Engine
For CORCON layout, see Table 3-3.
Instruction
DIVIDE INSTRUCTIONS
Saturation
mode
operations,
Signed fractional divide: Wm/Wn
Signed divide: (Wm+1:Wm)/Wn
Signed divide: Wm/Wn
Unsigned divide: (Wm+1:Wm)/Wn
Unsigned divide: Wm/Wn
Selection
which
The divide instructions must be executed within a
REPEAT loop. Any other form of execution (e.g., a
series of discrete divide instructions) will not function
correctly because the instruction flow depends on
RCOUNT. The divide instruction does not automatically
set up the RCOUNT value, and it must, therefore, be
explicitly and correctly specified in the REPEAT instruc-
tion, as shown in Table 2-1 (REPEAT will execute the tar-
get instruction {operand value + 1} times). The REPEAT
loop count must be set up for 18 iterations of the DIV/
DIVF instruction. Thus, a complete divide operation
requires 19 cycles.
A block diagram of the DSP engine is shown in
Figure 2-2.
TABLE 2-2:
Note:
Instruction
W0; Rem
MOVSAC
MPY.N
W0; Rem
EDAC
CLR
MAC
MPY
MSC
ED
Function
The divide flow is interruptible. However,
the user needs to save the context as
appropriate.
W0; Rem
W0; Rem
W0; Rem
W1
DSP INSTRUCTION
SUMMARY
W1
© 2006 Microchip Technology Inc.
W1
Algebraic Operation
W1
W1
A = 0
A = (x – y)
A = A + (x – y)
A = A + (x * y)
No change in A
A = x * y
A = – x * y
A = A – x * y
2
2

Related parts for DSPIC30F6010A-30I/PF