Mam rejestr zadeklarowane jako tak:arytmetyczne przesunięcie działa jako logicznej zmiany, niezależnie od podpisanej zmiennej
logic signed [15:0][2:0][15:0] registers;
Kiedy umieścić 2 Numer komplement do tablicy i arytmetycznie przesunąć liczbę, zamiast tego logiczne przesunięcie:
registers[0][0] = 16'b1000000000000000;
registers[0][0] = registers[0][0]>>>2;
Najwyraźniej system przesunie logikę zamiast przesunięcia arytmetycznego, jeśli numer nie jest podpisany. Jak jednak widać, "rejestry" są z pewnością podpisane.
Czy ktoś wie, czego może mi brakować?
Dzięki!
Niewiarygodne. Dziękuję Ci! – user1567095