Dismiss
IP.com applications will be updated on Sunday, March 5, from 11 am to 2 pm ET, to add new functionality and content. You may experience brief service interruptions during this period. We apologize for any inconvenience.
Browse Prior Art Database

MIPS VS. MEMORY FLEXIBILITY

IP.com Disclosure Number: IPCOM000009021D
Original Publication Date: 1999-Jan-01
Included in the Prior Art Database: 2002-Aug-01
Document File: 3 page(s) / 149K

Publishing Venue

Motorola

Related People

Dror Halahmi: AUTHOR [+3]

Abstract

During the process of code optimization, a pro- grammer often deals with the problem of a trade-off between MIPS and memory. The changes in the code can either reduce both MIPS and memory con- sumption, or they can reduce one and use more of the other. This trade-off between MIPS and memo- ry raised a problem: Which one should be preferred? In order to solve this problem, the customer has to define the desired MIPS and memory consump- tion before starting the code optimization process.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 44% of the total text.

Page 1 of 3

MOTOROLA Technical Developments

MIPS VS. MEMORY FLEXIBILITY

by Dror Halahmi, Sharon Ronen and Boris Porotsky

PROBLEM DESCRIPTION can be changed to:

  During the process of code optimization, a pro- mpy x0, y0, a x: (la)+, x0 y: WI+, yo grammer often deals with the problem of a trade-off
between MIPS and memory. The changes in the reducing MIPS and program memory consumption code can either reduce both MIPS and memory con- at the same time. This code change belongs to the sumption, or they can reduce one and use more of first type where there is no trade-off.
the other. This trade-off between MIPS and memo-
ry raised a problem: Which one should be preferred? On the other hand, the code:

  In order to solve this problem, the customer has do #6, -end-loop to define the desired MIPS and memory consump- mat xO,yO,a x: (lo)+, x0 y:W)+, y0 tion before starting the code optimization process. -end-loop

This is used to determine a ration of MIPS per mem- ory, and optimize the code according to it. It is can be changed to: impossible for the customer to change the require-
ments later on (unless the programmer re-writes the mat xO,yO,a x:(ro)+, x0 y:W)+, ~0 code). The whole optimization process suffers from mat xO,yO,a x:(ro)+, x0 y:W)+, ~0 lack of flexibility. mat x%0 x:(ro)+, x0 y:W+, y0 mat xO,yO,a x(ro)+, x0 y:W)+, ~0 This invention solves the problem in a different mat xO,yO,a x:(ro)+, x0 y:W+, YO way which allows the user to determine the MIPS mat x0,yO.a x:(ro)+, x0 y:W+, y0 per memory ration after the optimization is finished,
and after checking all the possibilities. Thus reducing MIPS consumption by five cycles (because "do" instruction consumes 5

INVENTION DESCRIPTION cycles), but increasing memory consumption by 3 words.

  The optimization process requires changes in the code. The code changes can be divided into two The problem does not lie only in program ROM, types. The first type is code change where there is but also in program RAM.
no trade-off between MIPS and memory, because
they are both reduced. The second type is code For example, one of the encoder subroutines in change where the trade-off exists - the new code the GSM Enhanced Full Rate speech transcoder cal- reduces MIPS consumption but requires more mem- culates the members of a matrix A, in which ory and vice versa. A(ij)=A(j,i). One of the ways to do this is calculate

                             A(i.j) and fill up the upper (or lower) triangular For example, the code: only, Another way is to calculate A(ij) and save it in A(j,i)s location too (fill up all the matrix). When

mpy xO,yOa accessing the matrix in the first way, we need to move x: (IO)+, x0 check if i<j and update the pointer accordingly. If move y: (r4)+, y0 we use the second way - the pointer does not change. It is clear that the first way needs more MIPS and the second way requires more data RAM.

0 Motomla. 1°C. ,999 213 January 1999

[This page contains 15 pictures or other non-text objects]

Page 2 of 3

0 M MO-LA

Technical Developmen...