реклама на сайте
подробности

 
 
> microblaze verilog, ошибка при компиляции
serg_k1
сообщение May 28 2013, 10:38
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



система с головной microblaze и подчиненный data_video_in_out . В microblaze добавлены

input [31:0] DIP_Switches_32Bits_GPIO_IO_I_pin;
input [4:0] Push_Buttons_5Bits_GPIO_IO_I_pin;
output clock_generator_0_CLKOUT4_pin;

RESET и clock_generator_0_CLKOUT4_pin входные для data_video_in_out ,
в нем data_v_out(DIP_Switches_32Bits_GPIO_IO_I_pin ) и strob_v_out(Push_Buttons_5Bits_GPIO_IO_I_pin )
выходы и входы для microblaze.
симуляция в Isim работает. правда для этого потребовалось убрать в сгенерированном Verilog Test Fixture

//reg [31:0] DIP_Switches_32Bits_GPIO_IO_I_pin;
//reg [4:0] Push_Buttons_5Bits_GPIO_IO_I_pin;

при компиляции выдает следующую ошибку

Multi-source in Unit <mb_top> on signal <Push_Buttons_5Bits_GPIO_IO_I_pin<4>>; this signal is connected to multiple drivers.
такая же выдается для всех Push_Buttons_5Bits_GPIO_IO_I_pin и DIP_Switches_32Bits_GPIO_IO_I_pin
но они же и должны быть для одного входы для другого выходы.
Сначала было

Код
assign  DIP_Switches_32Bits_GPIO_IO_I_pin = data_v_out;
...
.data_v_out(data_v_out ),
...
...
результат тот же.
где ошибка?

Код

// mb_top.v
//-----------------------------------------------------------------------------

module mb_top
  (
   ...
   RESET,
   ...
    DIP_Switches_4Bits_TRI_I,
    CLK_P,
    CLK_N,
    DIP_Switches_32Bits_GPIO_IO_I_pin,
    Push_Buttons_5Bits_GPIO_IO_I_pin,
    clock_generator_0_CLKOUT4_pin
  );
  
...
  input [3:0] DIP_Switches_4Bits_TRI_I;
  input CLK_P;
  input CLK_N;
  input [31:0] DIP_Switches_32Bits_GPIO_IO_I_pin;
  input [4:0] Push_Buttons_5Bits_GPIO_IO_I_pin;
  output clock_generator_0_CLKOUT4_pin;

  (* BOX_TYPE = "user_black_box" *)
  mb
    mb_i (
      
      ...
     ...
    
      .DIP_Switches_4Bits_TRI_I ( DIP_Switches_4Bits_TRI_I ),
      .CLK_P ( CLK_P ),
      .CLK_N ( CLK_N ),
      .DIP_Switches_32Bits_GPIO_IO_I_pin ( DIP_Switches_32Bits_GPIO_IO_I_pin ),
      .Push_Buttons_5Bits_GPIO_IO_I_pin ( Push_Buttons_5Bits_GPIO_IO_I_pin ),
      .clock_generator_0_CLKOUT4_pin ( clock_generator_0_CLKOUT4_pin )
    );

wire RESET, clock_generator_0_CLKOUT4_pin;
wire [31:0] DIP_Switches_32Bits_GPIO_IO_I_pin;
wire [4:0] Push_Buttons_5Bits_GPIO_IO_I_pin;



// Instantiate the module
data_video_in_out instance_name (
    ...

    .clock_mb(clock_generator_0_CLKOUT4_pin),
    .reset(RESET),
    .data_v_out(DIP_Switches_32Bits_GPIO_IO_I_pin ),

    ...

   .strob_v_out(Push_Buttons_5Bits_GPIO_IO_I_pin )
    );
    
endmodule


если задать разные имена , то ошибка будет
<DIP_Switches_32Bits_GPIO_IO_I_pin_1> is already implicitly declared earlier.
если же убрать декларацию wire , то ошибок нет . но тогда шины превращаются в одиночную. что не нужно.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 7th July 2025 - 04:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016