The WARPMAC framework is a suite of software routines that sits above the physical layer and allows for flexible abstraction of hardware interactions.
- PHY: Real times dependent operations are implemented in FPGA fabric. This includes the physical layer and all supporting hardware peripherals like gain control and packet detection.
- DRIVERS: Here software routines abstract register read and write to low level hardware control functions, like radio controller has function to set a central frequency.
- LOW LEVEL FUNCTIONS: An addtional layer of abstraction by incorporating many driver calls into functions that read more like psuedo code. For example we can have access to a function that takes a packet as an input and returns when that packet has been sent over the air.
- HIGH LEVEL FUNCTIONS: At this level a user can define its own protocol with help of functins provided by WARPMAC.
The level at which the designer will work is decided by its MAC algorithm requirements. You can find the WARPMAC API here that describes the data types and functions that constitute the WARPMAC framework.