Не совсем понятно, что есть «двухпортовая память».
Наверно разумно говорить: «память должна быть подключена к контроллеру и малине так что бы малине обеспечивался прямой доступ к памяти».
Но зачем?
В большинстве контроллеров есть достаточный объём встроенной памяти что бы организовать буфер для хранения данных пока они не будут переданы малине и достаточное быстродействие что бы успевать передавать накопленные данные через параллельный интерфейс.
То есть логика работы получается такая:
Контроллер в прерываниях обрабатывает события, вычисляет приход события с точностью до 1 одного своего такта, например, используя таймер, полученный результат записывает в буфер организованный в его памяти по принципу FIFO, а в моменты, когда прерываний нет отдаёт малине данные из буфера.
Если данные 8 бит, то потребуется всего 10 линий связи: 0...7=DATA, 8=RD, 9=READY.
Алгоритм передачи например такой:
Малина ставит лог1 на RD и ожидает на READY появление лог1, как только есть такое то считывает данные с линий DATA, сбрасывает RD в лог0 что является сигналом для контроллера перейти к следующей ячейке буфера, как только это сделано READY сбрасывается в лог0, далее процесс повторяется.
Если данных в буфере нет, то линия RD будет установлена в лог1 а линия READY так и будет с уровнем лог0, как только придёт первый же байт данных в буфер то READY будет установлена и данные будут считаны.
Банальные AVR контроллеры обладают быстродействием под 16МГц и даже 20МГц, если и этого мало то можно применить STM32F103R8T6 а это 72МГц, то есть можно фиксировать события с точностью 1/72 000 000 секунды. Если и этого нехватает, то тогда да, потребуется применить DRAM и сделать всё на ПЛИС, тогда можно и 700МГц.
Возможно (зависит от задачи) есть вариант и более простого решения: зачем мучить малину, применять RAM, контроллеры, когда например событие происходит относительно редко — можно обойтись высокочастотным генератором и высокоскоростным счётчиком который засчёлкивается по событию и имеет некий интерфейс (I2C или SPI или параллельный) для считывания результата счёта, достаточно лишь будет по появлению события считывать результат с счетчика, сбрасывать его и далее пусть считает время до события хоть с точностью 1/5000 000 000 секунды (за это время электрический импульс в проводе успеет пробежать лишь 6 сантиметров). Подходящие счётчики можно найти в составе некоторых микросхем синтезаторов частоты.