ОШИБКА: Симулятор: 702 - Не удается найти блок дизайна work.glbl при попытке выполнить Post-Route в ISim.

Я пытаюсь запустить свой проект в моделировании Post-Route. Моделирование поведения работает нормально, и я хочу, чтобы оно работало на плате Spartan 3E Starter. Он также может генерировать файл программирования в процессе реализации.

Использование ISE 14.7

Ошибка, которую я получаю:

Process "Generate Post-Place & Route Simulation Model" completed successfully

Started : "Simulate Post-Place & Route HDL Model".

Determining files marked for global include in the design...
Running fuse...
Command Line: fuse -intstyle ise -incremental -lib simprims_ver -lib unisims_ver -lib unimacro_ver -lib xilinxcorelib_ver -o /home/alex/projects/ece369/datapath/PostRoute_tb_isim_par.exe -prj /home/alex/projects/ece369/datapath/PostRoute_tb_par.prj work.PostRoute_tb work.glbl {}
Running: /opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64/unwrapped/fuse -intstyle ise -incremental -lib simprims_ver -lib unisims_ver -lib unimacro_ver -lib xilinxcorelib_ver -o /home/alex/projects/ece369/datapath/PostRoute_tb_isim_par.exe -prj /home/alex/projects/ece369/datapath/PostRoute_tb_par.prj work.PostRoute_tb work.glbl 
ISim P.20131013 (signature 0xfbc00daa)
Number of CPUs detected in this system: 4
Turning on mult-threading, number of parallel sub-compilation jobs: 8 
Determining compilation order of HDL files
Analyzing Verilog file "/home/alex/projects/ece369/datapath/src/PostRoute_tb.v" into library work
ERROR:Simulator:702 - Can not find design unit work.glbl in library work located at isim/work 

На вкладке «Дизайн» он показывает ClockDivider и DATAPATH_TEST как «?». Когда я устанавливаю связь с «все» на «моделирование», файлы появляются, но я получаю сообщение об ошибке «Верхний модуль не был указан».

Из поиска Google я попробовал «очистить файлы проекта», а также воссоздал проект. Я также попытался получить glbl.v из /opt/Xilinx/14.7/ISE_DS/ISE/verilog/src/ и вставил его, но я не уверен, что с ним делать.

Мой тестовый стенд:

`timescale 1ns / 1ps

module PostRoute_tb();
    reg              Clk, Rst, Rst_t;
    wire             Clk_slow;
    wire    [31:0]   out_0, out_1;
    reg     [31:0]   ii;

   TopClkDiv #(25) ClockDivider(
       .Clk(Clk),
       .Rst(Rst_t),
       .ClkOut(Clk_slow)    
   );

    Datapath DATAPATH_TEST(
        .Clk(Clk_slow), 
        .Rst(Rst),
        .Rst_t(Rst_t),
        .out_0(out_0),
        .out_1(out_1)
    );

    always begin
        Clk <= 0;
        #250;
        Clk <= 1;
        #250;
    end
    initial begin
        Rst <= 1;
        Rst_t <= 1;
        ii <= 0;
        #222;
        Rst <= 0;
        Rst_t <= 0;

        while (ii < 50000) begin
            @(posedge Clk_slow)
            ii = ii + 1;
        end
    end

endmodule

person exrhizo    schedule 06.12.2014    source источник
comment
Это для класса. Мой ТА предложил: 1) Какой файл устанавливается как верхний модуль, когда вы делаете pnr и синтез? это должен быть datapath.v для данного тестового стенда. 2) Также я бы удалил clock_divider RTL из тестового стенда и сгенерировал часы, используя обычные операторы ожидания в тестовом стенде. поэтому попробуйте управлять datapath clk, используя следующие часы, и удалите делитель часов из тестового стенда. Добавьте необходимую задержку.   -  person exrhizo    schedule 08.12.2014


Ответы (1)


у меня была такая же ошибка

"ОШИБКА: Симулятор: 702 - Не удается найти блок дизайна work.glbl...".

В моем случае я перенес старый проект ISE 14.1 в PlanAhead 14.7. Моя проблема и решение заключались в том, чтобы удалить verilog_define={GLBL} в настройках проекта -> Симуляция -> «Параметры Verilog:». Флажок "Загрузить glbl" установлен. Причина в том, что некоторый код моделирования Verilog инкапсулирован в «ifndef GLBL». Вы можете найти его, выполнив "find . -type f -name "*.v" | xargs grep 'def GLBL' -sl" в установочном каталоге PlanAhead.

person beto_peto    schedule 20.02.2015