Changes between Version 32 and Version 33 of SoC2014


Ignore:
Timestamp:
Feb 10, 2014, 11:41:20 PM (9 years ago)
Author:
christopher_kormanyos
Comment:

Provide more details on the fixed-point project.

Legend:

Unmodified
Added
Removed
Modified
  • SoC2014

    v32 v33  
    213213=== Boost.Fixed-Point ===
    214214
    215 Provide an implementation of a Fixed-Point library based on [1].
    216 
    217 A prototype with a different interface is available at [2]
     215A fixed-point number is a finite-precision approximation of a real number with a fixed number of digits before the radix point and a fixed number of digits after the radix point. Fixed-point numbers are used in diverse technical fields ranging from optimized microcontroller programming through high-performance financial calculations and beyond. In microcontroller programming, fixed-point numbers can provide floating-point representations with near-integer performance even if a dedicated floating-point unit is not available. This is key because it allows the use of sophisticated mathematical calculations including elementary transcendental functions, special functions of applied mathematics, digital filters, power regulation methods, etc., withing the regime of cost-sensitive tiny devices.
     216
     217In this project, we will provide an implementation of a fixed-point library based on [1]. The core work involves developing a series of templates and template specializations that embody the fixed-point numbers in various precision ranges. A prototype with a different interface is available at [2]. We will concentrate on radix-2 fixed-point representations. We will attempt to cover a wide range of precision and performance, ranging from tiny 8-bit and 16-bit fixed-point representations all the way up to 32-bit, 64-bit and beyond. As with all Boost projects, testing and documentation are mandatory and we will provide a rich test suite and legible documentation as we progress.
     218
     219This project requires a high degree of knowledge of advanced C++ methods such as template programming, generic numeric programming, and the ability to represent data structures in an abstract form.
     220
     221If you are interested in this project, investigate the reference templates in [2]. A simplified fixed-point representation targeting cost-sensitive microcontroller applications can be found in [3], as described in [4]. If you would like to display your skills and understanding of the project domain, try to use any of these reference applications in a real-world calculation. Describe your calculation and the results you obtain.
    218222
    219223[1] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3352.html
     
    221225[2] https://svn.boost.org/svn/boost/sandbox/fixed_point/
    222226
    223 This project could be mentored by Vicente J. Botet Escriba and possibly Christopher Kormanyos.
     227[3] https://github.com/ckormanyos/real-time-cpp/tree/master/ref_app/src/math/fixed_point
     228
     229[4] http://www.springer.com/computer/communication+networks/book/978-3-642-34687-3
     230
     231This project will be mentored by Vicente J. Botet Escriba and Christopher Kormanyos.
    224232
    225233