Перейти к содержанию
    

Потоковые операторы SystemVerilog

Здравствуйте, коллеги

Можно ли считать, что для оператора {<<N{array}} нет никакой разницы что подано ему в качестве аргумента: массив или вектор? Т.е. он проводит конкатенацию над входным массивом (если таковой подан на вход) и меняет его порядок в соответствии с “N”.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 12.11.2023 в 23:34, kirill70674 сказал:

Здравствуйте, коллеги

Можно ли считать, что для оператора {<<N{array}} нет никакой разницы что подано ему в качестве аргумента: массив или вектор? Т.е. он проводит конкатенацию над входным массивом (если таковой подан на вход) и меняет его порядок в соответствии с “N”.

Вы хотели сказать "непакованный массив и пакованный массив"? Вообще-то, разница есть. В непакованном массиве, объявленном традиционным способом (когда младшие по порядку элементы индексируются от 0), такая запись поместит старшие элменты массива (если N равеняется размеру элемента) в старшие биты RHS:

ex2_reverse_the_elements_of_a_byte_array

А для пакованного массива туда попадут младшие биты -- будет изменён порядок следования, как тут:

ex4_reverse_the_nibbles_in_a_byte.svg

только тут по 4 бита упаковка ведётся, но суть ясна.

Картинки и примеры отсюда:

https://www.amiq.com/consulting/2017/05/29/how-to-pack-data-using-systemverilog-streaming-operators/

https://www.amiq.com/consulting/2017/06/23/how-to-unpack-data-using-the-systemverilog-streaming-operators/

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, согласен, хоть этот оператор и векторы и массивы может переварить, разница видна в итоговой индексации. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...