Skip to content

Group apis_for_cpu

Modules > apis_for_cpu

APIs for CPU.

Public Functions

Type Name
syscall_return_t InterChiplet::barrier (int64_t __uid, int64_t __src_x, int64_t __src_y, int64_t __count=0)
Barrier.
syscall_return_t InterChiplet::launch (int64_t __dst_x, int64_t __dst_y, int64_t __src_x, int64_t __src_y)
Launch application to remote chiplet.
syscall_return_t InterChiplet::lock (int64_t __uid, int64_t __src_x, int64_t __src_y)
Lock mutex.
syscall_return_t InterChiplet::receiveMessage (int64_t __dst_x, int64_t __dst_y, int64_t __src_x, int64_t __src_y, void * __addr, int64_t __nbyte)
Read data from remote chiplet.
syscall_return_t InterChiplet::sendMessage (int64_t __dst_x, int64_t __dst_y, int64_t __src_x, int64_t __src_y, void * __addr, int64_t __nbyte)
Send data to remote chiplet.
syscall_return_t InterChiplet::unlock (int64_t __uid, int64_t __src_x, int64_t __src_y)
Unlock mutex.
syscall_return_t InterChiplet::waitLaunch (int64_t __dst_x, int64_t __dst_y, int64_t * __src_x, int64_t * __src_y)
Wait launch from remote chiplet.

Public Functions Documentation

function barrier

Barrier.

syscall_return_t InterChiplet::barrier (
    int64_t __uid,
    int64_t __src_x,
    int64_t __src_y,
    int64_t __count=0
) 

Parameters:

  • __uid Barrier ID.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.
  • __count Number of threads to barrier.

function launch

Launch application to remote chiplet.

syscall_return_t InterChiplet::launch (
    int64_t __dst_x,
    int64_t __dst_y,
    int64_t __src_x,
    int64_t __src_y
) 

Parameters:

  • __dst_x Destination address in X-axis.
  • __dst_y Destination address in Y-axis.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.

function lock

Lock mutex.

syscall_return_t InterChiplet::lock (
    int64_t __uid,
    int64_t __src_x,
    int64_t __src_y
) 

Parameters:

  • __uid Mutex ID.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.

function receiveMessage

Read data from remote chiplet.

syscall_return_t InterChiplet::receiveMessage (
    int64_t __dst_x,
    int64_t __dst_y,
    int64_t __src_x,
    int64_t __src_y,
    void * __addr,
    int64_t __nbyte
) 

Parameters:

  • __dst_x Destination address in X-axis.
  • __dst_y Destination address in Y-axis.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.
  • __addr Data address.
  • __nbyte Number of bytes.

function sendMessage

Send data to remote chiplet.

syscall_return_t InterChiplet::sendMessage (
    int64_t __dst_x,
    int64_t __dst_y,
    int64_t __src_x,
    int64_t __src_y,
    void * __addr,
    int64_t __nbyte
) 

Parameters:

  • __dst_x Destination address in X-axis.
  • __dst_y Destination address in Y-axis.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.
  • __addr Data address.
  • __nbyte Number of bytes.

function unlock

Unlock mutex.

syscall_return_t InterChiplet::unlock (
    int64_t __uid,
    int64_t __src_x,
    int64_t __src_y
) 

Parameters:

  • __uid Mutex ID.
  • __src_x Source address in X-axis.
  • __src_y Source address in Y-axis.

function waitLaunch

Wait launch from remote chiplet.

syscall_return_t InterChiplet::waitLaunch (
    int64_t __dst_x,
    int64_t __dst_y,
    int64_t * __src_x,
    int64_t * __src_y
) 

Parameters:

  • __dst_x Destination address in X-axis.
  • __dst_y Destination address in Y-axis.
  • __src_x Source address in X-axis. Return value.
  • __src_y Source address in Y-axis. Return value.