簡體   English   中英

Systemverilog:不同順序的打包 arrays 之間的分配(向下與向上)

[英]Systemverilog: assignment between packed arrays of different order (downto vs. upto)

假設兩個打包的 arrays (這里: int )具有不同的索引順序(向下與向上)但大小相同,例如

int  a [10:1];
int  b [1:10];

將在這些之間分配,

assign b = a;
  1. 是非法的,或者
  2. 導致“相同索引”分配 (b[1]=a[1]...b[10]=a[10]),或
  3. 導致“鏡像索引”分配(b[1]=a[10]...b[10]=a[1])?

我無法在語言參考手冊中找到信息,並且兩個商業工具的行為不同。

這是合法代碼,您顯示的是未打包的數組,而不是打包的數組。 但是無論哪種方式,范圍都是從左到右。 因此,您的選項 3 是正確的行為。 請參閱IEEE 1800-2017 SystemVerilog LRM中的第6.22.2 節等效類型7.6 數組分配

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM