Механизм буфера сдвига и расхождение в битовой ширине - PullRequest
0 голосов
/ 24 сентября 2018

Для https://github.com/KastnerRG/riffa/blob/master/fpga/riffa_hdl/fifo_packer_128.v#L113, имеет ли смысл иметь 224 бит для сигнала ' rPackedData '?

Кроме того, у кого-нибудь есть какие-либо идеи относительноследующий сегмент кода, который ИЛИ вместе сдвинутые данные?Разве это не должно быть И вместо этого?

_rPackedData = ((rPackedData>>(32*{rPackedCount[2], 2'd0})) | (rDataMasked<<(32*rPackedCount[1:0])));

1 Ответ

0 голосов
/ 24 сентября 2018

есть идеи относительно следующего сегмента кода, который ИЛИ вместе сдвинутые данные?Разве это не должно быть И вместо этого?

Левая половина этого выражения сдвигает сохраненные данные OUT , обнуляя некоторые старшие биты.Правая половина сдвигает IN новые данные, помещая их в требуемую позицию в более высокой части буфера и заполняя младшие биты нулем.Чтобы получить обновленное содержимое буфера, вам нужно ИЛИ обе половины выражения.Если вы попытаетесь И , вы получите полностью обнуленный буфер, поскольку действительные данные из левой и правой половин выражения не перекрываются.

...