Livt packages
Livt.IO
Version 1.8.1
Memory, UART, I2C, SPI, and Ethernet input/output components for Livt hardware designs.
Published files (126)
src/i2c/II2CBus.lvt
namespace Livt.IO
/**
* Open-drain I2C bus contract.
*
* The bus provider exposes the observed line levels through `scl` and `sda`.
* Devices request a low drive through `*_drive_low`; releasing a line is encoded
* by writing `0b0` to the drive-low field.
*/
interface I2CBus
{
// Observed line levels supplied by the bus provider.
scl: out logic
sda: out logic
// Device requests: one pulls the line low, zero releases it.
scl_drive_low: in logic
sda_drive_low: in logic
}