CARME
CARME · Peripherals
Preview

650+ peripheral models. Register-exact, tested on real firmware.

Every model follows the register map and behaviour in its vendor's reference manual, and is tested with the firmware that drives it: vendor SDK examples, Zephyr drivers and Linux drivers. When a model is not enough, run the block's RTL in its place.

carme · peripheralsrunning
CARME
679 models

Analog: ADC, DAC, comparators

20 models
  • Ambiq Apollo4 ADC
    Ambiq
  • Xilinx XADC
    AMD Xilinx
  • AD4011 ADC
    Analog Devices
  • AD56x1 DAC
    Analog Devices
  • MAX32650 ADC
    Analog Devices
  • MUX36S16
    Analog Devices
  • SAM4S ADC
    Microchip
  • CAES ADC
    Open and rad-hard RISC-V SoCs
  • EOSS3 ADC
    QuickLogic
  • Renesas DA14 GPADC
    Renesas
  • STM32 ADC
    STMicroelectronics
  • STM32 ADC Common
    STMicroelectronics
  • STM32F0 ADC
    STMicroelectronics
  • STM32F3 ADC
    STMicroelectronics
  • STM32G0 ADC
    STMicroelectronics
  • STM32H7 ADC
    STMicroelectronics
  • STM32L5 ADC
    STMicroelectronics
  • STM32WBA ADC
    STMicroelectronics
  • Battery fuel gauges (MAX17048, BQ27441)
    Generic and standard
  • Potentiometer
    Generic and standard

Audio

9 models
  • WM8960 audio codec
    Cirrus Logic
  • LiteX I2S
    LiteX
  • LiteX I2S Master
    LiteX
  • LiteX I2S Slave
    LiteX
  • nRF52840 I2S
    Nordic Semiconductor
  • nRF52840 PDM
    Nordic Semiconductor
  • PULP I2S
    OpenHW / PULP
  • EOSS3 Voice
    QuickLogic
  • I2S / TDM with PDM microphones
    Generic and standard

Bus and interconnect

12 models
  • Arm Ethos-U55 / U65 NPU
    Arm · functional model for ML firmware
  • ARM Network Interconnect
    Arm
  • AXI4 / AXI4-Lite / AHB / APB bus bridges
    Arm
  • CHI coherent interconnect
    Arm
  • PL310
    Arm
  • Gaisler AHB Plug And Play Info
    Frontgrade Gaisler
  • Gaisler AHB Plug And Play Record
    Frontgrade Gaisler
  • Gaisler APB Controller
    Frontgrade Gaisler
  • Gaisler APB Plug And Play Record
    Frontgrade Gaisler
  • LM-LZS-D
    Lumees Lab · Lumina Blocks IP, decompression engine
  • LM-LZS-E
    Lumees Lab · Lumina Blocks IP, compression engine
  • Tile Link
    Generic and standard

CAN, LIN and automotive

16 models
  • MCAN
    Bosch
  • Infineon AURIX peripherals (GTM, MultiCAN+, ASCLIN, QSPI)
    Infineon
  • MPFS CAN
    Microchip
  • LPC CAN
    NXP
  • NXP FlexCAN
    NXP
  • UT32 CAN
    Open and rad-hard RISC-V SoCs
  • STM32 FDCAN
    STMicroelectronics
  • STMCAN
    STMicroelectronics
  • CAN External Control Bus
    Generic and standard
  • CAN FD with ISO 15765 transport
    Generic and standard
  • CAN XL controller
    Generic and standard
  • CANTo UART
    Generic and standard
  • FlexRay controller
    Generic and standard
  • LIN 2.2 controller
    Generic and standard
  • SENT and PSI5 sensor interfaces
    Generic and standard
  • SocketCAN Bridge
    Generic and standard

DMA

25 models
  • PL330 DMA
    Arm
  • MPFS PDMA
    Microchip
  • SAM PDC
    Microchip
  • NPCX MDMA
    Nuvoton
  • Tegra Dma
    NVIDIA
  • Tegra Dma Host1X
    NVIDIA
  • NXP eDMA
    NXP
  • NXP eDMA Channels
    NXP
  • S32K3XX DMAMUX
    NXP
  • Vybrid Dma
    NXP
  • EOSS3 SPI DMA
    QuickLogic
  • EOSS3 SystemDMA Bridge
    QuickLogic
  • Renesas DA14 DMA
    Renesas
  • Renesas RZG DMAC
    Renesas
  • EFR32MG12 LDMA
    Silicon Labs
  • EFR32MG24 LDMA
    Silicon Labs
  • EFR32xG22 LDMA
    Silicon Labs
  • STM32 DMA
    STMicroelectronics
  • STM32DMA2D
    STMicroelectronics
  • STM32G0DMA
    STMicroelectronics
  • STM32LDMA
    STMicroelectronics
  • STM32WBA GPDMA
    STMicroelectronics
  • MSP430F261X DMA
    Texas Instruments
  • Omap Dma
    Texas Instruments
  • UDMA
    Generic and standard

Display and camera

13 models
  • Allegro E310
    Allegro MicroSystems
  • PL110
    Arm
  • LiteX Framebuffer
    LiteX
  • LiteX Framebuffer CSR32
    LiteX
  • Tegra Display
    NVIDIA
  • Tegra Syncpts
    NVIDIA
  • Vybrid DCU
    NXP
  • STM32LTDC
    STMicroelectronics
  • MIPI CSI-2 receiver
    Generic and standard
  • MIPI DSI host
    Generic and standard
  • Mustein Generic GPU
    Generic and standard
  • SSD1306 OLED
    Generic and standard
  • ST7789 / ILI9341 SPI displays
    Generic and standard

Ethernet and networking

21 models
  • Cadence GEM
    AMD Xilinx
  • Gaisler Eth
    Frontgrade Gaisler
  • LiteX Ethernet
    LiteX
  • LiteX Ethernet CSR32
    LiteX
  • ENC28J60
    Microchip
  • KS8851
    Microchip
  • K6xF Ethernet
    NXP
  • S32K3XX EMAC
    NXP
  • S32K3XX GMAC
    NXP
  • Quectel BC66
    Quectel
  • Quectel BC660K
    Quectel
  • Quectel BG96
    Quectel
  • Quectel Modem
    Quectel
  • DA16200
    Renesas
  • Synopsys DWC Ethernet Quality Of Service
    Synopsys DesignWare
  • Synopsys Ethernet MAC
    Synopsys DesignWare
  • 100BASE-T1 / 1000BASE-T1 automotive PHYs
    Generic and standard
  • 10BASE-T1S PHY (PLCA)
    Generic and standard
  • Ethernet TSN MAC (802.1AS gPTP, Qbv)
    Generic and standard
  • Fast Ethernet Controller
    Generic and standard
  • SMC91X
    Generic and standard

Flash: NOR, NAND, QSPI

17 models
  • HyperBus / HyperRAM
    Infineon
  • MPFS e NVM
    Microchip
  • FSLNAND
    NXP
  • OpenTitan Flash Controller
    OpenTitan
  • SamsungK9NAND Flash
    Samsung
  • EFR32xg13 Flash Controller
    Silicon Labs
  • STM32 Flash Controller
    STMicroelectronics
  • STM32F0 Flash Controller
    STMicroelectronics
  • STM32F4 Flash Controller
    STMicroelectronics
  • STM32H7 Flash Controller
    STMicroelectronics
  • STM32L0 Flash Controller
    STMicroelectronics
  • STM32WBA Flash Controller
    STMicroelectronics
  • CC2538 Flash Controller
    Texas Instruments
  • AMDCFI Flash
    Generic and standard
  • CFI Flash
    Generic and standard
  • ONFI NAND with ECC
    Generic and standard
  • xSPI / Octal SPI NOR (JESD251)
    Generic and standard

GPIO

46 models
  • Ambiq Apollo4 GPIO
    Ambiq
  • Xilinx GPIOPS
    AMD Xilinx
  • MAX32650 GPIO
    Analog Devices
  • Andes ATCGPIO100
    Andes
  • ARM AHB GPIO
    Arm
  • Gaisler GPIO
    Frontgrade Gaisler
  • Quark PWM
    Intel
  • LiteX Control And Status
    LiteX
  • LiteX GPIO
    LiteX
  • Mi-V Core GPIO
    Microchip
  • MPFS GPIO
    Microchip
  • SAM4S PIO
    Microchip
  • SAMD21 GPIO
    Microchip
  • nRF52840 GPIO
    Nordic Semiconductor
  • nRF52840 GPIO Tasks Events
    Nordic Semiconductor
  • NPCX GPIO
    Nuvoton
  • Emios
    NXP
  • LPC43xx GPIO
    NXP
  • NXP IMX GPIO
    NXP
  • NXPGPIO Port
    NXP
  • Qor IQ GPIO
    NXP
  • S32K3XX e MIOS
    NXP
  • Murax GPIO
    Open and rad-hard RISC-V SoCs
  • PULP APB GPIO
    OpenHW / PULP
  • OpenTitan GPIO
    OpenTitan
  • Renesas DA14 GPIO
    Renesas
  • Renesas GPIO
    Renesas
  • Renesas RA GPIO
    Renesas
  • Renesas RA GPIO Misc
    Renesas
  • Renesas RA2 GPIO
    Renesas
  • Renesas RA4 GPIO
    Renesas
  • Renesas RA6 GPIO
    Renesas
  • Renesas RA8 GPIO
    Renesas
  • Renesas RZG GPIO
    Renesas
  • HiFive PWM
    SiFive
  • SiFive GPIO
    SiFive
  • EFMGPIO Port
    Silicon Labs
  • EFR32 GPIO Port
    Silicon Labs
  • EFR32xG2 GPIO 1
    Silicon Labs
  • EFR32xG2 GPIO 3
    Silicon Labs
  • STM32 GPIO Port
    STMicroelectronics
  • STM32F1 AFIO
    STMicroelectronics
  • STM32F1GPIO Port
    STMicroelectronics
  • STM32F4GPIO Port old
    STMicroelectronics
  • DesignWare APB GPIO
    Synopsys DesignWare
  • CC2538 GPIO
    Texas Instruments

I2C and I3C

42 models
  • Cadence I2C
    AMD Xilinx
  • MAX32650 I2C
    Analog Devices
  • BMA180
    Bosch
  • BMC050
    Bosch
  • BME280
    Bosch
  • Chipsalliance I3C
    CHIPS Alliance
  • MB85RC1MT
    Fujitsu
  • Betrusted EcI2C
    LiteX
  • Betrusted SocI2C
    LiteX
  • LiteX I2C
    LiteX
  • LiteX I2C Zephyr
    LiteX
  • MPFS I2C
    Microchip
  • SAM4S TWI
    Microchip
  • SAMD21 I2C
    Microchip
  • nRF52840 I2C
    Nordic Semiconductor
  • NPCX SM Bus
    Nuvoton
  • Tegra DVC
    NVIDIA
  • TegraI2CController
    NVIDIA
  • NXP IMX I2C
    NXP
  • PCA9548
    NXP
  • S32K3XX Low Power Inter Integrated Circuit
    NXP
  • VybridI2C
    NXP
  • LC709205F
    onsemi
  • PULP u DMA I2C
    OpenHW / PULP
  • OpenTitan I2C
    OpenTitan
  • Renesas RA IIC
    Renesas
  • Renesas RZG IIC
    Renesas
  • RockchipI2C
    Rockchip
  • SHT21
    Sensirion
  • SHT45
    Sensirion
  • EFM32GGI2CController
    Silicon Labs
  • EFR32 GenericI2CController
    Silicon Labs
  • EFR32 I2CController
    Silicon Labs
  • EFR32xG2 I2CController
    Silicon Labs
  • STM32F1 I2C
    STMicroelectronics
  • STM32F7 I2C
    STMicroelectronics
  • DesignWare APB I2C
    Synopsys DesignWare
  • DesignWare APB I3C
    Synopsys DesignWare
  • LM95245
    Texas Instruments
  • TAS2572
    Texas Instruments
  • TCA6416
    Texas Instruments
  • Open CoresI2C
    Generic and standard

Input: keys, touch, HID

8 models
  • PL050
    Arm
  • FT5336
    FocalTech
  • FT5x06
    FocalTech
  • FusionF0710A
    FocalTech
  • GT911 touch controller
    Goodix
  • AR1021
    Microchip
  • PS2 Keyboard
    Generic and standard
  • PS2 Mouse
    Generic and standard

Interrupt controllers

19 models
  • AIC
    Arm
  • Arm GIC-600 / GIC-700
    Arm
  • PL190 VIC
    Arm
  • SIC
    Arm
  • Gaisler MIC
    Frontgrade Gaisler
  • MPC5567 INTC
    NXP
  • MSCM
    NXP
  • NXP INTMUX
    NXP
  • EOSS3 Intr Ctrl
    QuickLogic
  • Renesas RA ICU
    Renesas
  • Renesas RZG IRQ Controller
    Renesas
  • EXTI
    STMicroelectronics
  • STM32 EXTI Core
    STMicroelectronics
  • STM32F4 EXTI
    STMicroelectronics
  • STM32H7 EXTI
    STMicroelectronics
  • STM32WBA EXTI
    STMicroelectronics
  • AINTC
    Texas Instruments
  • RISC-V AIA (APLIC, IMSIC)
    Generic and standard
  • RISC-V CLIC
    Generic and standard

Memory and memory controllers

9 models
  • ARM SMMUv3
    Arm
  • Gaisler Fault Tolerant Memory Controller
    Frontgrade Gaisler
  • OpenTitan ROM Controller
    OpenTitan
  • OpenTitan SRAM Controller
    OpenTitan
  • ESA Memory Controller
    Generic and standard
  • GenericI2c Eeprom
    Generic and standard
  • LPDDR4 DRAM Controller
    Generic and standard
  • LPDDR5 / DDR5 controller
    Generic and standard
  • RISC-V IOMMU
    Generic and standard

PCI Express

7 models
  • Versatile PCI
    Arm
  • MPFS PCIe
    Microchip
  • CXL 2.0 Type 3 memory device
    Generic and standard
  • PCI Host Bridge
    Generic and standard
  • PCIe Gen5 root complex and endpoint
    Generic and standard
  • PCIe Memory
    Generic and standard
  • PIIX
    Generic and standard

SD, MMC, eMMC and UFS

15 models
  • Sunxi MMC
    Allwinner
  • LiteSD Card
    LiteX
  • LiteSD Card CSR32
    LiteX
  • MPFS SD Controller
    Microchip
  • NXP u SDHC
    NXP
  • PULP u DMA SDIO
    OpenHW / PULP
  • STM32 SDMMC
    STMicroelectronics
  • STM32FSDMMC
    STMicroelectronics
  • STM32HSDMMC
    STMicroelectronics
  • eMMC 5.1
    Generic and standard
  • MMC Controller
    Generic and standard
  • SD 7.0 host (SDHCI v4)
    Generic and standard
  • SD Card
    Generic and standard
  • SDHCI
    Generic and standard
  • UFS 4.0 host and device
    Generic and standard

SPI, QSPI and OSPI

45 models
  • Ambiq Apollo4 IO Master
    Ambiq
  • Cadence SPI
    AMD Xilinx
  • Cadence x SPI
    AMD Xilinx
  • Cadence x SPI HW Layer
    AMD Xilinx
  • Xilinx QSPI
    AMD Xilinx
  • Zynq MP GQSPI
    AMD Xilinx
  • MAX32650 SPI
    Analog Devices
  • MAX3421E
    Analog Devices
  • Andes ATCSPI200
    Andes
  • Giga Device GD25LQ
    GigaDevice
  • Cypress S25H
    Infineon
  • Quark SPI
    Intel
  • LiteX SPI
    LiteX
  • LiteX SPI Flash
    LiteX
  • Macronix MX25R
    Macronix
  • MXIC MX66UM1G45G
    Macronix
  • MPFS QSPI
    Microchip
  • MPFS SPI
    Microchip
  • SAM SPI
    Microchip
  • Micron MT25Q
    Micron
  • nRF52840 SPI
    Nordic Semiconductor
  • NPCX FIU
    Nuvoton
  • NPCX Flash
    Nuvoton
  • NPCX SPIP
    Nuvoton
  • NXP ECSPI
    NXP
  • Pico RV SPI
    Open and rad-hard RISC-V SoCs
  • PULP u DMA SPI
    OpenHW / PULP
  • OpenTitan Spi Device
    OpenTitan
  • OpenTitan Spi Host
    OpenTitan
  • Puya P25Q
    Puya
  • Renesas DA SPI
    Renesas
  • Renesas RZG SPI
    Renesas
  • HiFive SPI
    SiFive
  • STM32H7 Quad SPI
    STMicroelectronics
  • STM32H7 SPI
    STMicroelectronics
  • STM32SPI
    STMicroelectronics
  • STM32WBA SPI
    STMicroelectronics
  • DesignWare SPI
    Synopsys DesignWare
  • Synopsys SSI
    Synopsys DesignWare
  • CC2538 SSI
    Texas Instruments
  • Generic Spi Flash
    Generic and standard
  • NAND Flash
    Generic and standard
  • NOR Flash
    Generic and standard
  • SPI Multiplexer
    Generic and standard
  • UARTTo Spi Converter
    Generic and standard

Security and crypto

32 models
  • Ambiq Apollo4 Security
    Ambiq
  • Arm CryptoCell-312
    Arm
  • LM-AES-GCM
    Lumees Lab · Lumina Blocks IP, register-exact
  • LM-AES-XTS
    Lumees Lab · Lumina Blocks IP, register-exact
  • LM-DRBG
    Lumees Lab · Lumina Blocks IP, register-exact
  • LM-PQC-DSA
    Lumees Lab · Lumina Blocks IP, ML-DSA
  • LM-PQC-KEM
    Lumees Lab · Lumina Blocks IP, ML-KEM
  • LM-SHA3
    Lumees Lab · Lumina Blocks IP, register-exact
  • LM-TRNG
    Lumees Lab · Lumina Blocks IP, register-exact
  • SAM TRNG
    Microchip
  • SAM4S CRCCU
    Microchip
  • nRF Shared Memory
    Nordic Semiconductor
  • nRF52840 ECB
    Nordic Semiconductor
  • nRF52840 RNG
    Nordic Semiconductor
  • K6xF RNG
    NXP
  • OpenTitan AES
    OpenTitan
  • OpenTitan Big Number Accelerator
    OpenTitan
  • OpenTitan CSRNG
    OpenTitan
  • OpenTitan Entropy Distribution Network
    OpenTitan
  • OpenTitan Entropy Source
    OpenTitan
  • OpenTitan HMAC
    OpenTitan
  • OpenTitan Key Manager
    OpenTitan
  • OpenTitan KMAC
    OpenTitan
  • OpenTitan Life Cycle Controller
    OpenTitan
  • OpenTitan Life Cycle State
    OpenTitan
  • OpenTitan Scrambled Memory
    OpenTitan
  • STM32 CRC
    STMicroelectronics
  • STM32 RNG
    STMicroelectronics
  • CC2538 Cryptoprocessor
    Texas Instruments
  • VirtIO MMIO Entropy
    VirtIO
  • Secure elements (ATECC608, SE050)
    Generic and standard
  • TPM 2.0 (SPI, I2C)
    Generic and standard

Sensors

43 models
  • AK09916
    AKM
  • AK09918
    AKM
  • AK0991x
    AKM
  • AS6221
    ams OSRAM
  • ADXL345
    Analog Devices
  • ADXL372
    Analog Devices
  • MAX30208
    Analog Devices
  • MAX6682MUA
    Analog Devices
  • MAX77818
    Analog Devices
  • MAX86171
    Analog Devices
  • BME688 environmental sensor
    Bosch
  • BMI270 IMU
    Bosch
  • BMP180
    Bosch
  • ArduCAM Mini2MP Plus
    Camera sensors
  • HM01B0
    Camera sensors
  • OV2640
    Camera sensors
  • MC3635
    mCube
  • PAC1934
    Microchip
  • PULP u DMA Camera
    OpenHW / PULP
  • HS3001
    Renesas
  • OB1203
    Renesas
  • ZMOD4xxx
    Renesas
  • SHT40 humidity sensor
    Sensirion
  • SI70xx
    Silicon Labs
  • SI7210
    Silicon Labs
  • LIS2DS12
    STMicroelectronics
  • LIS2DW12
    STMicroelectronics
  • LPS25HB
    STMicroelectronics
  • LSM303DLHC Accelerometer
    STMicroelectronics
  • LSM303DLHC Gyroscope
    STMicroelectronics
  • LSM330 Accelerometer
    STMicroelectronics
  • LSM330 Gyroscope
    STMicroelectronics
  • LSM6DSO IMU
    STMicroelectronics
  • LSM9DS1 IMU
    STMicroelectronics
  • LSM9DS1 Magnetic
    STMicroelectronics
  • VL53L4CD time-of-flight sensor
    STMicroelectronics
  • ICM-42688-P IMU
    TDK InvenSense
  • TI LM74
    Texas Instruments
  • TMP103
    Texas Instruments
  • TMP108
    Texas Instruments
  • u-blox GNSS receiver (NMEA, UBX)
    u-blox
  • VEML7700
    Vishay
  • GenericSPI Sensor
    Generic and standard

Storage

8 models
  • VirtIO Block Device
    VirtIO
  • VirtIO FS Device
    VirtIO
  • ATAPI
    Generic and standard
  • CDROM
    Generic and standard
  • NVMe 2.0 controller
    Generic and standard
  • UFS
    Generic and standard
  • UFS Device
    Generic and standard
  • UFS Host Controller
    Generic and standard

System: clocks, power, reset, security

81 models
  • Ambiq Apollo4 Bootrom Logger
    Ambiq
  • Ambiq Apollo4 Power Controller
    Ambiq
  • Zynq MP IPI
    AMD Xilinx
  • Zynq MP Platform Management Unit
    AMD Xilinx
  • MAX32650 GCR
    Analog Devices
  • MAX32650 PWRSEQ
    Analog Devices
  • MAX32650 TPU
    Analog Devices
  • Arm CoreSight (ETM, ITM, CTI)
    Arm
  • Arm Sys Ctl
    Arm
  • Egis ET171 AOSMU
    Egis
  • Egis ET171 SMU2
    Egis
  • Focal Tech FT9001 CPM
    FocalTech
  • Focal Tech FT9001 Reset
    FocalTech
  • Quark System Control Subsystem
    Intel
  • LiteX MMCM
    LiteX
  • LiteX MMCM CSR32
    LiteX
  • LiteX SoC Controller
    LiteX
  • LiteX SoC Controller CSR32
    LiteX
  • MPFS Sysreg
    Microchip
  • MPFS System Services
    Microchip
  • SAM4S DACC
    Microchip
  • SAM4S EEFC
    Microchip
  • SAM4S RSTC
    Microchip
  • nRF Bellboard
    Nordic Semiconductor
  • nRF CLOCK
    Nordic Semiconductor
  • nRF USBREG
    Nordic Semiconductor
  • nRF52840 EGU
    Nordic Semiconductor
  • nRF52840 PPI
    Nordic Semiconductor
  • nRF54L CLOCK
    Nordic Semiconductor
  • NPCX HFCG
    Nuvoton
  • NPCX LFCG
    Nuvoton
  • K6xF MCG
    NXP
  • K6xF SIM
    NXP
  • LPC Clock0
    NXP
  • NXP IMX8MP System Reset Controller
    NXP
  • NXP XRDC
    NXP
  • S32K SCG
    NXP
  • S32K3XX Flex IO
    NXP
  • S32K3XX MC CGM
    NXP
  • S32K3XX Miscellaneous System Control Module
    NXP
  • S32K3XX Mode Entry Module
    NXP
  • S32K3XX PLLDIG
    NXP
  • S32K3XX System Integration Unit Lite2
    NXP
  • SEMA4
    NXP
  • SEMA42
    NXP
  • OpenTitan Alert Handler
    OpenTitan
  • OpenTitan Clock Manager
    OpenTitan
  • OpenTitan Multi Bit Bool
    OpenTitan
  • OpenTitan One Time Programmable Memory Controller
    OpenTitan
  • OpenTitan Power Manager
    OpenTitan
  • OpenTitan Reset Manager
    OpenTitan
  • OpenTitan System Reset Control
    OpenTitan
  • EOSS3 Flexible Fusion Engine
    QuickLogic
  • EOSS3 Packet FIFO
    QuickLogic
  • Renesas DA14 Clock Generation Controller
    Renesas
  • Renesas RZG CPG SYSC
    Renesas
  • Renesas RZG MHU
    Renesas
  • EFM32 Device Information
    Silicon Labs
  • EFR32 CMU
    Silicon Labs
  • Si Labs
    Silicon Labs
  • STM32 DMAMUX
    STMicroelectronics
  • STM32 PWR
    STMicroelectronics
  • STM32 SYSCFG
    STMicroelectronics
  • STM32F0 RCC
    STMicroelectronics
  • STM32F4 RCC
    STMicroelectronics
  • STM32H7 Hardware Semaphore
    STMicroelectronics
  • STM32H7 RCC
    STMicroelectronics
  • STM32L0 PWR
    STMicroelectronics
  • STM32L0 RCC
    STMicroelectronics
  • STM32L5 RCC
    STMicroelectronics
  • STM32WBA PWR
    STMicroelectronics
  • STM32WBA RCC
    STMicroelectronics
  • MSP430F2XXX MPY
    Texas Instruments
  • VirtIO MMIO Console
    VirtIO
  • Button
    Generic and standard
  • External Window MMU
    Generic and standard
  • LED
    Generic and standard
  • Reset Pin
    Generic and standard
  • RISC-V debug module and trace encoder
    Generic and standard
  • Seven Segments Display
    Generic and standard
  • Window IOMMU
    Generic and standard

Timers, PWM, RTC and watchdogs

98 models
  • ABRTCMC
    Abracon
  • Sunxi High Speed Timer
    Allwinner
  • Sunxi Timer
    Allwinner
  • Ambiq Apollo4 RTC
    Ambiq
  • Ambiq Apollo4 System Timer
    Ambiq
  • Ambiq Apollo4 Timer
    Ambiq
  • Ambiq Apollo4 Watchdog
    Ambiq
  • Cadence TTC
    AMD Xilinx
  • Cadence WDT
    AMD Xilinx
  • Zynq MP RTC
    AMD Xilinx
  • MAX32650 RTC
    Analog Devices
  • MAX32650 Timer
    Analog Devices
  • MAX32650 WDT
    Analog Devices
  • Andes ATCPIT100
    Andes
  • Andes ATCRTC100
    Andes
  • Andes ATCWDT200 Watchdog
    Andes
  • Arm CMSDK Timer
    Arm
  • Arm CMSDK Watchdog
    Arm
  • Arm Corstone System Counter
    Arm
  • Arm Corstone System Timer
    Arm
  • Arm Corstone System Watchdog
    Arm
  • ARM SP804 Timer
    Arm
  • PL031
    Arm
  • Gaisler GP Timer
    Frontgrade Gaisler
  • LiteX CPU Timer
    LiteX
  • LiteX Timer
    LiteX
  • LiteX Timer 64bit
    LiteX
  • LiteX Timer CSR32
    LiteX
  • Marvell Armada Timer
    Marvell
  • RV8803 RTC
    Micro Crystal
  • Atmel91 System Timer
    Microchip
  • Low Power Timer
    Microchip
  • Mi-V Core Timer
    Microchip
  • MPFS RTC
    Microchip
  • MPFS Timer
    Microchip
  • MPFS Watchdog
    Microchip
  • SAM TC
    Microchip
  • SAM4S WDT
    Microchip
  • SAMD21 RTC
    Microchip
  • SAMD21 Timer
    Microchip
  • nRF52840 RTC
    Nordic Semiconductor
  • nRF52840 Timer
    Nordic Semiconductor
  • nRF52840 Watchdog
    Nordic Semiconductor
  • nRF54H20 GRTC
    Nordic Semiconductor
  • NPCX ITIM
    Nuvoton
  • NPCX MTC
    Nuvoton
  • NPCX TWD
    Nuvoton
  • Tegra Timer
    NVIDIA
  • Tegra Usec Timer
    NVIDIA
  • LPC CTimer
    NXP
  • NXP IMX Watchdog
    NXP
  • NXP Os Timer
    NXP
  • Periodic Interrupt Timer
    NXP
  • S32K LPIT
    NXP
  • S32K LPTMR
    NXP
  • S32K3XX Periodic Interrupt Timer
    NXP
  • S32K3XX Real Time Clock
    NXP
  • S32K3XX Software Watchdog Timer
    NXP
  • S32K3XX System Timer Module
    NXP
  • Murax Timer
    Open and rad-hard RISC-V SoCs
  • PULP Timer
    OpenHW / PULP
  • OpenTitan Aon Timer
    OpenTitan
  • OpenTitan Timer
    OpenTitan
  • EOSS3 Simple Periodic Timer
    QuickLogic
  • Renesas DA Watchdog
    Renesas
  • Renesas DA14 GPT
    Renesas
  • Renesas RA AGT
    Renesas
  • Renesas RA GPT
    Renesas
  • Renesas RZG GPT
    Renesas
  • Renesas RZG GTM
    Renesas
  • Renesas RZG SYC
    Renesas
  • Renesas RZG Watchdog
    Renesas
  • Efm32 Timer
    Silicon Labs
  • EFR32 RTCC
    Silicon Labs
  • EFR32 RTCC Counter
    Silicon Labs
  • EFR32 Timer
    Silicon Labs
  • EFR32xG2 BURTC
    Silicon Labs
  • EFR32xG2 RTCC
    Silicon Labs
  • EFR32xG2 TIMER 1
    Silicon Labs
  • EFR32xG2 TIMER 1.Generated
    Silicon Labs
  • EFR32xG24 SYSRTC
    Silicon Labs
  • STM32 Independent Watchdog
    STMicroelectronics
  • STM32 Timer
    STMicroelectronics
  • STM32F4 RTC
    STMicroelectronics
  • STM32H7 System Window Watchdog
    STMicroelectronics
  • STM32L RTC
    STMicroelectronics
  • STM32L0 Lp Timer
    STMicroelectronics
  • CC2538 Sleep Timer
    Texas Instruments
  • CC2538 Watchdog
    Texas Instruments
  • MSP430 Timer
    Texas Instruments
  • MSP430F2XXX Watchdog
    Texas Instruments
  • OMAP GP Timer
    Texas Instruments
  • OMAP Timer
    Texas Instruments
  • Texas Instruments Timer
    Texas Instruments
  • HPET
    Generic and standard
  • Motor control (PWM with dead time, QEI encoder)
    Generic and standard
  • Pulse Generator
    Generic and standard
  • RiscVMachine Timer
    Generic and standard

UART, USART and SCI

67 models
  • Axi Uart Lite
    AMD Xilinx
  • Cadence UART
    AMD Xilinx
  • Meson Uart
    Amlogic
  • MAX32650 UART
    Analog Devices
  • MAX32655 UART
    Analog Devices
  • Mxc Uart
    Analog Devices
  • CMSDK APB UART
    Arm
  • PL011
    Arm
  • BCM2711 AUX UART
    Broadcom
  • KB1200 UART
    ENE Technology
  • ESP32 UART
    Espressif
  • FT9001 USART
    FocalTech
  • Gaisler APBUART
    Frontgrade Gaisler
  • GD32 UART
    GigaDevice
  • Infineon SCBUART
    Infineon
  • XMC4XXX UART
    Infineon
  • Altera JTAG UART
    Intel
  • LiteX UART
    LiteX
  • LiteX UART 64bit
    LiteX
  • Atmel91 Debug Unit
    Microchip
  • Mi-V Core UART
    Microchip
  • SAM USART
    Microchip
  • SAMD20 UART
    Microchip
  • SAMD5 UART
    Microchip
  • nRF52840 UART
    Nordic Semiconductor
  • nRF54H20 UARTE
    Nordic Semiconductor
  • NPCX UART
    Nuvoton
  • Imx Uart
    NXP
  • K6xF UART
    NXP
  • LIN FlexD UART
    NXP
  • LPC USART
    NXP
  • MPC5567 UART
    NXP
  • NXP FLEXCOMM
    NXP
  • NXP LPUART
    NXP
  • Aesc UART
    Open and rad-hard RISC-V SoCs
  • Murax UART
    Open and rad-hard RISC-V SoCs
  • NEORV32 UART
    Open and rad-hard RISC-V SoCs
  • PicoSoC Simple UART
    Open and rad-hard RISC-V SoCs
  • Potato UART
    Open and rad-hard RISC-V SoCs
  • PULP STDOUT
    OpenHW / PULP
  • PULP u DMA UART
    OpenHW / PULP
  • OpenTitan UART
    OpenTitan
  • RCAR UART
    Renesas
  • Renesas DA14 UART
    Renesas
  • Renesas RA6M5 SCI
    Renesas
  • Renesas RA8M1 SCI
    Renesas
  • Renesas RZG SCIFA
    Renesas
  • Renesas SCI
    Renesas
  • Smartbond UART
    Renesas
  • SiFive UART
    SiFive
  • EFM32 UART
    Silicon Labs
  • EFR32 USART
    Silicon Labs
  • EFR32xG2 EUSART 2
    Silicon Labs
  • EFR32xG2 USART 0
    Silicon Labs
  • EFR32xG22 USART
    Silicon Labs
  • LEUART
    Silicon Labs
  • SI32 USART
    Silicon Labs
  • STM32 UART
    STMicroelectronics
  • STM32F7 USART
    STMicroelectronics
  • STM32W UART
    STMicroelectronics
  • MSP430 e USCI
    Texas Instruments
  • MSP430 USCIA
    Texas Instruments
  • App Uart
    Generic and standard
  • NS16550
    Generic and standard
  • Semihosting Uart
    Generic and standard
  • Trivial Uart
    Generic and standard
  • USB Serial Port S3B
    Generic and standard

USB

13 models
  • Cadence USB
    AMD Xilinx
  • Valenty USB
    LiteX
  • MPFS USB
    Microchip
  • nRF USBD
    Nordic Semiconductor
  • STM USB
    STMicroelectronics
  • USB 2.0 device (DWC2 / ChipIdea)
    Synopsys DesignWare
  • USB 3.2 xHCI host
    Generic and standard
  • USB Host
    Generic and standard
  • USB Keyboard
    Generic and standard
  • USB Mouse
    Generic and standard
  • USB Pendrive
    Generic and standard
  • USB Type-C PD controller
    Generic and standard
  • USB UART
    Generic and standard

Wireless: BLE, 802.15.4, sub-GHz

13 models
  • AT86RF233
    Microchip
  • nRF52840 Radio
    Nordic Semiconductor
  • Semtech SX1262 LoRa
    Semtech
  • EFR32xG24 Radio
    Silicon Labs
  • Ember Radio
    Silicon Labs
  • CC1200
    Texas Instruments
  • CC2520
    Texas Instruments
  • CC2538
    Texas Instruments
  • CC2538RF
    Texas Instruments
  • Bluetooth LE 5.4 radio
    Generic and standard
  • IEEE 802.15.4 / Thread / Zigbee radio
    Generic and standard
  • LTE-M / NB-IoT modem (AT command model)
    Generic and standard
  • Wi-Fi 6 station (host interface model)
    Generic and standard
A world around the chip

Sensors that move, networks with something on the other side.

01

Sensors that move

A sensor model reads data, not just a register value: feed an IMU a recorded flight, a thermometer a temperature curve, a camera a video, a GNSS receiver a track. Tests replay the same data on every run.

02

Networks with a world on the other side

Connect an emulated Ethernet port to a host network, a CAN bus to a real CAN interface or a log file, a UART to a terminal, a socket or a test. A radio talks to every other emulated radio in range, with loss and latency you set.

Write your own

Registers in YAML, behaviour in Python.

Describe the registers in a .cmperiph and the behaviour in Python. It loads without rebuilding CARME. Or keep the register description and point it at your RTL instead.

periph/my_adc.cmperiph
name: my_adc
bus: apb
size: 0x100
irq: [done]
registers:
CTRL: { at: 0x00, fields: { EN: 0, START: 1, CH: "4:2" } }
STATUS: { at: 0x04, access: ro, fields: { DONE: 0 } }
DATA: { at: 0x08, access: ro, width: 16 }
behaviour: periph/my_adc.py
periph/my_adc.py
def on_write_CTRL(p, value):
if p.CTRL.EN and p.CTRL.START:
p.DATA = p.input(f"ch{p.CTRL.CH}") # from a data file or a test
p.STATUS.DONE = 1
p.irq.done.pulse()
Questions

Common questions.

How accurate are the models?

Each model follows the register map and behaviour in the vendor's reference manual, and is tested with the firmware that drives it. When you need more, run the block's RTL in its place.

A peripheral I use is missing.

Write it in Python from its register description, or ask us: we add models for test partners first.

Missing a model?

Ask for it, or write it in an afternoon.

Privacy settings

Choose what this site may use. You can change your mind at any time from the Privacy settings link at the bottom of every page.

What the site needs to work, and the record of the choice you make here, kept in your browser. No cookies are set.

Always on

Would let us count visits and see which pages are useful, without advertising or cross-site tracking. We do not use any analytics today, so nothing is loaded whichever you choose.

Cookie policy · Privacy policy