Skip to content

Commit c229dcb

Browse files
committed
Update readme
1 parent 14cc5e7 commit c229dcb

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

README.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,40 @@
1-
Verilog I2C interface
1+
# Verilog I2C interface
2+
3+
For more information and updates: http://alexforencich.com/wiki/en/verilog/i2c/start
4+
5+
GitHub repository: https://github.com/alexforencich/verilog-i2c
6+
7+
## Introduction
8+
9+
I2C interface components. Includes full MyHDL testbench with intelligent bus
10+
cosimulation endpoints.
11+
12+
## Documentation
13+
14+
### i2c_init module
15+
16+
Template module for peripheral initialization via I2C. For use when one or
17+
more peripheral devices (i.e. PLL chips, jitter attenuators, clock muxes,
18+
etc.) need to be initialized on power-up without the use of a general-purpose
19+
processor.
20+
21+
### i2c_master module
22+
23+
I2C master module with AXI stream interfaces to control logic.
24+
25+
### Source Files
26+
27+
i2c_init.v : Template I2C bus init state machine module
28+
i2c_master.v : I2C master module
29+
30+
## Testing
31+
32+
Running the included testbenches requires MyHDL and Icarus Verilog. Make sure
33+
that myhdl.vpi is installed properly for cosimulation to work correctly. The
34+
testbenches can be run with a Python test runner like nose or py.test, or the
35+
individual test scripts can be run with python directly.
36+
37+
### Testbench Files
38+
39+
tb/axis_ep.py : MyHDL AXI Stream endpoints
40+
tb/i2c.py : MyHDL I2C master and slave models

0 commit comments

Comments
 (0)