From 3b0118bc14507e6c3d249635dcf41ed60fe77663 Mon Sep 17 00:00:00 2001 From: Eric Kooistra <kooistra@astron.nl> Date: Fri, 24 Feb 2023 07:32:50 +0100 Subject: [PATCH] Add proc_common_wait_until_clk_and_high(). --- .../base/common/tb/vhdl/tb_common_pkg.vhd | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/libraries/base/common/tb/vhdl/tb_common_pkg.vhd b/libraries/base/common/tb/vhdl/tb_common_pkg.vhd index ab0bd1f18a..ee15dbe99c 100644 --- a/libraries/base/common/tb/vhdl/tb_common_pkg.vhd +++ b/libraries/base/common/tb/vhdl/tb_common_pkg.vhd @@ -81,6 +81,9 @@ PACKAGE tb_common_pkg IS PROCEDURE proc_common_wait_until_high(SIGNAL clk : IN STD_LOGIC; SIGNAL level : IN STD_LOGIC); + PROCEDURE proc_common_wait_until_clk_and_high(SIGNAL clk : IN STD_LOGIC; + SIGNAL level : IN STD_LOGIC); + PROCEDURE proc_common_wait_until_low(CONSTANT c_timeout : IN NATURAL; SIGNAL clk : IN STD_LOGIC; SIGNAL level : IN STD_LOGIC); @@ -88,6 +91,9 @@ PACKAGE tb_common_pkg IS PROCEDURE proc_common_wait_until_low(SIGNAL clk : IN STD_LOGIC; SIGNAL level : IN STD_LOGIC); + PROCEDURE proc_common_wait_until_clk_and_low(SIGNAL clk : IN STD_LOGIC; + SIGNAL level : IN STD_LOGIC); + PROCEDURE proc_common_wait_until_hi_lo(CONSTANT c_timeout : IN NATURAL; SIGNAL clk : IN STD_LOGIC; SIGNAL level : IN STD_LOGIC); @@ -427,6 +433,12 @@ PACKAGE BODY tb_common_pkg IS WAIT UNTIL rising_edge(clk) AND level='1'; END IF; END proc_common_wait_until_high; + + PROCEDURE proc_common_wait_until_clk_and_high(SIGNAL clk : IN STD_LOGIC; + SIGNAL level : IN STD_LOGIC) IS + BEGIN + WAIT UNTIL rising_edge(clk) AND level='1'; + END proc_common_wait_until_clk_and_high; PROCEDURE proc_common_wait_until_high(CONSTANT c_timeout : IN NATURAL; SIGNAL clk : IN STD_LOGIC; @@ -452,6 +464,12 @@ PACKAGE BODY tb_common_pkg IS END IF; END proc_common_wait_until_low; + PROCEDURE proc_common_wait_until_clk_and_low(SIGNAL clk : IN STD_LOGIC; + SIGNAL level : IN STD_LOGIC) IS + BEGIN + WAIT UNTIL rising_edge(clk) AND level='0'; + END proc_common_wait_until_clk_and_low; + PROCEDURE proc_common_wait_until_low(CONSTANT c_timeout : IN NATURAL; SIGNAL clk : IN STD_LOGIC; SIGNAL level : IN STD_LOGIC) IS -- GitLab