cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Observer
Observer
1,326 Views
Registered: ‎02-21-2013

HTG-830 Won't Boot from BPI without Hardware Manager

Jump to solution

I am having an issue booting from BPI flash.  I have a simple test design that only turns on a couple LEDS.  After programming the flash, if I cycle power with the JTAG cable connected and the hardware manager running in Vivado, the board will boot.  However if I remove the cable or close the hardware manager, when I apply power the board doesn't boot.

 

I am using an HTG-830 board with Vivado 2017.3.  If I load the bit file for the example design that came with the board into the BPI, it works as expected (i.e boots up without having to have the hardware manager running).  This leads me to believe that I am missing some setting somewhere.

 

My method is as follows...
- Synthesize
- Implement
- Generate Bitstream
- Open hardware manager and program the FPGA (works fine)
- Add configuration device
- generate MCS file
 (write_cfgmem -format mcs -interface BPIx16 -size 128 -loadbit  "up 0x0 top.bit" -file top.mcs)
- Program configuration device
- Cycle power (works)
- Remove JTAG cable and cycle power (DOES NOT WORK)
- Reattach JTAG cable and cycle power (works again)

 

I have added the following lines to my XDC file...

set_property CONFIG_MODE BPI16 [current_design]
set_property BITSTREAM.CONFIG.BPI_SYNC_MODE Type1 [current_design]
set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN div-1 [current_design]
set_property BITSTREAM.CONFIG.UNUSEDPIN Pullnone [current_design]
set_property CFGBVS GND [current_design]
set_property CONFIG_VOLTAGE 1.8 [current_design]
set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]

 

Any ideas?

0 Kudos
Reply
1 Solution

Accepted Solutions
Observer
Observer
1,609 Views
Registered: ‎02-21-2013

Solved it.

 

I was the EMCLK property.

set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN div-1 [current_design]

 

I am not entirely sure why this was causing a problem since the schematic shows that there is an 80 MHZ clock hooked up to the EMCLK pin.  But removing that line from the XDC file seems to have solved the problem.

View solution in original post

5 Replies
Mentor
Mentor
1,307 Views
Registered: ‎02-24-2014

Documentation on the HTG-830 is not freely available, so it's hard to investigate..   your Vivado properties look fine, so this might be some sort of hardware issue with the JTAG connections..    Get out the HTG-830 schematic, and pore over it in the JTAG section.   There's got to be a hardware reason why connecting the cable lets the board boot.

Don't forget to close a thread when possible by accepting a post as a solution.
0 Kudos
Reply
Observer
Observer
1,287 Views
Registered: ‎02-21-2013

I thought about that, but the schematic appears to follow the Xilinx App notes for the BPI and JTAG.  Also, the Hitech example file works correctly.  I have asked Hitech, but they have been less than helpful. I was hoping someone else might have had a similar problem.

 

The problem isn't just that the JTAG cable has to be connected, the hardware manager also needs to be running and connected.  It has to be something simple that I am overlooking.

0 Kudos
Reply
Mentor
Mentor
1,266 Views
Registered: ‎02-24-2014

do you have the source for the Hitech example design?   Can you build it from scratch and get it to work?

Don't forget to close a thread when possible by accepting a post as a solution.
0 Kudos
Reply
Observer
Observer
1,610 Views
Registered: ‎02-21-2013

Solved it.

 

I was the EMCLK property.

set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN div-1 [current_design]

 

I am not entirely sure why this was causing a problem since the schematic shows that there is an 80 MHZ clock hooked up to the EMCLK pin.  But removing that line from the XDC file seems to have solved the problem.

View solution in original post

Mentor
Mentor
1,242 Views
Registered: ‎02-24-2014

Excellent detective work!   That deserves a kudo!

Don't forget to close a thread when possible by accepting a post as a solution.
0 Kudos
Reply