Project

General

Profile

Hardware Version Number

Each MitySOM-5CSx module has 10-bits of HPS General Purpose Inputs that are used to set a "Hardware Version" for each module. Each version is tied to a PCB version (I.E. 90-000211-x) which is etched into the copper of each module on the bottom side below where the Debug Adapter header (J2) is located.

Currently designated versions

Product Identifier GPI9 GPI8 GPI7 GPI6 GPI5 GPI4 GPI3 GPI2 GPI1 GPI0
90-000211-1 X X X X X X X X X X
90-000211-2 1 1 0 0 0 0 0 0 0 0
90-000211-4 S 1 0 0 0 0 0 0 0 1
90-000211-5 TBD

Note that "S" = Size of the FPGA fabric on the module. '1' = 6 (110KLE) or 5 (80KLE) and '0' = 4 (40KLE) or 3 (25 KLE)

Note that 90-000211-1 equates to modules with "Engineering" Silicon for the Cyclone V SoC from Altera.
Note that 90-000211-2 are production silicon modules with TC74 temperature sensors among other possible changes
Note that 90-000211-4 are production silicon modules with LM73 temperature sensors among other possible changes

For a detailed listing of changes to modules for each of above revisions please visit our Errata and PCN wiki page.

Information about the "GPIx" bits

The General Purpose Inputs that are used for these hardware version bits were chosen because they are connected to that same bank voltages as the HPS DDR memory at 1.35V which is not suitable for many external input uses.

Section 22 of the "Cyclone V HPS Technical Reference Manual" (http://www.altera.com/literature/hb/cyclone-v/cv_5v4.pdf) details these input only GPIO's. There are 14 in total however only 10 of them (0 to 9) have been designated for this hardware revision information.

Example Script to Read and compare the 10-bits from Linux

Please reference the GPIO Chip Mapping wiki page for the correlation between HPS GPIO numbers and their Linux GPIO identifiers.

#!/bin/sh
# Reads the HW version from the GPIs

EXPECTED_VER="1100000000" 
version="" 

for i in {184..193}
do
    echo $i > /sys/class/gpio/export
    tStr=$(cat /sys/class/gpio/gpio$i/value)
    version=$tStr$version
    echo $i > /sys/class/gpio/unexport
done

echo "HW VERION: $version" 
echo "EXPECTED : $EXPECTED_VER" 

if [ "$version" = "$EXPECTED_VER" ]; then
    echo "CORRECT VERSION" 
else
    echo "FAILED: VERSION INCORRECT" 
fi;

Go to top
Add picture from clipboard (Maximum size: 1 GB)