URL
https://opencores.org/ocsvn/turbo8051/turbo8051/trunk
[/] [turbo8051/] [trunk/] [verif/] [tb/] [tb_tasks.v] - Diff between revs 28 and 50
Only display areas with differences |
Details |
Blame |
View Log
Rev 28 |
Rev 50 |
|
|
initial
|
initial
|
begin
|
begin
|
reg_cs = 0;
|
reg_cs = 0;
|
reg_be = 4'h0;
|
reg_be = 4'h0;
|
end
|
end
|
|
|
task cpu_read;
|
task cpu_read;
|
input [2:0] block_id; // 1/2/3 --> mac/spi/uart
|
input [2:0] block_id;
|
input [15:0] address;
|
input [15:0] address;
|
output [31:0] read_data;
|
output [31:0] read_data;
|
begin
|
begin
|
@(posedge app_clk);
|
@(posedge app_clk);
|
if(block_id == 1) reg_id = `ADDR_SPACE_MAC;
|
if(block_id == 1) reg_id = `ADDR_SPACE_MAC;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
if(block_id == 3) reg_id = `ADDR_SPACE_UART;
|
if(block_id == 3) reg_id = `ADDR_SPACE_UART;
|
|
if(block_id == 4) reg_id = `ADDR_SPACE_RAM;
|
reg_cs = 1;
|
reg_cs = 1;
|
reg_wr = 0;
|
reg_wr = 0;
|
reg_be = 4'hF;
|
reg_be = 4'hF;
|
reg_addr = address;
|
reg_addr = address;
|
@(posedge reg_ack);
|
@(posedge reg_ack);
|
#1 read_data = reg_rdata;
|
#1 read_data = reg_rdata;
|
@(posedge app_clk);
|
@(posedge app_clk);
|
reg_cs = 0;
|
reg_cs = 0;
|
//$display ("Config-Read: Id: %h Addr = %h, Data = %h", block_id,address, read_data);
|
//$display ("Config-Read: Id: %h Addr = %h, Data = %h", block_id,address, read_data);
|
end
|
end
|
endtask
|
endtask
|
|
|
task cpu_write;
|
task cpu_write;
|
input [2:0] block_id; // 1/2/3 --> mac/spi/uart
|
input [2:0] block_id; // 1/2/3 --> mac/spi/uart
|
input [15:0] address;
|
input [15:0] address;
|
input [31:0] write_data;
|
input [31:0] write_data;
|
begin
|
begin
|
$display ("Config-Write: Id: %h Addr = %h, Cfg. Data = %h", block_id,address, write_data);
|
$display ("Config-Write: Id: %h Addr = %h, Cfg. Data = %h", block_id,address, write_data);
|
@(posedge app_clk);
|
@(posedge app_clk);
|
if(block_id == 1) reg_id = `ADDR_SPACE_MAC;
|
if(block_id == 1) reg_id = `ADDR_SPACE_MAC;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
if(block_id == 3) reg_id = `ADDR_SPACE_UART;
|
if(block_id == 3) reg_id = `ADDR_SPACE_UART;
|
reg_cs = 1;
|
reg_cs = 1;
|
reg_wr = 1;
|
reg_wr = 1;
|
reg_be = 4'hF;
|
reg_be = 4'hF;
|
reg_addr = address;
|
reg_addr = address;
|
reg_wdata = write_data;
|
reg_wdata = write_data;
|
@(posedge reg_ack);
|
@(posedge reg_ack);
|
reg_wr = 0;
|
|
@(posedge app_clk);
|
@(posedge app_clk);
|
reg_cs = 0;
|
reg_cs = 0;
|
|
reg_wr = 0;
|
end
|
end
|
endtask
|
endtask
|
|
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.