The CRUVI FPGA Card is a daughter card standard specifically tailored to the needs of FPGAs.
The expansion bus interface is designed to create an open ecosystem of function modules for high-performance peripheral connectivity. Its main focus is on supporting FPGA and FPGA SoC devices from all major manufacturers like Altera, Lattice, Microchip and Xilinx.
The word "CRUVI" is a combination of the Estonian word "KRUVI" for screw and the letter "C", which refers to the half of the hexagonal screw head. In this case, the "K" was replaced with "C" to emphasize the reference to the screw head.
It can be used to build high performance prototypes, for system integration and testing to build complex systems from smaller building blocks to iterate quickly and reduce cost. Create custom test systems for production functional testing.
The carrier module supplies the power supply, the input/output voltage and controls the functions of the peripheral modules.
The CRUVI open standard coexists between low speed, low pin-count like Pmod Interface devices and high-performance, high pin-count (HPC), 400 I/O FPGA Mezzanine Card (FMC) peripherals.
Three board-to-board connectors are specified: CRUVI-LS (Low Speed), CRUVI-HS (High Speed) and CRUVI-GT (Gigabit Transceiver) PCIe Gen 5.0 capable.
Bridging adapter exists to convert signals from Pmod to CRUVI-LS (CR00025), from FMC to CRUVI-HS (CR00101, CR00111) and FMC to CRUVI-GT (CR00112).
International contributors to define the open source CRUVI specification are Trenz Electronic GmbH, Arrow Electronics, Samtec, Flinders University, Synaptic Laboratories Ltd, Symbiotic EDA and MicroFPGA UG.
Year | Version | Notes | Refs |
---|---|---|---|
2021 | 1.0.7 -alpha | first release | |
2024 | 2.0.1 -alpha | CRUVI-GT (Gigabit Transceiver) | [1] |
Single, double or triple width modules are allowed and they have more mounting holes.
A triple size of space on carrier board is 67.72 x 57.5 mm2 (2.66535 x 2.26378 inch²). There are 3 slots. The mounting holes (1 to 6) for M2 screws are 2.2 mm (0.0866 inch) diameter and need SMD spacer for mechanically fixing. The CR99201 PCB template has LS and HS connectors named: AX, BY and CZ. The CR99500 [2] PCB template has LS, HS and GT connectors.
There are different single peripheral module possible, flexible and scalable by size LS, HS and GT connectors. Mounting holes are for M2 screws 2.2 mm (0.0866 inch) diameter.
It is recommended to have EEPROM with I2C for identification of peripheral module with a specific address number.
L x H [mm2] / [inch²] | speed | PCB template [2] | Note |
---|---|---|---|
14 x 14 / 0.55 x 0.55 | LS | CR99001 | identification EEPROM is included; This template is useful for I2C, I3C, SPI sensor, I2S PDM MEMS microphones, programmable oscillator, ADC, DAC or SPI (QSPI) Flash memory device in BGA24 or SO-8 package. |
14 x 14 / 0.55 x 0.55 | LS | CR99002 | same as CR99001 with added u.Fl connectors for I/O |
22 x 32 / 0.87 x 1.2598 | LS | CR99003 | maximum size one-wide half-length, identification EEPROM is included |
18 x 32 / 0.71 x 1.26 | LS | CR99004 | This template is useful to convert into Pmod compatible connector (CR00005). |
22 x 30 / 0.87 x 1.18 | LS | CR99005 | is half-length LS module with two SMA connectors |
18 x 20 / 0.71 x 0.79 | HS | CR99101 | minimal size HS Module; good for HyperRAM or HyperFlash (CR00041), eMMC (CR00049) or loopback adapter for CRUVI-HS (CR00091) |
22 x 57.5 / 0.87 x 2.26 | HS | CR99102 | maximum sized single-width HS module; good for signal test adapter to probed with scope or logic analyzer (CR00026), for high speed interfaces like USB-C, HDMI (CR00240), MIPI CSI/DSI, SDIO, xGMII Ethernet (CR0020x) and LVDS ADC (1 to 4 data lane) |
22 x 57.5 / 0.87 x 2.26 | GT | CR99400 | This template is suitable for HDMI output (CR00240), JESD204B ADC (CR00401), loopback adapter for CRUVI-GT (CR00092) |
Pin | Primary | Signal | Pin | Primary | Signal |
---|---|---|---|---|---|
1 | SDA | I2C(SDA), SMBUS(SDA) | 7 | D1 | UART(RXD1), SD(D1), SPI(MISO), QSPI(D1), JTAG(TDI) |
2 | SCL | I2C(SCL), SMBUS(SCL) | 8 | CLK | UART(RTS), SD(CLK), SPI(CLK), QSPI(CLK), JTAG(TCK) |
3 | D3 | UART(RST), SD(TXD0), QSPI(D3), JTAG(nRST) | 9 | D0 | UART(TXD1), SD(D0), SPI(MOSI), QSPI(D0) JTAG(TDO) |
4 | SEL | UART(CTS), SD(CMD), SPI(SEL), QSPI(SEL), JTAG(TMS) | 10 | VCC | Power 3.3V |
5 | D2 | SMBUS(INT), UART(RXD0), SD(D2), QSPI(D2), JTAG(RFU) | 11 | RFU | tbd |
6 | GND | Ground | 12 | VBUS | Power 5V |
Pin | Primary Function | Note | Pin | Primary Function | Note | Pin | Primary Function | Note | Pin | Primary Function | Note |
---|---|---|---|---|---|---|---|---|---|---|---|
1 | RFU1 | 16 | A0_N | LVDS | 31 | GND | Ground | 46 | A5_N | LVDS | |
2 | HSIO | 17 | B0_N | LVDS | 32 | A3_P | 47 | B5_N | LVDS | ||
3 | ALERT/IRQ | 18 | GND | Ground | 33 | B3_P | LVDS | 48 | GND | Ground | |
4 | VCC | 3,3V | 19 | GND | Ground | 34 | A3_N | 49 | GND | Ground | |
5 | SDA | 20 | A1_P | LVDS | 35 | B3_N | LVDS | 50 | RFU2_P | ||
6 | HSO | 21 | B1_P | LVDS | 36 | VADJ | 1.2 to 3.3V | 51 | DI/TDI | JTAG, SPI(MISO) | |
7 | SCL | 22 | A1_N | LVDS | 37 | GND | Ground | 52 | RFU2_N | ||
8 | HSRST | 23 | B1_N | LVDS | 38 | A4_P | LVDS | 53 | DO/TDO | JTAG, SPI(MOSI) | |
9 | VCC | 3.3V | 24 | GND | Ground | 39 | B4_P | LVDS | 54 | GND | Ground |
10 | HSI | 25 | GND | Ground | 40 | A4_N | LVDS | 55 | SEL/TMS | JTAG, SPI(SEL) | |
11 | REFCLK | 26 | A2_P | 41 | B4_N | LVDS | 56 | RFU_P | |||
12 | GND | Ground | 27 | B2_P | LVDS | 42 | GND | Ground | 57 | MODE | JTAG EN |
13 | GND | Ground | 28 | A2_N | 43 | GND | Ground | 58 | RFU_N | ||
14 | A0_P | LVDS | 29 | B2_N | LVDS | 44 | A5_P | LVDS | 59 | SCK/TCK | JTAG, SPI(CLK) |
15 | B0_P | LVDS | 30 | GND | Ground | 45 | B5_P | LVDS | 60 | VBUS | 5V |
Pin | Primary Function | Note | Pin | Primary Function | Note | Pin | Primary Function | Note | Pin | Primary Function | Note |
---|---|---|---|---|---|---|---|---|---|---|---|
A1 | GND | Ground | B1 | TCK | JTAG | C1 | TDI | JTAG | D1 | GND | Ground |
A2 | TX3_N | B2 | TMS | JTAG | C2 | TDO | JTAG | D2 | RX3_N | ||
A3 | TX3_P | B3 | C3 | D3 | RX3_P | ||||||
A4 | GND | Ground | B4 | C4 | D4 | GND | Ground | ||||
A5 | TX2_N | B5 | C5 | D5 | RX2_N | ||||||
A6 | TX2_P | B6 | C6 | D1_N | D6 | RX2_P | |||||
A7 | GND | Ground | B7 | C7 | D1_P | D7 | GND | Ground | |||
A8 | B8 | C8 | D8 | CLK0_N | CLK | ||||||
A9 | B9 | C9 | D9 | CLK0_P | CLK | ||||||
A10 | B10 | VADJ | 1.2 to 3.3V | C10 | VCC_5V | 5V | D10 | GND | Ground | ||
A11 | B11 | VCC_3.3V | 3.3V | C11 | VCC_12V | 12V | D11 | GND | Ground | ||
A12 | B12 | C12 | D12 | GBTCLK0_N | CLK | ||||||
A13 | B13 | C13 | D13 | GBTCLK0_P | CLK | ||||||
A14 | GND | Ground | B14 | C14 | D0_N | D14 | GND | Ground | |||
A15 | TX1_N | B15 | C15 | D0_P | D15 | RX1_N | |||||
A16 | TX1_P | B16 | S4_LS | AUX IO | C16 | S7_LS | AUX IO | D16 | RX1_P | ||
A17 | GND | Ground | B17 | S5_LS | AUX IO | C17 | S6_LS | AUX IO | D17 | GND | Ground |
A18 | TX0_N | B18 | S0_LS | AUX IO | C18 | S3_LS | AUX IO | D18 | RX0_N | ||
A19 | TX0_P | B19 | S1_LS | AUX IO | C19 | S2_LS | AUX IO | D19 | RX0_P | ||
A20 | GND | Ground | B20 | SDA_LS | SMBus | C20 | SCL_LS | SMBUs | D20 | GND | Ground |
A motherboard is the main printed circuit board (PCB) in general-purpose computers and other expandable systems. It holds and allows communication between many of the crucial electronic components of a system, such as the central processing unit (CPU) and memory, and provides connectors for other peripherals. Unlike a backplane, a motherboard usually contains significant sub-systems, such as the central processor, the chipset's input/output and memory controllers, interface connectors, and other components integrated for general use.
A printed circuit board (PCB), also called printed wiring board (PWB), is a medium used to connect or "wire" components to one another in a circuit. It takes the form of a laminated sandwich structure of conductive and insulating layers: each of the conductive layers is designed with a pattern of traces, planes and other features etched from one or more sheet layers of copper laminated onto or between sheet layers of a non-conductive substrate. Electrical components may be fixed to conductive pads on the outer layers, generally by means of soldering, which both electrically connects and mechanically fastens the components to the board. Another manufacturing process adds vias, drilled holes that allow electrical interconnections between conductive layers.
In computing, an expansion card is a printed circuit board that can be inserted into an electrical connector, or expansion slot on a computer's motherboard to add functionality to a computer system. Sometimes the design of the computer's case and motherboard involves placing most of these slots onto a separate, removable card. Typically such cards are referred to as a riser card in part because they project upward from the board and allow expansion cards to be placed above and parallel to the motherboard.
A breadboard, solderless breadboard, or protoboard is a construction base used to build semi-permanent prototypes of electronic circuits. Unlike a perfboard or stripboard, breadboards do not require soldering or destruction of tracks and are hence reusable. For this reason, breadboards are also popular with students and in technological education.
HyperTransport (HT), formerly known as Lightning Data Transport, is a technology for interconnection of computer processors. It is a bidirectional serial/parallel high-bandwidth, low-latency point-to-point link that was introduced on April 2, 2001. The HyperTransport Consortium is in charge of promoting and developing HyperTransport technology.
A single-board computer (SBC) is a complete computer built on a single circuit board, with microprocessor(s), memory, input/output (I/O) and other features required of a functional computer. Single-board computers are commonly made as demonstration or development systems, for educational systems, or for use as embedded computer controllers. Many types of home computers or portable computers integrate all their functions onto a single printed circuit board.
A PCI Mezzanine Card or PMC is a printed circuit board assembly manufactured to the IEEE P1386.1 standard. This standard combines the electrical characteristics of the PCI bus with the mechanical dimensions of the Common Mezzanine Card or CMC format.
JTAG is an industry standard for verifying designs of and testing printed circuit boards after manufacture.
TURBOchannel is an open computer bus developed by DEC by during the late 1980s and early 1990s. Although it is open for any vendor to implement in their own systems, it was mostly used in Digital's own systems such as the MIPS-based DECstation and DECsystem systems, in the VAXstation 4000, and in the Alpha-based DEC 3000 AXP. Digital abandoned the use of TURBOchannel in favor of the EISA and PCI buses in late 1994, with the introduction of their AlphaStation and AlphaServer systems.
PC/104 is a family of embedded computer standards which define both form factors and computer buses by the PC/104 Consortium. Its name derives from the 104 pins on the interboard connector (ISA) in the original PC/104 specification and has been retained in subsequent revisions, despite changes to connectors. PC/104 is intended for specialized environments where a small, rugged computer system is required. The standard is modular, and allows consumers to stack together boards from a variety of COTS manufacturers to produce a customized embedded system.
Advanced Telecommunications Computing Architecture is the largest specification effort in the history of the PCI Industrial Computer Manufacturers Group (PICMG), with more than 100 companies participating. Known as AdvancedTCA, the official specification designation PICMG 3.x was ratified by the PICMG organization in December 2002. AdvancedTCA is targeted primarily to requirements for "carrier grade" communications equipment, but has recently expanded its reach into more ruggedized applications geared toward the military/aerospace industries as well. This series of specifications incorporates the latest trends in high speed interconnect technologies, next-generation processors, and improved Reliability, Availability and Serviceability (RAS).
Advanced Mezzanine Cards are printed circuit boards (PCBs) that follow a specification of the PCI Industrial Computers Manufacturers Group (PICMG). Known as AdvancedMC or AMC, the official specification designation is AMC.x. Originally AMC was targeted to requirements for carrier grade communications equipment, but later used in other markets.
Minimig is an open source re-implementation of an Amiga 500 using a field-programmable gate array (FPGA).
A computer-on-module (COM) is a type of single-board computer (SBC), a subtype of an embedded computer system. An extension of the concept of system on chip (SoC) and system in package (SiP), COM lies between a full-up computer and a microcontroller in nature. It is very similar to a system on module (SOM).
Embedded System Module, or ESM, is a compact computer-on-module (COM) standard. An ESM module typically includes a CPU processor, memory, module-specific I/O interfaces and a number of basic front I/O connectors. They can be plugged on a carrier board or be used as a stand-alone processor card.
FPGA Mezzanine Card (FMC) is an ANSI/VITA 57.1 standard that defines I/O mezzanine modules with connection to an FPGA or other device with re-configurable I/O capability. It specifies a low profile connector and compact board size for compatibility with several industry standard slot card, blade, low profile motherboard, and mezzanine form factors.
M.2, pronounced m dot two and formerly known as the Next Generation Form Factor (NGFF), is a specification for internally mounted computer expansion cards and associated connectors. M.2 replaces the Mini SATA (mSATA) standard and the Mini PCIe (mPCIe) standard. Employing a more flexible physical specification, M.2 allows different module widths and lengths, which, paired with the availability of more advanced interfacing features, makes M.2 more suitable than mSATA in general for solid-state storage applications, particularly in smaller devices such as ultrabooks and tablets.
Pmod interface is an open standard defined by Digilent in the Pmod Interface Specification for connecting peripheral modules to FPGA and microcontroller development boards using 6 pins. Pmod or Pmods may also refer to modules compatible with the Pmod interface.
MicroTCA is a modular, open standard, created and maintained by the PCI Industrial Computer Manufacturers Group (PICMG). It provides the electrical, mechanical, thermal and management specifications to create a switched fabric computer system, using Advanced Mezzanine Cards (AMC), connected directly to a backplane. MicroTCA is a descendant of the AdvancedTCA standard.
RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board. Its successor is the RP2350 series.
This article needs additional or more specific categories .(May 2024) |