Skip to main content
Log in

Efficient System-Level Hardware Synthesis of Dataflow Programs Using Shared Memory Based FIFO

HEVC Decoder Case Study

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

The purpose of this paper is to raise the level of abstraction in the design of embedded systems to the system-level. A novel design flow was proposed that enables an efficient hardware implementation of video processing applications described using a Domain-Specific Language (DSL) for dataflow programming. Despite the huge advancements in High-Level Synthesis (HLS) for Field-Programmable Gate Arrays (FPGAs), designers are still required to have detailed knowledge about coding techniques and the targeted architecture to achieve efficient solutions. Moreover, the main downside of the High-Level Synthesis (HLS) tools is the lack of the entire system consideration. As a remedy, in this work, we propose a design flow that combines a dataflow compiler for generating C-based High-Level Synthesis (HLS) descriptions from a dataflow description and a C-to-gate synthesizer for generating Register Transfer Level (RTL) descriptions. The challenge of implementing the communication channels of dataflow programs relying on Model of Computations (MoC) in Field-Programmable Gate Array (FPGA) is the minimization of the communication overhead. In this issue, we introduced a new interface synthesis approach that maps the large amounts of data that multimedia and image processing applications process, to shared memories on the Field-Programmable Gate Array (FPGA). This leads to a tremendous decrease in the latency and an increase in the throughput. These results were demonstrated upon the hardware synthesis of the emerging High-Efficiency Video Coding (HEVC) standard. Simulation results showed that the proposed implementation has increased throughput by a 5.2× speedup and reduced latency by a 3.8× speedup compared to a state-of-the-art implementation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Listing 1
Figure 4
Figure 5
Figure 6
Listing 2
Figure 7
Listing 3
Figure 8
Listing 4
Figure 9
Listing 5
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14

Similar content being viewed by others

References

  1. Abid, M., Jerbi, K., Raulet, M., Deforges, O., & Abid, M. (2013). System level synthesis of dataflow programs: HEVC decoder case study. In Electronic system level synthesis conference (ESLsyn), 2013 (pp. 1–6).

  2. Bezati, E., Mattavelli, M., & Janneck, J. (2013). High-Level Synthesis of dataflow programs for signal processing systems. In 8Th international symposium on image and signal processing and analysis (ISPA 2013).

  3. Bezati, E., Yviquel, H., Raulet, M., & Mattavelli, M. (2011). A unified hardware/software co-synthesis solution for signal processing systems. In Conference on design and architecfor signal and image processing (DASIP), 2011 (pp. 1–6). doi:10.1109/DASIP.2011.6136877.

  4. Bhattacharyya, S.S., Eker, J., Janneck, J.W., Lucarz, C., Mattavelli, M., & Raulet, M. (2011). Overview of the MPEG reconfigurable video coding (RVC) framework. Journal of Signal Processing Systems, 63, 251–263.

    Article  Google Scholar 

  5. Bowen, M. Handel-C Language Reference Manual Version 2.1. Embedded Solutions Limited.

  6. Coussy, P., Gajski, D.D., Meredith, M., & Takach, A. (2009). An introduction to High-Level synthesis (HLS). IEEE Design & Test of Computers, 26(4), 8–17.

    Article  Google Scholar 

  7. Dennis, J.B. (1974). First version of a data flow procedure language. In Programming symposium, proceedings colloque sur la programmation (pp. 362–376).

  8. Eker, J., & Janneck, J.W. (2003). CAL Language report specification of the CAL actor language. Tech. Rep. UCB/ERL m03/48, EECS Department, University of California, Berkeley.

  9. Frigo, J., Gokhale, M., & Lavenier, D. (2001). Evaluation of the streams-c c-to-fpga compiler: An applications perspective. In Proceedings of the 2001 ACM/SIGDA ninth international symposium on field programmable gate arrays, FPGA ’01 (pp. 134–140). New York: ACM. doi:10.1145/360276.360326.

  10. Gupta, S., Dutt, N., Gupta, R., & Nicolau, A. (2003). Spark: a high-level synthesis framework for applying parallelizing compiler transformations. In 16th international conference on VLSI design, 2003. Proceedings (pp. 461–466). doi:10.1109/ICVD.2003.1183177.

  11. Janneck, J., Miller, I., Parlour, D., Roquier, G., Wipliez, M., & Raulet, M. (2008). Synthesizing hardware from dataflow programs: An MPEG-4 simple profile decoder case study. In IEEE workshop on signal processing systems, 2008. SiPS 2008(pp. 287–292). doi:10.1109/SIPS.2008.4671777.

  12. Jerbi, K., Raulet, M., Deforges, O., & Abid, M. (2012). Automatic generation of synthesizable hardware implementation from high level RVC-cal description. In IEEE international conference on acoustics, speech and signal processing (ICASSP), 2012 (pp. 1597–1600). doi:10.1109/ICASSP.2012.6288199.

  13. Kahn, G. (1974). The semantics of simple language for parallel programming. In IFIP Congress (pp. 471–475).

  14. Lee, E.A., & Parks, T. (1995). Dataflow process networks. In Proceedings of the IEEE (pp. 773–799).

  15. Martin, G., Bailey, B., & Piziali, A. (2007). ESL Design and verification: a prescription for electronic system level methodology. San Francisco: Morgan kaufmann publishers Inc.

  16. Najjar, W., Bohm, W., Draper, B., Hammes, J., Rinker, R., Beveridge, J., Chawathe, M., & Ross, C. (2003). High-level language abstraction for reconfigurable computing. Computer, 36(8), 63–69. doi:10.1109/MC.2003.1220583.

  17. Siret, N., Wipliez, M., Nezan, J.F., & Palumbo, F. (2012). Generation of efficient High-Level hardware code from dataflow programs. In Proceedings of design, automation and test in europe (DATE).

  18. Wipliez, M. (2010). Compilation infrastructure for dataflow programs. Ph.D. thesis, INSA Rennes.

  19. Yviquel, H., Casseau, E., Wipliez, M., & Raulet, M. (2011). Efficient multicore scheduling of dataflow process networks. In IEEE Workshop On Signal Processing Systems (SiPS), 2011 (pp. 198–203): Liban. doi:10.1109/SiPS.2011.6088974.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mariem Abid.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Abid, M., Jerbi, K., Raulet, M. et al. Efficient System-Level Hardware Synthesis of Dataflow Programs Using Shared Memory Based FIFO. J Sign Process Syst 90, 127–144 (2018). https://doi.org/10.1007/s11265-017-1226-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-017-1226-x

Keywords

Navigation