Abstract
Software-defined radio (SDR) brings the flexibility of software to wireless protocol design, promising an ideal platform for innovation and rapid protocol deployment. However, implementing modern wireless protocols on existing SDR platforms often requires careful hand-tuning of low-level code, which can undermine the advantages of software. Ziria is a new domain-specific language (DSL) that offers programming abstractions suitable for wireless physical (PHY) layer tasks while emphasizing the pipeline reconfiguration aspects of PHY programming. The Ziria compiler implements a rich set of specialized optimizations, such as lookup table generation and pipeline fusion. We also offer a novel -- due to pipeline reconfiguration -- algorithm to optimize the data widths of computations in Ziria pipelines. We demonstrate the programming flexibility of Ziria and the performance of the generated code through a detailed evaluation of a line-rate Ziria WiFi 802.11a/g implementation that is on par and in many cases outperforms a hand-tuned state-of-the-art C++ implementation on commodity CPUs.
- 3GPP 36.211. Evolved universal terrestrial radio access (e-utra) - physical channels and modulation. URL http://www.3gpp.org/DynaReport/36211.htm.Google Scholar
- 3GPP 36.212. Evolved universal terrestrial radio access (e-utra) - multiplexing and channel coding. URL http://www.3gpp.org/DynaReport/36212.htm.Google Scholar
- 3GPP 36.213. Evolved universal terrestrial radio access (e-utra) - physical layer procedures. URL http://www.3gpp.org/DynaReport/36213.htm.Google Scholar
- Joshua Auerbach, David F. Bacon, Perry Cheng, and Rodric Rabbah. Lime: A java-compatible and synthesizable language for heterogeneous architectures. In Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications, OOPSLA '10, pages 89--108, 2010. ISBN 978--1--4503-0203--6. Google Scholar
Digital Library
- Emil Axelsson, Koen Claessen, Gergely Dévai, Zoltán Horváth, Karin Keijzer, Anders Persson, Mary Sheeran, Josef Svenningsson, András Vajda, et al. Feldspar: A domain specific language for digital signal processing algorithms. In FMMC, 2010.Google Scholar
Digital Library
- H. V. Balan, M. Segura, S. Deora, A. Michaloliakos, R. Rogalin, K. Psounis, and G. Caire. USC SDR, an easy-to-program, high data rate, real time software radio platform. In Software Radio Implementation Forum, 2013. Google Scholar
Digital Library
- Manu Bansal, Jeffrey Mehlman, Sachin Katti, and Philip Levis. OpenRadio: a programmable wireless dataplane. In HotSDN, 2012. Google Scholar
Digital Library
- T. Bansal, B. Chen, P. Sinha, and K. Srinivasan. Symphony: Cooperative packet recovery over the wired backbone in enterprise WLANs. In MOBICOM, 2013. Google Scholar
Digital Library
- Gérard Berry and Georges Gonthier. The ESTEREL synchronous programming language: Design, semantics, implementation. SCP, 19 (2), 1992. Google Scholar
Digital Library
- Bishnupriya Bhattacharya and Shuvra S Bhattacharyya. Parameterized dataflow modeling for dsp systems. Signal Processing, IEEE Transactions on, 49 (10): 2408--2421, 2001. Google Scholar
Digital Library
- B. Bloessl, M. Segata, C. Sommer, and F. Dressler. An IEEE 802.11a/g/p OFDM receiver for GNU radio. In SRIF, 2013. Google Scholar
Digital Library
- Eric Blossom. GNURadio: tools for exploring the radio frequency spectrum. Linux Journal, 2004 (122): 4, 2004. Google Scholar
Digital Library
- Bricks. Microsoft Research, Brick specification, 2011. URL http://research.microsoft.com/apps/pubs/default.aspx?id=160800.Google Scholar
- Magnus Carlsson and Thomas Hallgren. Fudgets - Purely Functional Processes with applications to Graphical User Interfaces. Doktorsavhandlingar vid Chalmers tekniska högskola. Ny serie, no: 1366. Institutionen för datavetenskap, Chalmers tekniska högskola, 1998. ISBN 91--7197--611--6.Google Scholar
- Paul Caspi. Lucid Synchrone. In Actes du colloque INRIA OPOPAC, Lacanau. HERMES, November 1993.Google Scholar
- Paul Caspi and Marc Pouzet. Lucid Synchrone, a functional extension of Lustre. Technical report, Univ. Pierre et Marie Curie, Lab. LIP6, 2000.Google Scholar
- Antony Courtney and Conal Elliott. Genuinely functional user interfaces. In Haskell Workshop, 2001.Google Scholar
- Demo. Ziria WiFi demo. URL http://research.microsoft.com/apps/video/default.aspx?id=228361.Google Scholar
- A. Dutta, D. Saha, D. Grunwald, and D. Sicker. CODIPHY: Composing on-demand intelligent physical layers. In SRIF, 2013. Google Scholar
Digital Library
- Conal Elliott. Push-pull functional reactive programming. In Haskell Symposium, 2009. Google Scholar
Digital Library
- Conal Elliott and Paul Hudak. Functional reactive animation. In ACM SIGPLAN Notices, volume 32, pages 263--273. ACM, 1997. Google Scholar
Digital Library
- GitHub. Ziria github repository. URL https://github.com/dimitriv/Ziria.Google Scholar
- GSM. Fairwaves GSM base-station. URL https://fairwaves.co/wp/.Google Scholar
- John Hughes. Generalising monads to arrows. SCP, 37 (1--3), 2000. Google Scholar
Digital Library
- 999)}80211aIEEE. Part 11: Wireless LAN MAC and PHY specifications high-speed physical layer in the 5 GHz band, 1999. URL http://standards.ieee.org/getieee802/download/802.11a-1999.pdf.Google Scholar
- F. P. Kelly. Charging and rate control for elastic traffic. European Transactions on Telecommunications, 8: 33--37, 1997.Google Scholar
- A Solar Lezama. Program synthesis by sketching. PhD thesis, Citeseer, 2008.Google Scholar
- T. Li, M. K. Han, A. Bhartia, L. Qiu, E. Rozner, Y. Zhang, and B. Zarikoff. CRMA: Collision-resistant multiple access. In MOBICOM, 2011. Google Scholar
Digital Library
- Lyrtech. Lyrtech. URL http://intrinsic.lyrtech.com/.Google Scholar
- Mathworks. Simulink. URL http://www.mathworks.co.uk/products/simulink/.Google Scholar
- Microsoft. Windows driver kit version 7. URL http://www.microsoft.com/en-us/download/details.aspx?id=11800.Google Scholar
- Eugenio Moggi. Notions of computation and monads. Inf. Comput., 93 (1), 1991. Google Scholar
Digital Library
- Patrick Murphy, Ashu Sabharwal, and Behnaam Aazhang. Design of WARP: a wireless open-access research platform. In ESPC, 2006.Google Scholar
- Myriad. MyriadRF open source wireless hardware. URL http://myriadrf.org/.Google Scholar
- Man Cheuk Ng, Kermin Elliott Fleming, Mythili Vutukuru, Samuel Gross, Arvind, and Hari Balakrishnan. Airblue: a system for cross-layer wireless protocol development. In Proceedings of the 6th ACM/IEEE Symposium on Architectures for Networking and Communications Systems, ANCS '10, page 4:1--4:11, New York, NY, USA, 2010. ACM. ISBN 978--1--4503-0379--8. Google Scholar
Digital Library
- NI. National instruments, LabVIEW. URL http://www.ni.com/labview/.Google Scholar
- OFDM. GNU Radio OFDM implementation. URL http://gnuradio.org/redmine/projects/gnuradio/repository/changes/gr-digital/python/digital/ofdm_receiver.py?rev=master.Google Scholar
- John Peterson, Paul Hudak, and Conal Elliott. Lambda in motion: Controlling robots with haskell. In Proceedings of the First International Workshop on Practical Aspects of Declarative Languages, PADL '99, pages 91--105, London, UK, UK, 1998. Springer-Verlag. ISBN 3--540--65527--1. URL http://dl.acm.org/citation.cfm?id=645769.667757. Google Scholar
Digital Library
- Pipes. Haskell Pipes Tutorial. URL http://hackage.haskell.org/package/pipes-4.0.0/docs/Pipes-Tutorial.html.Google Scholar
- hel et al.(2005)Püschel, Moura, Johnson, Padua, Veloso, Singer, Xiong, Franchetti, Gacic, Voronenko, Chen, Johnson, and Rizzolo}Puschel:05Markus Püschel, José M. F. Moura, Jeremy Johnson, David Padua, Manuela Veloso, Bryan Singer, Jianxin Xiong, Franz Franchetti, Aca Gacic, Yevgen Voronenko, Kang Chen, Robert W. Johnson, and Nicholas Rizzolo. SPIRAL: Code generation for DSP transforms. Proceedings of the IEEE, special issue on "Program Generation, Optimization, and Adaptation", 93 (2): 232-- 275, 2005.Google Scholar
- S. Rayanchu, A. Mishra, D. Agrawal, S. Saha, and Suman Banerjee. Diagnosing wireless packet losses in 802.11: Separating collision from weak signal. In INFOCOM 2008. The 27th Conference on Computer Communications. IEEE, April 2008.Google Scholar
Cross Ref
- T. Rondeau, N. McCarthy, and T. O'Shea. SIMD programming in GNURadio: Maintainable and user-friendly algorithm optimization with VOLK. In SDR WinnComm, 2013.Google Scholar
- Saankhya. Saankhya labs, multi-standard modems. URL http://www.saankhyalabs.com.Google Scholar
- S. Sen, R. R. Choudhury, and S. Nelakuditi. No time to countdown: Migrating backoff to the frequency domain. In MOBICOM, 2011. Google Scholar
Digital Library
- Tan, Zhang, Fang, Liu, Ye, Wang, Zhang, Wu, Wang, and Voelker}TanSora09K. Tan, J. Zhang, J. Fang, H. Liu, Y. Ye, S. Wang, Y. Zhang, H. Wu, W. Wang, and G. Voelker. Sora: High performance software radio using general purpose multi-core processors, 2009\natexlaba.Google Scholar
- Tan, Zhang, Fang, Liu, Ye, Wang, Zhang, Wu, Wang, and Voelker}tan_sora:_2009Kun Tan, Jiansong Zhang, Ji Fang, He Liu, Yusheng Ye, Shen Wang, Yongguang Zhang, Haitao Wu, Wei Wang, and Geoffrey M. Voelker. Sora: high performance software radio using general purpose multi-core processors. In Proceedings of the 6th USENIX symposium on {N}etworked {S}ystems {D}esign and {I}mplementation, NSDI'09, pages 75--90, Berkeley, CA, USA, 2009. USENIX Association. URL http://dl.acm.org/citation.cfm?id=1558977.1558983. Google Scholar
Digital Library
- Colin J Taylor. Formalising and reasoning about Fudgets. PhD thesis, University of Nottingham, 1998.Google Scholar
- William Thies, Michal Karczmarek, and Saman Amarasinghe. StreamIt: A language for streaming applications. In CC, 2002. Google Scholar
Digital Library
- TMS320. Texas Instruments TMS320TCI6616 Communications Infrastructure KeyStone SoC. URL http://www.ti.com/lit/ds/sprs624d/sprs624d.pdf.Google Scholar
- USRP. Ettus Research, USRP: Universal Software Radio Peripheral. URL http://www.ettus.com/.Google Scholar
- Volo. Volo Wireless, low-cost last mile broadband. URL http://www.volowireless.com/.Google Scholar
- Voronenko, Arbatov, Berger, Peng, Puschel, and Franchetti}Voronenko10Y. Voronenko, V. Arbatov, C. Berger, R. Peng, M. Puschel, and F. Franchetti. Computer generation of platform-adapted physical layer software. In Proc. Software Defined Radio (SDR), 2010\natexlaba.Google Scholar
- Voronenko, Arbatov, Berger, Peng, Pueschel, and Franchetti}voronenko2010computerY Voronenko, V Arbatov, CR Berger, R Peng, M Pueschel, and F Franchetti. Computer generation of platform-adapted physical layer software. Proceedings Software Defined Radio (SDR), 2010\natexlabb.Google Scholar
Index Terms
Ziria: A DSL for Wireless Systems Programming
Recommendations
Ziria: A DSL for Wireless Systems Programming
ASPLOS '15: Proceedings of the Twentieth International Conference on Architectural Support for Programming Languages and Operating SystemsSoftware-defined radio (SDR) brings the flexibility of software to wireless protocol design, promising an ideal platform for innovation and rapid protocol deployment. However, implementing modern wireless protocols on existing SDR platforms often ...
Ziria: A DSL for Wireless Systems Programming
ASPLOS'15Software-defined radio (SDR) brings the flexibility of software to wireless protocol design, promising an ideal platform for innovation and rapid protocol deployment. However, implementing modern wireless protocols on existing SDR platforms often ...
Ziria: language for rapid prototyping of wireless PHY
SIGCOMM '14: Proceedings of the 2014 ACM conference on SIGCOMMSoftware-defined radios (SDR) have the potential to bring major innovation in wireless networking design. However, their impact so far has been limited due to complex programming tools. Most of the existing tools are either too slow to achieve the full ...









Comments