Connecting Two XEF232

Technical discussions around xCORE processors (e.g. General Purpose (L/G), xCORE-USB, xCORE-Analog, xCORE-XA).
fabian
Member
Posts: 13
Joined: Wed Apr 12, 2017 9:13 pm

Connecting Two XEF232

Postby fabian » Wed May 16, 2018 8:58 am

Hello.
We developed two custom boards, which are both driven by one XEF232-FB374 on each board. The plan is to connect these two XEF232 over xlink1 or xlink2 (encoding "2wire"). In the future we want to put more than two of these boards into a chain. Therefore we use two xlinks.

Right now most of the hardware is testet and it is getting time to connect two boards to one another. We build up a XN-file (XEF232_2x.xn) to do the network routing. This XN-file (XEF232_2x.xn) duplicates more or less the content of a XN-File, say XEF232.xn, we use successfully for one single board.

When trying to build a simple test application using XEF232_2x.xn on xTIMEcomposer 14.3.3 the build fails with the message:
"Assertion failed: (isNetworkRoutable(linkMap)), function computeNetworkRouting, file /Users/Shared/buildbot/slave/tools/osx_10_9_nightly_rel_14_4/build/sb/infr_libs_cpp/XNLoader/XNLoader.cpp, line 5129"

I attached the XN-File and I would appreciate any hints and tips to get over this issue.

We put a lot of time, money and efforts to this project until now believing in going the right way by choosing this architecture.

Thank you in advance.
Attachments
XEF232_2x.xn
(6.11 KiB) Downloaded 20 times
XEF232_2x.xn
(6.11 KiB) Downloaded 20 times
fabian
Member
Posts: 13
Joined: Wed Apr 12, 2017 9:13 pm

Postby fabian » Thu May 17, 2018 8:50 am

Huhu - anybody out there?

Does anyone know how to proceed? Getting an "assertion failed" as an error description is not that kind of information that I can use to solve the problem. It is an information to the software guy who has written the code, here the XNLoader.cpp. Nice to know the path to the sourcecode file and the line throwing the assertion, but as said before: Not usefull to me.

The documentations regarding xCONNECT, xlink, network routing etc ... are, nicely speaking, thin. The numbers of examples are little. A lot of experiences and knowledge are reached by try and error. That is not bad, it's fun - most of the time.
But here there is nothing I can do, just hoping someone can give me some tips what to do to solve the problem. If there is something that can be done from the user/customer side.

From my point of view an assertion in a piece of code is used to inform about a situation or case that must not happen in the intention of the programmer.

Thank you in advance.
User avatar
mon2
XCore Legend
Posts: 1158
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Postby mon2 » Thu May 17, 2018 9:42 am

Hello. This may be a tool bug. Please review this thread :

viewtopic.php?t=3826

Can you post a complete but simple project that raises this error? Then can attempt to compile the same on windows.

Also open a ticket on xmos.com with these details. According to a few posts, the same tool bug was supposed to be fixed.
fabian
Member
Posts: 13
Joined: Wed Apr 12, 2017 9:13 pm

Postby fabian » Thu May 17, 2018 9:31 pm

Hello mon2.

Thank you for helping.

I read the thread and tried immediately the tool command "xntools ...". Adapting to my case i used "xntools --add-routing-12 XEF232_2x.xn".
The terminal output was: "Error: XN11188 Network configuration is not fully routable (can't route from node "2" to node "0")"

I repeated the command with an xn-file, which uses only one XEF232. This time xntools run successfully and puts some RoutingTable inside of the <Node ... </Node> tags.
So this means that the tool is able to route from node "2" to node "0" if there is just one XEF232.

I attached a quit simple project: Just printing "hello world." While building the project the assertion, as mentioned in my first post to this thread, is thrown.

I will open a ticket on xmos.com tomorrow.

Best regards.
Attachments
SimpleTest.zip
(13.95 KiB) Downloaded 20 times
SimpleTest.zip
(13.95 KiB) Downloaded 20 times
fabian
Member
Posts: 13
Joined: Wed Apr 12, 2017 9:13 pm

Postby fabian » Wed May 23, 2018 7:27 am

Hello,
so now we took a bug support ticket. Actually we took it twice because there was no notification in any way that the ticket is accepted. But also after repeating this process there is no notification that anything or even anyone took notice of the support ticket.

What is the normal behaviour by XMOS? Will you get a notification after taking a ticket?

But, we have to continue our work. This means we have to connect two XEF232 in any way. I tried the approach to setup a XN-File, thinking it might be the easiest or fastest solution. But right now this approach leads to a dead end.

I read about "static forwarding" and "hot plugs" here in this forum. You can read about node and tile configuration in the appendices in the XEF232 data sheet. So you know there are register you can read and write. Fine! But I didn't find any documentation which tells or even explains how to use these register to reach a certain goal, e.g. to build up a connection between two xmos-devices during startup.

It is nice to have a solution to a problem, but it is even better to know why the solution is working.

What is the Enterprise support license good for? Do you get more information or even more solutions to you problems? Is it worth it?

Anyway, as I mentioned before: we need to proceed. So any hints and tips to the concrete issue or to any serious starting point are absolutely appreciated.


Thank you.
fabian
Member
Posts: 13
Joined: Wed Apr 12, 2017 9:13 pm

Postby fabian » Wed May 23, 2018 8:22 am

Hi,
I have seen right now the product change note: End of life (EOL) of xTIMEcomposer Enterprise Tools dated on 2017-12-04.

So forget about my question regarding that tools in my last post.

But what does it mean to the developers: is this the beginning of the end at least for supporting of professional developments?

Regards.

Who is online

Users browsing this forum: No registered users and 11 guests