Перейти к содержанию
    

Проблемы со стартом XCZU3CG

Всем доброго дня.

Отлаживал проект на XCZU7EV, на отладке ZCU104. Попутно делал свою плату на чипе поменьше - XCZU3CG-SFVC784-1I. Сейчас поставили этот чип и память DDR к нему (как на отладке, только 32 бита, без старших 32 бит). Включаю - питания в норме, пульсаций больших не наблюдаю (порядка 80мв, но осциллоскоп на землю ставишь - то же пульсации показывает такие же). Сделал тестовый проект, проверить DDR. В настройках указал этот чип

setting.thumb.jpg.5f2bc793d504806f0de3978607aa5e42.jpg

Скомпилировал, открываю HW manager в vivado 2018.2. Подключаю jtag через digilent HS3. Там вижу XCZU3_0 (т.е. чип видит). Жму Program device - получаю такое:

2.thumb.jpg.c140bcc45906ceadf8fa4858f0abe958.jpg

Сначала думал на кабель jtag, т.к. на ZCU104 работал со штатным USB, там jtag-usb встроенный. Подключил на ZCU104 этот кабель digilent HS3 (на ZCU104 есть отдельный разъем для JTAG). Там также видит чип, XCZU7, пробую залить его - все нормально программируется. Думал чип паленый, снял с него 2D barcode, залил на ксайлинкс - получил такое:

 

chip1.jpg.b2cb0392d9fe6748aed7976fbb03fcd4.jpg

В свойствах 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.

Подскажите пожалуйста, что еще нужно, чтобы хотя бы прошивка залилась в него и почему он ругается на несоответствие?

 

Заранее благодарен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Биты не читал, но... тактовый сигнал на PS (REF_CLK) подан? Сбросы сняты? Дайте картинку как выглядит JTAG-цепочка в виваде.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

было такое

обратите внимание что у вас чип c концовкой -i возможно у вас чип с концовкой -i-es, но вивадо 2018 по умолчанию их не видит - нужно определенное заклинание - чтобы оно их начало видеть мне кажется вивадо 2016 умеет работать с обоими.

вот это заклинание попробуйте через tcl консоль 

enable_beta_device xczu3сg*
enable_beta_device*

если появятся es чипы и поможет то добавте заклинание в init.tcl

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, alexadmin сказал:

Биты не читал, но... тактовый сигнал на PS (REF_CLK) подан? Сбросы сняты? Дайте картинку как выглядит JTAG-цепочка в виваде.

Почитал ксайликс форумы, там говорят, что надо перекомпилить под тот кристалл, который он видит. Так и сделал. Уже не ругается на несоответствие чипа, но и не шьется.

В jtag, кстати, нет арма. Вы про эту цепочку? :

image.png.27ab8654aa2979f3f8b0ead745d23509.png

 

Экспериментами с рабочей отладочной платой было установлено, что отсутствие арма и нежелание шить плис с таким же сообщением возникает при нажатых 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нда. По внешним признакам или клока нет или в сбросе. Может быть плохо припаяно?

Еще вроде такое бывало, если стоит невалидный boot mode. У вас вроде на загрузку с SD настроено. Если есть возможность - пощелкайте, попробуйте поставить 0000 (JTAG).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 минут назад, alexadmin сказал:

Нда. По внешним признакам или клока нет или в сбросе. Может быть плохо припаяно?

Еще вроде такое бывало, если стоит невалидный boot mode. У вас вроде на загрузку с SD настроено. Если есть возможность - пощелкайте, попробуйте поставить 0000 (JTAG).

 

Клок через резистор (перемычку) подается. Перемычку отпаивал, звонил ногу ПЛИС на землю тестером - внутренний диод звонится, нога пропаяна.

Boot mode тоже пробовал выставлять в 0000 - то же самое. АРМ похоже не заводится... Значит все по науке с внешними сигналами, ничего больше для запуска арму не нужно?

Остается только питание/земли перепроверить...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, alexPec said:

перекомпилить под тот кристалл, который он видит

я собственно про это и говорил... но если уже не говорит  что нет несоответствия то вы на шаг впереди

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"В jtag, кстати, нет арма. Вы про эту цепочку? :"

вроде dummy_dap есть 

попробуйте зашить бит файл 

в сдк 2017.1 вроде баг был не хотел программить чипы но из вивадо хардваер менежера все работало

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, gosha-z сказал:

Сначала камень FSBLом оживите, PMUFW залейте, потом уже битстрим заливайте.

Так он даже не пытается грузиться. На SD ногах никакой активности после дерганья за POR_B. И в jtage его нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

APU в отключке, оживлять нечего. Причем как-то радикально в отключке, даже по JTAG не видно. Как зовут супервизор питания? Попробуйте снизить PS клок до рекомендуемых 33.33, может в этом какая засада...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 минут назад, gosha-z сказал:

APU в отключке, оживлять нечего. Причем как-то радикально в отключке, даже по JTAG не видно. Как зовут супервизор питания? Попробуйте снизить PS клок до рекомендуемых 33.33, может в этом какая засада...

ADM6711, мониторит 3.3В, оно последнее включается, выход через делитель доводится до 1.8В

С клоком - да, можно попробовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, alexPec said:

ADM6711

Для меня до сих пор остается загадкой: чем народу не нравится All-in-One супервизор питания, сделанный специально для ZUS+, все почему-то норовят сделать россыпью?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...