HeMPS
8.0
|
This module implements function relative to programming the DMNI to send and receibe a packet. It is a abstraction from the NoC to the software components. This module is used by both manager and slave kernel. More...
Functions | |
ServiceHeader * | get_service_header_slot () |
void | init_service_header_slots () |
void | DMNI_read_data (unsigned int initial_address, unsigned int dmni_msg_size) |
void | DMNI_send_data (unsigned int initial_address, unsigned int dmni_msg_size) |
void | send_packet (ServiceHeader *p, unsigned int initial_address, unsigned int dmni_msg_size) |
void | read_packet (ServiceHeader *p) |
Variables | |
ServiceHeaderSlot | sh_slot1 |
ServiceHeaderSlot | sh_slot2 |
Slots to prevent memory writing while is sending a packet. | |
unsigned int | global_inst = 0 |
Global CPU instructions counter. | |
This module implements function relative to programming the DMNI to send and receibe a packet. It is a abstraction from the NoC to the software components. This module is used by both manager and slave kernel.
HEMPS VERSION - 8.0 - support for RT applications
Distribution: June 2016
Created by: Marcelo Ruaro - contact: marce lo.r uaro@ acad .pucr s.br
Research group: GAPH-PUCRS - contact: ferna ndo. morae s@pu crs.b r
void DMNI_read_data | ( | unsigned int | initial_address, |
unsigned int | dmni_msg_size | ||
) |
Function that abstracts the DMNI programming for read data from NoC and copy to memory
initial_address | Initial memory address to copy the received data |
dmni_msg_size | Data size, is represented in memory word of 32 bits |
void DMNI_send_data | ( | unsigned int | initial_address, |
unsigned int | dmni_msg_size | ||
) |
Function that abstracts the DMNI programming for send data from memory to NoC
initial_address | Initial memory address that will be transmitted to NoC |
dmni_msg_size | Data size, is represented in memory word of 32 bits |
ServiceHeader* get_service_header_slot | ( | ) |
Searches for a free ServiceHeaderSlot (sh_slot1 or sh_slot2) pointer. A free slot is the one which is not being used by DMNI. This function prevents that a given memory space be changed while its is not completely transmitted by DMNI.
void init_service_header_slots | ( | ) |
Initializes the service slots
void read_packet | ( | ServiceHeader * | p | ) |
Function that abstracts the process to read a generic packet from NoC by programming the DMNI
p | Packet pointer |
void send_packet | ( | ServiceHeader * | p, |
unsigned int | initial_address, | ||
unsigned int | dmni_msg_size | ||
) |
Function that abstracts the process to send a generic packet to NoC by programming the DMNI
p | Packet pointer |
initial_address | Initial memory address of the packet payload (payload, not service header) |