URL
https://opencores.org/ocsvn/oms8051mini/oms8051mini/trunk
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 2 |
Rev 10 |
Line 1... |
Line 1... |
|
|
initial
|
initial
|
begin
|
begin
|
reg_cs = 0;
|
reg_cs = 0;
|
reg_be = 4'h0;
|
reg_be = 4'h0;
|
|
reg_id = 0;
|
end
|
end
|
|
|
task cpu_read;
|
task cpu_read;
|
input [2:0] block_id;
|
input [3: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;
|
reg_id = block_id;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
|
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);
|
Line 26... |
Line 24... |
//$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 [3:0] block_id; // 0/1/2 --> ram/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;
|
reg_id = block_id;
|
if(block_id == 2) reg_id = `ADDR_SPACE_SPI;
|
|
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;
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.