/* quartus_eda --gen_testbench --tool=modelsim_oem --format=vhdl --write_settings_files=off SeqShiftUnit_Demo -c SeqShiftUnit_Demo --vector_source="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/SeqShiftUnit.vwf" --testbench_file="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/simulation/qsim/SeqShiftUnit.vwf.vht" quartus_eda --gen_testbench --tool=modelsim_oem --format=vhdl --write_settings_files=off SeqShiftUnit_Demo -c SeqShiftUnit_Demo --vector_source="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/SeqShiftUnit.vwf" --testbench_file="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/simulation/qsim/SeqShiftUnit.vwf.vht" quartus_eda --write_settings_files=off --simulation --functional=on --flatten_buses=off --tool=modelsim_oem --format=vhdl --output_directory="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/simulation/qsim/" SeqShiftUnit_Demo -c SeqShiftUnit_Demo quartus_eda --write_settings_files=off --simulation --functional=off --flatten_buses=off --timescale=1ps --tool=modelsim_oem --format=vhdl --output_directory="/home/tiagorg/repos/uaveiro-leci/1ano/2semestre/lsd/pratica06/SeqShiftUnit_Demo/simulation/qsim/" SeqShiftUnit_Demo -c SeqShiftUnit_Demo onerror {exit -code 1} vlib work vcom -work work SeqShiftUnit_Demo.vho vcom -work work SeqShiftUnit.vwf.vht vsim -c -t 1ps -L cycloneive -L altera -L altera_mf -L 220model -L sgate -L altera_lnsim work.SeqShiftUnit_vhd_vec_tst vcd file -direction SeqShiftUnit_Demo.msim.vcd vcd add -internal SeqShiftUnit_vhd_vec_tst/* vcd add -internal SeqShiftUnit_vhd_vec_tst/i1/* proc simTimestamp {} { echo "Simulation time: $::now ps" if { [string equal running [runStatus]] } { after 2500 simTimestamp } } after 2500 simTimestamp run -all quit -f onerror {exit -code 1} vlib work vcom -work work SeqShiftUnit_Demo.vho vcom -work work SeqShiftUnit.vwf.vht vsim -novopt -c -t 1ps -sdfmax SeqShiftUnit_vhd_vec_tst/i1=SeqShiftUnit_Demo_vhd.sdo -L cycloneive -L altera -L altera_mf -L 220model -L sgate -L altera_lnsim work.SeqShiftUnit_vhd_vec_tst vcd file -direction SeqShiftUnit_Demo.msim.vcd vcd add -internal SeqShiftUnit_vhd_vec_tst/* vcd add -internal SeqShiftUnit_vhd_vec_tst/i1/* proc simTimestamp {} { echo "Simulation time: $::now ps" if { [string equal running [runStatus]] } { after 2500 simTimestamp } } after 2500 simTimestamp run -all quit -f vhdl */ /* WARNING: Do NOT edit the input and output ports in this file in a text editor if you plan to continue editing the block that represents it in the Block Editor! File corruption is VERY likely to occur. */ /* Copyright (C) 2020 Intel Corporation. All rights reserved. Your use of Intel Corporation's design tools, logic functions and other software and tools, and any partner logic functions, and any output files from any of the foregoing (including device programming or simulation files), and any associated documentation or information are expressly subject to the terms and conditions of the Intel Program License Subscription Agreement, the Intel Quartus Prime License Agreement, the Intel FPGA IP License Agreement, or other applicable license agreement, including, without limitation, that your use is for the sole purpose of programming logic devices manufactured by Intel and sold by Intel or its authorized distributors. Please refer to the applicable agreement for further details, at https://fpgasoftware.intel.com/eula. */ HEADER { VERSION = 1; TIME_UNIT = ns; DATA_OFFSET = 0.0; DATA_DURATION = 1000.0; SIMULATION_TIME = 0.0; GRID_PHASE = 0.0; GRID_PERIOD = 10.0; GRID_DUTY_CYCLE = 50; } SIGNAL("clk") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("dataIn") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = BUS; WIDTH = 8; LSB_INDEX = 0; DIRECTION = INPUT; PARENT = ""; } SIGNAL("dataIn[7]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[6]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[5]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[4]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[3]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[2]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[1]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dataIn[0]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = "dataIn"; } SIGNAL("dirLeft") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("loadEn") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("rotate") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("shArith") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("siLeft") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("siRight") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = INPUT; PARENT = ""; } SIGNAL("dataOut") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = BUS; WIDTH = 8; LSB_INDEX = 0; DIRECTION = OUTPUT; PARENT = ""; } SIGNAL("dataOut[7]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[6]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[5]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[4]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[3]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[2]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[1]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } SIGNAL("dataOut[0]") { VALUE_TYPE = NINE_LEVEL_BIT; SIGNAL_TYPE = SINGLE_BIT; WIDTH = 1; LSB_INDEX = -1; DIRECTION = OUTPUT; PARENT = "dataOut"; } TRANSITION_LIST("clk") { NODE { REPEAT = 1; NODE { REPEAT = 100; LEVEL 0 FOR 5.0; LEVEL 1 FOR 5.0; } } } TRANSITION_LIST("dataIn[7]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[6]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[5]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[4]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[3]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[2]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[1]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dataIn[0]") { NODE { REPEAT = 1; LEVEL 0 FOR 1000.0; } } TRANSITION_LIST("dirLeft") { NODE { REPEAT = 1; NODE { REPEAT = 25; LEVEL 0 FOR 20.0; LEVEL 1 FOR 20.0; } } } TRANSITION_LIST("loadEn") { NODE { REPEAT = 1; NODE { REPEAT = 50; LEVEL 0 FOR 10.0; LEVEL 1 FOR 10.0; } } } TRANSITION_LIST("rotate") { NODE { REPEAT = 1; NODE { REPEAT = 12; LEVEL 0 FOR 40.0; LEVEL 1 FOR 40.0; } LEVEL 0 FOR 40.0; } } TRANSITION_LIST("shArith") { NODE { REPEAT = 1; NODE { REPEAT = 6; LEVEL 0 FOR 80.0; LEVEL 1 FOR 80.0; } LEVEL 0 FOR 40.0; } } TRANSITION_LIST("siLeft") { NODE { REPEAT = 1; LEVEL 0 FOR 15.0; LEVEL 1 FOR 60.0; LEVEL 0 FOR 45.0; LEVEL 1 FOR 45.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 60.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 45.0; LEVEL 0 FOR 45.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 60.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 60.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 25.0; } } TRANSITION_LIST("siRight") { NODE { REPEAT = 1; LEVEL 0 FOR 15.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 60.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 60.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 30.0; LEVEL 1 FOR 30.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 90.0; LEVEL 0 FOR 45.0; LEVEL 1 FOR 135.0; LEVEL 0 FOR 45.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 195.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 15.0; LEVEL 0 FOR 15.0; LEVEL 1 FOR 25.0; } } TRANSITION_LIST("dataOut[7]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[6]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[5]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[4]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[3]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[2]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[1]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } TRANSITION_LIST("dataOut[0]") { NODE { REPEAT = 1; LEVEL X FOR 1000.0; } } DISPLAY_LINE { CHANNEL = "clk"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 0; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "dataIn"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 1; TREE_LEVEL = 0; CHILDREN = 2, 3, 4, 5, 6, 7, 8, 9; } DISPLAY_LINE { CHANNEL = "dataIn[7]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 2; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[6]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 3; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[5]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 4; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[4]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 5; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[3]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 6; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[2]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 7; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[1]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 8; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "dataIn[0]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 9; TREE_LEVEL = 1; PARENT = 1; } DISPLAY_LINE { CHANNEL = "loadEn"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 10; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "dirLeft"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 11; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "rotate"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 12; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "shArith"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 13; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "siLeft"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 14; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "siRight"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 15; TREE_LEVEL = 0; } DISPLAY_LINE { CHANNEL = "dataOut"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 16; TREE_LEVEL = 0; CHILDREN = 17, 18, 19, 20, 21, 22, 23, 24; } DISPLAY_LINE { CHANNEL = "dataOut[7]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 17; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[6]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 18; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[5]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 19; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[4]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 20; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[3]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 21; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[2]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 22; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[1]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 23; TREE_LEVEL = 1; PARENT = 16; } DISPLAY_LINE { CHANNEL = "dataOut[0]"; EXPAND_STATUS = COLLAPSED; RADIX = Binary; TREE_INDEX = 24; TREE_LEVEL = 1; PARENT = 16; } TIME_BAR { TIME = 0; MASTER = TRUE; } ;