//------------------------------------------------------ // // File : interface.sv // Related Files : // Author(s) : Mueller // Email : muelleral82290@th-nuernberg.de // Organization : Georg-Simon-Ohm-Hochschule Nuernberg // Notes : Stimuli Modul // //------------------------------------------------------ // History //------------------------------------------------------ // Version| Author | Mod. Date | Changes Made: // v1.00 | Mueller | 11/05/2023 | first code //------------------------------------------------------ //eoh //interface for LED //reg [2:0]rbg stores rgb values that depend on dip[3:2] interface led_if(); logic [2:0]rgb; logic [2:0]rgbn; modport led_port_stim(input rgb, rgbn); modport led_port_top(output rgb, rgbn); endinterface : led_if //interface for DIPSCHALER // dip[3:2] -> select colour, dip[1] -> read ~ 1/write ~ 0, dip[0] -> on ~ 1/off ~ 0 interface dip_if(); logic [3:0]dip; modport dip_port_stim(output dip); modport dip_port_top(input dip); endinterface : dip_if //interface for FRAM // sck -> 0 ~ cummonication enabled, 1 ~ communication disabled // clk -> system clock / timer // miso -> testbench output // mosi -> testbench input interface fram_if(); logic ss; logic mosi; logic miso; logic sclk; modport fram_port_stim(input mosi, sclk, ss, output miso); modport fram_port_top(output mosi, sclk, ss, input miso); endinterface : fram_if //testbenchclock replaces the oscillator on the board interface clock_if(); logic clk; modport clock_port_stim(output clk); modport clock_port_top(input clk); endinterface : clock_if