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

 
 
> новый проект
_Anatoliy
сообщение Feb 12 2014, 13:24
Сообщение #1


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Всем доброго дня!
Делаю новый проект с nios,похоже снова что то напутал,застрял на загрузке.
После включения питания и загрузки хард-части начинает грузиться софт-часть,но как-то странно.На линии epcs_flash_controller_dclk идут пачки клока по 8 тактов и интервалом 2 мкс,этот процесс длится примерно 8 секунд после чего полная тишина.Причём линия epcs_flash_controller_sce так и остаётся в нуле. Мемори-эдитором смотрел область памяти - там только 0xFF ,т.е. загрузки из epcs не происходит.Посмотрите,плз,нет ли ошибок в qsys.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
warrior-2001
сообщение Feb 18 2014, 10:08
Сообщение #2


Местный
***

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



Цитата(_Anatoliy @ Feb 18 2014, 11:15) *
Огромное спасибо! Вот уважаю такие бескомпромиссные ответы. Сейчас попробую,только скажите как выбрать EPCS_BASE?





Так это же адрес из системы Qsys для EPCS.

Я не понимаю, отчего у вас получаются разные адреса в Qsys и в hex. Может в этом и косяк. Я с Ниосом работаю только в Quartus 11.1sp2.



--------------------
Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 18 2014, 11:06
Сообщение #3


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(warrior-2001 @ Feb 18 2014, 12:08) *
Так это же адрес из системы Qsys для EPCS.
Я не понимаю, отчего у вас получаются разные адреса в Qsys и в hex. Может в этом и косяк.

Адрес чего?Епцс-контроллера?Для чего кому-то знать какой адрес на шине имеет контроллер?
Я выше приводил скрипты,там ключа --base нет,скрипты брал на www.naliwator.narod.ru
Пока беру тайм-аут,буду переустанавливать ОС на компе.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Feb 19 2014, 01:23
Сообщение #4


Гуру
******

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



Цитата(_Anatoliy @ Feb 18 2014, 18:06) *
Адрес чего?Епцс-контроллера?Для чего кому-то знать какой адрес на шине имеет контроллер?

именно, сам адрес можно взять в system.h или из QSys выдернуть. смысл в том, что nios2-flash-programmer шьет "на горячую",
используя контроллер EPCS (который на самом деле SPI). кстати, забыл написать, что sof уже должен быть загружен
(при первой прошивке можно использовать nios2-configure-sof). при последующих манипуляциях sof нужно подгружать только если сменится адрес контроллера
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 20 2014, 11:08
Сообщение #5


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(vadimuzzz @ Feb 19 2014, 03:23) *
именно, сам адрес можно взять в system.h или из QSys выдернуть. смысл в том, что nios2-flash-programmer шьет "на горячую",
используя контроллер EPCS (который на самом деле SPI). кстати, забыл написать, что sof уже должен быть загружен
(при первой прошивке можно использовать nios2-configure-sof). при последующих манипуляциях sof нужно подгружать только если сменится адрес контроллера

Ясно,спасибо!
Переустановил у себя ОС,Квартус и т.д.
Е.М.Н.И.П раньше скрипты были в файлах *.sh например elf2flash.sh , сейчас же есть только elf2flash без расширения с загадочным содержимым:
Код
#!/bin/sh
. "${0%[\\/]*}/sh_jar.sh"

Или так и должно быть и память опять подводит? WinXP32.
Кстати,а чем плох метод предложенный warrior-2001? По моему это самый короткий путь. Правда у меня ещё не получилось сделать *.hех из *.elf для инициализации ram , отвлекаюсь постоянно.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Feb 21 2014, 03:15
Сообщение #6


Гуру
******

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



Цитата(_Anatoliy @ Feb 20 2014, 18:08) *
сейчас же есть только elf2flash без расширения с загадочным содержимым:
Код
#!/bin/sh
. "${0%[\\/]*}/sh_jar.sh"

это тоже shell-script, в *nix расширения не обязательны
Цитата
Кстати,а чем плох метод предложенный warrior-2001? По моему это самый короткий путь. Правда у меня ещё не получилось сделать *.hех из *.elf для инициализации ram , отвлекаюсь постоянно.

мне скрипт удобнее тем, что он хоть напишет, если что не так пошло. а квартусовский программер выкинет что-нибудь типа "JTAG error $*&^*#%" и сиди думай. а еклипсовские приблуды имеют свойство падать вообще молча (не все, зависит от версии и погоды на Марсе).
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 21 2014, 09:29
Сообщение #7


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(vadimuzzz @ Feb 21 2014, 05:15) *
мне скрипт удобнее тем, что он хоть напишет, если что не так пошло. а квартусовский программер выкинет что-нибудь типа "JTAG error $*&^*#%" и сиди думай. а еклипсовские приблуды имеют свойство падать вообще молча (не все, зависит от версии и погоды на Марсе).

Это да,но команду Update Memory Initialization File можно и скриптом выполнить.
Помогите,плз,разобраться с прерываниями.Получается так что прерывания возникают всегда,даже когда нет принимаемых данных.Как такое может быть,ведь при чтении данных флаг RRDY сниматься должен?
Код
static void spi_slave_isr(void* isr_context)
    {
    volatile alt_u8 data_rx;
    RES_BIT_OUTPORT(21);
    data_rx = (char)(IORD_ALTERA_AVALON_SPI_RXDATA(SPI_SLAVE_BASE))&0x000000ff;
    IOWR_ALTERA_AVALON_SPI_STATUS(SPI_SLAVE_BASE, 0x0);
    *isr_context = (alt_u16)data_rx;
    SET_BIT_OUTPORT(21);
    }

Выяснилось что SPI здесь не виноват,прерывания возникают даже если в регистре SPI снять все маски прерываний.
Они возникают сразу после регистрации обработчика.
Код
void Irq_init() {
//    IOWR_ALTERA_AVALON_SPI_CONTROL(SPI_SLAVE_BASE, ALTERA_AVALON_SPI_CONTROL_IRRDY_MSK | ALTERA_AVALON_SPI_CONTROL_IE_MSK);
    // Регистрация обработчика прерываний
    t1=alt_ic_isr_register(
            SPI_SLAVE_IRQ_INTERRUPT_CONTROLLER_ID,
            SPI_SLAVE_IRQ,
            spi_slave_isr,
            spi_buf_rx,
            flags);
}

С чем это может быть связано?
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Feb 22 2014, 01:57
Сообщение #8


Гуру
******

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



Цитата(_Anatoliy @ Feb 21 2014, 16:29) *
С чем это может быть связано?

либо в железе глюк (надо лезть сигналтапом в потроха контроллера SPI), либо SPI_SLAVE_BASE куда-то не туда показывает (например, сменились адреса в Qsys).
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 22 2014, 05:18
Сообщение #9


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(vadimuzzz @ Feb 22 2014, 03:57) *
либо в железе глюк (надо лезть сигналтапом в потроха контроллера SPI), либо SPI_SLAVE_BASE куда-то не туда показывает (например, сменились адреса в Qsys).

Ага,спасибо,уже иду по следу...
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 22 2014, 19:02
Сообщение #10


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Коллеги,ещё один вопрос остался.Касается ниосовского SPI_slave,у него запрос прерывания формируется по окончанию сигнала SS.
Таким образом под SS может быть до 4-х принятых байт.А если нужно принять команду из 6 или 10 байт?Самому писать SPI_slave?Или дробить команду на несколько посылок? Как поступаете?И совсем не понятно как при таком построении выполнять чтение данных по указанному адресу.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Feb 23 2014, 06:37
Сообщение #11


Гуру
******

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



Цитата(_Anatoliy @ Feb 23 2014, 02:02) *
Таким образом под SS может быть до 4-х принятых байт.А если нужно принять команду из 6 или 10 байт?Самому писать SPI_slave?Или дробить команду на несколько посылок? Как поступаете?И совсем не понятно как при таком построении выполнять чтение данных по указанному адресу.

я свой контроллер SPI писал, с картами и блудницами. прерывания, правда, не делал - мне надо было только чтоб пакет любой длины был, но не вижу проблемы
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 23 2014, 07:26
Сообщение #12


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(vadimuzzz @ Feb 23 2014, 08:37) *
я свой контроллер SPI писал, с картами и блудницами. прерывания, правда, не делал - мне надо было только чтоб пакет любой длины был, но не вижу проблемы

Спасибо!
Насчёт своего контроллера понятно,можно сделать такой какой хочется.Я думал может штатный всё же удастся применить.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Feb 24 2014, 14:57
Сообщение #13


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Коллеги, а кто работал с Component Editor для QSYS?Создаю новый компонент SPI_slave,на вкладке Signals нужно портам присвоить параметры Interface и Signal Type. Для внешних сигналов (MOSI,MISO etc) Signal Type выбираю extern, а вот какой тип Interface нужно выбрать? Вроде нужно выбирать тип Conduit, но в QSYS компонент выглядит не так как штатный. На картинке сверху родной компонент,снизу новый.Подскажите,плз.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- _Anatoliy   новый проект   Feb 12 2014, 13:24
- - Kuzmi4   2 _Anatoliy тут надо бы ещё лог сообщений Qsys (ес...   Feb 12 2014, 13:32
|- - _Anatoliy   Цитата(Kuzmi4 @ Feb 12 2014, 15:32) 2 _An...   Feb 12 2014, 14:24
- - Kuzmi4   2 _Anatoliy На счёт варнингов - так оно и есть, эт...   Feb 12 2014, 15:19
|- - _Anatoliy   Цитата(Kuzmi4 @ Feb 12 2014, 17:19) Квар...   Feb 13 2014, 07:15
|- - Kuzmi4   Цитата(_Anatoliy @ Feb 13 2014, 10:15) .....   Feb 13 2014, 08:52
- - Golikov A.   у ксалинкса взять старый проект и адаптировать под...   Feb 13 2014, 09:37
- - Stewart Little   Цитата(_Anatoliy @ Feb 12 2014, 17:24) По...   Feb 13 2014, 10:02
|- - _Anatoliy   Цитата(Stewart Little @ Feb 13 2014, 12:0...   Feb 13 2014, 11:16
|- - Stewart Little   Цитата(_Anatoliy @ Feb 13 2014, 15:16) То...   Feb 13 2014, 13:29
|- - _Anatoliy   Цитата(Stewart Little @ Feb 13 2014, 15:2...   Feb 13 2014, 13:47
|- - Golikov A.   Цитата(Stewart Little @ Feb 13 2014, 17:2...   Feb 13 2014, 15:59
|- - Копейкин   Цитата(Golikov A. @ Feb 13 2014, 19:59) а...   Feb 13 2014, 16:21
- - warrior-2001   Совет прост. Начните отладку с ончип памяти! П...   Feb 13 2014, 11:54
|- - _Anatoliy   Цитата(warrior-2001 @ Feb 13 2014, 13...   Feb 13 2014, 12:38
|- - Stewart Little   Цитата(_Anatoliy @ Feb 13 2014, 16:38) Сп...   Feb 13 2014, 14:40
|- - _Anatoliy   Цитата(Stewart Little @ Feb 13 2014, 16:4...   Feb 13 2014, 14:49
|- - Stewart Little   Цитата(_Anatoliy @ Feb 13 2014, 18:49) По...   Feb 13 2014, 14:58
|- - _Anatoliy   Цитата(Stewart Little @ Feb 13 2014, 16:5...   Feb 13 2014, 15:53
- - Golikov A.   че прям кладешь микруху и паяльником-феном греешь?...   Feb 13 2014, 16:50
|- - Stewart Little   Цитата(Golikov A. @ Feb 13 2014, 20:50) ч...   Feb 14 2014, 09:07
|- - _Anatoliy   Цитата(Stewart Little @ Feb 14 2014, 11:0...   Feb 14 2014, 09:32
|- - _Anatoliy   Вот захватил сигналы on-chip-ram, видно что epcs_f...   Feb 14 2014, 15:48
- - vadimuzzz   а содержимое флешки проверяли?   Feb 15 2014, 00:22
|- - _Anatoliy   Цитата(vadimuzzz @ Feb 15 2014, 02:22) а ...   Feb 15 2014, 08:25
|- - _Anatoliy   Так и есть,если тормознуть epcs_flash_controller н...   Feb 15 2014, 10:25
- - vadimuzzz   исходники загрузчика есть в составе квартуса, може...   Feb 15 2014, 11:36
|- - _Anatoliy   Цитата(vadimuzzz @ Feb 15 2014, 13:36) ис...   Feb 17 2014, 09:13
- - vadimuzzz   галочки поставьте, чтоб он игнорировал ID и прочее   Feb 17 2014, 09:37
|- - _Anatoliy   Цитата(vadimuzzz @ Feb 17 2014, 11:37) га...   Feb 17 2014, 09:46
|- - _Anatoliy   Сразу после добавления проекта Квартус в Hardware ...   Feb 17 2014, 10:12
||- - warrior-2001   Цитата(_Anatoliy @ Feb 17 2014, 14:12) Эт...   Feb 17 2014, 10:40
||- - _Anatoliy   Цитата(warrior-2001 @ Feb 17 2014, 12...   Feb 17 2014, 11:40
|- - vadimuzzz   Цитата(_Anatoliy @ Feb 17 2014, 16:46) Зн...   Feb 18 2014, 00:30
|- - _Anatoliy   Цитата(vadimuzzz @ Feb 18 2014, 02:30) и ...   Feb 18 2014, 07:15
- - warrior-2001   Вот что-то каши много теперь стало. 1 - я предлага...   Feb 17 2014, 09:50
- - warrior-2001   Цитата(_Anatoliy @ Feb 20 2014, 15:08) Кс...   Feb 20 2014, 13:10
|- - alexadmin   Цитата(warrior-2001 @ Feb 20 2014, 17...   Feb 20 2014, 13:13
|- - _Anatoliy   Цитата(warrior-2001 @ Feb 20 2014, 15...   Feb 20 2014, 13:39
- - Kuzmi4   2 _Anatoliy путь вроде верный, на первый взгляд.. ...   Feb 24 2014, 16:34
|- - _Anatoliy   Цитата(Kuzmi4 @ Feb 24 2014, 18:34) Спас...   Feb 25 2014, 08:22
- - Kuzmi4   2 _Anatoliy Я храню всё "хозяйство" прое...   Feb 25 2014, 08:54
- - _Anatoliy   Цитата(Kuzmi4 @ Feb 25 2014, 10:54) Боль...   Feb 25 2014, 09:14
- - _Anatoliy   Библиотечный компонент то скомпилировался,но шина ...   Feb 26 2014, 06:56


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 15:12
Рейтинг@Mail.ru


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