[Tinyos-devel] TEP116 HIL/HAL discussion

Vlado Handziski handzisk at tkn.tu-berlin.de
Thu May 15 11:27:49 PDT 2008


The additional interfaces in the component are irrelevant for the
discussion. Section 5 in the TEP talks about the same interfaces as in
ActiveMessageC (btw. there seems to be two sections numbered 5 in the
document). What I am saying is that the requirements listed in Section 5 are
implementation detail for the HIL and have nothing to do with the HAL level
interface. Why do you want to specify from above what the HAL for the radio
components should look like and even what names they should have?

The HAL interface can be completely different for each chip/platform and not
contain any of the interfaces exported in ActiveMessageC. It can happen that
a particular chip/platform HAL is so well aligned with the current HIL that
they share those interfaces making the component be both HIL/HAL
implementation, but in general this is not a requirement.

Vlado

On Thu, May 15, 2008 at 7:27 PM, Philip Levis <pal at cs.stanford.edu> wrote:

>
> On May 15, 2008, at 9:45 AM, Vlado Handziski wrote:
>
>  d the lack of abstraction delta with ActiveMessageC (it is only a
>> pass-trough wiring) is for me clearly such a component. The viewpoint that
>> every component that is not exporting a HIL interface is HAL is not HAA
>> compliant. HAL is a well defined tapping point for optimal implementation of
>> platform specific services/applications.
>>
>
> It's more than that. It's the Active Message abstraction for a particular
> radio chip, which allows you to use functionality of that chip. E.g.:
>
> configuration ActiveMessageC {
>  provides {
>    interface SplitControl;
>
>    interface AMSend[uint8_t id];
>    interface Receive[uint8_t id];
>    interface Receive as Snoop[uint8_t id];
>
>    interface Packet;
>    interface AMPacket;
>    interface PacketAcknowledgements;
>  }
> }
>
>
> configuration CC2420ActiveMessageC {
>  provides {
>    interface SplitControl;
>    interface AMSend[am_id_t id];
>    interface Receive[am_id_t id];
>    interface Receive as Snoop[am_id_t id];
>    interface AMPacket;
>    interface Packet;
>    interface CC2420Packet;
>    interface PacketAcknowledgements;
>    interface LinkPacketMetadata;
>    interface RadioBackoff[am_id_t amId];
>    interface LowPowerListening;
>    interface PacketLink;
>    interface SendNotifier[am_id_t amId];
>  }
> }
>
> Phil
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://www.millennium.berkeley.edu/pipermail/tinyos-devel/attachments/20080515/b12cad79/attachment.htm 


More information about the Tinyos-devel mailing list