В чем разница между reg [7: 0] a [3: 0] и reg [7: 0] a [0: 3] - PullRequest
0 голосов
/ 25 августа 2018

До сих пор я изучал verilog HDL reg [7: 0] a [0: 3] означает массив из 4 a's , и каждый a имеет 8 бит шириной как

00110011
01000011
00010011
10000011

я прав? тогда что означает reg [7: 0] a [3: 0] ?

Ответы [ 2 ]

0 голосов
/ 25 августа 2018

Нет никакой разницы между этими двумя, если все, что вы делаете, это обращаетесь к массиву по одному элементу за раз.Существует разница, когда вы выполняете операции над массивом в целом.В Verilog единственные операции, которые включают это $readmemh / $writememh или доступ через интерфейс C VPI.

В SystemVerilog есть много других операций, на которые может повлиять упорядочение, например приведение массива к32-разрядное целое числоЛевый индекс становится старшим байтом.

0 голосов
/ 25 августа 2018

Это то же самое, порядок номера может быть либо по возрастанию, либо по убыванию.итак:

reg [7:0] a [0:3] = reg [7:0] a [3:0]

Ссылка: https://www.verilogpro.com/verilog-arrays-plain-simple/

...