Expansion Board details


A few questions concerning the Expansion Board:

  • Are mechanical CAD files available?
  • Can on-board USB be used as host, e.g. for keyboard and mouse, or must a PCIe adapter be used to connect these?
  • Any graphics cards recommendations? Appreciate many will just work, but a recommendation is always good, e.g. in terms of appropriate power and size profile. Not looking for earth shattering GPU specs.

Looking forward to receiving an Expansion Board and keen to make a start on a suitable enclosure and peripherals etc. in readiness :slight_smile:


It wants to be an ATI card so you can use open source drivers. I haven’t immediately been able to check for sure but I think we’re using a Radeon 7500. Those run around $50 - $75.

1 Like


for your question about graphics card, (maybe you already know it, but for reminder)

Crowd Supply funding page & Microsemi production page say “x16 PCI Express card connector with four lanes of PCIe gen2 connected” .
So this is PCIe x16 connector, but you can only use PCIe gen2 x4 card. I feel it’s little bit difficult to get such graphics card in Amazon nowadays.

You can run an x16 card in a slot which has electrically less lanes. This is how most motherboards manage SLI, for example.

Re: USB, the on-board USB does not have corresponding logic in the FPGA. So you have to plug in a USB PCIe card. We’ve generally put an x16 PCIe graphics card + x1 USB card + x4 NVMe disk (on the bottom) + SATA hard disk.



Yes you are right. If x16 card has compatibility with x4, card works. What I want to say is “This is x16 connector, but we can only use graphic card that has x4 compatibility”. So my expression is not good. Thank you.

Do we have a list of board or boards that are known to work?

@bruce @terpstra many thanks!

Sounds like the on-board USB could potentially be used in the future — just wasn’t sure if it had been configured for some other purpose.

So I’d like to be able to have USB, graphics and a PCIe SDR board installed, but sounds like I’m a slot short, unless I use an adapter with the M.2 slot.

Any word on CAD files? Just a DXF or similar would be fine.

You could get the onboard USB or HDMI working. That would free up a slot! :smile:

1 Like

Good answer :smiley:

1 Like

Many x16 graphics cards will work on an x1 lane very happily, many people are running full-width GPUs on few lanes as they can extend the laptop’s express card lanes of the bus into an adapter and in essence add external GPUs to laptops for either GPU computing or gaming. For most of the applications, the significant downgrade of the bus-lanes has a very minimal impact on performance, and the gen2 x4 should be on par with gen1 x8 throughput. There are eGPU forums which focus on making compatibility lists of GPUs which can work in these atypical setups. If you want to experiment probably reading on them could be beneficial to you.

1 Like

Slot short? Wonder if something like this could be used:


There are plenty of crazy adapters/splitters/converters to do very unusual things with the bus. Personally I was really surprised how much abuse the bus allowed :slight_smile:

Thanks your explanation. I didn’t know x16 GPU works with x4 lane, and even x1 in general.

Now I understand what you said.

Very thanks @terpstra !

Not 100% all of them will be happy about it, but it works surprisingly well and it looks rather funny to have full-size GPU connected into a laptop through single express card adapters:

Even there is multiple competing providers of the adapters:

Actually few times the drivers and application get confused and think the external gpu is Nvidia Optimus setup and the GPU instead of outputting the video to its physical connectors will transfer the framebuffer back through the bus to the integrated GPU to display the content on its display.

It’s pretty neat to have portable workstation and at home/office have extra power for tensorflow and other stuff. Crazy stuff can be made but not allways it’s issue free:

Ah, yet only xX compatible gpu. OK Thanks.

When I look this up I’m only getting results for old AGP cards. Would be great if you could confirm which PCIe cards have been tested and are known to work (given any Expansion Board PCIe interface, mechanical and power constraints).

I’m 7000 miles from the office, but perhaps @terpstra or @mhamrick can help.

Sadly, I’m 60 miles from the office at the moment, so I don’t have my system in front of me.

However, I do know we’re using a generic multi-lane HD 6450 / 1Gb / DDR3 PCIe video board a generic single lane PCIe <-> USB board.

I’ll do a lspci when I get in in the morning and post the details.

One thing I can say though is… surprisingly… the MSI board we bought (also a HD 6450) didn’t work out of the box (it’s one more thing I’m working on.)

@mhamrick many thanks! Soon as I have confirmation of a known working board I can get one on order. Appreciate that lots should work, but would prefer to avoid time buying AMDGPU driver supported boards to find that for some reason they’re not a good fit or some additional messing around is required.

This is the card we use at SiFive:
07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos PRO [Radeon HD 7450]

In freedom-u-sdk this card is supported in linux_framebuffer_distro_defconfig, linux_framebuffer_smp, linux_microsemi_defconfig, and linux_microsemi_distro_defconfig.

Note: you need linux-firmware installed on the system which compiles the kernel to supply the firmware for that graphics card. We are using 1.157.14 from ubuntu.