Contact Us
Overview

SmartDV’s SPI Verification IP is a comprehensive solution for verifying the Serial Peripheral Interface, the de facto standard synchronous serial protocol used throughout embedded systems for short-distance communication between microcontrollers and peripheral devices. Fully compliant with SPI Block Guide V04.01 and the SQI interface specification, it supports complete verification of SPI Master and Slave components across 3-wire and 4-wire interface configurations, 1-bit and 4-bit bus widths, data widths from 4 to 64 bits, all four standard clock polarity and clock phase mode combinations, daisy-chain connections, and an extensive library of standard device models spanning Flash, EEPROM, FRAM, RTC, SQI, and multiple vendor-specific command protocols.

SmartDV’s SPI VIP supports UVM, SystemVerilog, and Verilog, and integrates seamlessly into diverse verification environments. It is simulator-independent and compatible with all leading EDA simulators, providing flexibility across simulation platforms.

With customizable single, dual, and quad mode operation for command, address, and data phases, configurable dummy cycles, configurable memory density, baud rate selection, glitch insertion and detection, Mode Fault error detection, backdoor access for memory and registers, built-in functional coverage, and a complete test suite, SmartDV’s SPI VIP enables verification teams to thoroughly validate SPI interface designs for microcontrollers, sensors, memory devices, real-time clocks, and any embedded application requiring flexible low-pin-count serial peripheral connectivity.

Request Data Sheet
SPI VIP
Key Features
  • Full SPI Master and Slave Support – Provides complete SPI Master and Slave component verification across 3-wire and 4-wire interface configurations, 1-bit and 4-bit bus widths, data widths from 4 to 64 bits, single and burst transfer modes, on-the-fly data generation, and daisy-chaining connection support for multi-device SPI chains.
  • Clock and Mode Configuration – Supports baud rate selection, internal clock division check, clock polarity (CPOL) selection, clock phase (CPHA) selection covering all four standard SPI mode combinations, and Mode Fault error detection for robust master/slave conflict identification.
  • Multi-I/O and Advanced Bus Width Support – Supports customized single, dual, and quad mode operation independently configurable for command, address, and data phases, configurable dummy cycles, configurable memory density, and single, dual, and quad mode bus width operation for high-bandwidth SPI memory device verification.
  • Extensive Standard Device Model Library – Supports a rich set of standard slave device models including FLASH, EEPROM, FRAM, RTC, SQI, MOTOROLA MODE, NS MODE, TI MODE with both PRECEDE and COINCIDE variants, EMPSPI, MACRONIX, DBI TYPE C, Serial Flash, and MAXIM, plus Spansion DDR model support, enabling out-of-the-box verification against a wide range of real-world SPI peripheral behaviors.
  • 3-Wire Slave Device Support – Supports dedicated 3-wire SPI slave device models including BOSCH SMB380 and RICOH R2033K for verification of compact sensor and peripheral interfaces using reduced pin-count SPI variants.
  • Error Injection and Protocol Checking – Supports glitch insertion and detection, comprehensive Mode Fault error detection and reporting, and continuous protocol checking across all configured SPI modes and device models for thorough fault tolerance and robustness verification.
  • Flexible Slave Modeling and Rich Command Support – SPI Slave can be configured as a standard device or use FIFO for data passing, with the Master containing a rich set of commands for both standard device and FIFO model modes, backdoor access for memory and registers for efficient testbench memory preloading, built-in functional coverage analysis, and callbacks in master, slave, and monitor for user-defined data and command modification and sampling on the SPI bus.
Compliance and Compatibility
  • Fully compliant with SPI Block Guide V04.01 (Freescale/Motorola/NXP)
  • Supports SQI interface specification and common flash device models
  • Supports 3-wire and 4-wire interfaces with 1-bit and 4-bit bus widths
  • Supports standard device models including FLASH, EEPROM, FRAM, RTC, SQI, MOTOROLA, TI, MACRONIX, DBI TYPE C, Serial Flash, and MAXIM
  • Supports BOSCH SMB380 and RICOH R2033K 3-wire slave devices
  • Compatible with UVM, OVM, VMM, SystemVerilog, and Verilog verification environments
  • Compatible with all major EDA simulators including Synopsys VCS, Cadence Xcelium, Siemens Questa, Aldec Riviera-PRO, and Verilator

Request Datasheet