CRUVI FPGA Card
The CRUVI FPGA Card is a daughter card standard specifically tailored to the needs of FPGAs.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/CRUVI_Logo.png/220px-CRUVI_Logo.png)
Background
[edit]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.
Overview
[edit]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).
History of CRUVI specification
[edit]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] |
CRUVI connector specification
[edit]Structure and description of the carrier modules
[edit]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.
- single, double and triple carrier board
-
carrier board with Altera MAX 10 FPGA
-
PCB-template CR99201
-
carrier board with Altera Cyclone V FPGA
-
size of PCB-template CR99500
-
PCB-template CR99500
-
carrier board top view
Structure and description of the peripheral modules
[edit]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.
Templates for the peripheral modules
[edit]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) |
Pinout and signal description
[edit]CRUVI-LS pinout and signal description
[edit]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 |
CRUVI-HS pinout and signal description
[edit]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 |
CRUVI-GT pinout and signal description
[edit]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 |
References
[edit]- ^ "CRUVI specification v2.0.1 (2024)" (PDF). GitHub. Retrieved 2024-05-17.
- ^ a b "PCB template CRUVI boards". GitHub. Retrieved 2024-05-17.
External links
[edit]- CRUVI Webpage
- Trenz Electronic develops and manufactures CRUVI + FPGA (SoC) modules for business and science
- Trenz Electronic and their partners created a new FPGA expansion bus called CRUVI published 2023-05-11
- Arrow reveals first Dev Board for Intel Agilex 5 FPGAs, with two more boards planned published 2023-11-27
- Altera Agilex 5 E Series AXE5 Eagle Development Platform with CRUVI
- Software is integrated into VHDPlus IDE for CRUVI solutions
- Synaptic Laboratories Ltd (SLL) is contributor to the exciting open source CRUVI standard for memory controller and related technologies. i.e. HyperBus, OctaBus, Xccela Bus and JEDEC xSPI memory
This article needs additional or more specific categories. (May 2024) |