Digital filter optimization for C language

被引:4
作者
Barleanu, Alexandru [1 ]
Baitoiu, Vadim [1 ]
Stan, Andrei [1 ]
机构
[1] Gheorghe Asachi Univ Iasi, Fac Automat Control & Comp Engn, Iasi 700050, Romania
关键词
embedded software; fixed-point arithmetic; filtering algorithms; design optimization; accuracy; POINT;
D O I
10.4316/AECE.2011.03018
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
A method for transforming C code with floating-point values into C code with integer variables is developed. The objective is to avoid any operations with floating-point data types, thereby increasing the execution speed of the program on a microprocessor without a math coprocessor. The original C code must be a dot product with floating-point literals and integer variables with known interval bounds. The transformation algorithm remodels the dot product form into a tree structure, to maximize the accuracy, but, on the other side, keeps the number of shift operations reduced. The integer code that is generated is ANSI C compliant. It is tested on 8-bit and 32-bit microprocessors using different compilers. The results show that the integer code is several times faster than the floating-point code, the only loss being a very low accuracy drop.
引用
收藏
页码:111 / 114
页数:4
相关论文
共 17 条
  • [1] [Anonymous], EE185 AN DEV INC
  • [2] [Anonymous], IEEE INT S CIRC SYST
  • [3] [Anonymous], P IEEE INT C AC SPEE
  • [4] [Anonymous], NASA DOD C EV HARDW
  • [5] [Anonymous], DIGITAL SIGNAL PROCE
  • [6] [Anonymous], P 10 MED EL C
  • [7] [Anonymous], 1996, Euromath Bulletin
  • [8] [Anonymous], COMPUTER J
  • [9] [Anonymous], 9899TC2 ISOIEC
  • [10] [Anonymous], P IEEE INT C AC SPEE