Abstract
This paper provides the essential details of implementing 4-phase bundled data and speed independent asynchronous circuits on FPGAs. The required Xilinx synthesis tools including attributes, constraints and hardware implementation of basic asynchronous elements like Cgate, delay line, and handshaking modules are discussed. Finally, two design and implementation examples of asynchronous circuits are introduced. In order to reduce area and energy overhead, an N-stage pipeline with internal loops is proposed and employed in asynchronous Fuzzy Logic Controller (FLC). It is observed that synchronous FLC operating at 100 MHz consumes 27% more dynamic power while occupying 23% fewer FPGA resources compared to its asynchronous counterpart. At the same time, the asynchronous circuit has obtained an improvement of 19% in FLC performance compared to synchronous FLC. The other implementation example explains the technical details of the design and implementation process of speed independent circuit using Petrify and ISE at the LUT level. Both design examples are implemented and tested successfully on FPGA board.
Similar content being viewed by others
References
Nielsen, L. S., & Sparso, J. (1999). Designing asynchronous circuits for low power: An IFIR filter bank for a digital hearing aid. Proceedings of the IEEE,87(2), 268–281. https://doi.org/10.1109/5.740020.
Beigne, E., Vivet, P., Thonnart, Y., Christmann, J. F., & Clermidy, F. (2016). Asynchronous circuit designs for the internet of everything: A methodology for ultralow-power circuits with GALS architecture. IEEE Solid-State Circuits Magazine,8(4), 39–47. https://doi.org/10.1109/mssc.2016.2573864.
Pham-Quoc, C., & Dinh-Duc, A. V. (2010). Hazard-free Muller gates for implementing asynchronous circuits on Xilinx FPGA. In IEEE Symposium on Electronic Design, Test & Applications, Ho Chi Minh City, Vietnam, 13–15 Jan. 2010. https://doi.org/10.1109/delta.20https://doi.org/10.40
Lavagno, L., Keutzer, K., & Sangiovanni-Vincetelli, A. L. (1995). Synthesis of hazard-free asynchronous circuits with bounded wire delays. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,14(1), 61–86. https://doi.org/10.1109/43.363123.
UPC/DAC VLSI CAD Group: Petrify. [online]. Retrieved April 26, 2019 from http://www.lsi.upc.edu/~jordicf/petrify
Hauck, S., Burns, S., Borriello, G., & Ebeling, C. (1994). An FPGA for implementing asynchronous circuits. IEEE Magazine on Design & Test of Computers,11(3), 60–68. https://doi.org/10.1109/mdt.1994.303848.
Payne, R. (1997). Self-timed field programmable gate array architectures. Ph.D. thesis, University of Edinburgh.
Kondratyev, A., Kishinevsky, M., Lin, B., Vanbekbergen, P., & Yakovlevy, A. (1994). Basic gate implementation of speed-independendent circuits. In IEEE 31st design automation conference, San Diego, CA, USA, USA, 6–10 June 1994. 10.1109/DAC.1994.204073.
Maheswaran, K. (1995). Implementing self-timed circuits in field programmable gate arrays. Master thesis, U.C. Davis.
Brunvard, E. (1993). Using FPGAs to implement self-timed systems. Journal of VLSI Signal Processing,6(2), 173–190.
Ho, Q. T., Rigaud, J. B., Fesquet, L., Renaudin, M., & Rolland, R. (2002). Implementing asynchronous circuits on LUT based FPGAs. In Proceedings 12th international conference on field programmable logic and applications, Montpellier, France.
Tranchero, M., Reyneri, L. M., Implementation of self-timed circuits onto FPGAs using commercial tools. In 11th EUROMICRO conference on digital system design architectures, methods and tools, Parma, Italy, 2008. https://doi.org/10.1109/dsd.2008.73.
Oliveira, D. L., Sato, S. S., Saotome, O., & de Carvalho, R. T. (2008). Hazard-free implementation of the extended burst-mode asynchronous controllers in look-up table based FPGA. In 4th southern conference on programmable logic, San Carlos de Bariloche, Argentina, 2008. https://doi.org/10.1109/spl.2008.4547746.
Takizawa, K., Hosaka, S., & Saito, H. (2014). A design support tool set for asynchronous circuits with bundled-data implementation on FPGAs. In International conference on field programmable logic and applications, Munich, Germany, 2–4 September 2014. https://doi.org/10.1109/fpl.2014.6927435.
Ferguson, P. D., Efthymiou, A., Arslan, T., & Hume, D. (2010). Optimizing self-timed FPGA circuit's. In 13th EUROMICRO conference on digital system design: Architectures, methods and tools, Lille, France 1–3 September 2010. https://doi.org/10.1109/dsd.20https://doi.org/10.97.
Saito, H., Hamada, N., Yoneda, T., & Nanya, T. (2010). A Floorplan method for asynchronous circuits with bundled-data implementation on FPGAs. In IEEE symposium on circuits and systems, Paris, France, 30 May–2 June 2010, https://doi.org/10.1109/iscas.20https://doi.org/10.5537402.
Pham-Quoc, C., & Dinh-Duc, A. V. (2009). New approaches to design asynchronous circuits on FPGAs. In International conference on advanced technologies for communications, Hai Phong, Vietnam, 12–14 October 2009. https://doi.org/10.1109/atc.2009.5349341.
Woods, J. V., Day, P., Furber, S. B., Garside, J. D., Paver, N. C., & Temple, S. (1997). AMULET1: An asynchronous ARM microprocessor. IEEE Transactions on Computers,46, 385–398. https://doi.org/10.1109/12.588033.
Nanya, T., Ueno, Y., Kagotani, H., Kuwako, M., & Takmura, A. (1994). TITAC: Design of a quasi-delay-insensitive microprocessor. IEEE Magazine on Design & Test of Computer,11(2), 50–63. https://doi.org/10.1109/54.282445.
Lee, S. J., Lee, D. Y., Ko, Y. W., & Lee, J. G. (2012). Asynchronous circuit design on an FPGA: MIPS processor case study. In International conference on hybrid information technology, (pp. 480–487), August 2012, https://doi.org/10.1007/978-3-642-32692-9_60.
Liu, Y., Xie, G., Chen, P., Chen, J., & Ki, Z. (2009). Designing an asynchronous FPGA processor for low-power sensor networks. In International symposium on signals, circuits and systems, Iasi, Romania, 9–10 July 2009. https://doi.org/10.1109/isscs.2009.5206091.
Hajduk, Z. (2017). Simple method of asynchronous circuits implementation in commercial FPGAs. Journal of Integration, the VLSI Journal,59(C), 31–41. https://doi.org/10.1016/j.vlsi.2017.05.002.
Sparsø, J., & Furber, S. (Eds.). (2001). Principles of asynchronous circuit design—A systems perspective. Boston: Kluwer.
Semenov, A., et al, (1997) Synthesis of speed-independent circuits from STG-unfolding segment. In ACM DAC ‘97 proceedings of the 34th annual design automation conference (pp. 16–21). https://doi.org/10.1145/266021.266028.
Cortadella, J., et al. (1996). Petrify: A tool for manipulating concurrent specifications and synthesis of asynchronous controllers. IEICE Transaction on Information and Systems,1(3), 315–325.
Beerel, P. A., Myers, C. J., & Meng, T. H. (1998). Covering conditions and algorithms for the synthesis of speed independent circuits. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,17(3), 205–219. https://doi.org/10.1109/43.700719.
Xilinx.com. (2011). [Online]. Retrieved April 28, 2011 from: https://www.xilinx.com/support/documentation/ip_documentation/div_gen_ds530.pdf
Fedra, Z., & Kolouch, J. (2011). VHDL procedure for combinational divider. In 34th international conference on telecommunications and signal processing (TSP), 2011. https://doi.org/10.1109/tsp.2011.6043687.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
See Table 4.
Rights and permissions
About this article
Cite this article
Motaqi, A., Helaoui, M., AghliMoghaddam, S. et al. Detailed implementation of asynchronous circuits on commercial FPGAs. Analog Integr Circ Sig Process 103, 375–389 (2020). https://doi.org/10.1007/s10470-020-01602-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10470-020-01602-3