Ошибка ModelSim при загрузке проекта

Я разрабатываю реализацию Master-Slave D Flip Flop в ModelSim. После компиляции (Compile > Compile All) я набираю vsim в консоли, и появляется единственная ошибка:

# vsim
# Start time: [time]
# Error loading design

Есть ли способ сделать vsim более подробным в отношении того, что происходит не так? Или, наоборот, может кто-нибудь сказать мне, что я делаю неправильно?

Для справки мой код ниже:

методы.v

module dFlipFlop(
    D,
    Clk,
    En,
    Q
);

input D, Clk, En;
output Q;
reg Q;

always @ (posedge Clk)
if(~En) begin
    Q <= 1'b0;
end else begin
    Q <= D;
end

endmodule

module masterSlaveDFF(
    D,
    Clk,
    En,
    Q
);

input D, Clk, En;
output Q;

wire Y, inClk;

assign inClk = ~Clk;

dFlipFlop first (.D(D), .Clk(Clk), .En(En), .Q(Y));
dFlipFlop second (.D(Y), .Clk(inClk), .En(En), .Q(Q));

endmodule

dflipflop.v (мой тестовый стенд)

`include "methods.v"

module masterSlaveTest();

reg D, Clk, En, Q;

initial begin
    $monitor(D, Clk, En, Q);

    D = 1;
    Clk = 1;
    En = 0;

    #5 $finish;
end

always begin
    #5 Clk = ~Clk;
end

endmodule

person Aeolingamenfel    schedule 09.04.2015    source источник
comment
Да, я тоже пытался специально вызвать файл Test Bench, но безрезультатно.   -  person Aeolingamenfel    schedule 09.04.2015
comment
Ах. Я понял. Это был не мой код или конфигурация, хотя это, безусловно, были хорошие предложения. Это была студенческая лицензия. Я собираюсь решить это сам, ха.   -  person Aeolingamenfel    schedule 09.04.2015
comment
Тем не менее, спасибо за помощь, @toolic.   -  person Aeolingamenfel    schedule 09.04.2015


Ответы (5)


Если ваш код компилируется и прямой вызов тестового стенда не работает, например, через что-то вроде

vsim -novopt [your testbench module name here]

или просто

vsim

Тогда, по крайней мере в моем случае, это была проблема лицензирования. Обратите внимание, что я использую студенческую версию ModelSim. Когда я впервые запустил vsim, он выдал длинное сообщение об ошибке, объясняющее, что мне нужно поместить файл лицензии (который вы получаете во время установки) в определенный каталог.

Для Student Edition необходимо переименовать файл student_license.dat в license.dat и поместить его в C:\Modeltech_pe_edu_10.4a\win32pe_edu\. Ваша структура каталогов может отличаться, но, насколько я понимаю, соглашения об именах аналогичны.

В некоторых случаях я также читал, что license.dat должен быть в родительском файле win32pe_edu, но в моем случае это работало в win32pe_edu.

person Aeolingamenfel    schedule 09.04.2015

Пользователям Windows:

Если ваш код правильный, и вы уже скопировали файл лицензии (student_license.dat) в правильную папку (C:\Modeltech_pe_edu_[VersionNo]), но он все еще не работает, попробуйте запустить ModelSim от имени администратора. Это может помочь.

person Kim-Carolin Landfried    schedule 23.10.2015

Я была такая же проблема. Я решил это, щелкнув правой кнопкой мыши конкретную библиотеку и нажав «Обновить». Затем я перекомпилировал и перезапустил симуляцию, и она заработала.

person Sasan Khoshroo    schedule 15.11.2016

У меня такая же проблема . Вот как я это исправил. Когда я установил modelsim, в конце концов он направляет меня на страницу с лицензионным ключом! Я заполнил его, но не получил письмо!

Поэтому, если вы не получили письмо с лицензионным ключом от modelsim, вам придется заново запускать установку! Так что как только вы получите файл license_file.dat, вставьте его в папку modelsim, тогда у вас не возникнет таких проблем!

person Suhas Chethan    schedule 26.11.2016

для меня проблема была с оптимизацией, когда я начал симуляцию с включенной оптимизацией, она не показывала созданные экземпляры в тестовом стенде, и, отключив ее, я получаю ошибку Error Loading Design. Как это исправить: в графическом интерфейсе: симуляция › запустить симуляцию › опция оптимизации › на вкладке видимости › поставить галочку применить полную видимость ко всем модулям (полный режим отладки). в терминале: vsim -gui -vopt -voptargs=+acc work.Adder_TB (Adder_TB — это имя модуля моего тестового стенда).

person Mohammad Khatibzadeh    schedule 25.05.2021