A sound engine that takes reasonably little CPU time to execute could be made to run at more than the original 60/50Hz by either using a mapper with an IRQ counter (such as the MMC3) to make sure the engine runs were distributed evenly so that the sound updates could also happen with the same amount of time passing inbetween two.
Or you could perhaps sacrifice the DPCM channel and make use of its IRQ functionality by playing a dummy sample with $00 bytes at different speeds and lengths to give you the update rate you desire.
The noisenote thing by the way is exactly how digital audio is made. They update a register corresponding to a signal level at really high rates with the CPU. This is how Battletoads gets some of its drums and punch effects, and Skate or Die 2 uses a fairly low quality guitar sound. It could also be done with N163 channels by using a sample of all steps being 15. Then your volume would be the signal level. The 5B squares can also be set to a constant level-mode where the current volume is output instead of a square/noise/envelope messing with the sound.