1 / 7

Operating Phases of the Multiplication/Division Unit (MDU) for Efficient Calculation

This document outlines the operating phases of the Multiplication/Division Unit (MDU). Phase 1 involves loading registers by accessing MDU registers and setting operands. Phase 2 is dedicated to executing calculations by assigning operation codes and starting the calculation process. Finally, Phase 3 describes how to read results from the MRx registers by checking the status and obtaining outputs. Additionally, it includes an example code for unsigned multiplication and division alongside signed multiplication and arithmetic operations, with results stored for debugging.

randi
Download Presentation

Operating Phases of the Multiplication/Division Unit (MDU) for Efficient Calculation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XC878 Product Presentation Multiplication/Division Unit (MDU)

  2. Operating Phases of the MDU • Phase 1: Load Registers - set SYSCON0.RMAP bit to 1 to access MDU register; - set MD0-MD5 to operands value according to type of operation.

  3. Operating Phases of the MDU • Phase 2: Execute calculation - set the desired MDUCON.OPCODE - set MDUCON.RSEL to 1. - set the MDUCON.START bit to start calculation

  4. Operating Phases of the MDU • Phase 3: Read result from the MRx registers - check the MDUSTAT.BSY is 0 which indicate calculation is finished - set the MDUCON.RSEL to 0 to read out the result from MRx register.

  5. Sample code of MDU_01 example • A subroutine for unsigned 16-bit multiplication in MDU_01 example.

  6. MDU_Example HOT • In the MDU_01 example, the main.c will do unsigned 16bit multiplication, unsigned 32bit division, signed 16bit multiplication and Arithmetic right shift. The result obtained will stored in bb, aa, cc and dd respectively, which could be observed using the debugger.

More Related