假設兩個(編輯:解包) int 陣列被定義為具有不同的索引順序(向下與向上)但大小相同,例如
int a [10:1];
int b [1:10];
將在這些之間進行分配,
assign b = a;
- 是非法的,或
- 導致“相同索引”分配(b[1]=a[1] ... b[10]=a[10]),或
- 導致“鏡像索引”分配(b[1]=a[10] ... b[10]=a[1])?
我一直沒能在語言參考手冊中找到資訊,兩個商業工具的行為不同。
uj5u.com熱心網友回復:
這是合法的代碼,您顯示的是一個未壓縮的陣列,而不是一個壓縮陣列。但是,無論哪種方式,范圍都是從左到右的。所以你的選項 3 是正確的行為。請參閱IEEE 1800-2017 SystemVerilog LRM中的6.22.2 等效型別和7.6 陣列分配部分
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/370119.html
