Top secrets sources NedoPC ngs

Rev

Rev 138 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

 ЗАЧЕМ ЭТО НУЖНО

Представьте, что вы собрали сами NGS, а программатора для флешки у вас нет.
И pentevo у вас rev.C, где флешка обычно припаяна. Как прошить NGS?
Такая же проблема, если вы апгрейдили флешку ngs новой прошивкой и запороли.

Для решения этих проблем и был написан данный тул.


 ЧТО НУЖНО, ЧТОБ ВОСПОЛЬЗОВАТЬСЯ

Всего лишь usb blaster (или byte blaster) для прошивания альтер в NGSе и сама
пентева. Ну и сдкарточка для пентевы (но это, думаю, есть у любого пользователя
пентевы). Кроме того, работоспособность я проверял на ERS 0.55f, но по идее
должно работать и на более свежих ERS.
Наконец, я проверял этот тул только на платах NGS rev.C. По идее, должно
работать и на rev.A/rev.B, но у меня их просто нет, чтобы можно было проверить.


 ГДЕ БРАТЬ ВСЕ ФАЙЛЫ

Файлы можно взять либо в репозитории NGS по адресу http://ngs.googlecode.com,
либо в отдельно распространяемом архиве. Все пути и там и там одинаковые.


 КАК СОБСТВЕННО ПОЛЬЗОВАТЬСЯ

1. Создайте где-нибудь на сдкарточке для пентевы директорию, и положите туда
файлы z80/create_update/full_ngs.rom и z80/pgmflash/PGMFLASH.$C. Можно эти файлы
положить даже в корень, главное, чтоб они оба лежали рядом в одной директории.
Не забудьте сдкарточку эту сунуть в пентеву.

2. В NGS воткните флешку и бластер, NGS воткните в пентеву, бластер подключите
к ПЦ. Включите пентеву и убедитесь, что квартусовский программатор на ПЦ видит
NGS [должны быть видны FPGA (EP1K30) и CPLD (EPM3064A либо EPM7032) в одной
JTAG-цепочке].

3. Прошейте в EPM файлик *.pof из директории cpld/cpld6_revC_onlyclock
(для NGS rev.C) либо cpld/cpld3_onlyclock (для NGS rev.A/rev.B). После удачного
прошивания, выключите и включите пентеву.

4. Прошейте в EP1K30 файлик *.sof из директории fpga/pgmflash/quartus. После
успешного прошивания должен загореться светодиод на NGS. Если из бейсика делать
OUT 51,64, то этот светодиод должен при каждом ауте гаснуть либо загораться по
очереди. Внимание! Не отключайте питание пентевы при переходе к п.5.

5. Используя File Browser из ERS, зайдите в созданную в п.1 директорию и
запустите PGMFLASH.$C. Следуйте подсказкам на экране. Если прошивка удалась,
переходите к п.6.

6. Теперь флешка прошита, но чтоб NGS вновь ожил, надо вернуть оригинальную
прошивку в CPLD. Поступайте аналогично п.3, выбирая для прошивки файлы *.pof из
следующих директорий: cpld/cpld5_buf для NGS Rev.C либо cpld/cpld4_fullcase для
NGS Rev.A/Rev.B. После успешного прошивания CPLD вновь выключите и включите
пентеву.

7. ???

8. Profit! Теперь ваш NGS должен ожить, помигав при включении питания
светодиодиком вполнакала и зажгя его в полную силу через секунду.


 TODO (точнее, NEVERDO :)

Тул для прошивки, скорее всего, будет работать неправильно, если флешка битая,
т.е. не прошивается или не стирается. Но это не беда -- просто поставьте в NGS
нормальную флешку ST M29F040B.

Работоспособность тула проверялась только на NGS Rev.C и ERS 0.55f, а также
только на вышеуказанной флешке. По идее, должно работать и с Am29F040B и любой
другой, совместимой по командам, но -- не проверялось.

В конце концов, трдшник с сорцами прилагается.
КЧНТТиД (Кому Что Надо, Тот То и Делает).

lvd[dot]mhm[dog]gmail[dot]com