FIFO – ключевая концепция в хардварном дизайне. Понимание работы FIFO необходимо, в частности, для понимания протокола valid/ready, который в свою очередь необходим для организации flow-control как внутри цифровых блоков так и на межблочном уровне.
К сожалению по данной тематике очень мало литературы. Да и что говорить, микроархитектурные концепции достаточно сложно освоить по книгам. Понимание данных концепций это по сути выработка хардварной интуиции приходящая с практикой.
Микроархитектурный тренажер дает возможность «прощупать» хардварные сценарии в пошаговом (интерактивном) режиме, предоставляя детальную визуализацию цифровой логики.
Поскольку тренажер является "фронтендом" для HDL симулятора то на самом симуляторе исполняется реальный, синтезируемый SystemVerilog который можно посмотреть и даже поменять его функциональность.
Видео разбора FIFO на микроархитектурном тренажере здесь:
Ссылка где можно прочитать как устроен тренажер и как его установить здесь:
В тренажер будут добавляться новые сценарии. В скоре будут добавлены сценарии по отработке протокола valid/ready, а так же сценарии рассматривающие другие элементы организации flow-control (fifo, skid-буфферы, credit-counters, регистры, конвейеры).
Не забудьте подписаться, комменты и обсуждения приветствуются.