OpenCores
URL https://opencores.org/ocsvn/copyblaze/copyblaze/trunk

Subversion Repositories copyblaze

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /copyblaze
    from Rev 41 to Rev 42
    Reverse comparison

Rev 41 → Rev 42

/trunk/copyblaze/bench/vhdl/tb_copyBlaze_ecoSystem_wb-uart.vhd
0,0 → 1,370
--------------------------------------------------------------------------------
-- Company:
--
-- File: tb_copyBlaze_ecoSystem_wb-uart.vhd
--
-- Description:
-- projet copyblaze
-- copyBlaze_ecoSystem testbench
--
-- File history:
-- v1.0: 25/11/11: Creation
--
-- Targeted device: ProAsic A3P250 VQFP100
-- Author: AbdAllah Meziti
--------------------------------------------------------------------------------
 
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
 
--------------------------------------------------------------------------------
-- Entity: tb_copyBlaze_ecoSystem_wb_uart
--
-- Description:
--
-- REMARQUE:
--
--
-- History:
-- 25/11/11 AM: Creation
-- ---------------------
-- xx/xx/xx AM:
--
--------------------------------------------------------------------------------
entity tb_copyBlaze_ecoSystem_wb_uart is
end tb_copyBlaze_ecoSystem_wb_uart;
 
--------------------------------------------------------------------------------
-- Architecture: behavior
-- of entity : tb_copyBlaze_ecoSystem_wb_uart
--------------------------------------------------------------------------------
architecture behavior of tb_copyBlaze_ecoSystem_wb_uart is
 
--------------------------------------------------------------------------------
 
--------------------------------------------------------------------------------
-- Constant for testbench
constant CST_RESET_LENGTH : positive := 7;
constant CST_MAX_CYCLES : positive := 500;
 
constant CST_FREQ : integer := 4; -- Mhz
constant CST_PERIOD : time := 1 us/CST_FREQ;
-- Constant for the cp_copyBlaze_ecoSystem generic
constant CST_WIDTH_DATA : positive := 8;
constant CST_WIDTH_PC : positive := 10;
constant CST_WIDTH_INST : positive := 18;
 
constant CST_DEPTH_STACK : positive := 31;
constant CST_DEPTH_BANC : positive := 16;
constant CST_DEPTH_SCRATCH : positive := 64;
 
constant CST_INT_VECTOR : std_ulogic_vector(11 downto 0) := x"3FF";
--------------------------------------------------------------------------------
 
--------------------------------------------------------------------------------
component cp_copyBlaze_ecoSystem
generic
(
GEN_WIDTH_DATA : positive := 8;
GEN_WIDTH_PC : positive := 10;
GEN_WIDTH_INST : positive := 18;
GEN_DEPTH_STACK : positive := 15; -- Taille (en octet) de la Stack
GEN_DEPTH_BANC : positive := 16; -- Taille (en octet) du Banc Register
GEN_DEPTH_SCRATCH : positive := 64; -- Taille (en octet) du Scratch Pad
GEN_INT_VECTOR : std_ulogic_vector(11 downto 0) := x"3FF"
);
Port (
--------------------------------------------------------------------------------
-- Signaux Systeme
--------------------------------------------------------------------------------
Clk_i : in std_ulogic;
--Rst_i_n : in std_ulogic;
--------------------------------------------------------------------------------
-- Signaux Fonctionels
--------------------------------------------------------------------------------
Interrupt_i : in std_ulogic;
Interrupt_Ack_o : out std_ulogic;
IN_PORT_i : in std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
OUT_PORT_o : out std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
PORT_ID_o : out std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
READ_STROBE_o : out std_ulogic;
WRITE_STROBE_o : out std_ulogic;
--------------------------------------------------------------------------------
-- Signaux WishBone
--------------------------------------------------------------------------------
Freeze_i : in std_ulogic;
--------------------------------------------------------------------------------
-- Signaux Wishbone Interface
--------------------------------------------------------------------------------
--RST_I : in std_ulogic;
--CLK_I : in std_ulogic;
ADR_O : out std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
DAT_I : in std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
DAT_O : out std_ulogic_vector(GEN_WIDTH_DATA-1 downto 0);
WE_O : out std_ulogic;
SEL_O : out std_ulogic_vector(1 downto 0);
STB_O : out std_ulogic;
ACK_I : in std_ulogic;
CYC_O : out std_ulogic
);
end component;
 
component wb_uart_8
port (
clk : in std_ulogic;
reset : in std_ulogic;
-- Wishbone slave
wb_adr_i : in std_ulogic_vector( 7 downto 0);
wb_dat_i : in std_ulogic_vector( 7 downto 0);
wb_dat_o : out std_ulogic_vector( 7 downto 0);
wb_cyc_i : in std_ulogic;
wb_stb_i : in std_ulogic;
wb_ack_o : out std_ulogic;
wb_we_i : in std_ulogic;
wb_rxirq_o : out std_ulogic;
wb_txirq_o : out std_ulogic;
-- Serial I/O ports
uart_rx : in std_ulogic;
uart_tx : out std_ulogic
);
end component;
 
--------------------------------------------------------------------------------
 
--------------------------------------------------------------------------------
signal iClk : std_ulogic := '0';
signal iReset : std_ulogic;
signal iResetN : std_ulogic;
 
signal iInterrupt : std_ulogic;
signal iInterrupt_Ack : std_ulogic;
signal iIn_port : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iOut_port : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iPort_id : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iRead_strobe : std_ulogic;
signal iWrite_strobe : std_ulogic;
 
signal iFreeze : std_ulogic := '0'; -- Freeze the processor
 
signal iReset_counter : natural range 0 to CST_RESET_LENGTH := CST_RESET_LENGTH; -- VERY BAD SOLUTION
signal iCounter : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iWaveForms : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iExtIntEvent : std_ulogic;-- := '0';
signal iWbSTB : std_ulogic;
signal iWbCYC : std_ulogic;
signal iWbACK : std_ulogic;-- := '0';--'0';
signal iWbWE : std_ulogic;-- := '0';--'0';
signal iWbDAT_I : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iWbDAT_O : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
signal iWbADR : std_ulogic_vector(CST_WIDTH_DATA-1 downto 0);
begin
 
-- ***************************************** --
-- UUT : Unit Under Test : cp_copyBlaze_ecoSystem --
-- ***************************************** --
uut: cp_copyBlaze_ecoSystem
generic map
(
GEN_WIDTH_DATA => CST_WIDTH_DATA,
GEN_WIDTH_PC => CST_WIDTH_PC,
GEN_WIDTH_INST => CST_WIDTH_INST,
 
GEN_DEPTH_STACK => CST_DEPTH_STACK,
GEN_DEPTH_BANC => CST_DEPTH_BANC,
GEN_DEPTH_SCRATCH => CST_DEPTH_SCRATCH,
 
GEN_INT_VECTOR => CST_INT_VECTOR
)
Port map
(
--------------------------------------------------------------------------------
-- Signaux Systeme
--------------------------------------------------------------------------------
Clk_i => iClk,
--Rst_i_n : in std_ulogic;
--------------------------------------------------------------------------------
-- Signaux Fonctionels
--------------------------------------------------------------------------------
Interrupt_i => iExtIntEvent,--iInterrupt,
Interrupt_Ack_o => iInterrupt_Ack,
IN_PORT_i => iIn_port,
OUT_PORT_o => iOut_port,
PORT_ID_o => iPort_id,
READ_STROBE_o => iRead_strobe,
WRITE_STROBE_o => iWrite_strobe,
--------------------------------------------------------------------------------
-- Signaux WishBone
--------------------------------------------------------------------------------
Freeze_i => iFreeze,
--------------------------------------------------------------------------------
-- Signaux Wishbone Interface
--------------------------------------------------------------------------------
--RST_I => iReset,
--CLK_I => Clk_i,
ADR_O => iWbADR,
DAT_I => iWbDAT_I,--(others => '0'),
DAT_O => iWbDAT_O,--open,
WE_O => iWbWE,--open,
SEL_O => open,
STB_O => iWbSTB,
ACK_I => iWbACK,
CYC_O => iWbCYC
);
 
wb_uart : wb_uart_8
port map(
clk => iClk,
reset => iResetN,
-- Wishbone slave
wb_adr_i => iWbADR,
wb_dat_i => iWbDAT_O,
wb_dat_o => iWbDAT_I,
wb_cyc_i => iWbCYC,
wb_stb_i => iWbSTB,
wb_ack_o => iWbACK,
wb_we_i => iWbWE,
wb_rxirq_o => open,
wb_txirq_o => iExtIntEvent,
-- Serial I/O ports
uart_rx => '1',
uart_tx => open
);
 
--------------------------------------------------------------------------------
-- Process : Interrupt_Proc
-- Description: Interrupt Logic for cp_copyBlaze_ecoSystem
--------------------------------------------------------------------------------
Interrupt_Proc: process(iReset, iClk)
begin
if (iReset='0') then
iInterrupt <= '0';
elsif ( rising_edge(iClk) ) then
if (iExtIntEvent='1') then
iInterrupt <= '1';
elsif (iInterrupt_Ack='1') then
iInterrupt <= '0';
end if;
end if;
end process Interrupt_Proc;
 
--------------------------------------------------------------------------------
-- Process : Reset_Proc
-- Description: Reset Logic for cp_copyBlaze_ecoSystem
--------------------------------------------------------------------------------
Reset_Proc: process(iClk)
begin
-- delayed iReset circuit
if ( rising_edge(iClk) ) then
if ( iReset_counter = 0 ) then
iReset <= '1';
else
iReset <= '0';
iReset_counter <= iReset_counter - 1;
end if;
end if;
end process Reset_Proc;
iResetN <= not(iReset);
--------------------------------------------------------------------------------
-- Process : IO_Proc
-- Description: adding the output registers to the processor
--------------------------------------------------------------------------------
IO_Proc: process(iClk)
begin
-- waveform register at iAddress 02
if ( rising_edge(iClk) ) then
if (iPort_id(1)='1' and iWrite_strobe='1') then
iWaveForms <= iOut_port;
end if;
end if;
 
-- Interrupt iCounter register at iAddress 04
if ( rising_edge(iClk) ) then
if (iPort_id(2)='1' and iWrite_strobe='1') then
iCounter <= iOut_port;
end if;
end if;
end process IO_Proc;
 
-- ********************* --
-- STIMULIS FOR THE TEST --
-- ********************* --
-- Unused inputs on processor
iIn_port <= x"28";
 
--iClk <= not iClk after 0.5 * CST_PERIOD;
--------------------------------------------------------------------------------
-- Process : INT_Proc
-- Description: Nominal 100MHz clock which also defines number of cycles in simulation
--------------------------------------------------------------------------------
INT_Proc : process
variable max_cycles : integer := CST_MAX_CYCLES;
variable cycle_count : integer := 0;
begin
-- Define the clock cycles and the clock cycle iCounter
while cycle_count < max_cycles loop
 
-- wait until rising_edge(iClk) ;
iClk <= '0';
wait for CST_PERIOD;
iClk <= '1';
cycle_count := cycle_count + 1;
wait for CST_PERIOD;
 
--Now define stimulus relative to a given clock cycle
case cycle_count is
-- *************** --
-- INTERRUPT EVENT --
-- *************** --
--when 30 => iExtIntEvent <= '1';
--when 34 => iExtIntEvent <= '0';
--
--when 67 => iExtIntEvent <= '1'; -- Take care when the "iIE" bit is not set. In this case how to manage Interrupt_Ack_o
--when 71 => iExtIntEvent <= '0';
--when 300 => iExtIntEvent <= '1';
--when 304 => iExtIntEvent <= '0';
-- ************ --
-- FREEZE EVENT --
-- ************ --
when 130 => iFreeze <= '1';
when 150 => iFreeze <= '0';
-- ****** --
-- WB ACK --
-- ****** --
--when 420 => iWbACK <= '1';
--when 420+1 => iWbACK <= '0';
 
when others => --iExtIntEvent <= iExtIntEvent; -- hold last defined value
end case;
end loop;
wait; -- end of simulation.
end process INT_Proc;
 
end behavior;
/trunk/copyblaze/sim/rtl_sim/bin/tb_copyBlaze_ecoSystem_wb-uart_wave.do
0,0 → 1,127
onerror {resume}
quietly WaveActivateNextPane {} 0
add wave -noupdate -divider {WISHBONE uart}
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/clk
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/reset
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_adr_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_dat_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_dat_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_cyc_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_stb_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_ack_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_we_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_rxirq_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wb_txirq_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/uart_rx
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/uart_tx
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/active
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/activelast
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/ack
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/wr
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/rd
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/rx_avail
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/tx_avail
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/rxdata
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/txdata
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/status_reg
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/data_reg
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/tx_irqen
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/wb_uart/rx_irqen
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/wb_uart/divisor
add wave -noupdate -divider {REG BANK}
add wave -noupdate -radix hexadecimal -expand -subitemconfig {/tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(0) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(1) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(2) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(3) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(4) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(5) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(6) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(7) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(8) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(9) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(10) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(11) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(12) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(13) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(14) {-radix hexadecimal} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem(15) {-radix hexadecimal}} /tb_copyblaze_ecosystem_wb_uart/uut/processor/u_bancregister/ibancregmem
add wave -noupdate -divider COPYBLAZE
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/clk_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/rst_i_n
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/address_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/instruction_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/interrupt_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/interrupt_ack_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/in_port_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/out_port_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/port_id_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/read_strobe_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/write_strobe_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/freeze_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/adr_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/dat_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/dat_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/we_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/sel_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/stb_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ack_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/cyc_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iphase1
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iphase2
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iaaa
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ikk
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iss
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ipp
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iz
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ic
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/izi
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ici
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ialuresult
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/isxdatain
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/isxdata
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/isydata
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/isxptr
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/isyptr
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iscratchptr
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iscratchdataout
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ibancwriteop
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ibancwrite
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iscratchwrite
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ifetch
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iinput
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iouput
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ioperationselect
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ioperandselect
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iarithoper
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ilogicoper
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/ishiftbit
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ishiftsens
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iflagswrite
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iflagspush
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iflagspop
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iconditionctrl
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ijump
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/icall
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ireturn
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ireturni
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ipcenable
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iievent
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iiewrite
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iievalue
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/ifreeze
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbadr_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbdat_i
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbdat
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbdat_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbwe_o
add wave -noupdate -radix hexadecimal /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbsel_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbstb_o
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwback_i
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbcyc
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbwrsing
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwbrdsing
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwb_validhandshake
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwb_validpc
add wave -noupdate /tb_copyblaze_ecosystem_wb_uart/uut/processor/iwb_validoperand
TreeUpdate [SetDefaultTree]
WaveRestoreCursors {{Cursor 1} {34500000 ps} 0}
configure wave -namecolwidth 365
configure wave -valuecolwidth 40
configure wave -justifyvalue left
configure wave -signalnamewidth 0
configure wave -snapdistance 10
configure wave -datasetprefix 0
configure wave -rowmargin 4
configure wave -childrowmargin 2
configure wave -gridoffset 0
configure wave -gridperiod 1
configure wave -griddelta 40
configure wave -timeline 0
configure wave -timelineunits ps
update
WaveRestoreZoom {0 ps} {262500 ns}
/trunk/copyblaze/sim/rtl_sim/bin/tb_copyBlaze_ecoSystem_wb-uart_run.do
0,0 → 1,42
quietly set ACTELLIBNAME proasic3
do PATH.do
 
if {[file exists presynth/_info]} {
echo "INFO: Simulation library presynth already exists"
} else {
vlib presynth
}
vmap presynth presynth
vmap proasic3 "C:/Actel/Libero_v9.1/Designer/lib/modelsim/precompiled/vhdl/proasic3"
 
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Usefull_Pkg.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Toggle.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Interrupt.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_ProgramCounter.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Stack.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_ProgramFlowControl.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_FullAdder.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_CLAAdder.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Alu.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_Flags.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_BancRegister.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_ScratchPad.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_DecodeControl.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_copyBlaze.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_ROM_Code.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/rtl/vhdl/cp_copyBlaze_ecoSystem.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/sim/rtl_sim/src/wb_uart/uart_rx.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/sim/rtl_sim/src/wb_uart/uart_tx.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/sim/rtl_sim/src/wb_uart/uart.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/sim/rtl_sim/src/wb_uart/wb_uart_8.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/sim/rtl_sim/src/wb_timer/wb_timer_8.vhd"
vcom -93 -explicit -work presynth "C:/Users/AbdAllah/Documents/mP/mP/copyblaze/copyblaze/bench/vhdl/tb_copyBlaze_ecoSystem_wb-uart.vhd"
 
vsim -L proasic3 -L presynth -t 1ps presynth.tb_copyBlaze_ecoSystem_wb_uart
# The following lines are commented because no testbench is associated with the project
# add wave /testbench/*
# run 1000ns
 
do tb_copyBlaze_ecoSystem_wb-uart_wave.do
 
run -all

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.