ct_master.tf
来自「VHDLVERILOG语言实现的CARDBUS的IP源码,已经实现现场应用」· TF 代码 · 共 949 行 · 第 1/4 页
TF
949 行
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Mem Read and Write to a Subtractive Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrl <= 1'b1;
$display("Master MRL and MWI to a Fast Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Medium Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Slow Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Subtractive Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrl <= 1'b0;
mrm <= 1'b1;
$display("Master MRM and MWI to a Fast Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Medium Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Slow Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Subtractive Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrm <= 1'b0;
mem <= 1'b0;
cfg <= 1'b1;
$display("Master Configuration Read and Write to a Fast Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Medium Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Slow Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Subtractive Speed Target w/ Multi-Cycle Retry Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
cfg <= 1'b0;
multi_retry <= 1'b0;
multi_disconnect <= 1'b1;
target_1.ENABLE_RETRY_COUNT = 0; //# enable stop_enable shut-off after RETRY_COUNT stop assertions
target_1.STOP_COUNT = 1; //Assert stop after this many data phases
target_1.STOP_WAITS = 0; //# waits to pause before asserting stop(after STOP_COUNT data phases)
mem <= 1'b1;
$display("Master Mem Read and Write to a Fast Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Mem Read and Write to a Medium Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Mem Read and Write to a Slow Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Mem Read and Write to a Subtractive Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrl <= 1'b1;
$display("Master MRL and MWI to a Fast Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Medium Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Slow Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRL and MWI to a Subtractive Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrl <= 1'b0;
mrm <= 1'b1;
$display("Master MRM and MWI to a Fast Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Medium Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Slow Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master MRM and MWI to a Subtractive Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
mrm <= 1'b0;
mem <= 1'b0;
cfg <= 1'b1;
$display("Master Configuration Read and Write to a Fast Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Medium Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b01; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Slow Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b10; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
$display("Master Configuration Read and Write to a Subtractive Speed Target w/ Multi-Cycle Disconnect Test, %0d", $time);
target_1.DEVICE_SPEED = 2'b11; //0=fast, 1=medium, 2=slow, 3=bridge
`include "ct_burst_r_w.tf"
cfg <= 1'b0;
multi_disconnect <= 1'b0;
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
target_1.WAITSTATES_ENABLE = 1; //Enable insertion of wait states
target_1.XFER_COUNT = 1; // Number of PCI transfers that must take place between target waits
target_1.VARIABLE_WAITS = 0; //Enable variable wait lengths (1 or 0)
target_1.TARGET_ABORT = 0;
target_1.TABORT_COUNT = 0;
target_1.TABORT_ENABLE = 0;
target_1.ENABLE_RETRY_COUNT = 0; //# enable stop_enable shut-off after RETRY_COUNT stop assertions
target_1.STOP_ENABLE = 0; //Enable/Disable stop assertion
target_1.STOP_COUNT = 1; //Assert stop after this many data phases
target_1.STOP_WAITS = 1; //# waits to pause before asserting stop(after STOP_COUNT data phases)
$display("Master Single Wait State, First Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 0; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master Single Wait State, Second Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 1; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master Two Wait States, 2nd and 3rd Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
$display("Master Two Wait States, 3rd and 4th Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
mrl <= 1'b1;
$display("Master MRL & MWI Single Wait State, First Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 0; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master MRL & MWI Single Wait State, Second Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 1; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master MRL & MWI Two Wait States, 2nd and 3rd Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
$display("Master MRL & MWI Two Wait States, 3rd and 4th Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
mrl <= 1'b0;
mrm <= 1'b1;
$display("Master MRM & MWI Single Wait State, First Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 0; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master MRM & MWI Single Wait State, Second Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 1; //# of waits to insert before subsequent trdy's
`include "ct_burst_r_w_ws.tf"
$display("Master MRM & MWI Two Wait States, 2nd and 3rd Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
$display("Master MRM & MWI Two Wait States, 3rd and 4th Data Cycle Test, %0d", $time);
target_1.INITIAL_WAITS = 2; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 2; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 2; // Number of PCI transfers that must take place between target waits
`include "ct_burst_r_w_ws.tf"
mrm <= 1'b0;
single_parity_error <= 1'b1;
target_1.DEVICE_SPEED = 2'b00; //0=fast, 1=medium, 2=slow, 3=bridge
target_1.WRONG_PAR = 0; //# generate bad parity for lower 32 bits
target_1.PERR_ASSERT = 0; //# assert perr even if driven parity matches data
target_1.WAITSTATES_ENABLE = 1; //Enable insertion of wait states
target_1.INITIAL_WAITS = 1; //# of waits to insert before first trdy
target_1.SUBSEQUENT_WAITS = 0; //# of waits to insert before subsequent trdy's
target_1.XFER_COUNT = 1; // Number of PCI transfers that must take place between target waits
target_1.VARIABLE_WAITS = 0; //Enable variable wait lengths (1 or 0)
target_1.TARGET_ABORT = 0;
target_1.TABORT_COUNT = 0;
target_1.TABORT_ENABLE = 0;
target_1.ENABLE_RETRY_COUNT = 0; //# enable stop_enable shut-off after RETRY_COUNT stop assertions
target_1.STOP_ENABLE = 0; //Enable/Disable stop assertion
target_1.STOP_COUNT = 1; //Assert stop after this many data phases
target_1.STOP_WAITS = 1; //# waits to pause before asserting stop(after STOP_COUNT data phases)
$display("Master Mem Read and Write, Single Cycle Data Parity Error Test, %0d", $time);
mem <= 1'b1;
`include "ct_parity_error.tf"
mem <= 1'b0;
$display("Master I/O Read and Write, Single Cycle Data Parity Error Test, %0d", $time);
io <= 1'b1;
`include "ct_parity_error.tf"
io <= 1'b0;
$display("Master Configuration Read and Write, Single Cycle Data Parity Error Test, %0d", $time);
cfg <= 1'b1;
`include "ct_parity_error.tf"
cfg <= 1'b0;
single_parity_error <= 1'b0;
$display("Master Read and Write, Multi-Cycle Data Parity Error Test, %0d", $time);
mem <= 1'b1;
`include "ct_parity_error.tf"
$display("Master MRL and MWI, Multi-Cycle Data Parity Error Test, %0d", $time);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?