Skip to content

BerkeleyLab/Marble-Mini

Repository files navigation

Marble-Mini board

Marble-Mini is a Dual FMC (LPC) AMC FPGA carrier with a Xilinx Artix-7 FPGA. It's a general purpose carrier board, sized to satisfy needs of some BPM and LLRF applications. It includes features relevant for deployment to unattended sites (e.g., accelerator service galleries), as well as for general development and testing.

This design is the result of a collaboration between LBNL and CreoTECH.

A Marble-Mini is related to the Marble. Both are Open Hardware FMC carriers. Marble-Mini is simpler (8 layer PCB instead of 12), and uses a less-capable and less-costly FPGA (Artix instead of Kintex). Major parts of their design are electrically equivalent, and consequently their firmware and software support can strongly overlap.

Original concept:

block diagram

(Almost) Reality:

layout

Configuration

At assembly time this design can be configured either as a Network Attached Device (NAD, sometimes called Pizza Box) or as an AMC (mTCA) card. Skilled rework could convert one to the other.

In NAD configuration, the four GTP ports of the FPGA are connected to SFP slots, and Ethernet is brought out on a usual 8P8C "RJ45" connector. In AMC configuration, the four GTP ports of the FPGA are connected to PCIe lanes of the AMC backplane, and Ethernet is also connected to the backplane. Configuration of the GTP port routing is accomplished with placement of 0201 (0603 Metric) coupling capacitors.

Tools

The schematic/layout tool used is KiCad EDA version 5.1.2 or later in the 5.1.x series. Other versions will very likely either not read the files in this repo, or will save files that are not compatible with collaborators' reference installations. We also make use of KiBoM.

Major Parts

Note 1: U1 is compatible with XC7A35T through XC7A200T; need XC7A75T or larger to get all User I/O of dual-LPC-FMC

Note 2: Xilinx MIG doesn't recognize one of the address pins, which limits usable capacity to 4 Gb; LiteDRAM does not have that limitation.

Auxiliary documentation

25-page schematics like this are a modern reality, but that doesn't mean they are easy to navigate. To aid in understanding subsystems that are splattered over multiple sheets, here are block diagrams that can act as introductions or indexes to the actual machine-readable and DRC'd schematics.

These are EPS files, authored using xcircuit. Maybe you want to use GhostView to look at them.

Scripting and processing

See the scripts subdirectory for instructions and helper scripts covering:

  • Updating the I2C subsystem diagram in schematics
  • Inserting QR code on silkcsreen
  • Generating artifacts for manufacturing
  • Generating Xilinx constraint file

Notes on powering a Marble-Mini

The Marble-Mini runs from a single-supply, mostly tested in the 7V to 12V range, provided either from a barrel connector (J1), an MTA-156 header (J17), or Power over Ethernet (PoE). By itself, it draws less than 5 Watts, but of course that can increase depending on how big a design is loaded on the FPGA.

J1 is a CLIFF DC-10A (FC68148) rated for 12V, 5A. It has a 2.1mm diameter center pin, and is meant for use with 5.5mm barrels. If you reach in your drawer, you're likely to find a connector-compatible 9V or 12V wall-wart that can power it up.

If you want to buy something dedicated, here are some low-power, North America plug options I find at Digi-Key:

  • Tri-Mag L6R06H-090 $5.76 9V 0.67A
  • Triad WSU090-0800 $8.12 9V 0.80A

Those should be fine for desk use without high-power add-ons (SFP, FMC, fan). A little higher power:

  • Qualtek QFWB-18-12-US01 $8.38 12V 1.50A
  • XP Power VEL18US120-US-JA $12.75 12V 1.50A
  • PhiHong PMA18A-120PHW $12.66 12V 1.50A (Medical rated)

If you have FMC cards, pay extra attention to the supply: some FMC cards are designed purely for the official +12V FMC spec; others really don't care. The Marble-Mini just passes the input supply onto those FMC pins, through FET switches.

I truly recommend using a bench supply initially to check voltage and current needs of a specific setup, including both the Marble-Mini and its add-ons. Attaching a bench supply to Marble-Mini through the barrel connector requires an adapter, easily sourced from eBay because they're used in security camera wiring. A good search term is "security camera 12v DC 2.1mm power pigtail".

When building in a chassis, it's appropriate to use the MTA-156 connector (J17) instead of the barrel. Our shops are used to crimping contacts and inserting them in an SL-156 series shell such as TEConn 770849-2. Current handling in this case is limited by the wire size, e.g., about 5A for 20 AWG.

The design configuration for on-board current sensing of the 12V input is compatible with up to 5.8A. Any higher and you should replace R301, R302, and R303 with a smaller value than 0.082 Ohms.

The PoE option can be convenient for casual desk use, if you already have PoE infrastructure. Please read Silvertel's Application Note about thermal considerations before designing that option into a chassis.

Copyright

Marble Copyright (c) 2019, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Department of Energy). All rights reserved.

This documentation describes Marble and is licensed under the CERN OHL v. 1.2.

NOTICE. This documentation was developed under funding from the U.S. Department of Energy and the U.S. Government consequently retains certain rights. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the documentation to reproduce, distribute copies to the public, prepare derivative works, and perform publicly and display publicly, and to permit others to do so.

You may redistribute and modify this documentation under the terms of the CERN OHL v.1.2. (http://ohwr.org/cernohl). THIS DOCUMENTATION IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Please see the CERN OHL v.1.2 for applicable conditions.