Полная версия этой страницы:
QUARTUS, MODELSIM
А чё?
Да и в любом случае, какого хрена, что это за ошибка, в чем ее суть? Ну не загрузить, а дальше что...
Это что, из-за того, что не было таблетки от жадности, поддерживает не более одного файла HDL?
Ну допустим, поставлю ModelSim SE 6.5b May 21 2009 - где взять сей инструмент с таблеткой вместе?
Kuzmi4
Oct 30 2009, 12:02
Цитата(torik @ Oct 30 2009, 13:58)

А чё?
Дизайны стали очень привязаны к специфике виртексов, а в 11-й версии аси - непринятие А-релизов.
Цитата(torik @ Oct 30 2009, 13:58)

что это за ошибка, в чем ее суть?
судя по всему у вас МС не можен найти энтити задекларированные в топе.
Двойной щелчёк - это вроде
Цитата
vsim work.top
таблетку могу намылить, сам МС с сайта качается
У меня сейчас вообще моделсим альтера стартер, может мы говорим совершенно о разных вещах и я зря стараюсь запустить на нем эти лабы?
Цитата
судя по всему у вас МС не можен найти энтити задекларированные в топе.
Да это и так ясно, но что я могу тут сделать, файлы-то есть, чего ему еще надо...
Kuzmi4
Oct 30 2009, 12:28
Цитата(torik @ Oct 30 2009, 14:16)

У меня сейчас вообще моделсим альтера стартер, может мы говорим совершенно о разных вещах и я зря стараюсь запустить на нем эти лабы?
В этом как раз может быть проблема - у меня ж ModelSim
SE 6.5b May 21 2009
Может альтеровцы подкрутили что

Лог с консоли приведите, может проясниться что
Хочу вернуться к вопросу о моделсиме. Подскажите, где вообще можно что-то попроще почитать о тестбенчах, куда их прикручивать, как писать... А потом уже о моделсиме.
Цитата(torik @ Nov 24 2009, 06:46)

Хочу вернуться к вопросу о моделсиме. Подскажите, где вообще можно что-то попроще почитать о тестбенчах, куда их прикручивать, как писать... А потом уже о моделсиме.
в тему про SV, там линки и книги
Мне бы что-то совсем простое, типа примера простенького тестбенча, как при этом должен выглядеть проект в квартусе, как его передать в моделсим и посмотреть что получается. Для начала что-то вроде счетчика, триггера....
Iptash
Nov 24 2009, 15:14
Вот недавно где то выкладывал:
Код
module countbit(
input clk, //такт...
input [7:0] data, //данные
input load, //загрузка данных
output reg fin, //флаг, счет закончен
output reg [4:0] count //результат
);
bit [7:0] tempbuff;
always @ (posedge clk or posedge load) begin
if(load) begin
tempbuff <= data;
fin <= 0;
count <= 0;
end
else begin
if(tempbuff[0]) begin
tempbuff <= tempbuff >> 1;
count++;
end
else fin <= 1;
end
end
endmodule
module test;
bit clk;
bit [7:0] data;
bit load;
bit fin;
bit [4:0] count;
initial begin
clk = 0;
data = 0;
load = 0;
#5 data = 8'b11001111;
#5 load = 1;
#2 load = 0;
wait(fin == 1); //Ждать пока счет не закончен
#5 data = 8'b10101011;
#5 load =1;
#2 load = 0;
wait(fin == 1); //Ждать пока счет не закончен
#5 $stop;
end
always #2 clk = ~clk;
countbit P1 (
.clk(clk),
.data(data),
.load(load),
.fin(fin),
.count(count)
);
endmodule
Собственно программа подсчитыват количество бит прва на лево (с мл. бита) до первого значащего нуля. Не обязательно с самого начала создавать проект в квартусе. Можно сначало
в модель симе создать, писать, симулировать, а потом синтезировать в квартусе. Я сам все это поверхностно изучил, так, что не обессудь. Что не понятно в программе спрашивай, а так
создай проект в модель симе, просимулируй, должно быть все понятно.
Цитата(torik @ Nov 24 2009, 08:05)

Мне бы что-то совсем простое, типа примера простенького тестбенча, как при этом должен выглядеть проект в квартусе, как его передать в моделсим и посмотреть что получается. Для начала что-то вроде счетчика, триггера....
следите за форумом, например
здесь я выкладывал проект с простым тестбенчем
Iptash, спасибо. Как раз то что надо для понимания связи тестбенча и собственно описания девайса. Вот только моделсим 6.4а у меня тупит, похоже что он просто не работает, качаю 9.1...
А дальше буду вопросы как это в моделсиме запустить.
Это вот, а в квартусе можно тестбенчами пользоваться?
Я сделал "module countbit" топом (SV2005), а "module test" обозначил как тестбенч и подключил к проекту. Я подумал, что после симуляции появятся расписанные в тестбенче сигналы, а получилась ерунда какая-то )))
AndriyG
Nov 25 2009, 14:22
Некоторые разработчики работают с командной строке и в Xilinx EDK и в Quartus
Посему, хотелось бы задать вопрос опытным по стилю работы в Квартусе:
1. Используете только GUI для создания проекта, компиляции и пр
2. Используете только командную строку (сами набиваете файл проекта и тд)
3. Смешаный GUI + командная строка.
4. Что у Вас идет в архив проекта (ну hdl сорцы ясно дело) и что мусор?
Спасибо!
Kuzmi4
Nov 25 2009, 14:31
2 torik
Цитата
приз - в студию

или это был не вопрос а так - крик души ?
Iptash
Nov 25 2009, 18:19
Цитата(torik @ Nov 25 2009, 09:11)

Iptash, спасибо. Как раз то что надо для понимания связи тестбенча и собственно описания девайса. Вот только моделсим 6.4а у меня тупит, похоже что он просто не работает, качаю 9.1...
А дальше буду вопросы как это в моделсиме запустить.
У нас на FTP я скачивал MS 6.5b, работает нормально. Вообщем запускаешь модельсим, если он открывает последний проект, то
закрываешь, например правым щелчком по имени проекта и Close. Далее File/New/Project... и создаешь проект т.е. даешь имя,
место расположения, далее добавляешь файл, все. В окне проекта появляется твой файл. Вот его сначала компилируешь, если
все нормально (в низу в окне Transcript все сообщения и ввод командной строки и т.д.) то делаешь симуляцию, появляется
окно Start simulation, в нем открываешь папку Work в нем находится два модуля Reg и test(если симулируешь файл который я привел) вот его(test) запускаешь т.е. ставишь на него курсор и делаешь OK, но сначала нажми кнопку Optimization Options... в нем выбери Apply full visibility to all modules. Все, должны загрузится все переменные, входа и выхода. Щелкни два раза по файлу
Reg.sv в окне проекта, он откроется в текстовом редакторе. В окно Wave можешь добавить входа, выхода, пременные для просмотра. Все, можешь запускать Run или пошагово.
В квартусе тестбенч не работает, и не мешает.
Я все это время качаю новый квартус 9.1, вместе с моделсимом ase, скорость низкая...
Iptash, спасибо. Но вопросы еще будут, когда все скачаю. А имеет смысл ставить моделсим SE вместо ASE?
Iptash
Nov 25 2009, 18:59
У меня и то и др. стоит, они не мешают друг другу. В ASE пути к Альтеровским функциям уже установлены, в SE нужно настраивать если
с функциями работаешь, но это не сложно. Мне покозалось, что SE более полноценнее.
Поставил ASE 6.5b. Уважаемый Iptash, спасибо. Теперь уже буду изучать дальше.
Вот только не получилось запустить симуляцию прямо из квартуса.
И еще - у меня получился моделсим стартер едишн. Я запускал батник и создал переменную среды (только по своему пути), по инструкции с фтп. Как его подлечить по настоящему?
Iptash
Nov 26 2009, 20:18
А какой пароль на архиве?, я что то забыл и как устанавливал и какой пароль на архив.
Пароль перед глазами и не вижу

. Так модель сим запускается или ругается?, если запускается, значит все нормально.
Да запускается и работает...
Но т.к. он стартер едишн, не будет ли ограничений по размеру кода или чё там еще?
Kuzmi4
Nov 27 2009, 11:18
2 torik
ограничение на ~10тыс строк и заметно медленней работает по сравнению с SE.
Iptash
Nov 27 2009, 13:10
Цитата(torik @ Nov 27 2009, 13:38)

Да запускается и работает...
Но т.к. он стартер едишн, не будет ли ограничений по размеру кода или чё там еще?
Я с родного FTP брал
SE Plus 6.5b, работает замечательно, большое спасибо ребятам.
Назрел еще вопрос.
Написал небольшой top-модуль, к нему на SV забацал тестбенч. Из ква запускаю функциональное моделирование, все нормально работает.
А вот когда пробую Gate Level Simulation, начинаются проблемы. Моделсим ругается на ссылки на переменные модуля.
Например, хочу наблюдать состояние переменной global_prereset top-модуля GS58, и обращаюсь к ней из тестбенча rrr.reg1 - моделсим ругается:
Цитата
# ** Error: (vsim-3043) D:/altera/GS58/GS58/testbench/GS58_TST.sv(61): Unresolved reference to 'SG1' in GS58.SG1.
# Region: /GS58_TST
# ** Error: (vsim-8220) D:/altera/GS58/GS58/testbench/GS58_TST.sv(36): This or another usage of 'GS58.global_prereset' inconsistent with 'module' object.
Чё ему не нравится? И вообще, насколько полезна эта Gate Level Simulation? Ведь при компиляции ква проверит все тайминги и ругнется если что.
Проект прикладываю...
Цитата(torik @ Dec 20 2009, 03:30)

Написал небольшой top-модуль, к нему на SV забацал тестбенч. Из ква запускаю функциональное моделирование, все нормально работает.
А вот когда пробую Gate Level Simulation, начинаются проблемы. Моделсим ругается на ссылки на переменные модуля.
Чё ему не нравится? И вообще, насколько полезна эта Gate Level Simulation? Ведь при компиляции ква проверит все тайминги и ругнется если что.
Проект прикладываю...
дык что сложного то %)
1. в атаче нет тестбенча, хорошо что хоть GS58_TST.sv.bak остался
2. ругается потому что сигнала GS58.global_reset_n нет, легко проверяется просмотром файла нетлиста simulation\modelsim\GS58.vo
3. Чему тут удивляться то, маппер и фиттер при оптимизации сделали все что считали нужным, потому сигнала и нет (а есть лют под именем global_reset_n %) )
у меня не разу не было ситуации когда моделирование нетлиста было бы оправдано, хотя подразумеваю что такие ситуации есть.
Builder
Dec 21 2009, 07:54
Цитата(des00 @ Dec 21 2009, 06:09)

у меня не разу не было ситуации когда моделирование нетлиста было бы оправдано, хотя подразумеваю что такие ситуации есть.
У меня один раз было (двно правда), что симулятор функционального теста делал ошибку на одной конструкции.
На нетлисте работало правильно. Но это грайне редкие случаи.
Цитата
1. в атаче нет тестбенча, хорошо что хоть GS58_TST.sv.bak остался
В папке testbench лежит...
naliwator
Jan 25 2010, 08:06
Я смотрю, что тема с переводом документации умерла сама собой.
Последние страницы здесь явно не по теме.
Создал собственный ресурс со своими переводами Altera и Quartus II.
Буду его пополнять, т.к. накопилось.
www.naliwator.narod.ru
И не стреляйте в пианиста....
Dima_G
Jan 25 2010, 08:32
Цитата(naliwator @ Jan 25 2010, 11:06)

Я смотрю, что тема с переводом документации умерла сама собой.
Естественно, так как переводчики не будут успевать за новыми продуктами. И в итоге, перевод будет на продукты 5-10 летней давности. Оно Вам надо?

Мне кажется, было бы полезнее, если бы гуру сделали некий "самоучитель" по ФПГА. Именно, чтоб дать стартовый толчок интересующимся людям. Объяснить типовые ошибки (такие как метастабильность, асинхронщина), показать хорощий стиль проектирования (тестбенчи, констрейны).
В общем, дать небольшой импульс и в правильном направлении.
des00 сделал внушительную часть работы - описал констрейны. Может кто-нибудь возьмется за другую часть работы
naliwator
Jan 26 2010, 08:00
Цитата(Dima_G @ Jan 25 2010, 11:32)

Естественно, так как переводчики не будут успевать за новыми продуктами. И в итоге, перевод будет на продукты 5-10 летней давности. Оно Вам надо?

Мне кажется, было бы полезнее, если бы гуру сделали некий "самоучитель" по ФПГА. Именно, чтоб дать стартовый толчок интересующимся людям. Объяснить типовые ошибки (такие как метастабильность, асинхронщина), показать хорощий стиль проектирования (тестбенчи, констрейны).
В общем, дать небольшой импульс и в правильном направлении.
des00 сделал внушительную часть работы - описал констрейны. Может кто-нибудь возьмется за другую часть работы

Для свободно понимающих английский - конечно не нужно.
Но уверяю вас, даже курс молодого бойца устареет через 5-10 лет.
Dima_G
Jan 26 2010, 08:57
Цитата(naliwator @ Jan 26 2010, 12:00)

Для свободно понимающих английский - конечно не нужно.
Но уверяю вас, даже курс молодого бойца устареет через 5-10 лет.
Хоровец-Хилл устарел?

Это классика, а классика - не устаревает. Я предлагал описать "хорошие манеры проектирования " на ФПГА с примерами. Не думаю, что это быстро потеряет актальность.
А английский нужно учить - как минимум на уровне "читать доки со словарем". Иначе все Ваши знания о современной электронике будут "вчерашним днем".
naliwator
Jan 26 2010, 11:57
Цитата(Dima_G @ Jan 26 2010, 11:57)

Хоровец-Хилл устарел?

Это классика, а классика - не устаревает. Я предлагал описать "хорошие манеры проектирования " на ФПГА с примерами. Не думаю, что это быстро потеряет актальность.
А английский нужно учить - как минимум на уровне "читать доки со словарем". Иначе все Ваши знания о современной электронике будут "вчерашним днем".
Прежде чем затевать полемику - читаем заголовок ветви.
naliwator
Jan 28 2010, 14:20
Обновил содержание своего ресурса
http://naliwator.narod.ru/Теперь на нём содержатся следующие переводы:
"Временной анализатор Quartus II TimeQuest"
"Инкрементная компиляция в Quartus II для иерархических и командных проектов"
"Вводный курс Quartus II для пользователей Verilog"
Не стреляйте в пианиста ...
OLEG_BOS
Jan 28 2010, 15:26
Цитата(naliwator @ Jan 28 2010, 16:20)

Не стреляйте в пианиста ...
Хорошее дело делаете.

Только вот жаль что скачивать нужно по-раздельно, а не одним файлом
P.S. Хотя вспомнил об уникальной функции DownloadMaster - качать все скопом что есть на странице

. Но читать тоже будет тяжело раздельно
Цитата
Обновил содержание своего ресурса
http://naliwator.narod.ru/Теперь на нём содержатся следующие переводы:
"Временной анализатор Quartus II TimeQuest"
"Инкрементная компиляция в Quartus II для иерархических и командных проектов"
"Вводный курс Quartus II для пользователей Verilog"
Спасибо. Это, на мой взгляд, весьма полезное дело. Может переводы быстро устаревают в мелочах и вообще лучше читать оригинал, но текст на русском позволяет гораздо быстрее начать/освоить!
Цитата(naliwator @ Jan 28 2010, 17:20)

Обновил содержание своего ресурса
http://naliwator.narod.ru/Спасибо.

Успехов тебе.
naliwator
Feb 3 2010, 12:31
Обновил содержание своего ресурса
http://naliwator.narod.ru/Теперь на нём содержатся следующие переводы:
"Лучшие примеры для временного анализатора Quartus II TimeQuest"
"Временной анализатор Quartus II TimeQuest"
"Инкрементная компиляция в Quartus II для иерархических и командных проектов"
"Вводный курс Quartus II для пользователей Verilog"
naliwator
Feb 24 2010, 11:02
Обновил содержание своего ресурса
http://naliwator.narod.ru/Теперь на нём содержатся следующие переводы:
"Тактовые сети и PLL в чипах Cyclone III"
"Лучшие примеры для временного анализатора Quartus II TimeQuest"
"Временной анализатор Quartus II TimeQuest"
"Инкрементная компиляция в Quartus II для иерархических и командных проектов"
"Вводный курс Quartus II для пользователей Verilog"
naliwator
Mar 4 2010, 11:41
Обновил содержание своего ресурса
http://naliwator.narod.ru/"Экосистема отладки в чипе" - обзор средств верификации в Quartus II
Здравствуйте, подскажите какова причина данной ощибки?
Updated modelsim.ini.
#
# vcom -93 -work work {tp.vho}
# Model Technology ModelSim ALTERA vcom 6.5b Compiler 2009.10 Oct 1 2009
# -- Loading package standard
# -- Loading package std_logic_1164
# -- Loading package vital_timing
# -- Loading package vital_primitives
# -- Loading package cycloneiii_atom_pack
# -- Loading package cycloneiii_components
# -- Compiling entity tp
# -- Compiling architecture structure of tp
#
# vlog -vlog01compat -work work +incdir+D:/ALTERA/testproj/simulation/modelsim {D:/ALTERA/testproj/simulation/modelsim/tp_tb.v}
# Model Technology ModelSim ALTERA vlog 6.5b Compiler 2009.10 Oct 1 2009
# -- Compiling module RS
#
# Top level modules:
# RS
#
# vsim -t 1ps +transport_int_delays +transport_path_delays -sdftyp /tp=tp_vhd.sdo -L altera -L cycloneiii -L gate_work -L work -voptargs="+acc" tp_tb
# vsim +transport_int_delays +transport_path_delays -L altera -L cycloneiii -L gate_work -L work -voptargs=\"+acc\" -sdftyp /tp=tp_vhd.sdo -t 1ps tp_tb
# ** Error: (vsim-3170) Could not find 'D:\ALTERA\testproj\simulation\modelsim\gate_work.tp_tb'.
# Error loading design
# Error: Error loading design
# Pausing macro execution
# MACRO ./tp_run_msim_gate_vhdl.do PAUSED at line 12
Подозреваю, что неправильно заданы имена в настройке test bench:
Проект в Quartus'е назван tp.
test bench name: tp.
top level module in test bench: tp_tb.
design instance name in test bench: tp.
Файл tp_tb.v:
//`timescale 1 ns / 1 ps
module RS;
reg lk;
wire [7:0] Out_byte;
initial
begin
lk=0;
forever lk=~lk;
end
tp DUT
(
.clk(lk),
.Out_byte(Out_byte) // output byte
);
endmodule
bogaev_roman
Apr 9 2010, 11:12
подозреваю, что ошибка в строчке
tp DUT
попробуйте заменить на tp uut
- unit under test сокращенно
и создайте новую тему, а не засоряйте существующую
naliwator
May 1 2010, 09:13
Пополнил содержание своей библиотеки
www.naliwator.narod.ruглавой 13. Quick Design Debugging Using SignalProbe
"Быстрая отладка проекта с помощью SignalProbe"
naliwator
Jun 1 2010, 07:02
Пополнил содержание своей библиотеки на
http://www.naliwator.narod.ru"Отладка в системе с использованием встроенного логического анализатора SignalTap II"
Это мой перевод 14 главы 4 раздела 3 тома Quartus II Handbook.
Volume 3: Verification.
14. Design Debugging Using the SignalTap II Embedded Logic Analyzer
Этот логический анализатор помогает отлаживать проект FPGA
путём пробирования состояний внутренних сигналов без использования внешней обвязки.
Все захваченные сигналы данных легко сохраняются в памяти чипа,
пока вы не будете готовы для чтения и анализа данных.
Обладая достаточными ресурсами внутренней памяти и логических элементов FPGA,
вы достаточно просто сможете построить любую схему события (или последовательности событий),
по которому данные будут защёлкиваться в памяти встроенного анализатора.
SignalTap II - это наиболее экономичный способ получения многофункционального
логического анализатора для быстрой и эффективной отладки
проектов любой сложности.
naliwator
Jun 8 2010, 12:06
Пополнил содержание своей библиотеки на
http://www.naliwator.narod.ru"Отладка в системе с использованием внешних логических анализаторов"
Это мой перевод 15 главы 4 раздела 3 тома Quartus II Handbook.
Volume 3: Verification.
15. In-System Debugging Using External Logic Analyzers
Это средство отладки имеет ряд отличий от встроенного логического анализатора SignalTap II.
Внешний логический анализатор использует минимум логики чипа FPGA для реализации
управляемых мультиплексоров, на которые поступают пробники сигналов.
Он использует внешний тактовый сигнал, позволяя асинхронно контролировать пробники.
Глубина захвата данных не зависит от внутренних ресурсов FPGA (в отличии от SignalTap II).
Однако скорость получения данных меньше, чем в SignalTap II.
И для размещения выводов анализатора приходиться резервировать внешние выводы FPGA,
тогда как SignalTap II использует для отладки стандартные выводы JTAG.
В этой главе содержится полная информация по элементов LAI и подводу к ним пробников.
А также описано использование LAI в инкрементной компиляции Quartus II.
naliwator
Jul 21 2010, 08:21
Пополнил содержание своей библиотеки на
http://www.naliwator.narod.ruОбновление памяти и констант в системе
Это мой перевод 16 главы 4 раздела 3 тома Quartus II Handbook.
Volume 3: Verification.
16. In-System Updating of Memory and Constants
Это прекрасное средство отладки.
С его помощью можно просматривать данные во внутренней памяти Altera,
а также в реальном времени изменять их.
Удобное средство для обновления программы встроенного процессора,
а также для подбора коэффициентов цифрового фильтра.
Отладка в системе с помощью исходников и пробников в системе
Это мой перевод 17 главы 4 раздела 3 тома Quartus II Handbook.
Volume 3: Verification.
17. Design Debugging Using In-System Sources and Probes
Данное средство дополняет использование SignalTap II и SignalProbe.
С его помощью вы можете создать исходные стимулы и проследить реакцию
на их воздействие. Таким образом, оно позволяет создавать примитивное
воздействие, например, нажатие на виртуальную кнопку или срабатывание виртуального датчика, с тем,
чтобы уже в более мощных средствах отладки проследить реакцию на это воздействие.
time0ut
Aug 4 2010, 09:10
люди добрые!
подскажите как пользоваться функцией Code Coverage (стоит ModelSim SE PLUS 6.5b)? или хотя бы где посмотреть работает ли она, а то я вычитал на сайте mentor'а, что для нее нужна отдельная лицензия..
Цитата(time0ut @ Aug 4 2010, 04:10)

люди добрые!
подскажите как пользоваться функцией Code Coverage (стоит ModelSim SE PLUS 6.5b)? или хотя бы где посмотреть работает ли она, а то я вычитал на сайте mentor'а, что для нее нужна отдельная лицензия..
туториал, который идет в комплекте почитайте
time0ut
Aug 4 2010, 10:41
2 des00:
а как посмотреть есть ли лицензия нужная?
naliwator
Sep 22 2010, 10:06
Пополнил содержание своей библиотеки на
http://www.naliwator.narod.ruУчебное пособие по ModelSim SE
Это самоучитель ModelSim® SE Tutorial Software Version 6.6b в переводе на русский.
Вводный курс очень полезен начинающим разработчикам.
Очень доходчиво, наглядно объяснены принципы работы симулятора.
Учебный курс разбит на 15 занятий, каждое из который начинается
с создания проекта testbench (по тексту - тестовый стенд).
Обилие поясняющих рисунков не даст вам сбиться с правильного пути.
P.S. Сделал в html.
nikolascha
Sep 23 2010, 18:39
Цитата(naliwator @ Sep 22 2010, 13:06)

Учебное пособие по ModelSim SE
Это самоучитель ModelSim® SE Tutorial Software Version 6.6b в переводе на русский.
Вы проделали большую работу. А как вы смотрите на то, чтобы разместить этот материал в
Викиучебник? Было бы неплохое начало для вот этого
проекта. Так как основной текст у вас уже подготовлен, то транслировать его в wiki-разметку нет никаких проблем. Вот только с картинками придется повозиться, чтобы их все загрузить на вики. Может и помощники найдутся в этом деле...
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.