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

 
 
> Altera Remote Ststem Update
doom13
сообщение Jan 21 2015, 13:59
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Добрый день.
В проекте присутствует ядро Remote update, всё управление происходит с помощью Nios II. Есть две конфигурации: factory и application.
Factory заливается по адресам 0x0, application - 0xd00000. Включается питание запускается factory конфигурация, которая через Remote Update загружает конфигурацию application.
Алгоритм работы для factory следующий:
Код
rd_data = rsu_controller_rd_reconf_src_condition((void *)RSU_CONTROLLER_BASE);
if((rd_data == RECONF_SOURCE_POR) || (rd_data == RECONF_SOURCE_EXTERNAL_RST) || (rd_data == RECONF_SOURCE_LOGIC_TRIGGERED))
{
    rsu_controller_wr_config_mode((void *)RSU_CONTROLLER_BASE, CONFIG_MODE_APPLICATION);
    rsu_controller_wr_wdt_timeout((void *)RSU_CONTROLLER_BASE, RSU_WDT_TIMEOUT_VALUE);
    rsu_controller_write_param((void *)RSU_CONTROLLER_BASE, PARAM_WDT_ENABLE, 1);
    rsu_controller_write_param((void *)RSU_CONTROLLER_BASE, PARAM_PAGE_SELECT, APPLICATION_PAGE_START_ADDRESS);
    rsu_controller_reconfig((void *)RSU_CONTROLLER_BASE);
}


Алгоритм работы для application:
Код
rd_data = rsu_controller_rd_config_mode((void *)RSU_CONTROLLER_BASE);
if(rd_data == CONFIG_MODE_APPLICATION)
{
    rd_data = rsu_controller_read_param((void *)RSU_CONTROLLER_BASE, PARAM_WDT_ENABLE);
    if(rd_data)
    {
         rsu_controller_reset_timer((void *)RSU_CONTROLLER_BASE, 1); // сигнал разрешения сброса wdt, разрешает подачу меандра на вход reset_timer ядра Remote Update
    }
}


Для удобства перепрошивки довавлена функция реконфигурации, алгоритм которой:
Код
#if __REMOTE_SYSTEM_UPDATE_CONFIGURATION_MODE == CONFIG_MODE_FACTORY
    rsu_controller_wr_config_mode((void *)RSU_CONTROLLER_BASE, CONFIG_MODE_FACTORY);
    rsu_controller_write_param((void *)RSU_CONTROLLER_BASE, PARAM_WDT_ENABLE, 0);
    rsu_controller_wr_wdt_timeout((void *)RSU_CONTROLLER_BASE, 0);
    rsu_controller_write_param((void *)RSU_CONTROLLER_BASE, PARAM_PAGE_SELECT, FACTORY_PAGE_START_ADDRESS);
    rsu_controller_reconfig((void *)RSU_CONTROLLER_BASE);
#elif __REMOTE_SYSTEM_UPDATE_CONFIGURATION_MODE == CONFIG_MODE_APPLICATION
    rsu_controller_reconfig((void *)RSU_CONTROLLER_BASE);
#endif


Вопросы в следующем:
1) Заливаем factory, application, переключаем питание - всё работает, даём команду Reconfig - всё перезапускается.
2) Залит только factory. По включению питания запустилось, дали команду Reconfig - всё ок.
3) Проблемная ситуация 1: Находимся в режиме application и перезаливаем прошивку для application. Что-то легло - прошивка залилась неправильно/частично, даём команду Reconfig и FPGA уже не стартует (а должна была остаться конфигурация factory).
Сбрасываем питание, запускается factory и Reconfig для него уже работает.
4) Проблемная ситуация 2: Включаем питание. Для application залита какая-то ерунда - загружается конфигурация factory. Factory перезаливает прошивку для application, делаем Reconfig и всё опять дохнет (а должна была стартануть конфигурация application). По сбросу питания опять всё запускается, переходит в режим application и нормально работает.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Jan 28 2015, 09:08
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



а флешка не переконфигурируется на чтение по 1 или 4 линиям? может в каком-то режиме она всегда читается по одному, без переконфигурации?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 28 2015, 09:26
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Golikov A. @ Jan 28 2015, 12:08) *
а флешка не переконфигурируется на чтение по 1 или 4 линиям? может в каком-то режиме она всегда читается по одному, без переконфигурации?

Данная флэш-память может работать в обоих режимах, но делo не в самой памяти, проблема с её контроллером, а это уже IP-ядро от Altera.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Jan 28 2015, 09:57
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(doom13 @ Jan 28 2015, 15:26) *
Данная флэш-память может работать в обоих режимах, но делo не в самой памяти, проблема с её контроллером, а это уже IP-ядро от Altera.

я это и имел в виду: м.б. при реконфиге через EPCQx1 плис пытается по 4-м линиям читать, а память по одной выдает?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 28 2015, 10:05
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(vadimuzzz @ Jan 28 2015, 12:57) *
я это и имел в виду: м.б. при реконфиге через EPCQx1 плис пытается по 4-м линиям читать, а память по одной выдает?

Если правильно понимаю, то режим загрузки (х4) задаётся прошивкой (в начале есть инфа, как настроить интерфейс загрузки). Если перекомпилить на х1, то бинарник отличается.

Вот это Вы не пропустили:
Цитата(vadimuzzz @ Jan 28 2015, 11:41) *
а в момент, когда начинает reconfig глючить (когда nSTATUS дергается) какие/сколько линии данных(DQ) активны?
Цитата(doom13 @ Jan 28 2015, 12:07) *

Отличие только в DQ0. Для случая, когда RECONFIG работает - она '0' (не было перезаписи epcq), для случая - RECONFIG не работает она '1' (была запись epcq и DQ0 осталась в '1').

???
Или это - подтверждение.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- doom13   Altera Remote Ststem Update   Jan 21 2015, 13:59
- - vadimuzzz   посмотрел у себя в коде, все аналогично. возникли ...   Jan 23 2015, 04:08
|- - doom13   Цитата(vadimuzzz @ Jan 23 2015, 07:08) по...   Jan 23 2015, 06:38
|- - vadimuzzz   Цитата(doom13 @ Jan 23 2015, 12:38) Предп...   Jan 23 2015, 06:56
- - doom13   С Ваших слов возникло предположение по поводу необ...   Jan 23 2015, 07:07
|- - vadimuzzz   ЦитатаUPP: Но как тогда работает пункт №2 (залит f...   Jan 23 2015, 08:06
|- - doom13   Цитата(vadimuzzz @ Jan 23 2015, 11:06) я ...   Jan 23 2015, 08:30
|- - vadimuzzz   Цитата(doom13 @ Jan 23 2015, 14:30) Ещё н...   Jan 23 2015, 09:00
|- - doom13   Цитата(vadimuzzz @ Jan 23 2015, 12:00) ес...   Jan 23 2015, 09:22
|- - vadimuzzz   Цитата(doom13 @ Jan 23 2015, 15:22) nSTAT...   Jan 23 2015, 10:36
- - doom13   Нашёл ещё одну глючную ситуацию, работает applicat...   Jan 23 2015, 10:51
|- - vadimuzzz   Цитата(doom13 @ Jan 23 2015, 16:51) Очень...   Jan 23 2015, 11:35
|- - doom13   Цитата(vadimuzzz @ Jan 23 2015, 14:35) а ...   Jan 23 2015, 11:40
- - Golikov A.   может сократить пути и уменьшить число вариантов з...   Jan 23 2015, 12:06
|- - doom13   Цитата(Golikov A. @ Jan 23 2015, 15:06) м...   Jan 23 2015, 12:10
- - Golikov A.   просто можно грузиться всегда через фактори и она ...   Jan 23 2015, 17:47
|- - doom13   Цитата(Golikov A. @ Jan 23 2015, 20:47) п...   Jan 23 2015, 19:22
- - Golikov A.   а вочьдогом перегрузить?   Jan 23 2015, 21:49
|- - doom13   Цитата(Golikov A. @ Jan 24 2015, 00:49) а...   Jan 24 2015, 12:13
- - doom13   Почитал ещё параметры для Remote Update, после ста...   Jan 26 2015, 12:59
- - doom13   Как и предполагалось, есть какая-то ерунда при исп...   Jan 26 2015, 15:24
- - vadimuzzz   ЦитатаКак и предполагалось, есть какая-то ерунда п...   Jan 27 2015, 02:44
|- - doom13   Цитата(vadimuzzz @ Jan 27 2015, 05:44) а ...   Jan 27 2015, 06:11
|- - vadimuzzz   Цитата(doom13 @ Jan 27 2015, 12:11) Там б...   Jan 27 2015, 09:09
|- - doom13   Цитата(vadimuzzz @ Jan 27 2015, 12:09) мо...   Jan 27 2015, 10:40
|- - vadimuzzz   Цитата(doom13 @ Jan 27 2015, 16:40) Не по...   Jan 28 2015, 04:55
|- - doom13   Цитата(vadimuzzz @ Jan 28 2015, 07:55) ко...   Jan 28 2015, 08:12
|- - vadimuzzz   Цитата(doom13 @ Jan 28 2015, 14:12) Да не...   Jan 28 2015, 08:41
|- - doom13   Цитата(vadimuzzz @ Jan 28 2015, 11:41) а ...   Jan 28 2015, 09:07
|- - vadimuzzz   Цитата(doom13 @ Jan 28 2015, 16:05) Или э...   Jan 28 2015, 11:01
|- - doom13   Цитата(vadimuzzz @ Jan 28 2015, 14:01) не...   Jan 28 2015, 11:28
- - Golikov A.   ну пока прошивку не считаешь, режим же не поймешь....   Jan 28 2015, 10:27
- - doom13   Default-mode для EPCQ256 (N25Q256) - это, как пони...   Jan 28 2015, 13:04
|- - vadimuzzz   Цитата(doom13 @ Jan 28 2015, 19:04) EPCS/...   Jan 28 2015, 14:10
|- - doom13   Цитата(vadimuzzz @ Jan 28 2015, 17:10) до...   Jan 28 2015, 15:12
- - doom13   Перекомпилил с настройкой Active Serial x1 - не за...   Jan 29 2015, 06:43


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 05:24
Рейтинг@Mail.ru


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