alexPec 3 17 апреля, 2019 Опубликовано 17 апреля, 2019 · Жалоба Всем доброго дня. Отлаживал проект на XCZU7EV, на отладке ZCU104. Попутно делал свою плату на чипе поменьше - XCZU3CG-SFVC784-1I. Сейчас поставили этот чип и память DDR к нему (как на отладке, только 32 бита, без старших 32 бит). Включаю - питания в норме, пульсаций больших не наблюдаю (порядка 80мв, но осциллоскоп на землю ставишь - то же пульсации показывает такие же). Сделал тестовый проект, проверить DDR. В настройках указал этот чип Скомпилировал, открываю HW manager в vivado 2018.2. Подключаю jtag через digilent HS3. Там вижу XCZU3_0 (т.е. чип видит). Жму Program device - получаю такое: Сначала думал на кабель jtag, т.к. на ZCU104 работал со штатным USB, там jtag-usb встроенный. Подключил на ZCU104 этот кабель digilent HS3 (на ZCU104 есть отдельный разъем для JTAG). Там также видит чип, XCZU7, пробую залить его - все нормально программируется. Думал чип паленый, снял с него 2D barcode, залил на ксайлинкс - получил такое: В свойствах XCZU3 в HW manager вижу такое: BSCAN_SWITCH_USER_MASK 0001 CLASS hw_device DID jsn-JTAG-HS3-210299A56F1B-14710093-0 FULL_PROBES.FILE IDCODE 00010100011100010000000010010011 IDCODE_HEX 14710093 INDEX 0 IR_LENGTH 12 IS_SYSMON_SUPPORTED true MASK 00001111111111111111111111111111 MASK_HEX 0FFFFFFF NAME xczu3_0 PART xczu3 PARTIAL_PROBES.FILES PROBES.FILE PROGRAM.DPA_COUNT 0 PROGRAM.DPA_MODE PROGRAM.DPA_PROTECT false PROGRAM.FILE D:/xilinx_proj/zcu3_testrealboard/test_xczu3real.runs/impl_1/Base_Zynq_MPSoC_wrapper.bit PROGRAM.HW_BITSTREAM D:/xilinx_proj/zcu3_testrealboard/test_xczu3real.runs/impl_1/Base_Zynq_MPSoC_wrapper.bit PROGRAM.HW_CFGMEM PROGRAM.HW_CFGMEM_BITFILE PROGRAM.HW_CFGMEM_TYPE PROGRAM.IS_AES_PROGRAMMED false PROGRAM.IS_RSA_PROGRAMMED false PROGRAM.IS_SUPPORTED true PROGRAM.OPTIONS PROGRAM.READBACK_FILE REGISTER.BOOT_STATUS 00000000000000000000000000000000 REGISTER.BOOT_STATUS.BIT00_0_STATUS_VALID 0 REGISTER.BOOT_STATUS.BIT01_0_FALLBACK 0 REGISTER.BOOT_STATUS.BIT02_0_INTERNAL_PROG 0 REGISTER.BOOT_STATUS.BIT03_0_WATCHDOG_TIMEOUT_ERROR 0 REGISTER.BOOT_STATUS.BIT04_0_ID_ERROR 0 REGISTER.BOOT_STATUS.BIT05_0_CRC_ERROR 0 REGISTER.BOOT_STATUS.BIT06_0_WRAP_ERROR 0 REGISTER.BOOT_STATUS.BIT07_0_SECURITY_ERROR 0 REGISTER.BOOT_STATUS.BIT08_1_STATUS_VALID 0 REGISTER.BOOT_STATUS.BIT09_1_FALLBACK 0 REGISTER.BOOT_STATUS.BIT10_1_INTERNAL_PROG 0 REGISTER.BOOT_STATUS.BIT11_1_WATCHDOG_TIMEOUT_ERROR 0 REGISTER.BOOT_STATUS.BIT12_1_ID_ERROR 0 REGISTER.BOOT_STATUS.BIT13_1_CRC_ERROR 0 REGISTER.BOOT_STATUS.BIT14_1_WRAP_ERROR 0 REGISTER.BOOT_STATUS.BIT15_1_SECURITY_ERROR 0 REGISTER.BOOT_STATUS.BIT16_RESERVED 0000000000000000 REGISTER.CONFIG_STATUS 00000000000000000000000000000000 REGISTER.CONFIG_STATUS.BIT00_CRC_ERROR 0 REGISTER.CONFIG_STATUS.BIT01_DECRYPTOR_ENABLE 0 REGISTER.CONFIG_STATUS.BIT02_PLL_LOCK_STATUS 0 REGISTER.CONFIG_STATUS.BIT03_DCI_MATCH_STATUS 0 REGISTER.CONFIG_STATUS.BIT04_END_OF_STARTUP_(EOS)_STATUS 0 REGISTER.CONFIG_STATUS.BIT05_GTS_CFG_B_STATUS 0 REGISTER.CONFIG_STATUS.BIT06_GWE_STATUS 0 REGISTER.CONFIG_STATUS.BIT07_GHIGH_STATUS 0 REGISTER.CONFIG_STATUS.BIT08_MODE_PIN_M[0] 0 REGISTER.CONFIG_STATUS.BIT09_MODE_PIN_M[1] 0 REGISTER.CONFIG_STATUS.BIT10_MODE_PIN_M[2] 0 REGISTER.CONFIG_STATUS.BIT11_INIT_B_INTERNAL_SIGNAL_STATUS 0 REGISTER.CONFIG_STATUS.BIT12_INIT_B_PIN 0 REGISTER.CONFIG_STATUS.BIT13_DONE_INTERNAL_SIGNAL_STATUS 0 REGISTER.CONFIG_STATUS.BIT14_DONE_PIN 0 REGISTER.CONFIG_STATUS.BIT15_IDCODE_ERROR 0 REGISTER.CONFIG_STATUS.BIT16_SECURITY_ERROR 0 REGISTER.CONFIG_STATUS.BIT17_SYSTEM_MONITOR_OVER-TEMP_ALARM_STATUS 0 REGISTER.CONFIG_STATUS.BIT18_CFG_STARTUP_STATE_MACHINE_PHASE 000 REGISTER.CONFIG_STATUS.BIT21_SECURITY_STATUS 000 REGISTER.CONFIG_STATUS.BIT24_RESERVED 0 REGISTER.CONFIG_STATUS.BIT25_CFG_BUS_WIDTH_DETECTION 00 REGISTER.CONFIG_STATUS.BIT27_SECURITY_AUTH_ERROR 0 REGISTER.CONFIG_STATUS.BIT28_PUDC_B_PIN 0 REGISTER.CONFIG_STATUS.BIT29_BAD_PACKET_ERROR 0 REGISTER.CONFIG_STATUS.BIT30_CFGBVS_PIN 0 REGISTER.CONFIG_STATUS.BIT31_RESERVED 0 REGISTER.COR0 00000000 REGISTER.COR0.BIT00_GWE_CYCLE 000 REGISTER.COR0.BIT03_GTS_CYCLE 000 REGISTER.COR0.BIT06_LOCK_CYCLE 000 REGISTER.COR0.BIT09_MATCH_CYCLE 000 REGISTER.COR0.BIT12_DONE_CYCLE 000 REGISTER.COR0.BIT15_RESERVED 00 REGISTER.COR0.BIT17_OSCFSEL 000000 REGISTER.COR0.BIT23_RESERVED 0 REGISTER.COR0.BIT24_DRIVE_DONE 0 REGISTER.COR0.BIT25_RESERVED 0 REGISTER.COR0.BIT26_ECLK_EN 0 REGISTER.COR0.BIT27_RESERVED 00000 REGISTER.COR1.BIT00_BPI_PAGE_SIZE 00 REGISTER.COR1.BIT02_BPI_1ST_READ_CYCLE 00 REGISTER.COR1.BIT04_RESERVED 0000 REGISTER.COR1.BIT08_RBCRC_EN 0 REGISTER.COR1 00000000 REGISTER.COR1.BIT09_RBCRC_NO_PIN 0 REGISTER.COR1.BIT10_RESERVED 00000 REGISTER.COR1.BIT15_RBCRC_ACTION 00 REGISTER.COR1.BIT17_PERSIST_DEASSERT_AT_DESYNC 0 REGISTER.COR1.BIT18_RESERVED 00000000000000 REGISTER.EFUSE.DNA_PORT 000000000000000000000000 REGISTER.EFUSE.FUSE_DNA 000000000000000000000000 REGISTER.IP_DISABLE 00000000000000000000000000000000 REGISTER.IP_DISABLE.BIT00_RPU_DIS 00 REGISTER.IP_DISABLE.BIT02_GPU_DIS 0 REGISTER.IP_DISABLE.BIT03_CAN_DIS 0 REGISTER.IP_DISABLE.BIT04_APU_DIS 0000 REGISTER.IP_DISABLE.BIT08_VCU_DIS 0 REGISTER.IP_DISABLE.BIT09_RESERVED 00000000000000000000000 REGISTER.IR 000001000001 REGISTER.IR.BIT00_ALWAYS_ONE 1 REGISTER.IR.BIT01_ALWAYS_ZERO 0 REGISTER.IR.BIT02_ISC_DONE 0 REGISTER.IR.BIT03_ISC_ENABLED 0 REGISTER.IR.BIT04_INIT_COMPLETE 0 REGISTER.IR.BIT05_DONE 0 REGISTER.IR.BIT06 1 REGISTER.IR.BIT07 0 REGISTER.IR.BIT08 0 REGISTER.IR.BIT09 0 REGISTER.IR.BIT10 0 REGISTER.IR.BIT11 0 REGISTER.JTAG_ERROR_STATUS 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 REGISTER.JTAG_ERROR_STATUS.BIT000_CSU_BR_ERROR 0 REGISTER.JTAG_ERROR_STATUS.BIT001_PMU_PB_ERR_FLAG 0 REGISTER.JTAG_ERROR_STATUS.BIT002_PMU_SERV_ERR_FLAG 0 REGISTER.JTAG_ERROR_STATUS.BIT003_PMU_SERV_FW_ERR 0000 REGISTER.JTAG_ERROR_STATUS.BIT007_PMU_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT008_CSU_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT009_PLL_LOCK_ERR 00000 REGISTER.JTAG_ERROR_STATUS.BIT014_PL_GEN_ERR 0000 REGISTER.JTAG_ERROR_STATUS.BIT018_FP_TIMEOUT_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT019_LP_TIMEOUT_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT020_RESERVED_ERR 00000 REGISTER.JTAG_ERROR_STATUS.BIT025_CLOCK_MON_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT026_XPMU_ERR 00 REGISTER.JTAG_ERROR_STATUS.BIT028_SUPPLY_DET_ERR 00000000 REGISTER.JTAG_ERROR_STATUS.BIT036_FPD_WDOG_TIMER_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT037_LPD_WDOG_TIMER_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT038_RPU_CCF_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT039_RPU_LOCKSTEP_ERR 00 REGISTER.JTAG_ERROR_STATUS.BIT041_FPD_TEMP_ALERT 0 REGISTER.JTAG_ERROR_STATUS.BIT042_LPD_TEMP_ALERT 0 REGISTER.JTAG_ERROR_STATUS.BIT043_RPU1_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT044_RPU0_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT045_OCM_ECC_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT046_DDR_ECC_ERR 0 REGISTER.JTAG_ERROR_STATUS.BIT047_PMU_PB_ERR_DATA 0000000000000000000000000000000 REGISTER.JTAG_ERROR_STATUS.BIT078_PMU_PB_ERR_FLAG 0 REGISTER.JTAG_ERROR_STATUS.BIT079_PMU_SERV_ERR_DATA 00000000000000000000 REGISTER.JTAG_ERROR_STATUS.BIT099_PMU_SERV_ERR_FLAG 0 REGISTER.JTAG_ERROR_STATUS.BIT100_PMU_SERV_FW_ERR 0000 REGISTER.JTAG_ERROR_STATUS.BIT104_CSU_BR_ERR_TYPE 0000000000000000 REGISTER.JTAG_ERROR_STATUS.BIT120_CSU_BR_ERROR 0 REGISTER.JTAG_STATUS 00110000000000111000001100000001 REGISTER.JTAG_STATUS.BIT00_ALWAYS_1 1 REGISTER.JTAG_STATUS.BIT01_ALWAYS_0 0 REGISTER.JTAG_STATUS.BIT02_PL_TAP 0 REGISTER.JTAG_STATUS.BIT03_ARM_DAP 0 REGISTER.JTAG_STATUS.BIT04_ARM_DAP_SEC_GATE 0 REGISTER.JTAG_STATUS.BIT05_PL_TAP_SEC_GATE 0 REGISTER.JTAG_STATUS.BIT06_PMU_MDM_SEC_GATE 0 REGISTER.JTAG_STATUS.BIT07_DDR_PHY_SEC_GATE 0 REGISTER.JTAG_STATUS.BIT08_FUSE_MDM_DIS 1 REGISTER.JTAG_STATUS.BIT09_PL_PWR_STS 1 REGISTER.JTAG_STATUS.BIT10_BISR_FAILED 0 REGISTER.JTAG_STATUS.BIT11_LBIST_FAILED 0 REGISTER.JTAG_STATUS.BIT12_SCAN_CLEAR_FAILED 0 REGISTER.JTAG_STATUS.BIT13_CBR_DONE 0 REGISTER.JTAG_STATUS.BIT14_BOOT_MODE 1110 REGISTER.JTAG_STATUS.BIT18_UNUSED 0 REGISTER.JTAG_STATUS.BIT19_MODE_IS_DFT 0 REGISTER.JTAG_STATUS.BIT20_PSTP_CTRL 00000000 REGISTER.JTAG_STATUS.BIT28_PS_VERSION 0011 REGISTER.TIMER 00000000 REGISTER.TIMER.BIT00_TIMER_VALUE 000000000000000000000000000000 REGISTER.TIMER.BIT30_TIMER_CFG_MON 0 REGISTER.TIMER.BIT31_TIMER_USR_MON 0 REGISTER.USERCODE 00000000 REGISTER.USR_ACCESS 00000000 REGISTER.WBSTAR 00000000 REGISTER.WBSTAR.BIT00_START_ADDR 00000000000000000000000000000 REGISTER.WBSTAR.BIT29_RS_TS_B 0 REGISTER.WBSTAR.BIT30_RS 00 UNKNOWN_DEVICE false USER_CHAIN_COUNT 4 VARIANT_NAME zu3eg XSDB_USER_BSCAN 1,3 Смущает, что jtag видит VARIANT NAME zu3eg. Подскажите пожалуйста, что еще нужно, чтобы хотя бы прошивка залилась в него и почему он ругается на несоответствие? Заранее благодарен! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба Биты не читал, но... тактовый сигнал на PS (REF_CLK) подан? Сбросы сняты? Дайте картинку как выглядит JTAG-цепочка в виваде. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба было такое обратите внимание что у вас чип c концовкой -i возможно у вас чип с концовкой -i-es, но вивадо 2018 по умолчанию их не видит - нужно определенное заклинание - чтобы оно их начало видеть мне кажется вивадо 2016 умеет работать с обоими. вот это заклинание попробуйте через tcl консоль enable_beta_device xczu3сg* enable_beta_device* если появятся es чипы и поможет то добавте заклинание в init.tcl Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба 1 час назад, alexadmin сказал: Биты не читал, но... тактовый сигнал на PS (REF_CLK) подан? Сбросы сняты? Дайте картинку как выглядит JTAG-цепочка в виваде. Почитал ксайликс форумы, там говорят, что надо перекомпилить под тот кристалл, который он видит. Так и сделал. Уже не ругается на несоответствие чипа, но и не шьется. В jtag, кстати, нет арма. Вы про эту цепочку? : Экспериментами с рабочей отладочной платой было установлено, что отсутствие арма и нежелание шить плис с таким же сообщением возникает при нажатых PS_POR_B или PS_SRST_B или PS_PROG_B. Т.е. похоже в случае, когда арм не работает. Возможно и из-за клока такое бывает - не проверял. POR_B и SRST_B я беру с супервизора, который от момента подачи последнего питания держит их в нуле 200мс, затем отпускает. Реально так и есть - смотрел осциллом. У меня они соединены. PS_PROG_B просто зацепил через резистор на +1.8. Мерил на резисторе - там +1.8. Клок с генератора, смотрел осциллом - все впорядке, 50 МГЦ на PS_REF_CLK идет. Ума не приложу, что еще можно проверить, что ему надо чтобы АРМ запустить? 37 минут назад, vitus_strom сказал: было такое обратите внимание что у вас чип c концовкой -i возможно у вас чип с концовкой -i-es, Нет, по маркировке не ES, да и сайт ксайлинка по barcode выдает не ES Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба Нда. По внешним признакам или клока нет или в сбросе. Может быть плохо припаяно? Еще вроде такое бывало, если стоит невалидный boot mode. У вас вроде на загрузку с SD настроено. Если есть возможность - пощелкайте, попробуйте поставить 0000 (JTAG). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба 13 минут назад, alexadmin сказал: Нда. По внешним признакам или клока нет или в сбросе. Может быть плохо припаяно? Еще вроде такое бывало, если стоит невалидный boot mode. У вас вроде на загрузку с SD настроено. Если есть возможность - пощелкайте, попробуйте поставить 0000 (JTAG). Клок через резистор (перемычку) подается. Перемычку отпаивал, звонил ногу ПЛИС на землю тестером - внутренний диод звонится, нога пропаяна. Boot mode тоже пробовал выставлять в 0000 - то же самое. АРМ похоже не заводится... Значит все по науке с внешними сигналами, ничего больше для запуска арму не нужно? Остается только питание/земли перепроверить... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба 1 hour ago, alexPec said: перекомпилить под тот кристалл, который он видит я собственно про это и говорил... но если уже не говорит что нет несоответствия то вы на шаг впереди Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitus_strom 0 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба "В jtag, кстати, нет арма. Вы про эту цепочку? :" вроде dummy_dap есть попробуйте зашить бит файл в сдк 2017.1 вроде баг был не хотел программить чипы но из вивадо хардваер менежера все работало Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба Сначала камень FSBLом оживите, PMUFW залейте, потом уже битстрим заливайте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба 2 часа назад, gosha-z сказал: Сначала камень FSBLом оживите, PMUFW залейте, потом уже битстрим заливайте. Так он даже не пытается грузиться. На SD ногах никакой активности после дерганья за POR_B. И в jtage его нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба Выдачу xsct команды targets покажите Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 18 апреля, 2019 Опубликовано 18 апреля, 2019 · Жалоба 3 часа назад, gosha-z сказал: Выдачу xsct команды targets покажите Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 19 апреля, 2019 Опубликовано 19 апреля, 2019 · Жалоба APU в отключке, оживлять нечего. Причем как-то радикально в отключке, даже по JTAG не видно. Как зовут супервизор питания? Попробуйте снизить PS клок до рекомендуемых 33.33, может в этом какая засада... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 19 апреля, 2019 Опубликовано 19 апреля, 2019 · Жалоба 7 минут назад, gosha-z сказал: APU в отключке, оживлять нечего. Причем как-то радикально в отключке, даже по JTAG не видно. Как зовут супервизор питания? Попробуйте снизить PS клок до рекомендуемых 33.33, может в этом какая засада... ADM6711, мониторит 3.3В, оно последнее включается, выход через делитель доводится до 1.8В С клоком - да, можно попробовать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 19 апреля, 2019 Опубликовано 19 апреля, 2019 · Жалоба 13 minutes ago, alexPec said: ADM6711 Для меня до сих пор остается загадкой: чем народу не нравится All-in-One супервизор питания, сделанный специально для ZUS+, все почему-то норовят сделать россыпью? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться