Я пытаюсь построить горнодобывающую прошивку для одного из моего FPGA Altera плата, основанный на прошивке ztex. Я ориентируюсь на cyclone3, как это то, что я должен играть. Я использую последнюю версию встроенного программного обеспечения (ztex ZtexBTCMiner-120417.tar.bz2), который неизмененной сохранить верхнего уровня. Я получаю ошибки построения в модуле sha256_pipe2_base.
Я знаю достаточно Verilog, чтобы быть опасным, но не достаточно, чтобы понять это в ближайшее время.
Я надеюсь, что кто-то работать в этом (перенос на Altera устройства) перед.
Кто-нибудь есть идея о том, что происходит, и (надеюсь), как это исправить?
Спасибо adance!
-Marty
Вот сообщение об ошибке:
Код:
Информация: ************************************************ *******************
Информация: Запуск анализа Quartus II & Синтез
Информация: Версия 11,0 сборки 208 07/03/2011 Service Pack 1 SJ Web Edition
Информация: Обработка начата: Чт Июн 14, 2012 23:16:17
Информация: Версия 11,0 сборки 208 07/03/2011 Service Pack 1 SJ Web Edition
Информация: Обработка начата: Чт Июн 14, 2012 23:16:17
Информация: Команда: quartus_map --read_settings_files = на --write_settings_files = выкл c3_miner_usb -c fpgaminer_top
Внимание: Параллельная компиляция не лицензирована и была отключена
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (89) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (89) рядом с текстом "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста ")"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "+"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста ";"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (92) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (92) рядом с текстом "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (96) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL синтаксис ошибка при sha256_pipes2.v (98) рядом с текстом "["; ожидая "}"
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe2_base" на sha256_pipes2.v (27) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe130" на sha256_pipes2.v (128) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe123" на sha256_pipes2.v (159) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe129" на sha256_pipes2.v (181) из-за предыдущие ошибки
<СНиПы>
Ошибка: Анализ Quartus II & Синтез был неудачным. 15 ошибок, 1 предупреждение
Ошибка: Пик виртуальной памяти: 273 мегабайт
Ошибка: Обработка закончилась: Чт Июн 14 23:16:18 2012
Ошибка: Прошедшее время: 00:00:01
Ошибка: Общее время процессора (на всех процессорах): 00:00:01
Ошибка: Пик виртуальной памяти: 273 мегабайт
Ошибка: Обработка закончилась: Чт Июн 14 23:16:18 2012
Ошибка: Прошедшее время: 00:00:01
Ошибка: Общее время процессора (на всех процессорах): 00:00:01
Ошибка: Quartus II Полная компиляция была неудачной. 17 ошибок, 1 предупреждение
Информация: Запуск анализа Quartus II & Синтез
Информация: Версия 11,0 сборки 208 07/03/2011 Service Pack 1 SJ Web Edition
Информация: Обработка начата: Чт Июн 14, 2012 23:16:17
Информация: Версия 11,0 сборки 208 07/03/2011 Service Pack 1 SJ Web Edition
Информация: Обработка начата: Чт Июн 14, 2012 23:16:17
Информация: Команда: quartus_map --read_settings_files = на --write_settings_files = выкл c3_miner_usb -c fpgaminer_top
Внимание: Параллельная компиляция не лицензирована и была отключена
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (89) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (89) рядом с текстом "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста ")"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста "+"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (91) вблизи текста ";"; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (92) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (92) рядом с текстом "["; ожидая "<знак равно", или "знак равно"
Ошибка (10170): Verilog HDL ошибка синтаксиса в sha256_pipes2.v (96) рядом с текстом "["; ожидая "}"
Ошибка (10170): Verilog HDL синтаксис ошибка при sha256_pipes2.v (98) рядом с текстом "["; ожидая "}"
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe2_base" на sha256_pipes2.v (27) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe130" на sha256_pipes2.v (128) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe123" на sha256_pipes2.v (159) из-за предыдущие ошибки
Ошибка (10112): игнорируемое блок конструкции "sha256_pipe129" на sha256_pipes2.v (181) из-за предыдущие ошибки
<СНиПы>
Ошибка: Анализ Quartus II & Синтез был неудачным. 15 ошибок, 1 предупреждение
Ошибка: Пик виртуальной памяти: 273 мегабайт
Ошибка: Обработка закончилась: Чт Июн 14 23:16:18 2012
Ошибка: Прошедшее время: 00:00:01
Ошибка: Общее время процессора (на всех процессорах): 00:00:01
Ошибка: Пик виртуальной памяти: 273 мегабайт
Ошибка: Обработка закончилась: Чт Июн 14 23:16:18 2012
Ошибка: Прошедшее время: 00:00:01
Ошибка: Общее время процессора (на всех процессорах): 00:00:01
Ошибка: Quartus II Полная компиляция была неудачной. 17 ошибок, 1 предупреждение
В определяет являются немодифицированными также:
Код:
`Определить IDX (х) (((х) + 1) * (32) -1): ((х) * (32))
`Определить Е0 (х) ({{х} [1: 0], {х} [31: 2]} ^ {{х} [12: 0], {х} [31:13]} ^ {{х } [21: 0], {х} [31:22]})
`Определить Е1 (х) ({{х} [5: 0], {х} [31: 6]} ^ {{х} [10: 0], {х} [31:11]} ^ {{х } [24: 0], {х} [31:25]})
`Определить CH (х, у, г) ((г) ^ ((х) & ((У) ^ (г))))
`Определить Maj (х, у, г) (((х) & (У)) | ((Г) & ((Х) | (у))))
`Определить S0 (х) ({{х} [6: 4] ^ {х} [17:15], {{х} [3: 0], {х} [31: 7]} ^ {{х} [14: 0], {х} [31:18]} ^ {х} [31: 3]})
`Определить S1 (х) ({{х} [16: 7] ^ {х} [18: 9], {{х} [6: 0], {х} [31:17]} ^ {{х} [8: 0], {х} [31:19]} ^ {х} [31:10]})
`Определить Е0 (х) ({{х} [1: 0], {х} [31: 2]} ^ {{х} [12: 0], {х} [31:13]} ^ {{х } [21: 0], {х} [31:22]})
`Определить Е1 (х) ({{х} [5: 0], {х} [31: 6]} ^ {{х} [10: 0], {х} [31:11]} ^ {{х } [24: 0], {х} [31:25]})
`Определить CH (х, у, г) ((г) ^ ((х) & ((У) ^ (г))))
`Определить Maj (х, у, г) (((х) & (У)) | ((Г) & ((Х) | (у))))
`Определить S0 (х) ({{х} [6: 4] ^ {х} [17:15], {{х} [3: 0], {х} [31: 7]} ^ {{х} [14: 0], {х} [31:18]} ^ {х} [31: 3]})
`Определить S1 (х) ({{х} [16: 7] ^ {х} [18: 9], {{х} [6: 0], {х} [31:17]} ^ {{х} [8: 0], {х} [31:19]} ^ {х} [31:10]})
Вот строки 89-98, которые оскорбляющие Кварт.
Код:
data15_p1 <= `S1 (S [I-1] .data [` IDX (15)]); // 3
data15_p2 <= Data15_p1; // 1
data15_p3 <= ((Я == 1) `S1 (S [I-1] .data [` IDX (14)]): & alpha; S [I-1] .data15_p2) + S [I-1] .data [ `IDX (9)] + S [I-1] .data [ `IDX (0)]; // 3
Данные [ `IDX (15)] <= `S0 (data_buf [` IDX (1)]) + data15_p3; // 4
state_buf <= S [I-1] .state; // 2
t1 <= `СН (S [I-1] .state [` IDX (4)], S [I-1] .state [ `IDX (5)], S [I-1] .state [` IDX (6) ]) + `Е1 (S [I-1] .state [` IDX (4)]) + S [I-1] .t1_p1; // 6
состояние [ `IDX (0)] <= `MAJ (state_buf [` IDX (0)], state_buf [ `IDX (1)], state_buf [` IDX (2)]) + `Е0 (state_buf [` IDX (0)]) + t1; // 7
data15_p2 <= Data15_p1; // 1
data15_p3 <= ((Я == 1) `S1 (S [I-1] .data [` IDX (14)]): & alpha; S [I-1] .data15_p2) + S [I-1] .data [ `IDX (9)] + S [I-1] .data [ `IDX (0)]; // 3
Данные [ `IDX (15)] <= `S0 (data_buf [` IDX (1)]) + data15_p3; // 4
state_buf <= S [I-1] .state; // 2
t1 <= `СН (S [I-1] .state [` IDX (4)], S [I-1] .state [ `IDX (5)], S [I-1] .state [` IDX (6) ]) + `Е1 (S [I-1] .state [` IDX (4)]) + S [I-1] .t1_p1; // 6
состояние [ `IDX (0)] <= `MAJ (state_buf [` IDX (0)], state_buf [ `IDX (1)], state_buf [` IDX (2)]) + `Е0 (state_buf [` IDX (0)]) + t1; // 7