Version 2 (modified by 18 years ago) (diff) | ,
---|
SrlApi
Srl API is your gateway to software resources.
Logging
Log API let you define message levels. Levels allow you to let your debug code in the source, and only compile it when needed.
srl_log(level, "message")
prints a messagesrl_log_printf(level, "message_with_format", arguments...)
prints a printf-like message
Mwmr fifos
srl_mwmr_read(fifo, buffer, size)
readssize
32-bit words from fifo to buffer.size
must be a multiple of fifo width.srl_mwmr_write(fifo, buffer, size)
writessize
32-bit words from buffer to fifo.size
must be a multiple of fifo width.
Locks
srl_lock_lock( lock )
takes the lock, waiting if necessarysrl_lock_unlock( lock )
releases the lock
Barriers
srl_barrier_wait( barrier )
waits for a barrier-global synchronization
Other APIs
srl_run_cycles( N )
tells the simulation environment the simulation should run at least N cycles while in this call. This makes sense only for virtually sunthetised tasks, otherwise, this call is a noop.srl_mwmr_config( controller_name, reg_n, value )
puts valuevalue
in config registerreg_n
of specified controllersrl_mwmr_status( controller_name, reg_n )
reads status registerreg_n
of specified controller, returns a int32_tsrl_assert( cond )
checkscond
is true, fatally fails otherwise