This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Signal conditioning - division by zero - solution

There is a logarithmic rule:

log_a (b) + log_a (c) = log_a ( b * c)

log_a (b) - log_a (c) = log_a ( b / c)

If

log_10(10) = 1

log_10(0) = - infinity

then 10/0 =  10 ^ (1 - (-infinity)) = 10 ^ (1 + infinity) = 10 ^ infinity =  infinity

So, I hope all TI's algebraic logic is adjusted to behave in conditions of division by zero as an infinity, and not as an error.

Regards,

Alexey Bagaev

  • What exactly do you mean with "TI's algebraic logic"? The MSP430 CPU does not have division; the MSP432 behaves as prescribed by ARM.
  • Is your question is a form of subscription to that discussion? Should I describe all my grammar semantic explicitly? (There is always a way to see it in wiki description what does it mean 'algebraic logic' and what problem exists with 'division by zero').

  • Wiki : "In computing, a program error may result from an attempt to divide by zero. Depending on the programming environment and the type of number (e.g. floating point, integer) being divided by zero, it may generate positive or negative infinity by the IEEE 754 floating point standard, generate an exception, generate an error message, cause the program to terminate, result in a special not-a-number value, a freeze via infinite loop, or a crash."
  • By the way,
    0 ^ n = 0,
    but
    n ^ 0 = 1,
    so even
    0 ^ 0 = 1.
    Without this simple axiom in algebraic logic non of currently avalable digital computers can work properly.

  • To expand on my earlier answer: How floating-point computations behave on the MSP430 depends on whatever library is used to emulate them. All the default ones conform to IEEE 754 (ISO 60559). The MSP432 hardware also conforms to IEEE 754.

    IEEE 754 requires that division by zero is treated as an error, but if exception traps are disabled, the result is ±infinity or NaN.
  • Hmm, you are trying to put my perspective on MSP430 hardware, which is a false direction, but the behavior in computation of division by zero is affected many libraries, compilers and so on. Despite MSP432 and TMS320 floating-point hardware works properly in such situation, the software implementation for the same architecture doesn't yield the same result. Hope this clarify.

  • One more thing, I love MSP430FR599x hardware very much as a platform to do amazing things. But there are some minor issues that still need to evolve to a new product. (And I still don't understand 'relationship' between MPY32 and DMA, - using them concurrently can cause halting both).

**Attention** This is a public forum