PCB and FPGA versioning system

Guest #5826117
Rate this post
useful
not useful
Hi all,
i can't figure out a good versioning system that ties a PCB version 
number (containing an fpga) and the fpga image version to be used on 
that board.

To explain a bit better, a pcb board version X with fpga image version A

 - pcb will go to version Y with a power supply component change (fpga 
image version A still compatible)
 - pcb will go to version Z with a new LED (fpga image version B needed 
to control the LED)
 - firmware upgrade, fpga version C with no board change

how to relate the two? i am using the fpga rom to store data like 
timestamps and device serials, but i am in need of a good versioning 
system to track compatibility between pcb and fpga firmware.
any suggestions?
Guest #5826965
Rate this post
useful
not useful
Hi
thanks for the reply,
let me see if i get it correctly,

very much like the idea of hardcoding a 4-bit number onto the board,
by defining it with populated resistors.

does this mean that as the board progresses through versions, the 
resistor 4-bit number will increment only when an fpga change is 
required?

pcb v1.00  works with image 0000
    v1.15
    v2.01
    v2.10  works with image 0001
and so on...(?)

that takes care of scenario A and B.
what about scenario C? no board change?
Guest #5827001
Rate this post
useful
not useful
You can define this by yourself.

If you need more versions or version paths, you can place a small and 
cheapy eeprom, and make it unwritable by hard wiring. Example: if your 
eeprom has an SPI, you does'nt connect the masters data out line. So 
your FPGA can read the eeprom, but not write.

For changing data, you can route an extra SPI link from the eeprom (pin 
header or something similar).
#5827032
Rate this post
useful
not useful
> does this mean that as the board progresses through versions, the
resistor 4-bit number will increment only when an fpga change is
required?

My idea was to code the hardware revision with these 4 inputs. If you 
spend more inputs, you can additionally code the FPGA revision, but I 
wouldn't do that, because often you have many FPGA versions for the same 
hardware revision. The FPGA revison can be easily coded within the FPGA.
Guest #5828531
Rate this post
useful
not useful
I was also thinking of a 4bit number within the fpga,
and try to relate the resistor number to the fabric number,
in some way. There is something there but I can't see it yet.
Thanks for the discussion, really like the resistor idea.

Reply

Please log in before posting.

or

Log in with Google account

Registration is free and takes only a minute.

Register now