h2 { font-family:"Verdana",sans-serif; font-size:18; color:#0040C0; } p { font-family:"Verdana",sans-serif; font-size:smaller; } li { font-family:"Verdana",sans-serif; font-size:smaller; position:relative; left:-10 }
Questions and AnswersFor what kinds of applications can I use RTflow? You can use it whenever there is a part of your application that requires some continuous or cyclic processing. Control systems and games are typical such applications, while word processors or compilers are not. Why should I use RTflow rather than keep coding everything in C/C++/Java? Because it will save you time and trouble. Imperative languages have never been good for handling complex interaction between parallel processes, and threading bugs can be a nightmare to find and solve - not least because such bugs may appear only sporadically. A graphical parallel and deterministic language captures the interaction between processes much more naturally, and nothing happens by chance, so such problems are completely eliminated. Can I build complete applications with RTflow? No, the idea is that you build the real-time logic part of your application with RTflow, while everything else is coded in the target language, such as Java or C++. RTflow has no functions for requesting data from the user, accessing files or interfacing with hardware. The manually written code feeds the RTflow-generated module with input data and reads and applies the output data. How does the interfacing between my code and the generated code work? You have complete control over the interface by means of a template file with keys to mark where generated code is to be inserted. The code generator simply reads the template file and outputs a copy of it, but where all keys have been replaced by generated code. RTflow also comes with default template files for all four target languages (C, C++, Java and VHDL). You can see examples of generated code from these templates on this website for C++ and VHDL. How is RTflow different from other similar tools like Simulink or LabVIEW? The main differences are that RTflow is free while other similar tools are typically very expensive, and that RTflow is very small and basic compared to the others. Do I need to download or install anything else to make it work? No, RTflow is completely self-contained, and you can start modelling, simulating and generating code straight away after you have installed it. However, to compile the generated code into an application, you need a compiler for your target language. For FPGA development, you need a VHDL synthesis tool for your FPGA. Can I use RTflow to design FPGA:s or ASIC:s? The current version of RTflow is quite weak when it comes to dedicated hardware development. You can use it if your system runs on a single clock and uses only boolean and 32-bit integer arithmetic. However, improvement of the hardware development features in RTflow has highest priority, so future versions should be better fit. Can RTflow generate VHDL code for floating-point arithmetic? If there are real variables in the model, then RTflow will generate VHDL code that is compatible with the fphdl package. For synthesizing to FPGA from this code, you must install this package into your synthesis tool if it isn't there already, and you must use a synthesis tool that can synthesize it. In any case, it should be noticed that combinatorial floating-point arithmetic fills up an FPGA very quickly, so only small systems would fit. Can I write functions in the target language and call them from within RTflow? No, not in the current version, but several users have requested this feature, so it will probably appear in the next version. However, it should be noticed that using this feature effectively disables the possibility to simulate your model or to generate code to different target languages. Is the source code of RTflow available? Yes, provided that you accept a non-disclosure agreement. You may only use the source code to extend the functionality of RTflow for personal use. RTflow is written in C++Builder 6. Contact info@waveworks (add .dk manually to the e-mail address) for the details. Can I pay to get a certain feature implemented? Yes, you can. Contact info@waveworks (add .dk manually to the e-mail address) for the details. Where do I get help and support? RTflow comes with complete documentation, and it is also available from the documentation page. If you can't find the answer to your questions there, send an e-mail to info@waveworks (add .dk manually to the e-mail address). |