410 likes | 591 Views
Tightly coupled INS/GPS system using particle filter D0928- system architecture and math functions Part A - Final presentation. Students: Royzman Danny Peleg Nati Supervisor: Fiksman Evgeni. Agenda. Math functions Overview Trigonometric Exp{-x} SQRT Implementation
E N D
Tightly coupled INS/GPS system using particle filterD0928- system architecture and math functionsPart A - Final presentation Students: Royzman Danny Peleg Nati Supervisor: Fiksman Evgeni
Agenda • Math functions • Overview • Trigonometric • Exp{-x} • SQRT • Implementation • Performance • Infrastructure – Phase1 • Main difficulties • Block diagram • Controllers diagram • Gantt Chart
Math functions - Overview Particle propagation Revaluation Dk computation sine & Cosine exp sqrt Reweight GPS update + Neff
Math functions - guidelines The following guidelines were defined for function implementation: • I/O format : signed fixed point. • Maximum flexibility. • Low FPGA resource usage. • Reasonable accuracy.
Math functions – OverviewInitial proposal Initially proposed implementation based on CORDIC algorithm • Iterative algorithm. • I/O format : variable width signed fixed point. • Low HW requirements. • Easily adjustable and easily implementable . • Allows a generic unified core, for all the functions needed. • Rough accuracy estimation is one bit for each iteration.
Math functions – OverviewCORDIC R&D • See project book for more details
Math functions – ImplementationTrigonometric functions • Variable-width variable-pipeline CORDIC algorithm. • Sine, Cosine functions implemented in single unit. • Pre & Post processing units added for broader input coverage. • Pipe core contains datapath and control stages. • Pipe core combined from variable (2,4..16) amount of single stages, separated by a register. • Default values: (HW cost/accuracy trade off). • Stages total amount : 32 units. • Input/output width :32 bit. • IO format 1.2.29 input, 1.0.31 output
Default values LUT Math functions – ImplementationTrigonometric functions Post-Processing unit Pre-Processing unit Sine Pipe Core Input Cosine
Math functions – ImplementationTrigonometric functions Single pipe stage http://en.wikibooks.org/wiki/Digital_Circuits/CORDIC
Math functions – ImplementationTrigonometric functions Pre processing unit
Math functions – ImplementationTrigonometric functions Post processing unit
Math functions – ImplementationExponential function • “Invariants” method will be used • 17 single stages. • Executing a 4-stages pipe flow. • 5 unique “integer” stages. • 6 unique “fractal” stages, repeated twice for better coverage. • Pipe core contains datapath and control stages. • IO format 0.5.27 input, 0.0.32 output.
Math functions – ImplementationExponential function Single stage
Math functions – ImplementationSquare root function • “A non-restoring square root” algorithm will be used • Fully combinatorial implementation • 48 unique iterations, can be pipelined. • IO format 0.32.64 input, 0.16.32 output.
Math functions – ImplementationSquare root function Schematic
Infrastructure Infrastructure mile stone - GPS Phase I is done • Infrastructure – Phase1 • Main difficulties • Block diagram • Controllers diagram
InfrastructureMain difficulties • Integration problems between frames. • Hardware adjustments for debug . • Long compilation time.
InfrastructurePhase1 - block diagram Taken from Gadi&Eran’s D1418_BOOK
InfrastructurePhase1 - controllers diagram Main controller1 F.S.M
InfrastructurePhase1 - controllers diagram Local controller2 F.S.M
InfrastructurePhase1 - controllers diagram Main controller3 F.S.M
InfrastructurePhase1 - controllers diagram Main controller4 F.S.M
אלגוריתם CORDIC סיבוב וקטור – התמרה כללית :
אלגוריתם CORDIC הצובר הזוויתי:
אלגוריתם CORDIC • שני מצבי עבודה : Rotation by Volder .1– מצב סיבוב 2.Vectoring – מצב וקטורי
אלגוריתם CORDIC בסה"כ עבור מצב סיבוב :
Hyperbolic functions Pre Process Unit Proposed HW implementation Mathematical actions required, compared to regular single stage • X. Hu, R. Huber, S. Bass, “Expanding the Range of • Convergence of the CORDIC Algorithm”, IEEE • Transactions on Computers. Vol. 40, Nº 1, pp. 13-21, Jan.1991. • Daniel R. Llamocca-Obregón,Carla P. Agurto-Ríos; A FIXED-POINT IMPLEMENTATION OF THE EXPANDED HYPERBOLIC • CORDIC ALGORITHM • http://www.iberchip.org/iberchip2006/ponencias/106.pdf Back
Hyperbolic functions Pre Process Unit Proposed HW implementation • C simulation results, acquired by running D0228 (Neta & Moti) project code. • Maximum Exponential input : 375.704604 • Minimum Exponential input : 0.12665 • Average Exponential input : 14.15504 • Convergence zone expansion: • Total values checked : >1000000 (One million) Back