SystemVerilog При создании экземпляра модуля, как я могу подключить выход к каждому проводу многомерной шины?

Скажем, у меня есть многомерный автобус

wire logic [7:0]example_bus[60] [16][4];

и модуль имеет выход

output logic [7:0]example_out[16][4];

Как мне назначить example_out всем 60 проводам в example_bus?

Я знаю, как назначить его на отдельные провода.

example_mod example_mod1(
.example_out(example_bus[0]));

Но я не могу понять, как назначить выход всей шине.

Я рассматривал возможность использования отдельного задания, но обнаружил, что это обычно вызывает проблемы со временем.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
50
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать шаблон назначения, чтобы упростить задания.

  wire logic [7:0] example_bus[60] [16][4];
  wire logic [7:0] example_temp [16][4];
  
  example_mod example_mod1(
    .example_out(example_temp)
                  );
  assign example_bus = '{default:example_temp};

Но это не изменит того факта, что каждый провод example_out разветвляется на 60 проводов example_bus. Это фактически то же самое, что и

for(genvar i=0;i<60;i++) begin
        assign example_bus[i] = example_temp;
end

Спасибо за ответ! К сожалению, хотя quartus может это скомпилировать, modelsim выдает ошибку: «Questa обнаружила непредвиденную внутреннюю ошибку: ../../src/vlog/vgendecl.c(7760). Пожалуйста, свяжитесь со службой поддержки Questa по адресу supportnet.mentor.com «Поэтому я не могу проверить, действительно ли это решило мою проблему.

Lupushonora 08.05.2024 19:43

У вас должна быть старая версия. Я сам проверял это на Questa. edaplayground.com/x/A7jL

dave_59 08.05.2024 19:52

К сожалению, у меня нет лицензии, а SSLC — это кошмар, поэтому я не могу использовать Questa.

Lupushonora 08.05.2024 20:23

@Lupushonora, обновил мой ответ. Если это создает проблему времени, у вас совсем другая проблема.

dave_59 08.05.2024 20:51

Спасибо! Я более или менее разобрался с этим самостоятельно, но надеялся, что мне не придется его использовать, поскольку модуль, над которым я работаю, очень сложен и зависит от нескольких таймеров и часов, поэтому следить за тем, чтобы все происходило в правильном порядке, — это кошмар. . К счастью, в данном случае я просто тупил, то, что я пытался сделать, не имело смысла, и проблема, которую я пытался решить, на самом деле могла быть решена в предыдущем модуле.

Lupushonora 08.05.2024 21:16

Другие вопросы по теме

Похожие вопросы

Как TJSArray работает в TMS WEB Core, используя только код Delphi?
Свести многомерный массив неизвестной глубины к индексированному массиву с ассоциативными строками
Поверхностный график данных x, y, z с различным размером z MATLAB
Как динамически преобразовать строку в символы специального шрифта UTF8 (и вернуться к ним)?
Группируйте строки данных в многомерном массиве по столбцу и объединяйте подмассивы в другом столбце
Проблема с подсчетом затонувших кораблей/кораблей линкора (Java)
Извлечь подмассивы из массива с помощью динамического фильтра
Почему индексация 2D-массива с помощью арифметики указателей не аналогична использованию скобок [j], хотя в спецификации указано, что так и должно быть?
Как я могу ускорить обработку вложенных циклов for для гигантского трехмерного массива?
Реализация 2D-скользящего окна поверх np.array без перекрытий (плитка, среднее объединение)