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

Subversion Repositories astron_mm

[/] [astron_mm/] [trunk/] [tb_tb_mm_file.vhd] - Rev 3

Compare with Previous | Blame | View Log

-------------------------------------------------------------------------------
--
-- Copyright 2020
-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
-- 
-- Licensed under the Apache License, Version 2.0 (the "License");
-- you may not use this file except in compliance with the License.
-- You may obtain a copy of the License at
-- 
--     http://www.apache.org/licenses/LICENSE-2.0
-- 
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
-------------------------------------------------------------------------------
 
-- Author:
--   E. Kooistra        Feb 2017  Initial.
-- Purpose: Multi testbench of tb_mm_file to verify mm_file and mm_file_pkg.
-- Usage:
-- > as 4
-- > run -all
 
LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
 
ENTITY tb_tb_mm_file IS
END tb_tb_mm_file;
 
ARCHITECTURE tb OF tb_tb_mm_file IS
  SIGNAL tb_end : STD_LOGIC := '0';  -- declare tb_end to avoid 'No objects found' error on 'when -label tb_end'
BEGIN
  -- g_tb_index           : NATURAL := 0;
  -- g_mm_nof_accesses    : NATURAL := 100;
  -- g_mm_timeout         : TIME := sel_a_b(g_mm_throttle_en, 1 ns, 0 ns);  -- default 0 for full speed MM, use > 0 to define number of mm_clk without MM access after which the MM file IO is paused
  -- g_mm_pause           : TIME := 1 us;                                   -- defines the time for which MM file IO is paused to reduce the file IO rate when the MM slave is idle
  -- g_timeout_gap        : INTEGER := -1;    -- no gap when < 0, else force MM access gap after g_timeout_gap wr or rd strobes
  -- g_cross_clock_domain : BOOLEAN := FALSE --TRUE
 
  u_one_clk                        : ENTITY work.tb_mm_file GENERIC MAP (0, 10000,   0 ns, 1 us, -1, FALSE);
  u_one_clk_mm_throttle            : ENTITY work.tb_mm_file GENERIC MAP (1, 10000, 100 ns, 1 us, -1, FALSE);
  u_cross_clk                      : ENTITY work.tb_mm_file GENERIC MAP (2,  1000,   0 ns, 1 us, -1, TRUE);
  u_cross_clk_mm_throttle          : ENTITY work.tb_mm_file GENERIC MAP (3,  1000, 100 ns, 1 us, -1, TRUE);
  u_with_gap_one_clk               : ENTITY work.tb_mm_file GENERIC MAP (4, 10000,   0 ns, 1 us,  3, FALSE);
  u_with_gap_one_clk_mm_throttle   : ENTITY work.tb_mm_file GENERIC MAP (5, 10000, 100 ns, 1 us,  3, FALSE);
  u_with_gap_cross_clk             : ENTITY work.tb_mm_file GENERIC MAP (6,  1000,   0 ns, 1 us,  3, TRUE);
  u_with_gap_cross_clk_mm_throttle : ENTITY work.tb_mm_file GENERIC MAP (7,  1000, 100 ns, 1 us,  3, TRUE);
 
END tb;
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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