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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Постоянно теряется System ID, Задолбало нету сил!!!
gridinp
сообщение Oct 27 2012, 08:28
Сообщение #16


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Цитата(Acvarif @ Oct 27 2012, 11:14) *
Потратив время на разные перекомпиляции наткнулся на то, что System ID и Timestamp начинает корректно читаться независимо от проекта, независимо от проца и незавсимо от его частоты если в .sdc файл добавить строки типа
Код
#создаются все выходные клоки PLL
derive_pll_clocks -create_base_clocks
#вычисляется джиттер
derive_clock_uncertainty

Глубоко с этим не разбирался. Если кто знает в чем хитрость поясните пожалуйста.

Наверное дело не в этом, у меня это всё было описано. Проблема видимо в порче прошивки. Я только, что разрешил Error Detection CRC (это в Device and Pin options).
И когда схема сбоит, error-нога показывает, что CRC плохой, если стоит в '0' то всё работает ок, ну это и понятно если прошивка испорчена то тут что угодно может быть.
У меня DE0-nano, загружаю или через встроенный usb-blaster или через ecps, сбоит одинаково и по тому и по другому, если когда зашьётся, то всё работает. Обычно
пока холодная плата сбоит, прогреется зашивается почти всегда.
Описано это в an357, an539, но почему прошивка портится? вот вопрос...
Или у них вообще нет CRC контроля при конфигурации устройства?.. Я помню раньше flex10k если неправильно конфиг запихнёшь, то она вообще не работает...

Сообщение отредактировал gridinp - Oct 27 2012, 08:48
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Oct 27 2012, 10:45
Сообщение #17


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(gridinp @ Oct 27 2012, 11:28) *
Наверное дело не в этом, у меня это всё было описано. Проблема видимо в порче прошивки. Я только, что разрешил Error Detection CRC (это в Device and Pin options).
И когда схема сбоит, error-нога показывает, что CRC плохой, если стоит в '0' то всё работает ок, ну это и понятно если прошивка испорчена то тут что угодно может быть.
У меня DE0-nano, загружаю или через встроенный usb-blaster или через ecps, сбоит одинаково и по тому и по другому, если когда зашьётся, то всё работает. Обычно
пока холодная плата сбоит, прогреется зашивается почти всегда.
Описано это в an357, an539, но почему прошивка портится? вот вопрос...
Или у них вообще нет CRC контроля при конфигурации устройства?.. Я помню раньше flex10k если неправильно конфиг запихнёшь, то она вообще не работает...

Спасибо за информацию.
Я тоже борюсь с DE0-nano. На работе стоит DE0 - работает гораздо надежнее. Правда там использую Q90. С проблемой System ID и Timestamp столкнулся когда запустил Q110. Если-бы в Q90 был Cyclon 4 думаю было-бы проще. Программа которая исправно работает на DE0, в Nano работает с кучей странностей при одной и той-же конфигурации системы. Не понятно, то-ли компилятор Q110 (Эклипс) совсем не то комплит, то-ли весь Q110 глючит.
Например, простая функция передачи по Ethernet типа eth_ocm_raw_send(ethmass, sizeof(ethmass)); при размере массива ethmass 1168 байт в DE0 посылает то, что прописано, а DE0 Nano посылает 1164 байта. Чудеса. ..
Go to the top of the page
 
+Quote Post
gridinp
сообщение Oct 27 2012, 12:45
Сообщение #18


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Цитата(Acvarif @ Oct 27 2012, 14:45) *
Спасибо за информацию.
Я тоже борюсь с DE0-nano. На работе стоит DE0 - работает гораздо надежнее. Правда там использую Q90. С проблемой System ID и Timestamp столкнулся когда запустил Q110. Если-бы в Q90 был Cyclon 4 думаю было-бы проще. Программа которая исправно работает на DE0, в Nano работает с кучей странностей при одной и той-же конфигурации системы. Не понятно, то-ли компилятор Q110 (Эклипс) совсем не то комплит, то-ли весь Q110 глючит.
Например, простая функция передачи по Ethernet типа eth_ocm_raw_send(ethmass, sizeof(ethmass)); при размере массива ethmass 1168 байт в DE0 посылает то, что прописано, а DE0 Nano посылает 1164 байта. Чудеса. ..

Да я такие ошибки тоже вижу, при этом процессор на первый взгляд работает, а CRC контроль показывает ошибку.
Это легко проверить, просто поставить галочку "Error Detection CRC "и осциллограф на JP3-17.

В общем всё это очень грустно, получается, что сигналу CONF_DONE нельзя верить, а чтобы убедиться в правильной конфигурации надо потратить 10% ёмкости FPGA на самодиагностику.
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Oct 27 2012, 14:24
Сообщение #19


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(gridinp @ Oct 27 2012, 15:45) *
Да я такие ошибки тоже вижу, при этом процессор на первый взгляд работает, а CRC контроль показывает ошибку.
Это легко проверить, просто поставить галочку "Error Detection CRC "и осциллограф на JP3-17.

В общем всё это очень грустно, получается, что сигналу CONF_DONE нельзя верить, а чтобы убедиться в правильной конфигурации надо потратить 10% ёмкости FPGA на самодиагностику.

Попробую с CRC.
Поскольку Вы Работаете с Nano подскажите пожалуйста как корректно импортировать демо проект "DE0_Nano_SOPC_DEMO" в Eclipse Q11.0. Демка создана с DE0_Nano_Syslib (вроде под Q10.1), а в Q11.0 нужен BSP файл. Иначе не компилится main.c. Не врубаюсь как все перенести без потерь в Q11.0
Go to the top of the page
 
+Quote Post
gridinp
сообщение Oct 27 2012, 15:21
Сообщение #20


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Цитата(Acvarif @ Oct 27 2012, 18:24) *
Попробую с CRC.
Поскольку Вы Работаете с Nano подскажите пожалуйста как корректно импортировать демо проект "DE0_Nano_SOPC_DEMO" в Eclipse Q11.0. Демка создана с DE0_Nano_Syslib (вроде под Q10.1), а в Q11.0 нужен BSP файл. Иначе не компилится main.c. Не врубаюсь как все перенести без потерь в Q11.0

Я эти проекты вообще не собирал, я сразу делал в eclipse из template. Сначала попробовал Counter Binary по алтеровским tutorial.
Потом Hello MicroC/OS-II начал переделывать для себя. А из этого проекта я только sopc-файл взял и в Qsys сконвертил

Сообщение отредактировал gridinp - Oct 27 2012, 15:24
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Oct 27 2012, 17:24
Сообщение #21


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(gridinp @ Oct 27 2012, 18:21) *
Я эти проекты вообще не собирал, я сразу делал в eclipse из template. Сначала попробовал Counter Binary по алтеровским tutorial.
Потом Hello MicroC/OS-II начал переделывать для себя. А из этого проекта я только sopc-файл взял и в Qsys сконвертил

Понял. Если не сложно, подскажите как из SOPC в Qsys конвертить.
Мне удалось таки запустить DE0_Nano_SOPC_DEMO в Q11.0 Пришлось заново пересоздать проект в Eclipse. Все зараотало. Обратил внимание, что System ID и Timestamp в проекте стоит устойчиво, во всяком случае после двух изменений. Там имеются компоненты Clock Crossing Bridge Может стоит их использовать...
Go to the top of the page
 
+Quote Post
gridinp
сообщение Oct 27 2012, 17:36
Сообщение #22


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Цитата(Acvarif @ Oct 27 2012, 21:24) *
Понял. Если не сложно, подскажите как из SOPC в Qsys конвертить.
Мне удалось таки запустить DE0_Nano_SOPC_DEMO в Q11.0 Пришлось заново пересоздать проект в Eclipse. Все зараотало. Обратил внимание, что System ID и Timestamp в проекте стоит устойчиво, во всяком случае после двух изменений. Там имеются компоненты Clock Crossing Bridge Может стоит их использовать...

А просто открываем sopc-файл из Qsys он преобразует, а сохраняем уже qsys-файл. Clock Crossing Bridge, как написано в описании облегчает работу avalon, но ошибок
из-за их отсутствия не будет, лишь бы не ругался TimeQuest. Всё равно я думаю будет сбоить, у меня сбои плавно нарастали с увеличением проекта, это и
понятно что увеличивается вероятность, может попробую сменить epcs64 на epcs16, что-то epcs64 spansion народ не любит... Еще надо попробовать снизить
частоту конфига используя CLKUSR И хорошо бы вызвонить резисторы, чтобы перепаять AS FAST на AS STANDART
Go to the top of the page
 
+Quote Post
gridinp
сообщение Oct 29 2012, 10:39
Сообщение #23


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Вылечили мы свою DE0-nano, Vcore плавало 1.5-1.7V вместо 1.2, выкусили REG3 и впаяли свой стабилизатор.
Похоже, что было впаяно что другое по ошибке вместо LP38500SD-ADJ
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Oct 29 2012, 14:29
Сообщение #24


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(gridinp @ Oct 29 2012, 14:39) *
Вылечили мы свою DE0-nano, Vcore плавало 1.5-1.7V вместо 1.2, выкусили REG3 и впаяли свой стабилизатор.
Похоже, что было впаяно что другое по ошибке вместо LP38500SD-ADJ

Да...уж.
На моей Nano перестал теряться ID.
По поводу 1.2 В тоже нужно проверить.
По ходу возник вопрос, который поставил в тупик. Имеем макет с EP3C25 + EPCS16. Пытаюсь его настроить. Конфигурация в EPCS16 зашивается нормально. А как теперь быть с программой Nios, которая пока работает во внутренней памяти (в дальнейшем должна работать в SDRAM). Куда и как ее загружать. Я по наивности считал, что все можно поместить в EPCS16. Если это не так, подскажите пожалуйста как?
Go to the top of the page
 
+Quote Post
gridinp
сообщение Oct 29 2012, 19:15
Сообщение #25


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

Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543



Цитата(Acvarif @ Oct 29 2012, 18:29) *
Да...уж.
На моей Nano перестал теряться ID.
По поводу 1.2 В тоже нужно проверить.
По ходу возник вопрос, который поставил в тупик. Имеем макет с EP3C25 + EPCS16. Пытаюсь его настроить. Конфигурация в EPCS16 зашивается нормально. А как теперь быть с программой Nios, которая пока работает во внутренней памяти (в дальнейшем должна работать в SDRAM). Куда и как ее загружать. Я по наивности считал, что все можно поместить в EPCS16. Если это не так, подскажите пожалуйста как?

Надо у процессора поставить Reset vector memory: имя_epcs_контроллера.epcs_control_port. Начальный загрузчик делает Quartus и помещает его в адреса EPCS контроллера.
После компиляции сконфигурить через бластер fpga чтобы совпадал system Id с BSP и далее нужно зашить в ecps с помощью Flash Programmer сразу и SOF и ELF.
Flash Programmer шьёт как я понимаю через JTAG_UART->JTAG_CPU->ECPS_контроллер. *.jic - jtag indirect файл в этом случае можно не делать.
Это я описал случай, когда бластер подключается к JTAG.
Да ещё процессор должен к ECPS контроллеру подключаться по обоим шинам и данных и инструкций, так как загрузчик прямо с него выполняется.

Сообщение отредактировал gridinp - Oct 29 2012, 19:23
Go to the top of the page
 
+Quote Post
warrior-2001
сообщение Nov 9 2012, 08:27
Сообщение #26


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 9-10-08
Из: Таганрог, Ростовская обл.
Пользователь №: 40 792



Много писать не буду - сухой отстаток такой:
В версии 11.1 sp2 для того, чтобы гарантированно получить рабочую конфигурацию ПЛИС и увидеть System ID надо снести папки db и Qsys_system\synthesis\submodules.
Тогда Eсlipse, поставляемый с данной версией квартуса нормально работает. При это перед повторной сборкой ПО надо сделать clean и для исходников, и для BSP.
Если использовать версию Eсlipse, поставляемую с Quartus 12.0 sp2, то папки можно и не удалять, но clean делать обязательно.
Изменение версии самого Quartus на проблему никак не влияет.
Как-то так.


--------------------
Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.
Go to the top of the page
 
+Quote Post
en-valb
сообщение Dec 10 2016, 17:21
Сообщение #27


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 18-04-14
Из: Екатеринбург
Пользователь №: 81 446



Столкнулся с аналогичной проблемой. Отладочная плата SoCKit. Днем ранее загрузил Quartus, открыл в нем проект SoCKit_DDR3_Nios_Test с диска к плате. Загрузил, в ПЛИС, все заработало. Начал его переделывать, удалил on-chip, перекинул все на DDR3, добавил sgdma, fifo, rgb конвертер vsync generator, все что нужно для рисования Ниосом на экране. В eclipse создал новый проект HelloWorld, запустил, все заработало, на мониторе тоже все хорошо, видно как запустилась видиоподсистема. Сохранил его как шаблон для дальнейших экспериментов. Сегодня продолжил работу. Примерно в 12:15 приступил к сборке проекта в eclipse. Скопировал файлы от другого тестового проекта в свой проект. Повозился немного с кэшем, плюнул и заменил Nios II gen 2 на Nios 2 Classic, уменьшил на один разряд адрес DDR3, в итоге получил 512 МБ вместо 1024 МБ. Далее все собралось и к 17:45 я увидел ожидаемое изображение на экране. Немного поигрался с кодом. После все еще раз собрал, проверил и запакавал архиватором с пометкой ****_v2.
Продолжил совершенствовать проект, стояла задача задействовать в контроллере DDR3 много портовый режим, залез в QSYS настроил, тут же вылезли какие то странные ошибки которые исчезли когда я удалил оба мастера (Nios и SGDMA) и снова их добавил. Все система сгенирировалась, далее собрал проект в Quartus и запустил Eclipse попытался подцепить существующий проект, но он даже BSP не перегенирировал. Создал проект с нуля. Закинул в него файлы *.c и *.h, скомпилировал и далее RunAs, eclipse выдал окно с ошибкой по SYSID, нажатия refresh ни чего не дало, установил заветные галочки, запустил, вылетело ожидаемое окно с ошибкой.
Как я ни колдовал ни чего не помогает. Создавал HelloWorld, пытался его грузить все равно вылетает. Ну думаю контроллер памяти не хочет работать в много портовом режиме, пере собрал в QSYS в одно портовый режим как было раньше, все скомпилировал, в eclipse по новой создал HelloWorld, скомпилировал и далее RunAs и все тот же вылет.
Удалил проект полностью, восстановил из архива. Прошил все заработало.
Начал его менять, снова те же проблемы. И вот уже 20:00 я удаляю опять перепаханый проект, восстанавливаю из архива, загружаю в ПЛИС и все ни чего не работает, вылетает все время ошибка по SYSID. Я уже и eclipse и quartus и комп перегружал ни чего не помогает.
Что могло произойти, использую Quartus 15.1.0 Build 185, Eclipse Kepler тот который с ним в комплекте устанавливается.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 11:31
Рейтинг@Mail.ru


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