URL
https://opencores.org/ocsvn/i2c_to_wb/i2c_to_wb/trunk
Subversion Repositories i2c_to_wb
Compare Revisions
- This comparison shows the changes necessary to convert path
/i2c_to_wb/trunk/sim
- from Rev 2 to Rev 3
- ↔ Reverse comparison
Rev 2 → Rev 3
/tests/debug/the_test.v
18,11 → 18,11
// insert test below |
|
dut.i2c.start(); |
dut.i2c.write_byte( 8'h00 ); |
dut.i2c.write_byte( 8'h10 ); |
dut.i2c.write_byte( 8'hff ); |
|
dut.i2c.start(); |
dut.i2c.write_byte( 8'haa ); |
dut.i2c.write_byte( 8'hcb ); |
dut.i2c.read_byte(); |
|
dut.i2c.stop(); |
/tests/debug/debug.mpf
408,21 → 408,23
Project_Version = 6 |
Project_DefaultLib = work |
Project_SortMethod = unused |
Project_Files_Count = 7 |
Project_Files_Count = 8 |
Project_File_0 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/tests/debug/the_test.v |
Project_File_P_0 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 cover_fsm 0 last_compile 1273798997 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 0 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_P_0 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 last_compile 1283381708 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 0 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_1 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/models/i2c_master_model.v |
Project_File_P_1 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 folder {Top Level} cover_branch 0 cover_fsm 0 last_compile 1274199521 vlog_noload 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 3 cover_expr 0 dont_compile 0 cover_stmt 0 |
Project_File_P_1 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 last_compile 1283295745 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 3 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_2 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/models/glitch_generator.v |
Project_File_P_2 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 last_compile 1273796060 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 6 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_3 = C:/qaz/_CVS_WORK/units/i2c_to_wb/src/i2c_to_wb_top.v |
Project_File_P_3 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 folder {Top Level} last_compile 1274200851 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 4 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_4 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/src/tb_dut.v |
Project_File_P_4 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 folder {Top Level} cover_branch 0 cover_fsm 0 last_compile 1273796392 vlog_noload 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options +incdir+../../../src compile_order 2 cover_expr 0 dont_compile 0 cover_stmt 0 |
Project_File_5 = C:/qaz/_CVS_WORK/units/i2c_to_wb/src/glitch_filter.v |
Project_File_P_5 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 cover_fsm 0 last_compile 1273795452 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 5 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_6 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/src/tb_top.v |
Project_File_P_6 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 cover_branch 0 folder {Top Level} last_compile 1273187085 cover_fsm 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 1 cover_expr 0 dont_compile 0 cover_stmt 0 |
Project_File_3 = C:/qaz/_CVS_WORK/units/i2c_to_wb/src/i2c_to_wb_fsm.v |
Project_File_P_3 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 last_compile 1283388466 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 7 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_4 = C:/qaz/_CVS_WORK/units/i2c_to_wb/src/i2c_to_wb_top.v |
Project_File_P_4 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 last_compile 1283389102 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 4 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_5 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/src/tb_dut.v |
Project_File_P_5 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 folder {Top Level} last_compile 1283366916 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 2 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_6 = C:/qaz/_CVS_WORK/units/i2c_to_wb/src/glitch_filter.v |
Project_File_P_6 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 cover_fsm 0 last_compile 1273795452 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options +incdir+../../../src compile_to work vlog_upper 0 cover_noshort 0 compile_order 5 dont_compile 0 cover_expr 0 cover_stmt 0 |
Project_File_7 = C:/qaz/_CVS_WORK/units/i2c_to_wb/sim/src/tb_top.v |
Project_File_P_7 = cover_toggle 0 vlog_protect 0 file_type verilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat 0 vlog_nodebug 0 vlog_noload 0 cover_branch 0 folder {Top Level} last_compile 1273187085 cover_fsm 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 1 cover_expr 0 dont_compile 0 cover_stmt 0 |
Project_Sim_Count = 0 |
Project_Folder_Count = 0 |
Echo_Compile_Output = 0 |
/models/i2c_master_model.v
18,7 → 18,7
localparam tBUF = 4700; |
localparam tSU_STA = 4700; |
localparam tSU_DAT = 250; |
localparam tHD_DAT = 0; |
localparam tHD_DAT = 300; |
localparam tHD_STA = 4000; |
localparam tLOW = 4700; |
localparam tHIGH = 4000; |
55,8 → 55,8
if( LOG_LEVEL > 2 ) |
$display( "###- %m: I2C start at time %t. ", $time ); |
|
i2c_data_out = 1'b1; |
i2c_clk_out = 1'b1; |
// i2c_data_out = 1'b1; |
// i2c_clk_out = 1'b1; |
|
#tBUF; |
|
72,7 → 72,7
if( i2c_clk != 1'b1 ) |
begin |
i2c_clk_out = 1'b1; |
#tSU_DAT; |
#tLOW; |
end |
|
#tSU_STA; |
99,7 → 99,7
if( i2c_clk != 1'b1 ) |
begin |
i2c_clk_out = 1'b1; |
#tSU_DAT; |
#tLOW; |
end |
|
i2c_data_out = 1'b1; |
134,10 → 134,14
|
// -------------------------------------------------------------------- |
// write_byte |
reg write_byte_r = 1'b0; |
|
task write_byte; |
input [7:0] data; |
begin |
|
write_byte_r = 1'b1; |
|
if( LOG_LEVEL > 2 ) |
$display( "###- %m: I2C write 0x%h at time %t. ", data, $time ); |
|
169,6 → 173,10
$display( "###- %m: I2C ACK at time %t. ", $time ); |
|
#tHIGH; |
i2c_clk_out = 1'b0; |
|
write_byte_r = 1'b0; |
#1; |
|
end |
endtask |
225,6 → 233,9
if( LOG_LEVEL > 2 ) |
$display( "###- %m: I2C read 0x%h at time %t. ", i2c_buffer_in, $time ); |
|
#tHIGH; |
i2c_clk_out = 1'b0; |
|
end |
endtask |
|
/src/tb_dut.v
41,7 → 41,7
wire i2c_clk_out; |
wire i2c_data_oe; |
wire i2c_clk_oe; |
wire [31:0] wb_data_i; |
wire [31:0] wb_data_i = 32'ha5a5a5a5; |
wire [31:0] wb_data_o; |
wire [31:0] wb_addr_o; |
wire [3:0] wb_sel_o; |
48,9 → 48,9
wire wb_we_o; |
wire wb_cyc_o; |
wire wb_stb_o; |
wire wb_ack_i; |
wire wb_err_i; |
wire wb_rty_i; |
wire wb_ack_i = 1'b1; |
wire wb_err_i = 1'b0; |
wire wb_rty_i = 1'b0; |
|
// tristate buffers |
assign i2c_data = i2c_data_oe ? i2c_data_out : 1'bz; |
64,6 → 64,8
.i2c_clk_out(i2c_clk_out), |
.i2c_data_oe(i2c_data_oe), |
.i2c_clk_oe(i2c_clk_oe), |
|
.thd_dat(4'h8), |
|
.wb_data_i(wb_data_i), |
.wb_data_o(wb_data_o), |