Я читаю два источника, которые, кажется, дают мне противоречивую информацию о правилах, касающихся спецификации диапазона. Это говорит о том, что " Идентичные имена экземпляров не могут появляться дважды с другими спецификациями диапазонов (даже если диапазоны не перекрывают друг друга) ", в то время как Учебное пособие Intel по основам Verilog имеет пример 4-битного сдвига в метке времени 34:28 со следующим кодом:
integer i;
always@(inp,cnt)begin
result[7:4] = 0;
result[3:0] = inp;
if(cnt==1)begin
for(i=4; i<=7; i=i+1)begin
result[i]=result[i-4];
end
result[3:0] = 0;
end
end
Не будет "result [7: 4]" и "result [3: 0]" быть Имя экземпляра, которое встречалось дважды с «другими спецификациями диапазона», одно из которых было [7: 4], а другое - [3: 0]? Или я неправильно понимаю, что подразумевается под "другими характеристиками диапазона"?