Разработать приемное устройство на языке Verilog
Разработать приемное устройство, осуществляющее прием пакетированных данных.
По получению сигнала load на входную шину последовательно подаются пакеты данных. Формат входных пакетов – 1 байт
номер блока и затем 8 байт данных.
Устройство должно содержать память на 400 байт (50 фрагментов по 8 байт). Необходимо записать полученные данные в
нужную область памяти, в зависимости от номера блока (0-49). Несколько принятых пакетов могут иметь один и тот же
номер.
Пример: входной пакет 22 01 02 03 04 05 06 07 08
Значит не обходимо записать данные 01 02 03 04 05 06 07 08 в память соответствующую фрагменту 22.
По сигналу finish необходимо проверить получены ли все фрагменты хотя бы один раз, если нет сформировать сигнал error.
На отлично: При сигнале ошибки последовательно записать в выходную шину номера непринятых пакетов. Устройство
должно определить список непринятых пакетов не более чем за 50 тактов, а затем
вывести их в выходную шину DOUT. Вывод номеров этих пакетов должна производится
при активном выходном сигнале NUM.
Входные - выходные сигналы на выводах ПЛИС
входные сигналы:
CLK - тактовая частота работы всех синхронных
устройств ПЛИС
LOAD - разрешение записи данных в буфер
DIN ; шина входных данных буфера со стороны внешнего источника (8 бит)
FINISH – загрузка окончена.
выходные сигналы:
DOUT ; выходная шина (??? бит)
ERROR ; сигнал ошибки
NUM; сигнал информирования о пропущенных пакетах
Привести все необходимые комментарии.
Привести структурную схему устройства, с ее описанием.