Pulse Position Modulation - This is a communication modulation scheme used to improve power and/or bandwidth efficency. The basic idea is simple: Make the position of a pulse within a window meaningful and interpret it to mean a specific bit was sent.

For instance, let's pretend that we have a simplistic scheme where we want to communicate with our buddy across the street using flashlights. We use binary and agree to send a flash once a second (on for 1, off for 0). This is works fine but it's pretty slow (the messsage: "I hate my sister" for instance takes so long to send that she's just not worth the effort. In order to send more information, you and your buddy have two options, increase the clock rate (send flashes 10 time a second) or use PPM.

In PPM, we divide the time interval (in this case 1 second) into some number of slots, say 8 (each 1/8th of a second long). You and your friend can now communicate in oct-ary (or whatever you call base 8 communication). There are 8 different choices per second that could be sent which means it's like 8 bits being sent per second (one byte/second).

This is a pretty simplistic model but the idea is the same for much more complex systems. Folks have come up with lots of different variations on the idea of PPM including some called, Multiple PPM (MPPM), Combinatorial PPM (CPPM), Overlapping PPM (OPPM), and Differential PPM (DPPM).