UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Observer dylan.campbell
Observer
1,028 Views
Registered: ‎08-31-2018

Generating MCS file with two bitstreams causes error

Jump to solution

Hello all,

 

I'm using Vivado 2018.2 to try to load two bit files into one mcs file so that I can test out the multi boot functionality of an Artix 7.  I'm running into a problem when I try to generate the mcs file using two bit files.  With one bit file the mcs file generates correctly.  

 

I have my two configurations(IE bit files) then I go to 'Tools>Generate Memory Configuration File' and put my two bit files in then press 'OK'.  It runs the TCL command but then it generates the following error:

 

ERROR: [Writecfgmem 68-6] Cannot parse string "up 0x00000000 "C:/Users/CampbellDy/icap_test/icape2_test.bit" up 0xF0000000 "C:/Users/CampbellDy/icap_test/icape2_test_1s.bit"".
Correct format is "up|down 0x0 bitfile.bit <bitfile2.bit>".

 

The TCL command generated from the wizard is:

write_cfgmem  -format mcs -size 16 -interface SPIx1 -loadbit {up 0x00000000 "C:/Users/CampbellDy/icap_test/icape2_test.bit" } -file "C:/Users/CampbellDy/icap_test/icape2_test.mcs"

I can't seem to find much info on the write_cfgmem command.  What I did find looks pretty similar to the above.  I tried messing with it to remove the curly brackets to fit the format I found but that didn't seem to work either.  

 

What am I doing wrong here?  It might be something with my setup in the wizard as this is the first time I'm attempting a multiboot flash.

 

I appreciate the help!

0 Kudos
1 Solution

Accepted Solutions
Moderator
Moderator
982 Views
Registered: ‎06-05-2013

Re: Generating MCS file with two bitstreams causes error

Jump to solution
Hi Dylan,

Thanks for sharing the details. This error is coming because you are going out of the range for flash which you are using. Max address for this flash is 00FFFFFF. If you use any address within that range it should generate the file for you.

Here is the details from the PRM file
===================================
Configuration Memory information
===================================
File Format MCS
Interface SPIX1
Size 16M
Start Address 0x00000000
End Address 0x00FFFFFF

Thanks
Harshit
-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

4 Replies
Moderator
Moderator
1,010 Views
Registered: ‎06-05-2013

Re: Generating MCS file with two bitstreams causes error

Jump to solution

You can edit the below command as required:

write_cfgmem  -format mcs -size 128 -interface BPIx16 -loadbit {up 0x00000000 "C:/harshit/configuration/design_forum.bit" up 0x0F000000 "C:/harshit/configuration/design_forum_bpi.bit" } -file "C:/design/test.mcs"

 

test_mcs.JPG

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
Tags (1)
Observer dylan.campbell
Observer
1,006 Views
Registered: ‎08-31-2018

Re: Generating MCS file with two bitstreams causes error

Jump to solution

Hi harshit,

 

I used the Write Memory Configuration File window that you show and that is how I get my error.

 

Just to make sure I took your TCL command and edited for my situation.  So I used the below TCL command:

write_cfgmem  -format mcs -size 16 -interface SPIx1 -loadbit {up 0x00000000 "C:/Users/CampbellDy/icap_test/icape2_test.bit" up 0xF0000000 "C:/Users/CampbellDy/icap_test/icape2_test_fast.bit" } -file "C:/Users/CampbellDy/icap_test/icap_test.mcs"

 

It's the same as yours except the file locations are different, size is 16 and the interface is SPIx1.  I still get the same error as I did in the original post.  

ERROR: [Writecfgmem 68-6] Cannot parse string "up 0x00000000 "C:/Users/CampbellDy/icap_test/icape2_test.bit" up 0xF0000000 "C:/Users/CampbellDy/icap_test/icape2_test_fast.bit"".
Correct format is "up|down 0x0 bitfile.bit <bitfile2.bit>".

 

 

Below is the configuration I used in case it's useful.

Capture.PNG

 

With this config I still get the error.  

 

Thank you,

Dylan

0 Kudos
Moderator
Moderator
983 Views
Registered: ‎06-05-2013

Re: Generating MCS file with two bitstreams causes error

Jump to solution
Hi Dylan,

Thanks for sharing the details. This error is coming because you are going out of the range for flash which you are using. Max address for this flash is 00FFFFFF. If you use any address within that range it should generate the file for you.

Here is the details from the PRM file
===================================
Configuration Memory information
===================================
File Format MCS
Interface SPIX1
Size 16M
Start Address 0x00000000
End Address 0x00FFFFFF

Thanks
Harshit
-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

Observer dylan.campbell
Observer
974 Views
Registered: ‎08-31-2018

Re: Generating MCS file with two bitstreams causes error

Jump to solution

Hi harshit,

 

Thank you again for the help.  You're correct, the address was my problem.  For some reason I thought that the zero in the config dialog represented the max size of the flash.  And then the error shown seemed to be indicating a syntax error. 

 

Thanks for showing me that PAR file.  That makes planning the space much easier than what I was doing previously.  

 

Thank you!