Кто что посоветует для реализации прогрессивного DMA контроллера.
Что есть :
1. 1 базовый адрес (аппаратные трансферы до 4к)
2. Управляемые берсты 0-16 DWORD и часло DWORD для закачки, статус
3. Read/Write транзакции
Что придумал или нужно.
1. Прерывание по завершению закачки.
2. 8 базовых регистров (аппаратные трансверы до 32к)
3. 2 ядра (для безостановочной работы) т.е. пока одно ядро далает трансфер, второе ядро подготавливается к трансферу.
Хотел сделать Разбор MDL на аппаратном уровне, но для этого требуется отдельно выкачивать списки страниц, что приводит к накладным расходом весьма вероятно больших, т.е. PCI 133 мегагерцовый а кристалл FPGA 250 мегагерцовый.
Какие идеи?