Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

25cdb2a · May 23, 2023

History

21 Commits
May 23, 2023
May 2, 2023
Dec 13, 2021
Dec 27, 2021
Apr 15, 2023
Dec 28, 2021

Repository files navigation

PCI Edu device

This is an attempt to implement QEMU PCI Edu device in SystemVerilog.

PCI Vendor ID 0x1234, Device ID 0x11e8.

Features planned to implement

  • PCI Bus
  • PCI configuration space
  • Memory address decoder
  • Line interrupt and MSI interrupt
  • MMIO registers
  • Bus mastering DMA

Getting started

Simulating PCI Edu device requires G++, make and Verilator. A VCD waveform viewer is also required for viewing waveform.
Run simulation: make sim

Source structure

rtl SystemVerilog RTL source code
tb/edu_verilator_wrapper.sv SystemVerilog verilator wrapper, used as top level module for verilator simulation
sim_main.cpp Verilator C++ testbench