MA31750 - Application Note 15 AN4058 MA31750 - Pipelining Instructions On The MA31750 Application Note Replaces July 2000 version, AN4058-2.0 An4058-2.1 July 2002 When analysing the behaviour of the MA31750, the pipelining of instructions must be considered. 1.0 PIPELINING INSTRUCTIONS 2.0 PIPELINING ON THE MA31750 Instructions are pre-fetched from system memory and are stored in the pipeline of the processor. They are then pulled from the pipeline to be executed. Whilst the instructions are being executed, the pipeline has emptied and the pre-fetch of the next instruction can take place. This pre-fetch is limited to times when the system address and data busses are free as it utilises these busses to access the system memory. See Figure 1. The pipeline on the MA31750 always holds 2 16-bit words. If the instruction being executed is a single word instruction, then only one word has been removed from the pipeline. The second word in the pipeline moves up to the first position and one extra word is pre-fetched from system memory. If the instruction being executed is a double word instruction, then the pipeline has emptied and two pre-fetches are necessary to fill it up again. Occasionally the pipeline needs emptying and reloading, eg. after initialisation or after an interrupt service routine or if a branch or jump is executed. This will take 2 machine cycles dedicated to pre-fetching the new pipeline. Execution can then resume. cycle no. 1 2 3 4 5 6 7 8 9 A[0:15] 0000 0001 0002 0003 0004 0005 0006 4000 0007 D[0:15] E500 8510 FFFF 4000 E511 E500 FFFF E522 9010 Figure 1: Example of Operation 3.0 EXAMPLE Figure 1 shows the address and data busses for the following code: 0000 0001 0003 0005 0006 0007 E500: 8510 FFFF: 9010 4000: E511: E500: E522: XORR R0, LIM R1, ST R1, XORR R1, XORR R0, XORR R2, R0 FFFF 4000 R1 R0 R2 Again, the pipeline contains a double word instruction, so cycles 6 and 7 are both needed to refill the pipeline. However, the store instruction needs to use the external address and data busses. This is done on cycle 8 after the pre-fetches have finished. Once the store has completed, the next instruction is executed. This is a single word instruction (XORR), hence cycle 9 is used for the pre-fetch, as the exor instruction is executed internally. Cycles 1 and 2 are used to fill the pipeline. No instruction execution occurs. On cycle 3, the XORR instruction is taken from the pipeline and the registers are exor'ed internally. At the same time, the data from address 0002 is loaded into the pipeline. The next instruction in the pipeline is a double word instruction, therefore cycles 4 and 5 are both needed to refill the pipeline. Whilst the data from addresses 0004 and 0005 are being pre-fetched, register 1 is loaded across internal busses with data FFFF. 1/2 POWER ASSEMBLY CAPABILITY The Power Assembly group was set up to provide a support service for those customers requiring more than the basic semiconductor, and has developed a flexible range of heatsink and clamping systems in line with advances in device voltages and current capability of our semiconductors. We offer an extensive range of air and liquid cooled assemblies covering the full range of circuit designs in general use today. The Assembly group offers high quality engineering support dedicated to designing new units to satisfy the growing needs of our customers. Using the latest CAD methods our team of design and applications engineers aim to provide the Power Assembly Complete Solution (PACs). HEATSINKS The Power Assembly group has its own proprietary range of extruded aluminium heatsinks which have been designed to optimise the performance of Dynex semiconductors. Data with respect to air natural, forced air and liquid cooling (with flow rates) is available on request. For further information on device clamps, heatsinks and assemblies, please contact your nearest sales representative or Customer Services. http://www.dynexsemi.com e-mail: [email protected] HEADQUARTERS OPERATIONS DYNEX SEMICONDUCTOR LTD Doddington Road, Lincoln. Lincolnshire. LN6 3LF. United Kingdom. Tel: +44-(0)1522-500500 Fax: +44-(0)1522-500550 CUSTOMER SERVICE Tel: +44 (0)1522 502753 / 502901. Fax: +44 (0)1522 500020 SALES OFFICES Benelux, Italy & Switzerland: Tel: +33 (0)1 64 66 42 17. Fax: +33 (0)1 64 66 42 19. France: Tel: +33 (0)2 47 55 75 52. Fax: +33 (0)2 47 55 75 59. Germany, Northern Europe, Spain & Rest Of World: Tel: +44 (0)1522 502753 / 502901. Fax: +44 (0)1522 500020 North America: Tel: (613) 723-7035. Fax: (613) 723-1518. Toll Free: 1.888.33.DYNEX (39639) / Tel: (949) 733-3005. Fax: (949) 733-2986. These offices are supported by Representatives and Distributors in many countries world-wide. © Dynex Semiconductor 2002 TECHNICAL DOCUMENTATION – NOT FOR RESALE. PRODUCED IN UNITED KINGDOM Datasheet Annotations: Dynex Semiconductor annotate datasheets in the top right hard corner of the front page, to indicate product status. The annotations are as follows:Target Information: This is the most tentative form of information and represents a very preliminary specification. No actual design work on the product has been started. Preliminary Information: The product is in design and development. The datasheet represents the product as it is understood but details may change. Advance Information: The product design is complete and final characterisation for volume production is well in hand. No Annotation: The product parameters are fixed and the product is available to datasheet specification. This publication is issued to provide information only which (unless agreed by the Company in writing) may not be used, applied or reproduced for any purpose nor form part of any order or contract nor to be regarded as a representation relating to the products or services concerned. No warranty or guarantee express or implied is made regarding the capability, performance or suitability of any product or service. The Company reserves the right to alter without prior notice the specification, design or price of any product or service. Information concerning possible methods of use is provided as a guide only and does not constitute any guarantee that such methods of use will be satisfactory in a specific piece of equipment. It is the user's responsibility to fully determine the performance and suitability of any equipment using such information and to ensure that any publication or data used is up to date and has not been superseded. These products are not suitable for use in any medical products whose failure to perform may result in significant injury or death to the user. All products and materials are sold and services provided subject to the Company's conditions of sale, which are available on request. All brand names and product names used in this publication are trademarks, registered trademarks or trade names of their respective owners. www.dynexsemi.com