connect --adapter-id YdI-kQJk
0x00010000 in main ()
load
Loading section .text, size 0x24c lma 0x10000
Loading section .globcode, size 0x3a lma 0x1024c
Loading section .cp.const4, size 0x4 lma 0x10288
Loading section .ctors, size 0x8 lma 0x1028c
Loading section .dtors, size 0x4 lma 0x10294
Loading section .dp.data, size 0x2c lma 0x10298
Start address 0x10000, load size 706
Transfer rate: 57 KB/sec, 117 bytes/write.
Warning: according to mode pins, system is not set to boot from JTAG
First stage multi-node boot failed, please check XN file and Xmos link connectivity
I've been through a dozen times and I cannot see where the problem is. It says the system isn't set to boot from JTAG, but when I look on the scope the !TRST line is getting pulled low so the mode pins should be correct for JTAG booting for all 3 processors. The relevant parts of the schematic are : I've found and fixed one problem already - the SN74LVC2G17 on the !RST and !TRST lines have been changed to SN74LVC2G07 which are open drain outputs as they weren't getting pulled low by the XTAG2 with the schmitt triggers.
I've been through every pin of the XTAG2 on a scope and compared it to my XR-AVB-LC_BRD with the same code working correctly and can't see any obvious difference. I'm about out of ideas what to try next. I'm not sure I really understand why it thinks the boot mode pins are wrong, or how it's discovered that as I guess that's the first problem to solve. Any suggestions would be most welcome.
For completeness, this is the XN file I'm using :
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<Network xmlns="http://www.xmos.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.xmos.com http://www.xmos.com">
<Type>Device</Type>
<Name>3XL2</Name>
<!-- Board Version 1V0 -->
<!-- File Version 1V0 -->
<Declarations>
<Declaration>core stdcore[6]</Declaration>
</Declarations>
<Packages>
<Package ID="0" Type="XS1-L2A-QF124">
<Nodes>
<Node Id="0" Type="XS1-L1A" InPackageId="0" Oscillator="25MHz" SystemFrequency="500MHz">
<Boot>
<Source Location="SPI:bootFlash"/>
<Bootee NodeId="1"/>
<Bootee NodeId="2"/>
<Bootee NodeId="3"/>
<Bootee NodeId="4"/>
<Bootee NodeId="5"/>
</Boot>
<Core Number="0" Reference="stdcore[0]">
<!-- SPI FLASH -->
<Port Location="XS1_PORT_1A" Name="PORT_SPI_FLASH_MISO"/>
<Port Location="XS1_PORT_1B" Name="PORT_SPI_FLASH_SS"/>
<Port Location="XS1_PORT_1C" Name="PORT_SPI_FLASH_CLK"/>
<Port Location="XS1_PORT_1D" Name="PORT_SPI_FLASH_MOSI"/>
<!-- System Active LED -->
<Port Location="XS1_PORT_1G" Name="PORT_SYS_ALIVE_LED"/>
</Core>
</Node>
<Node Id="1" Type="XS1-L1A" InPackageId="1" Oscillator="25MHz" SystemFrequency="500MHz">
<Boot>
<Source Location="XMOSLINK"/>
</Boot>
<Core Number="0" Reference="stdcore[1]">
</Core>
</Node>
</Nodes>
</Package>
<Package ID="1" Type="XS1-L2A-QF124">
<Nodes>
<Node Id="2" Type="XS1-L1A" InPackageId="0" Oscillator="25MHz" SystemFrequency="500MHz">
<Core Number="0" Reference="stdcore[2]">
</Core>
<Boot>
<Source Location="XMOSLINK"></Source>
</Boot>
</Node>
<Node Id="3" Type="XS1-L1A" InPackageId="1" Oscillator="25MHz" SystemFrequency="500MHz">
<Core Number="0" Reference="stdcore[3]">
</Core>
<Boot>
<Source Location="XMOSLINK"></Source>
</Boot>
</Node>
</Nodes>
</Package>
<Package ID="2" Type="XS1-L2A-QF124">
<Nodes>
<Node Id="4" Type="XS1-L1A" InPackageId="0" Oscillator="25MHz" SystemFrequency="500MHz">
<Core Number="0" Reference="stdcore[4]">
</Core>
<Boot>
<Source Location="XMOSLINK"></Source>
</Boot>
</Node>
<Node Id="5" Type="XS1-L1A" InPackageId="1" Oscillator="25MHz" SystemFrequency="500MHz">
<Core Number="0" Reference="stdcore[5]">
</Core>
<Boot>
<Source Location="XMOSLINK"></Source>
</Boot>
</Node>
</Nodes>
</Package>
</Packages>
<Links>
<!-- XScope -->
<Link Encoding="2wire" Delays="4,4" Flags="SOD">
<LinkEndpoint NodeId="0" Link="X0LA"/>
<LinkEndpoint RoutingId="0x8000" Chanend="1"/>
</Link>
<!-- L2 Internal L2-0 -->
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="4"/>
<LinkEndpoint NodeId="1" Link="7"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="5"/>
<LinkEndpoint NodeId="1" Link="6"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="6"/>
<LinkEndpoint NodeId="1" Link="5"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="7"/>
<LinkEndpoint NodeId="1" Link="4"/>
</Link>
<!-- L2 Internal L2-1 -->
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="2" Link="4"/>
<LinkEndpoint NodeId="3" Link="7"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="2" Link="5"/>
<LinkEndpoint NodeId="3" Link="6"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="2" Link="6"/>
<LinkEndpoint NodeId="3" Link="5"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="2" Link="7"/>
<LinkEndpoint NodeId="3" Link="4"/>
</Link>
<!-- L2 Internal L2-2 -->
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="4" Link="4"/>
<LinkEndpoint NodeId="5" Link="7"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="4" Link="5"/>
<LinkEndpoint NodeId="5" Link="6"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="4" Link="6"/>
<LinkEndpoint NodeId="5" Link="5"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="4" Link="7"/>
<LinkEndpoint NodeId="5" Link="4"/>
</Link>
<!-- L2 External L2-0 to L2-1 -->
<Link Encoding="5wire" Delays="4,4">
<LinkEndpoint NodeId="1" Link="X0LA"/>
<LinkEndpoint NodeId="2" Link="X0LA"/>
</Link>
<Link Encoding="5wire" Delays="4,4">
<LinkEndpoint NodeId="1" Link="X0LB"/>
<LinkEndpoint NodeId="2" Link="X0LB"/>
</Link>
<!-- L2 External L2-1 to L2-2 -->
<Link Encoding="5wire" Delays="4,4">
<LinkEndpoint NodeId="3" Link="X0LA"/>
<LinkEndpoint NodeId="4" Link="X0LA"/>
</Link>
<Link Encoding="5wire" Delays="4,4">
<LinkEndpoint NodeId="3" Link="X0LB"/>
<LinkEndpoint NodeId="4" Link="X0LB"/>
</Link>
</Links>
<ExternalDevices>
<Device NodeId="0" Core="0" Class="SPIFlash" Name="bootFlash" Type="Atmel_AT25DF321A">
<Attribute Name="PORT_SPI_MISO" Value="PORT_SPI_FLASH_MISO"/>
<Attribute Name="PORT_SPI_SS" Value="PORT_SPI_FLASH_SS"/>
<Attribute Name="PORT_SPI_CLK" Value="PORT_SPI_FLASH_CLK"/>
<Attribute Name="PORT_SPI_MOSI" Value="PORT_SPI_FLASH_MOSI"/>
</Device>
</ExternalDevices>
<JTAGChain>
<JTAGDevice NodeId="0"/>
<JTAGDevice NodeId="1"/>
<JTAGDevice NodeId="2"/>
<JTAGDevice NodeId="3"/>
<JTAGDevice NodeId="4"/>
<JTAGDevice NodeId="5"/>
</JTAGChain>
</Network>