Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Memory Interface Generator MIG3.5 от Xilinx
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
_ANDREW
Здравствуйте.
Подскажите пожалуйста, я сгенерировал в MIG контроллер DDR3, сделал ВСЁ по мануалу (ug406) топом сделал testbanch из папки design_example/sim и попытался всё это дело просимулировать в modelsim6.5. Результаты весьма омрачающие...
1) модель памяти MIG генерирует ТОЛЬКО на верилоге. Я в верилоге не пишу, и поэтому так и не понял, почему modelsim пишет что 2001 редакция верилога не понимает глобальное объявление parametеr? и не понимает вставки 'include. A MIG всё делает с глобальным объявлением параметров.
Пример (102,103,104,,,,,126,127,128 - номер строк)
файл ddr3.v
............

102 `include "ddr3_model_parameters.vh"
103
104 parameter check_strict_mrbits = 1;
parameter check_strict_timing = 1;
parameter feature_pasr = 1;
parameter feature_truebl4 = 0;

// text macros
`define DQ_PER_DQS DQ_BITS/DQS_BITS
`define BANKS (1<<BA_BITS)
`define MAX_BITS (BA_BITS+ROW_BITS+COL_BITS-BL_BITS)
`define MAX_SIZE (1<<(BA_BITS+ROW_BITS+COL_BITS-BL_BITS))
`define MEM_SIZE (1<<MEM_BITS)
`define MAX_PIPE 4*CL_MAX

// Declare Ports
input rst_n;
input ck;
input ck_n;
input cke;
input cs_n;
input ras_n;
input cas_n;
input we_n;
126 inout [DM_BITS-1:0] dm_tdqs;
127 input [BA_BITS-1:0] ba;
128 input [ADDR_BITS-1:0] addr;
129 inout [DQ_BITS-1:0] dq;
inout [DQS_BITS-1:0] dqs;
inout [DQS_BITS-1:0] dqs_n;
output [DQS_BITS-1:0] tdqs_n;
input odt;
...... и т.д.

файл ddr3_model_parameters.vh содержит такие строки

parameter DM_BITS = 1; // Set this parameter to control how many Data Mask bits are used
parameter ADDR_BITS = 14; // MAX Address Bits
parameter ROW_BITS = 14; // Set this parameter to control how many Address bits are used
parameter COL_BITS = 11; // Set this parameter to control how many Column bits are used
parameter DQ_BITS = 4; // Set this parameter to control how many Data bits are used **Same as part bit width**
parameter DQS_BITS = 1; // Set this parameter to control how many Dqs bits are used


при этом моделсим пишет

# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(102): Cannot open `include file "ddr3_model_parameters.vh".
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(126): Undefined variable: DM_BITS.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(127): Undefined variable: BA_BITS.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(128): Undefined variable: ADDR_BITS.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(129): Undefined variable: DQ_BITS.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(130): Undefined variable: DQS_BITS.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(137): Undefined variable: TDLLK.
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(166): Undefined variable: BL_BITS.

короче не видит 'include

Кто нибудь знает почему, и как выкрутиться??
Заранее спасибо
AJIEKCEu
Я ничего не понимаю в верилоге, но предположу, что вот эта строка:
Цитата(_ANDREW @ Oct 21 2010, 23:27) *
# ** Error: F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model.v(102): Cannot open `include file "ddr3_model_parameters.vh".

обозначает, что симулятор не нашел файл ddr3_model_parameters.vh там где ожидал его найти, а соответственно не смог взять из него параметры. Разбирайтесь с путями.
_ANDREW
я в верилоге тоже не очень, но все эти файлы создаёт COREGENERATOR, так что не с путями проблема. но что бы перепробовать всё, я ему полный путь прописывал, всё равно ругается.. sad.gif
AJIEKCEu
http://dbaspot.com/forums/arch/253795-newb...es-verilog.html

Пишут:
Цитата
Thanks for the help. That enabled me to get it working.

I moved the `include after the port definitions and that fixed ISE
problem.

I changed the properties on each .V source file to include the
directory where the include file was located (even though it was the
same directory as the source .v files). This fixed the ModelSim
problem.
_ANDREW
Спасибо
прописал ему полный путь `include "F:/PROJECTS/MMIG/ipcore_dir/ddr3/example_design/sim/ddr3_model_parameters.vh", моделсим его скушал, но то что было описано в ddr3_model_parameters.vh он так и не увидел...
AJIEKCEu
Ну, чем мог. Ждем гуру моделсима smile.gif Я с ним не работаю.
Shtirlits
может быть его скопировать в каталог проекта modelsim ?
Kuzmi4
2 _ANDREW
заархивируте ваш проект и выложите, а то можно долго телепатировать biggrin.gif
SFx
У вас инклюде файл не подключается.

перед запуском компиляций введите команду
pwd
путь который будет указан должен содержать include file ddr3_model_parameters.vh


а еще проще засунуть вместо строчки этой сам файл в ручную, как то сам так делал когда с DDR1 разбирался, чтоб не тратить время на разбирательство откуда ногирастут у этих проблем.
еще возможно надо будет предать како нито define вместе с командой vsim
Shtirlits
Скажите, а для какой микросхемы вы генерируете ядро?
Попробовал для virtex-6 и для spartan-6 сделать DDR3 на VHDL - делает, если попросить
в меню CORE Generator
Project->Project Options->Generation->
_ANDREW
Всем спасибо за помощь!!
Сегодня поковырял снова эту проблему, и выяснил, что моделсим не видит 'ifdef, а весь файл ddr3_model_parameters.vh написан под несколько микросхем памяти а конкретная выбирается с помощью условий ifdef
`ifdef QUAD_RANK
`define DUAL_RANK // also define DUAL_RANK
parameter CS_BITS = 4; // Number of Chip Select Bits
parameter RANKS = 4; // Number of Chip Selects
`else `ifdef DUAL_RANK
parameter CS_BITS = 2; // Number of Chip Select Bits
parameter RANKS = 2; // Number of Chip Selects
`else
parameter CS_BITS = 2; // Number of Chip Select Bits
parameter RANKS = 1; // Number of Chip Selects
`endif `endif

я убрал эту универсальность, всё сделал под конкретную микруху без ifdef и всё заработало... но это не порядок.. надо разбираться...
на следующей неделе встречаюсь с гуру моделсима... у меня к нему масса вопросов... так что разберусь - отпишусь!!!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.