Товарищ описал гипотетическую задачу, хотелось бы услышать советы опытных hardware-мастеров о методах реализации.
Есть некоторая микросхема, у которой 16 выводов, каждый вывод может находиться в состоянии 0 или 1 (проверка по пороговым значениям). Вывода меняют свое состояние с частотой 100MHz. Необходимо получить на компьютере (в виде массива bool языка программирования или файла – как угодно) выходные данные со схемы.
Очень важно, что бы ни одно значение не потерялось (например, снимаем в течение одной секунды - имеем массив 16 * 100 * 10^6 bool значений (или эквивалент)).
Интересует, как такое можно реализовать?
Например, что-то вроде: к микросхеме подводится какой-то контроллер, который передает данные в машину по thernet/usb/fire-wire? Далее программа на C использует библиотеку для захвата.
Или: есть такая-то платка, можно купить, она может захватить цифровой поток с этой частотой. И у нее есть либа для взаимодействия со сторонним софтом, или своя софтина для записи этого дела в файл.
P.S. Мопед не мой, я только размещаю объявление, но мне задача тоже любопытна в общем смысле – буду благодарен за терпеливые ответы опытных мастеров.
UPDATE 1: В задаче так же есть временные ограничения - нет необходимости захватывать поток бесконечно-долго. Хочется понять, как долго его можно захватывать при некоторой реализации.