Jump to content
    

GOWIN 2A ошибка при прожиге

50 минут назад, DanilinS сказал:

Лучше замыкать 1 и 4 ногу. Садить выход на землю - не особо хорошая идея. 

Вообще что-то замыкать - это крайняя мера и если есть опасения, то можно это делать через резистор 100 Ом или около того.

Share this post


Link to post
Share on other sites

Ура!!! Помог первоначальный ножной вариант с ногами 1-4. После указанной процедуры с замыканием размыканием контактов 1-4 запустил openFPGALoader вначале с флагом --detect. Вот результат

openFPGALoader --detect
Jtag frequency : requested 6.00MHz   -> real 6.00MHz  
index 0:
    idcode 0x81b
    manufacturer Gowin
    family GW2A
    model  GW2A(R)-18(C)
    irlength 8

Потом запустил прожиг

Сначала пошла очистка в таком режиме

 openFPGALoader -v --unprotect-flash -b tangprimer20k -f my_led.fs
write to flash
Jtag frequency : requested 6.00MHz   -> real 6.00MHz  
found 1 devices
index 0:
    idcode 0x81b
    manufacturer Gowin
    family GW2A
    model  GW2A(R)-18(C)
    irlength 8
File type : fs
Parse file Parse my_i2c.fs:
checksum 0xa31a
Done
DONE
bitstream header infos
CRCCheck: ON
Compress: OFF
ConfDataLength: 1342
ProgramDoneBypass: OFF
SPIAddr: 00000000
SecurityBit: ON
idcode: 0000081b
loading_rate: 0
Jtag frequency : requested 2.50MHz   -> real 2.00MHz  
Jtag frequency : requested 10.00MHz  -> real 6.00MHz  
pollFlag: a0
erase SRAM pollFlag: 80
pollFlag: 80
pollFlag: 80
pollFlag: a0
Done
pollFlag: 20
b 40 16 b read b40160b
Detail:
Jedec ID          : 0b
memory type       : 40
memory capacity   : 16
EDID + CFD length : 0b
EDID              : 1640
CFD               : 0b 40 16 0b 40 16 0b 40 16
b 40 16 b read b40160b
Detail:
Jedec ID          : 0b
memory type       : 40
memory capacity   : 16
EDID + CFD length : 0b
EDID              : 1640
CFD               : 0b 40 16 0b 40 16 0b 40 16
RDSR : 00
WIP  : 0
WEL  : 0
BP   : 0
TB   : 0
SRWD : 0
RDSR : 00
WIP  : 0
WEL  : 0
BP   : 0
TB   : 0
SRWD : 0
flash chip unknown: use basic protection detection
timeout: ff ff ff
ff
wait: Error
Erasing: [                                                  ] 0.00%timeout: ff ff ff
ff
wait: Error
Erasing: [======                                            ] 11.11%timeout: ff ff ff
ff
wait: Error
Erasing: [============                                      ] 22.22%timeout: ff ff ff
ff
wait: Error
Erasing: [=================                                 ] 33.33%timeout: ff ff ff
ff
wait: Error
Erasing: [=======================                           ] 44.44%timeout: ff ff ff
ff
wait: Error
Erasing: [============================                      ] 55.56%timeout: ff ff ff
ff
wait: Error
Erasing: [==================================                ] 66.67%timeout: ff ff ff
ff
wait: Error
Erasing: [=======================================           ] 77.78%timeout: ff ff ff
ff
wait: Error
Erasing: [==================================================] 100.00%

Done

После этого автоматом запустился режим очистки вот так
timeout: ff ff ff
ff
wait: Error
Writing: [                                                  ] 0.00%timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
Writing: [=                                                 ] 0.18%timeout: ff ff ff

Это продолжалось довольно долго. Приведу лишь последние несколько строк

Writing: [==================================================] 99.75%timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
timeout: ff ff ff
ff
wait: Error
Writing: [==================================================] 99.93%timeout: ff ff ff
ff
wait: Error
Writing: [==================================================] 100.00%
Done

И после этого плата снова стала прошиваться обычным образом. Прошивается именно флеш. После выключения питания программа остается в флеше и все работает.

Огромное спасибо каждому, кто принимал участие и помогал справиться с этой проблемой.

 

Edited by SergeBN

Share this post


Link to post
Share on other sites

Молодец. 

У тебя плата в док станции торчит или в голом виде?

 

Share this post


Link to post
Share on other sites

В док станции. Но пришлось вынимать, когда исправлял. Сейчас обратно поставил в станцию. Работает по прежнему. хорошо.

Share this post


Link to post
Share on other sites

Это хорошо, что в док-станции. 

Смотри: все эти операции с замыканием ног SPI флеша ставят целью блокировать загрузку прошивки при включении питания. Но при использовании дока есть "запасной" способ решить эту проблему. 

Как известно, на доке есть 4 переключателя одним блоком. Переключатель №1 должен быть опущен для нормальной работы платы. Он управляет процессом загрузки. 

Алгоритм такой: 

1) Врубаем флешер на запись

2) Как побежала полоска прогресс-бара прошивки то подымаем переключатель в верх а потом в низ. Это "ломает" нормальный процесс загрузки прошивки из флеша. 

3) Дожидаемся окончания загрузки. Неудачно естественно.

4) Шьем нормальную прошивку. 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...