From 0286e465ee438cfe1abdb4fd374de19b2572a06a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joachim=20Stro=CC=88mbergson?= Date: Mon, 21 May 2018 15:49:06 +0200 Subject: Adding task to wait for ready to be set. This allows us to measure the number of cycles spent doing operations. --- src/tb/tb_aes.v | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'src/tb') diff --git a/src/tb/tb_aes.v b/src/tb/tb_aes.v index 188a21a..9fdb601 100644 --- a/src/tb/tb_aes.v +++ b/src/tb/tb_aes.v @@ -305,6 +305,24 @@ module tb_aes(); end endtask // read_word + //---------------------------------------------------------------- + // wait_ready + // + // Wait for the DUT to signal that the result is ready + //---------------------------------------------------------------- + task wait_ready; + begin : wait_ready + reg rdy; + rdy = 0; + + while (rdy != 1) + begin + read_word(ADDR_STATUS); + rdy = tb_read_data[0]; + end + end + endtask // wait_ready + //---------------------------------------------------------------- // read_result() @@ -386,8 +404,9 @@ module tb_aes(); write_word(ADDR_CONFIG, (8'h00 + (key_length << 1)+ encdec)); write_word(ADDR_CTRL, 8'h02); - #(100 * CLK_PERIOD); - + wait_ready(); + $display("*** Ready has been set!"); + dump_dut_state(); read_result(); if (result_data == expected) -- cgit v1.2.3