| 数据搜索系统,热门电子元器件搜索 |
|
DSPIC30F2010 数据表(PDF) 18 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
DSPIC30F2010 数据表(HTML) 18 Page - Microchip Technology |
|
18 / 236 page ![]() dsPIC30F6010A/6015 DS70150C-page 16 © 2007 Microchip Technology Inc. 2.3 Divide Support 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. DIVF – 16/16 signed fractional divide 2. DIV.sd – 32/16 signed divide 3. DIV.ud – 32/16 unsigned divide 4. DIV.s – 16/16 signed divide 5. DIV.u – 16/16 unsigned divide 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. TABLE 2-1: DIVIDE INSTRUCTIONS 2.4 DSP Engine 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 operations, which 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. Fractional or Integer DSP Multiply (IF). 2. Signed or Unsigned DSP Multiply (US). 3. Conventional or Convergent Rounding (RND). 4. Automatic Saturation On/Off for AccA (SATA). 5. Automatic Saturation On/Off for AccB (SATB). 6. Automatic Saturation On/Off for Writes to Data Memory (SATDW). 7. Accumulator Saturation mode Selection (ACCSAT). A block diagram of the DSP engine is shown in Figure 2-2. Note: The divide flow is interruptible. However, the user needs to save the context as appropriate. Instruction Function DIVF Signed fractional divide: Wm/Wn → W0; Rem → W1 DIV.sd Signed divide: (Wm+1:Wm)/Wn → W0; Rem → W1 DIV.s Signed divide: Wm/Wn → W0; Rem → W1 DIV.ud Unsigned divide: (Wm+1:Wm)/Wn → W0; Rem → W1 DIV.u Unsigned divide: Wm/Wn → W0; Rem → W1 Note: For CORCON layout, see Table 3-3. TABLE 2-2: DSP INSTRUCTION SUMMARY Instruction Algebraic Operation CLR A = 0 ED A = (x – y)2 EDAC A = A + (x – y)2 MAC A = A + (x * y) MOVSAC No change in A MPY A = x * y MPY.N A = – x * y MSC A = A – x * y |
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |