Hi
You can use a GPIO to generate a DMA transfer request on any edge. A DMA channel can copy the 8 bits of data from the FlexBus to internal SRAM. 600kByte/s is a low load for this.
Below is how it is configured in the uTasker project (example of reading to a 1k circular RAM buffer on each falling edge of PTB16). Optionally an interrupt can be triggered each time the circular buffer is half-full or when it circles back. The code can be used on any Kinetis processor with DMA (compatible with Cortex M4 and M0+ parts).
static unsigned char ucInputBuffer[1024];
INTERRUPT_SETUP interrupt_setup;
interrupt_setup.int_type = PORT_INTERRUPT;
interrupt_setup.int_handler = 0;
interrupt_setup.int_port = PORTB;
interrupt_setup.int_port_bits = PORTB_BIT16;
interrupt_setup.int_port_sense = (IRQ_FALLING_EDGE | PULLUP_ON | PORT_DMA_MODEL);
fnConfigDMA_buffer(9, DMAMUX0_CHCFG_SOURCE_PORTB, (sizeof(ucInputBuffer)), EXTERNAL_ADDRESS, ucInputBuffer, (DMA_DIRECTION_INPUT | DMA_BYTES), 0, 0);
fnConfigureInterrupt((void *)&interrupt_setup);
Regards
Mark
http://www.utasker.com/kinetis/TWR-K65F180M.html