User’s Manual, V 1.0, August 2001 C 1 6 6 S V 1 M u l t i p l y - A c c u m u l a t e U n i t C166S V1 MAC Microcontrollers N e v e r s t o p t h i n k i n g . Edition 2001-08 Published by Infineon Technologies AG, St.-Martin-Strasse 53, D-81541 München, Germany © Infineon Technologies AG 2001. All Rights Reserved. Attention please! The information herein is given to describe certain components and shall not be considered as warranted characteristics. Terms of delivery and rights to technical change reserved. We hereby disclaim any and all warranties, including but not limited to warranties of non-infringement, regarding circuits, descriptions and charts stated herein. Infineon Technologies is an approved CECC manufacturer. Information For further information on technology, delivery terms and conditions and prices please contact your nearest Infineon Technologies Office in Germany or our Infineon Technologies Representatives worldwide (see address list). Warnings Due to technical requirements components may contain dangerous substances. For information on the types in question please contact your nearest Infineon Technologies Office. Infineon Technologies Components may only be used in life-support devices or systems with the express written approval of Infineon Technologies, if a failure of such components can reasonably be expected to cause the failure of that life-support device or system, or to affect the safety or effectiveness of that device or system. Life support devices or systems are intended to be implanted in the human body, or to support and/or maintain and sustain and/or protect human life. If they fail, it is reasonable to assume that the health of the user or other persons may be endangered. User’s Manual, V 1.0, August 2001 C 1 6 6 S V 1 M u l t i p l y - A c c u m u l a t e U n i t C166S V1 MAC Microcontrollers N e v e r s t o p t h i n k i n g . C166S V1 MAC Revision History: 2001-08 V 1.0 Previous Version: - - Page Subjects (major changes since last revision) We Listen to Your Comments Any information within this document that you feel is wrong, unclear or missing at all? Your feedback will help us to continuously improve the quality of this document. Please send your proposal (including a reference to this document) to: [email protected] User’s Manual C166S V1 MAC Unit Table of Contents Page 1 MAC Unit Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Enhanced Addressing Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Multiply-Accumulate Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Program Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 MAC Unit Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1 Instruction Pipelining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Address Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3 CoReg Addressing Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4 Number Representation and Rounding . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3 MAC Unit Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.1 16 x 16 Signed/Unsigned Parallel Multiplier . . . . . . . . . . . . . . . . . . . . . . 10 3.2 Concatenation Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.3 Sign Extension Unit and Scaler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.4 40-bit Signed Arithmetic Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.5 40-bit Signed Accumulator Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.6 Data Limiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.7 Accumulator Shifter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.8 Repeat Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4 MAC Unit Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5 MAC Unit Register Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5.1 MAC Unit Address Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 5.2 Accumulator Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3 MAC Unit Status Word (MSW) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.4 MAC Unit Control Word (MCW) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5.5 MAC Unit Repeat Word (MRW) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 6 MAC Unit Instruction Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.2 List of MAC Unit Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 7 Instruction Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 8 Keyword Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 C166S V1 MAC, User’s Manual I-1 V1.0, 2001-08 User’s Manual C166S V1 MAC Unit C166S V1 MAC, User’s Manual I-2 V1.0, 2001-08 User’s Manual C166S V1 MAC Unit List of Tables Page Table 1 Pointer Post-modification Combinations for IDXi and Rwn . . . . . . . . . . 7 Table 2 Parallel Data Move Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Table 3 CoReg 5-bit Addressing Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Table 4 Data Limiter Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Table 5 MAC Unit Instruction Set Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . 29 C166S V1 MAC, User’s Manual II-1 V1.0, 2001-08 User’s Manual C166S V1 MAC Unit C166S V1 MAC, User’s Manual II-2 V1.0, 2001-08 User’s Manual C166S V1 MAC Unit MAC Unit Features 1 MAC Unit Features The Multiply-Accumulate (MAC) Unit is a specialized co-processor added to the C166S CPU core to improve the performance of signal processing algorithms. It includes: (cid:127) a multiply-accumulate unit (cid:127) an address generation unit capable of feeding the MAC Unit with 2 operands per cycle (cid:127) a repeat unit to execute a series of multiply-accumulate instructions The architecture of the MAC Unit is outlined in (cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6) (cid:7). C166S V1 MAC, User’s Manual -3- V1.0, 2001-08 User’s Manual C166S V1 MAC Unit MAC Unit Features 16-bit Input Operands Concatenation Signed/Unsigned Unit Multiplier 16-bit 32-bit 40-bit Mux Sign Extend ACCU 1-bit Scaler Shifter 0h 08000h 0h Mux Mux (cid:11)(cid:7)(cid:29)(cid:29)(cid:26)(cid:8)(cid:11)(cid:30)(cid:12) (cid:9)(cid:28)(cid:27) Repeat Unit A B 40-bit Signed Arithmetic Unit (cid:17)(cid:13)(cid:14)(cid:6)(cid:5)(cid:5)(cid:4)(cid:18)(cid:14) (cid:11)(cid:19)(cid:13)(cid:14)(cid:5)(cid:19)(cid:20)(cid:20)(cid:6)(cid:5) (cid:9)(cid:11)(cid:27) (cid:1)(cid:20)(cid:24)(cid:3)(cid:25) (cid:9)(cid:10)(cid:23) (cid:9)(cid:10)(cid:21) (cid:9)(cid:10)(cid:22) (cid:9)(cid:26)(cid:27) Control Unit Data Limiter (cid:9)(cid:10)(cid:26) (cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6) (cid:7) (cid:8)(cid:9)(cid:10)(cid:11)(cid:8)(cid:12)(cid:13)(cid:2)(cid:14)(cid:8)(cid:10)(cid:5)(cid:15)(cid:16)(cid:2)(cid:14)(cid:6)(cid:15)(cid:14)(cid:4)(cid:5)(cid:6) C166S V1 MAC, User’s Manual -4- V1.0, 2001-08
Description: