Apakah saya dapat mengubah arah sedikit-vektor di Verilog?

O

omara007

Guest
Hi folks

Dapatkah saya mengubah arah sedikit yang sudah menyatakan vektor di Verilog?..Berikut adalah contoh dari apa yang ingin saya lakukan:

Kode:

kawat [width-1: 0] x;

kawat [width-1: 0] y1;

kawat [width-1: 0] y2;menetapkan y1 = x [width-1: 0];

menetapkan y2 = x [0: lebar-1];

 
Jadi, jika Anda menuliskannya secara eksplisit, tidak akan ada ambiguitas.
Sebagai contoh, Anda dapat menulis:
kawat [3:0] x;
kawat [3:0] y2;

y2 = (x [0], x [1], x [2], x [3]);

 
yx.yang wrote:

Jadi, jika Anda menuliskannya secara eksplisit, tidak akan ada ambiguitas.

Sebagai contoh, Anda dapat menulis:

kawat [3:0] x;

kawat [3:0] y2;y2 = (x [0], x [1], x [2], x [3]);
 
Anda dapat menggunakan untuk loop untuk membalikkan urutan ur:

integer i;

selalu @ (*)
for (i = 0; i <width; i = i 1)
y2 = x [(width-1)-i];

dan untuk pertanyaan berikutnya:

Saya juga ingin tahu apakah (menetapkan y1 = x) tidak dilaksanakan, akan arah vektor default diambil dari pernyataan atau saya harus menyebutkan secara eksplisit arah (x)?-> Tidak perlu untuk menetapkan x [width-1: 0] untuk y1, kecuali Anda punya pesanan khusus atau kondisi.

 
dcreddy1980 wrote:

Anda dapat menggunakan untuk loop untuk membalikkan urutan ur:integer i;selalu @ (*)

for (i = 0; i <width; i = i 1)

y2 = x [(width-1)-i];
 
Kau tidak bisa hanya menyatakan mereka sebagai dalam urutan terbalik?
Maksud saya dalam VHDL saya bisa menyatakan sebuah sinyal sebagai:
a: std_logic_vector (7 downto 0);

tapi kemudian aku dapat menggunakannya juga dalam urutan terbalik menulis:
a (0 downto 7) <= x "01";
yang akan ditafsirkan seperti yang telah saya tertulis:
a (7 downto 0) <= x "80";

tapi aku tidak menggunakan Verilog jadi saya tidak tahu apakah itu bisa sederhana seperti dalam VHDL.

 
mmarco76 wrote:

Kau tidak bisa hanya menyatakan mereka sebagai dalam urutan terbalik?

Maksud saya dalam VHDL saya bisa menyatakan sebuah sinyal sebagai:

a: std_logic_vector (7 downto 0);tapi kemudian aku dapat menggunakannya juga dalam urutan terbalik menulis:

a (0 downto 7) <= x "01";

yang akan ditafsirkan seperti yang telah saya tertulis:

a (7 downto 0) <= x "80";tapi aku tidak menggunakan Verilog jadi saya tidak tahu apakah itu bisa sederhana seperti dalam VHDL.
 
Quote:

Saya juga ingin tahu apakah (menetapkan y1 = x) tidak dilaksanakan, akan arah vektor default diambil dari pernyataan atau saya harus menyebutkan secara eksplisit arah (x)?
 

Welcome to EDABoard.com

Sponsor

Back
Top