Hawk Logo

Hawk Software

Programming, web design, and more

Recent Posts

Category

Archives

Meta

Real posts 64, spam 1860, and a fixed point conversion update

Programming, Speech/Voice Compression Comments Off

Whew!  Just got done reviewing posts to weed out the real ones from the spam.  The amount of spam has greatly increased over the last week, and out of 70 posts since yesterday there was ONE real post.  Or, at least, it was not obviously spam!

I know some are waiting for the rest of the floating point to fixed point series, and I am sorry that it is taking a lot more time than I anticipated.  Read the rest of this entry »

Floating point to fixed point code conversion – Part 3: Using macros to bridge the conversion process

Programming, Speech/Voice Compression 5 Comments

Be sure to read Part 1 for an introduction to fixed point math, and Part 2 for guidelines in preparing your floating point code for conversion to fixed point.

I begin the conversion process by adding these macros to the source files to emulate the fixed point math functions which will be used later:

#define fixed32         float
#define ftofix32(x)     ((float)(x))  /* float value to fixed */
#define itofix32(x)     ((float)(x))  /* integer value to fixed */ Read the rest of this entry »

What I’m Reading

Network, Programming, Speech/Voice Compression Comments Off

OK, so I needed a filler while I finalize changes to the next installment to the floating-to-fixed point series ;)   But hey, this is all good, if not varied, information.

Floating point to fixed point code conversion – Part 2: Preparing your code

Programming, Speech/Voice Compression 2 Comments

See Part 1 for an introduction to fixed point code, and the reasons you may need to use it.

Starting off with clean, fully debugged, fully functional, and stable floating point code is a must. Fixed point code can be harder to interpret, so you do not want to be modifying the converted code every time you correct or add a feature to the original code. It is even better to start off with code that has not been heavily hand-optimized since it will be easier to understand and convert. Of course, make sure your algorithms are efficient and you are not doing something stupid like scanning through arrays non-sequentially and getting a ton of cache misses ;) Read the rest of this entry »

Floating point to fixed point code conversion – Part 1: Introduction

Programming, Speech/Voice Compression Comments Off

Mobile apps are HOT, and you may have thought about entering this expanding market yourself. Whether you want to target smart phones or other handheld devices, the chances are the CPU used will be based on the ARM core, and to reduce power consumption it will not include floating point hardware.

Most developers take it for granted that floating point hardware will always be there, and they only target modern PCs then it is true. But when dealing with embedded processors it is like stepping back in time to before Intel added a floating point core directly into the 80486 CPU, and floating point hardware was reserved for expensive workstations. Read the rest of this entry »