wiki:Component/VciLocks

Version 2 (modified by alain, 17 years ago) (diff)

--

Functional Description

This VCI target is an hardware locks controller.

VCI-based systems may have some difficulties implementing proper locking of target components as this can be done on buses. As a side-effect, locks and other atomic-access-based software resources can't be used. This component solves this problem implementing the atomic-access-like features on target side.

This components has one bit of information stored on each 32-bit addressable word:

  • When read, its current value is returned, and it is implicitly set to 1
  • When written to, it is reset to 0.

This way:

  • A spin lock is a simple loop waiting to read 0
  • Releasing the lock is a simple write operation

CABA Implementations

The caba implementation is in

Template parameters:

  • The VCI parameters

Constructor parameters

Ports

  • p_vci: the VCI port
  • p_resetn: Global system reset
  • p_clk: Global system clock

Attachments (1)

Download all attachments as: .zip