Frequently Asked Questions (FAQ)
Q: Where can I find some software making good use of SDB-aware firmware?
A: Examples of (real) usage of SDB in FMC designs can be found in the
software support
subprojects of boards like the FMC ADC 100Msps, FMC Del 4ch and the SPEC
and SVEC carriers.
To get a good grasp of how it all fits together, heavy use of SDB is
made by the
FMC bus software abstraction
fmc-bus:; the code is at
https://www.ohwr.org/project/fmc-bus/tree/master
Good usage of this abstraction and of SDB records is done, for example,
in the FMC fine delay
driver:
https://www.ohwr.org/project/fine-delay-sw/tree/master
and in the carriers, e.g.
spec-sw:, during the early
bootup
process:
https://www.ohwr.org/project/spec-sw/tree/master
Q: What is the origin of the vendor_id and device_id for the wishbone devices?
What is the origin of the vendor_id and device_id for the wishbone
devices that are connected to the wishbone crossbar (defined in the
SDB)?
I see that CERN chose vendor_id "0000CE42". What number should I give
to our company? The device_id seems a random number. Are these numbers
managed somewhere or could I freely choose some?
A: Nobody is mangaing these numbers. As long as we are just the few of us, we agree on numbers. The standard says that the high-half is free for anyone to use, provided the vendor is randomized. And for the device number, it's a little local mess. finedelay is ascii-like 0xf19ede1a, ADC is an md5 hash of the device name and others are sequential (the vic is 0x13).
In general, each vendor is on its own. We'd better not have duplicates, but it's not really that bad unless it's a top-level thing that is used for higher-level identification.
8 July 2013