Другие виды массивов
Помимо статических и динамических массивов в SystemVerilog поддерживаются ассоциативные массивы и очереди. На момент написания данного пособия они не поддерживаются в полной мере в Icarus Verilog 12.0 (devel), поэтому кратко обозначим их предназначение и потенциальные возможности без примеров.
Ассоциативный массив реализует таблицу поиска элементов его объявленного типа. Тип данных, который будет использоваться в качестве индекса, служит ключом поиска. К ним могут применяться функции поиска по ключу элемента, извлечение значения по ключу, перемещение по списку в зависимости от значения ключа, получение размера ключа и удаление всего массива.
Очередь представляет собой массив с доступом к элементам вида «первый пришёл – первый вышел» (FIFO, first in, first out), который может иметь переменный размер для хранения элементов одного и того же типа данных. Ими также можно управлять с помощью операторов индексации, конкатенации и нарезки.
Last updated