7 Troubleshooting

7.1 Errors during implementation

Slight differences between releases of AMD’s tools sometimes result in failures to run the implementation for creating a bitfile.

If the problem isn’t solved fairly quickly, please seek assistance at Xillybus’ forum:

https://forum.xillybus.com

Please attach the output log of the process that failed, in particular around the first error reported by the tool. Also, if custom changes were made in the design, please detail these changes. Also please state which version of the ISE / Vivado tools was used.

If this error is issued by Vivado on an implementation for VHDL:

ERROR: [Place 30-58] IO placement is infeasible. Number of unplaced terminals (3) is greater than number of available sites (2).
The following Groups of I/O terminals have not sufficient capacity:
Bank: 35:
 The following table lists all user constrained IO terminals
 Please analyze any user constraints (PACKAGE_PIN, LOC, IOSTANDARD ) which may cause a feasible placement to be impossible.
 The following table uses the following notations:
 c1 - is IOStandard compatible with bank? 1 - compatible, 0 is not
 c2 - is IO VREF compatible with INTERNAL_VREF bank? 1 - compatible, 0 is not
 c3 - is IO with DriveStrength compatible with bank? 1 - compatible, 0 is not
+--------+------------+----+----+----+-----------------------------------------------------+
| BankId | IOStandard | c1 | c2 | c3 | Terminal Name                                       |
+--------+------------+----+----+----+-----------------------------------------------------+
|   35    |LVCMOS18   | 1 | 1 | 1 |      PS_CLK                                            |
|   35    |LVCMOS18   | 1 | 1 | 1 |      PS_PORB                                           |
|   35    |LVCMOS18   | 1 | 1 | 1 |      PS_SRSTB                                          |
+--------+------------+----+----+----+-----------------------------------------------------+

Please edit xillydemo.vhd as mentioned in paragraph 3.3.

Another possible error resulting from the same problem:

ERROR: [Drc 23-20] Rule violation (NSTD-1) Unspecified I/O Standard
    ...
    Problem ports: PS_CLK, PS_PORB, PS_SRSTB.
ERROR: [Drc 23-20] Rule violation (RTSTAT-1) Unrouted net ...
ERROR: [Drc 23-20] Rule violation (UCIO-1) Unconstrained Logical Port ...

7.2 Problems with USB keyboard and mouse

Almost all USB keyboards and mice meet a standard specification for compatible behavior, so it’s unlikely to face problems with devices that aren’t recognized. The first things to check if something goes wrong are:

  • Zedboard only: Are you using the correct USB plug? It should be the one marked “USB OTG”, farther away from the power switch.

  • Zedboard only: Is there any 5V supply to the devices? Is the JP2 jumper installed? With the Zedboard powered on, connect an optical USB mouse, and verify that the LED goes on.

  • If a USB hub is used, attempt to connect only a keyboard or mouse directly to the board.

Helpful information may be present in the general system log file, /var/log/syslog. Viewing its content with “less /var/log/syslog” can be helpful at times. Even better, typing “tail -f /var/log/syslog” will dump new messages to the console as they arrive. This is useful in particular, as events on the USB bus are always noted in this log, including a detailed description on what was detected and how the event was handled.

Note that a shell prompt is also accessible through the USB UART, so the log can be viewed with a serial terminal if connecting a keyboard fails.

7.3 Issues with file system mount

Experience shows that if a proper (Micro)SD card is used, and the system is shut down properly before powering off the board, there are no issues at all with the data in the (Micro)SD card.

Powering off the board without unmounting of the root file system is unlikely to cause permanent inconsistencies in the file system itself, since the ext4 file system repairs itself with the journal on the next mount. There is however an accumulating damage in the operating system’s functionality, since files that were opened for write when the power went off may be left with false content or deleted altogether. This holds true for any computer being powered off suddenly.

If the root file system fails to perform a mount (resulting in a kernel panic during boot) or performs the mount only as read-only, the most likely cause is a low quality (Micro)SD card. It’s quite typical for such storage to function properly for a while, after which random error messages begin to appear. If /var/log/syslog contains messages such as this one, the (Micro)SD card is most likely the reason:

EXT4-fs (mmcblk0p2): warning: mounting fs with errors, running ec2fsck
 is recommended

To avoid these problems, please insist on a Sandisk device.

7.4 “startx” fails (Graphical desktop won’t start)

Even though not directly related, this problem is reported quite frequently when the (Micro)SD card is not made by Sandisk. The graphical software reads a large amount of data from the card when starting up, and is therefore likely to be the notable victim of an (Micro)SD card that generates read errors.

The obvious solution is using a Sandisk (Micro)SD card.

7.5 Black screen after screensaver with X desktop

If the /root directory has been cleared, or if a new user is using the desktop, or if the power saving settings have been changed, the desktop may not recover from screensaver mode, leaving a black screen when attempting to resume.

Fix: On the XFCE desktop, go to the Power Manager, and make the following settings:

  • Set Display > “Put to sleep after” to “Never”

  • Set Display > “Put to sleep after” to “Never”

  • Set Display > “Switch off after” to “Never”.

  • Set Security > “Automatically lock the session” to “Never”.

This problem should not occur on a fresh Xillinux distribution, since these settings are already set up for the root user.