For the tachometer I think you need code that produces a regular stream of pulses at different intervals based on a value stored in a variable. And another separate piece of code that measures the gap (interval) between the incoming pulses and produces the stored value based on the simple formula outGoingInterval = inComingInterval * 6 / 4. I think you can use pulseIn() to measure the interval between the incoming pulses.
Edit to change "width" to "interval"
...R