ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 апреля
838873 Топик полностью
Evgeny_CD, Архитектор (08.05.2018 23:52, просмотров: 298) ответил fk0 на Всю вундерваффе повыкидывать, примотать синей изолентой обычный управляемый ethernet-свитч и в него всё воткнуть.
Фундаментальная ошибка. http://caxapa.ru/838869.html
http://caxapa.ru/767218.html
Нам над решить 2 задачи: 1) минимальная латентность 2) дублирование в стиле PRP Parallel Redundancy Protocol -> Switch удвоит время передачи пакета от памяти периферийного модуля до памяти хоста. Хост имеет FPGA, у которой либо набортная память, либо ZBT http://caxapa.ru/830111.html. Интересные для этого FPGA разобраны там --> За $120 Lattice ECP3 можно такого монстра выбрать! Ну или Spartan-7 - кому что нравится (7-ка будет быстрее и экономичнее, но меньше IO, и у ECP3 за $120 будет 12 3GBps трансиверов!) PHY подключены к FPGA, и пакеты сразу попадают в BRAM или ZBT. После завершения "попадания в память" они тут же начинают передаваться на хост по быстрой шине. Например, Renesas RZ/A1 имеют 32 битную шину 66 МГц 2 такта на транзакцию, что дает 133 МБайт/сек. STM32H7 имеет 16 битную, но 100 МГц шину, 2/3 такта транзакция, но есть burt - будет то же самое. Софткор в FPGA или внешний управляющий процессор (Nuvoton M480 будет идеальным кандидатом http://caxapa.ru/833651.html ) отбрасывают дубли PRP, или рожают их при передаче, и никакие ресурсы хоста на это не тратятся. Это крайне важный момент! Да, тот же софткор может формировать достаточно большие пакеты для хоста, из сгруппированных по смыслу маленьких пакетиков, что также повысит эффективность. Сложных функций коммутации пакетов у нас нет - полноценный switch не нужен! Так что switch - лишнее.