Changes between Version 4 and Version 5 of library_mwmr
- Timestamp:
- Nov 6, 2014, 6:06:20 PM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
library_mwmr
v4 v5 1 1 = The MWMR Library = 2 2 3 The [source:soft/giet_vm/giet_libs/mwmr_channel.c mwmr_channel.c] and [source:soft/giet_vm/giet_libs/mwmr_channel.h mwmr_channel.h] files define an user-level communication middleware .3 The [source:soft/giet_vm/giet_libs/mwmr_channel.c mwmr_channel.c] and [source:soft/giet_vm/giet_libs/mwmr_channel.h mwmr_channel.h] files define an user-level communication middleware, for parallel multi-tasks applications. 4 4 5 It supports channelized communications in a parallel multi-tasks application, wherethe communication scheme can be explicitely and statically described by a Task and Communication Graph.5 It supports channelized communications , when the communication scheme can be explicitely and statically described by a Task and Communication Graph. 6 6 Each MWMR (Multi-Writer Multi-Reader) channel can be accessed concurently by one or several writer(s) and by one or several reader(s). It is implemented as a software FIFO, protected by a build-in lock. 7 7 8 8 This software FIFO can be directly accessed by an hardware coprocessor, thanks to the vc_mwmr_controller, but be describe here the the software API that can be used by a software application. 9 9 10 An MWMR transaction transfer an integer number of items, and an item is an integer number of unsigned int (32 bits words). The max number of words that can be stored in a MWMR channel is defined by the"depth" parameter. The "width" parameter define the minimal number of words contained in an atomic item. Therefore, the "depth" parameter must be a multiple of the "width" parameter. 11 12 A private lock provides exclusive access to the MWMR channel, that can have a variable number of producers and a variable number of consumers. 10 An MWMR transaction transfer an integer number of items. An item is an integer number of unsigned int (32 bits words). The max number of words that can be stored in a MWMR channel is defined by the"depth" parameter. The "width" parameter define the minimal number of words contained in an atomic item. Therefore, the "depth" parameter must be a multiple of the "width" parameter. 13 11 14 12 WARNING : The MWMR channels, being generally shared by several tasks, must be defined in the mapping, to be initialised by the GIET in the boot phase, and to define the ''length'' and ''width'' parameters. The channel must be in a non cacheable segment, if the platform does not provide hardware cache coherence.