Data aquisition with arduino Due

I'll summarize what I learned from the blog below:
The running theory is that it is a bug in the core arduino code or for some unknown reason a decision to run the ADC slow. The STARTUP and SETTLING bits in the mode register are set, possibly erroneously to values that make the ADC channels run quite slow. One statement to directly change the STARTUP and SETTLING bits is below

REG_ADC_MR = (REG_ADC_MR & 0xFFF0FFFF) | 0x00020000;

Put that in your setup() function and it reduces the time to execute an analogRead from 40uS to about 4uS.

Here is the blog article:

Additionally this thread gave me a good idea of how to setup DMA but I didn't have time to figure out how to broaden it for multiple analog inputs and channels. I could easily enable the other channels but it wasn't clear how to configure DMA to support organizing the data from the other channels where you want it.

http://forum.arduino.cc/index.php?topic=137635.0