balangs / eTeak

A GALS Synthesiser for the Balsa language
http://apt.cs.manchester.ac.uk/projects/tools/eTeak/
Other
4 stars 6 forks source link

Why buffering a dataflow design matters? #4

Open Mahdi89 opened 8 years ago

Mahdi89 commented 8 years ago

To ensure deadlock-freedom a dataflow design needs to be buffered. In a simple language, it means data has to have available registers to move into, otherwise it would get stuck and cause the predecessor data tokens to pause/stall as well. This may raise a deadlock when the data tokens are stuck within a finite loop! which would never let the tokens to move; we technically call this situation a "deadlock" and needs the circuit to restart which may cause data loss!