пытается запустить тест на работоспособность для мастера SPI, но тест не получен - PullRequest
1 голос
/ 13 апреля 2020

Я новичок в cocotb и хочу запустить тест на работоспособность для SPI master. Я написал простой тест, не импортируя драйвер и монитор, а вызывая все сигналы из DUT. Я попытался запустить простой тест, в отчете не было синтаксической ошибки или ошибки отступа, но тест не получал и обнаружил это сообщение "Не обнаружено виртуальной среды Python. Использование общесистемного интерпретатора Python Как решить эту проблему?

import logging
import cocotb
from cocotb.triggers import RisingEdge, FallingEdge, Timer, ReadOnly
from cocotb.clock import Clock
from cocotb.result import TestFailure
import random


class MasterSpi(object):
    INTERFRAME = (100, "ns")

    def __init__(self, dut, clock, w_CPOL=0, w_CPHA=1):
        self._dut = dut
        self._w_CPOL = w_CPOL
        self._w_CPHA = w_CPHA
        if w_CPOL == 1:
            raise Exception("cpol = 1 not implemented yet")
        if w_CPHA == 0:
            raise Exception("cpha = 0 not implemented yet")
        self._clock_thread = cocotb.fork(clock.start())

        spi_sigs = SPISignals(
            miso=dut.i_SPI_MISO,
            mosi=dut.o_SPI_MOSI,
            sclk=dut.o_SPI - Clk,
        )

        self.spi_config = SPIConfig(
            w_CPOL=False,
            w_CPHA=True,
            baudrate=(1, "us"),
            csphase=False,
        )

        self.spimod = SPIModule(self.spi_config, spi_sigs, clock)


@cocotb.coroutine
def reset(self):

    print("inside coroutine")

    self._dut.i_Rst_L <= 0
    short_per = Timer(100, units="ns")
    self._dut.i_Rst_L <= 0
    self.spimod.set_ss(False)
    self._dut.o_SPI_MOSI <= 0
    self._dut.o_SPI_Clk <= 0
    yield short_per
    self._dut.i_Rst_L <= 1
    yield short_per

1 Ответ

1 голос
/ 13 апреля 2020

У вас нет cocotb.test () где-либо там.

...