37 lines
903 B
Python
37 lines
903 B
Python
from typing import TYPE_CHECKING, List
|
|
|
|
if TYPE_CHECKING:
|
|
from ..sim_testcase import SimTestCase
|
|
|
|
|
|
class Simulator:
|
|
name = ""
|
|
|
|
@classmethod
|
|
def is_installed(cls) -> bool:
|
|
raise NotImplementedError
|
|
|
|
def __init__(self, testcase: "SimTestCase" = None) -> None:
|
|
self.testcase = testcase
|
|
|
|
@property
|
|
def gui_mode(self) -> bool:
|
|
return self.testcase.request.config.getoption("--gui")
|
|
|
|
@property
|
|
def tb_files(self) -> List[str]:
|
|
files = []
|
|
files.extend(self.testcase.cpuif.get_sim_files())
|
|
files.extend(self.testcase.get_extra_tb_files())
|
|
files.append("busdecoder_pkg.sv")
|
|
files.append("busdecoder.sv")
|
|
files.append("tb.sv")
|
|
|
|
return files
|
|
|
|
def compile(self) -> None:
|
|
raise NotImplementedError
|
|
|
|
def run(self, plusargs: List[str] = None) -> None:
|
|
raise NotImplementedError
|