Line 8... |
Line 8... |
-- Description
|
-- Description
|
-- Contains automatic simulation test code to verify a RioPacketBufferWindow
|
-- Contains automatic simulation test code to verify a RioPacketBufferWindow
|
-- implementation.
|
-- implementation.
|
--
|
--
|
-- To Do:
|
-- To Do:
|
-- -
|
-- - Update this to handle the readContentEnd being output at the last content
|
|
-- in a frame in the window-version. There are some errors indicated by this
|
|
-- testbench due to this.
|
--
|
--
|
-- Author(s):
|
-- Author(s):
|
-- - Magnus Rosenius, magro732@opencores.org
|
-- - Magnus Rosenius, magro732@opencores.org
|
--
|
--
|
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
Line 51... |
Line 53... |
use ieee.numeric_std.all;
|
use ieee.numeric_std.all;
|
use ieee.math_real.all;
|
use ieee.math_real.all;
|
library std;
|
library std;
|
use std.textio.all;
|
use std.textio.all;
|
use work.rio_common.all;
|
use work.rio_common.all;
|
|
use work.TestPortPackage.all;
|
|
|
|
|
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
-- Entity for TestRioPacketBuffer.
|
-- Entity for TestRioPacketBuffer.
|
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
Line 362... |
Line 365... |
areset_n <= '1';
|
areset_n <= '1';
|
wait until clk'event and clk = '1';
|
wait until clk'event and clk = '1';
|
wait until clk'event and clk = '1';
|
wait until clk'event and clk = '1';
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer");
|
TestSpec("TG_RioPacketBuffer");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer-TC1");
|
TestSpec("TG_RioPacketBuffer-TC1");
|
PrintS("Description: Test normal operation without using the window. Only");
|
TestSpec("Description: Test normal operation without using the window. Only");
|
PrintS(" full frames are tested.");
|
TestSpec(" full frames are tested.");
|
PrintS("Requirement: XXXXX");
|
TestSpec("Requirement: XXXXX");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 1:");
|
TestSpec("Step 1:");
|
PrintS("Action: Complete a small frame and read it.");
|
TestSpec("Action: Complete a small frame and read it.");
|
PrintS("Result: The read frame should be equal to the one written.");
|
TestSpec("Result: The read frame should be equal to the one written.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC1-Step1");
|
TestCaseStart("TG_RioPacketBuffer-TC1-Step1");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
-- REMARK: Update testcases for inbound and outbound...
|
-- REMARK: Update testcases for inbound and outbound...
|
|
|
assert (inboundWriteFrameFull = '0')
|
assert (inboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
Line 419... |
Line 422... |
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (inboundReadFrameEmpty = '1')
|
assert (inboundReadFrameEmpty = '1')
|
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 2:");
|
TestSpec("Step 2:");
|
PrintS("Action: Write a rio maximum size frame and read it.");
|
TestSpec("Action: Write a rio maximum size frame and read it.");
|
PrintS("Result: The read frame should be equal to the one written.");
|
TestSpec("Result: The read frame should be equal to the one written.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC1-Step2");
|
TestCaseStart("TG_RioPacketBuffer-TC1-Step2");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
for i in 0 to 68 loop
|
for i in 0 to 68 loop
|
SetInboundWriteContent(std_logic_vector(to_unsigned(i, 32)));
|
SetInboundWriteContent(std_logic_vector(to_unsigned(i, 32)));
|
|
|
Line 467... |
Line 470... |
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (inboundReadFrameEmpty = '1')
|
assert (inboundReadFrameEmpty = '1')
|
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 3:");
|
TestSpec("Step 3:");
|
PrintS("Action: Fill the maximum number of small frames without filling ");
|
TestSpec("Action: Fill the maximum number of small frames without filling ");
|
PrintS(" the memory.");
|
TestSpec(" the memory.");
|
PrintS("Result: The frame buffer should accept 63 frames.");
|
TestSpec("Result: The frame buffer should accept 63 frames.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC1-Step3");
|
TestCaseStart("TG_RioPacketBuffer-TC1-Step3");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
-- Write maximum number of frames.
|
-- Write maximum number of frames.
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
Line 560... |
Line 563... |
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (inboundReadFrameEmpty = '1')
|
assert (inboundReadFrameEmpty = '1')
|
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 4:");
|
TestSpec("Step 4:");
|
PrintS("Action: Fill the memory to its limit.");
|
TestSpec("Action: Fill the memory to its limit.");
|
PrintS("Result: The frame buffer should accept 255-69 words.");
|
TestSpec("Result: The frame buffer should accept 255-69 words.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC1-Step4");
|
TestCaseStart("TG_RioPacketBuffer-TC1-Step4");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
for i in 0 to 186 loop
|
for i in 0 to 186 loop
|
SetInboundWriteContent(std_logic_vector(to_unsigned(i, 32)));
|
SetInboundWriteContent(std_logic_vector(to_unsigned(i, 32)));
|
assert (inboundWriteFrameFull = '0')
|
assert (inboundWriteFrameFull = '0')
|
Line 606... |
Line 609... |
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (inboundReadFrameEmpty = '1')
|
assert (inboundReadFrameEmpty = '1')
|
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer-TC2");
|
TestSpec("TG_RioPacketBuffer-TC2");
|
PrintS("Description: Test operation when using the window.");
|
TestSpec("Description: Test operation when using the window.");
|
PrintS("Requirement: XXXXX");
|
TestSpec("Requirement: XXXXX");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 1:");
|
TestSpec("Step 1:");
|
PrintS("Action: Add one frame and update the window.");
|
TestSpec("Action: Add one frame and update the window.");
|
PrintS("Result: The window empty flag and the read frame empty flag should");
|
TestSpec("Result: The window empty flag and the read frame empty flag should");
|
PrintS(" be updated and it should be possible to read the frame again.");
|
TestSpec(" be updated and it should be possible to read the frame again.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step1");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step1");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 707... |
Line 710... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 2:");
|
TestSpec("Step 2:");
|
PrintS("Action: Add two frames and test the window accesses.");
|
TestSpec("Action: Add two frames and test the window accesses.");
|
PrintS("Result: .");
|
TestSpec("Result: .");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step2");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step2");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
-- Write two frames.
|
-- Write two frames.
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
Line 948... |
Line 951... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 3:");
|
TestSpec("Step 3:");
|
PrintS("Action: Add maximum number of frames and test the window accesses.");
|
TestSpec("Action: Add maximum number of frames and test the window accesses.");
|
PrintS("Result: The buffer should be full and not accept more frames.");
|
TestSpec("Result: The buffer should be full and not accept more frames.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step3");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step3");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1128... |
Line 1131... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 4:");
|
TestSpec("Step 4:");
|
PrintS("Action: Add maximum number of words and test the window accesses.");
|
TestSpec("Action: Add maximum number of words and test the window accesses.");
|
PrintS("Result: The content memory should be full.");
|
TestSpec("Result: The content memory should be full.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step4");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step4");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1336... |
Line 1339... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 5:");
|
TestSpec("Step 5:");
|
PrintS("Action: Add maximum number of words -1 and test the window accesses.");
|
TestSpec("Action: Add maximum number of words -1 and test the window accesses.");
|
PrintS("Result: The content memory should not accept more frames.");
|
TestSpec("Result: The content memory should not accept more frames.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step5");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step5");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1456... |
Line 1459... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 6:");
|
TestSpec("Step 6:");
|
PrintS("Action: Add two frames and start reading the second, then remove");
|
TestSpec("Action: Add two frames and start reading the second, then remove");
|
PrintS(" the first.");
|
TestSpec(" the first.");
|
PrintS("Result: The readContentEnd flag should not be changed when frames");
|
TestSpec("Result: The readContentEnd flag should not be changed when frames");
|
PrintS(" are removed.");
|
TestSpec(" are removed.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC2-Step6");
|
TestCaseStart("TG_RioPacketBuffer-TC2-Step6");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1601... |
Line 1604... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer");
|
TestSpec("TG_RioPacketBuffer");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer-TC3");
|
TestSpec("TG_RioPacketBuffer-TC3");
|
PrintS("Description: Test operation when restarting and aborting frames.");
|
TestSpec("Description: Test operation when restarting and aborting frames.");
|
PrintS("Requirement: XXXXX");
|
TestSpec("Requirement: XXXXX");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 1:");
|
TestSpec("Step 1:");
|
PrintS("Action: Write one frame and abort it.");
|
TestSpec("Action: Write one frame and abort it.");
|
PrintS("Result: The aborted frame should be discarded.");
|
TestSpec("Result: The aborted frame should be discarded.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC3-Step1");
|
TestCaseStart("TG_RioPacketBuffer-TC3-Step1");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1641... |
Line 1644... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 2:");
|
TestSpec("Step 2:");
|
PrintS("Action: Write one full frame then one more that is aborted.");
|
TestSpec("Action: Write one full frame then one more that is aborted.");
|
PrintS("Result: The first frame should remain and the aborted should be ");
|
TestSpec("Result: The first frame should remain and the aborted should be ");
|
PrintS(" discarded.");
|
TestSpec(" discarded.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC3-Step2");
|
TestCaseStart("TG_RioPacketBuffer-TC3-Step2");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
for i in 0 to 3 loop
|
for i in 0 to 3 loop
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1+i, 32)));
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1+i, 32)));
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
Line 1773... |
Line 1776... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 3:");
|
TestSpec("Step 3:");
|
PrintS("Action: Write one full frame then read one that is restarted.");
|
TestSpec("Action: Write one full frame then read one that is restarted.");
|
PrintS("Result: The content of the first frame should be read twice. ");
|
TestSpec("Result: The content of the first frame should be read twice. ");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC3-Step3");
|
TestCaseStart("TG_RioPacketBuffer-TC3-Step3");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
for i in 0 to 3 loop
|
for i in 0 to 3 loop
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1+i, 32)));
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1+i, 32)));
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
Line 1860... |
Line 1863... |
report "Unexpected readFrameEmpty." severity error;
|
report "Unexpected readFrameEmpty." severity error;
|
assert (outboundReadWindowEmpty = '1')
|
assert (outboundReadWindowEmpty = '1')
|
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer");
|
TestSpec("TG_RioPacketBuffer");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("TG_RioPacketBuffer-TC4");
|
TestSpec("TG_RioPacketBuffer-TC4");
|
PrintS("Description: Test operation when partial frames are read.");
|
TestSpec("Description: Test operation when partial frames are read.");
|
PrintS("Requirement: XXXXX");
|
TestSpec("Requirement: XXXXX");
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 1:");
|
TestSpec("Step 1:");
|
PrintS("Action: Write a one word frame and read it before it is completed.");
|
TestSpec("Action: Write a one word frame and read it before it is completed.");
|
PrintS("Result: Empty signals should reflect the status of the frame.");
|
TestSpec("Result: Empty signals should reflect the status of the frame.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC4-Step1");
|
TestCaseStart("TG_RioPacketBuffer-TC4-Step1");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
assert (outboundReadFrameEmpty = '1')
|
assert (outboundReadFrameEmpty = '1')
|
Line 1934... |
Line 1937... |
report "Unexpected readWindowEmpty." severity error;
|
report "Unexpected readWindowEmpty." severity error;
|
assert (outboundReadContentEmpty = '1')
|
assert (outboundReadContentEmpty = '1')
|
report "Unexpected readContentEmpty." severity error;
|
report "Unexpected readContentEmpty." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 2:");
|
TestSpec("Step 2:");
|
PrintS("Action: Write content to a frame and read it, then abort the frame.");
|
TestSpec("Action: Write content to a frame and read it, then abort the frame.");
|
PrintS("Result: The reader should be notified about the aborted frame. The");
|
TestSpec("Result: The reader should be notified about the aborted frame. The");
|
PrintS(" notification should be reset when the frame has been ");
|
TestSpec(" notification should be reset when the frame has been ");
|
PrintS(" restarted.");
|
TestSpec(" restarted.");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC4-Step2");
|
TestCaseStart("TG_RioPacketBuffer-TC4-Step2");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1, 32)));
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1, 32)));
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|
Line 2053... |
Line 2056... |
report "Unexpected readContentEmpty." severity error;
|
report "Unexpected readContentEmpty." severity error;
|
assert (outboundReadFrameAborted = '0')
|
assert (outboundReadFrameAborted = '0')
|
report "Unexpected readFrameAborted." severity error;
|
report "Unexpected readFrameAborted." severity error;
|
|
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintS("-----------------------------------------------------------------");
|
TestSpec("-----------------------------------------------------------------");
|
PrintS("Step 3:");
|
TestSpec("Step 3:");
|
PrintS("Action: Write one complete frame then abort a second.");
|
TestSpec("Action: Write one complete frame then abort a second.");
|
PrintS("Result: The reader should not notice the aborted frame. ");
|
TestSpec("Result: The reader should not notice the aborted frame. ");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
PrintR("TG_RioPacketBuffer-TC4-Step3");
|
TestCaseStart("TG_RioPacketBuffer-TC4-Step3");
|
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
|
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1, 32)));
|
SetOutboundWriteContent(std_logic_vector(to_unsigned(1, 32)));
|
assert (outboundWriteFrameFull = '0')
|
assert (outboundWriteFrameFull = '0')
|
report "Unexpected writeFrameFull." severity error;
|
report "Unexpected writeFrameFull." severity error;
|