Author |
Message |
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
Да, та же самая флешка. Если на плате есть одна, нафига лепить вторую? Приаттачивается бинарник (mif вроде) при генерации .sof - файла, там можно указать адрес (в моем примере 70000h), и при прошивке этот бинарник упадет во флешку по указанному адресу.
|
20 May 2017 00:29 |
|
|
IgorR76
Senior
Joined: 27 Jul 2015 15:20 Posts: 101
|
Все ясно! А чем конвертнуть bin в mif? И про начальный адрес пользовательской области неясно. Я не встречал в описаниях "размер конфигурационного пзу". Где глянуть?
Спасибо!
Last edited by IgorR76 on 20 May 2017 00:43, edited 1 time in total.
|
20 May 2017 00:34 |
|
|
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
Если в циклон, то это не проблема вообще, т.к. для любой памяти в момент создания из мегафункции можно указать файл инициализации. Я копировал сначала "в циклон" чтобы отработать модуль обмена с флешкой, а затем просто допилил запись в RAM. Но как бы пофик куда оно пишется, вопрос, я так понял, был в том, как прочитать. Насчет mif соврал, hex ему надо (интеловский .hex в смысле). Я бинарник конвертил в mif своей С-прогой (там ничего сложного, формат прост как мычание), а затем квартусовским mif2hex - собсна в hex. Зачем так сложно? А хз, уже не помню Ессно, это все батники делали.
|
20 May 2017 00:41 |
|
|
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
Не понял, какой области? Какой размер? Размер флешки тот, что вы воткнете на плату (например 4 или 16 мегабит). Если речь про 70000h - то это я от балды выбирал, примерно в конце своей 16-мегабитной EPCS. Во флешке нет "пользовательских" областей, она вся пользовательская, т.е. вы ее можете использовать где угодно как обычную сериал-флеш.
|
20 May 2017 00:58 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 706 Location: WWW
|
|
20 May 2017 01:01 |
|
|
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
Так в чем конкретно проблема-то? Там же расписали решение пошагово. Что не получается?
|
20 May 2017 01:04 |
|
|
IgorR76
Senior
Joined: 27 Jul 2015 15:20 Posts: 101
|
Например, в CPLD есть CFM-конфигурационная область, и UFM-пользовательская. А в случае FPGA каков размер CFM? Можно, конечно, отталкиваться от размера sof, но "от балды" не хочется А в MAX10 вообще две флешки - вторая для резервного восстановления при неудачном "in-system" обновлении.
|
20 May 2017 01:21 |
|
|
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
А причем тут, что там внутри CPLD/FPGA? Мы читаем из EPCS в RAM. Память внутри циклона нас не интересует. Или вопрос в том, как определить размер прошивки? Так квартус при создании sof его нарисует. И не даст наложить на прошивку что-то еще. Т.е. у меня прошивка была в начале пространства EPCS, бинарник биоса - в конце. Можно было засунуть в середину, можно было положить сразу после прошивки (по началу ближайшей страницы EPCS). Говорю же - от балды выбрал.
|
20 May 2017 01:37 |
|
|
IgorR76
Senior
Joined: 27 Jul 2015 15:20 Posts: 101
|
Именно в этом и был вопрос. Предположу, что newold86 поможет директива 'ramstyle'. С ее помощью задается тип создаваемой памяти. Подробно расписано в Quartus Handbook, стр. 16-45 (1007 в pdf).
|
20 May 2017 01:48 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 706 Location: WWW
|
Ну не умею я скопировать, бестолковый
|
20 May 2017 01:54 |
|
|
IgorR76
Senior
Joined: 27 Jul 2015 15:20 Posts: 101
|
Предположу, что человек хочет использовать внутренний ram плисы, как пзу биоса. Но оно не инициализируется. Есть ограничения на типы памяти при использовании. Например, ram модуль m9k-последовательного типа, поэтому не может быть асинхронным.
|
20 May 2017 02:18 |
|
|
Vic3Dexe
Doomed
Joined: 16 Dec 2014 11:58 Posts: 370 Location: Киев
|
Ну так человеку написали по ссылке, как именно решать данную проблему. Если что - человек здесь, и может озвучить, на каком этапе у него затык. Писать код за человека никто не будет. Тем более, что ни с максом 10, ни с UFM я не работал.
|
20 May 2017 02:22 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 706 Location: WWW
|
Проблема у меня везде... Просто я с подобным не сталкивался, поэтому не знаю, откуда вообще начинать... Неужели нужно с нуля создать устройство, которое байт за байтом будет пересылать содержимое UFM в RAM, или же есть какие-то готовые функции для этого ?
|
20 May 2017 03:30 |
|
|
IgorR76
Senior
Joined: 27 Jul 2015 15:20 Posts: 101
|
Нет, с нуля создавать не надо. Я ж привёл пример. viewtopic.php?p=135740#p135740И в электрониксе Вам точно такой же код выложили...
|
20 May 2017 03:38 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 706 Location: WWW
|
Я не вижу здесь кода для копирования содержимого - это инициализация ROM для микросхем, которые такой режим поддерживают. У меня вся проблема в том, что используемая FPGA инициализацию не поддерживает
|
20 May 2017 03:49 |
|
|