210 likes | 328 Views
GPS-INS resampling VERIFICATION. Final Presentation Annual project (Part B) Winter semester תש"ע ( (2009. Students: Oren Hyatt, Alex Dutov Supervisor: Mony Orbach. Abstract.
E N D
GPS-INSresampling VERIFICATION Final PresentationAnnual project (Part B)Winter semesterתש"ע ((2009 Students: Oren Hyatt, Alex Dutov Supervisor: MonyOrbach
Abstract • A GPS system isn’t fast enough, to meet updating requirements of high speed systems. The algorithm using GPS/INS system, coupled with an integrated particles filter, for error estimation, was developed by Prof. Yaakov Oshman and Mark Koifman, from the Aeronautics faculty of the Technion. • Part A of this project, deals with the implementation the resampling and regularization units, the algorithm uses. Those parts, were defined as a possible “bottle neck”, in terms of time constraints. • In this part (part B), the resampling was brought and verified using the Generic environment.
Project’s goal • Learning the complete system protocol and using it to work with Generic. • Resampling’s verification using Generic Environment. • Time requirements checking. • HW resources requirements checking.
Resampling W[0.0.28] Index_out[0.16.0] Reject insignificant particles. Duplicate remained particles, with respect to their relative weight.* Format’s Notation: X.YY.ZZZ ~ sign ; number ; fraction *see part A for more info
Generic • Generic Program is a testbench for GPS-INS system. • Provides input vectors and stores the results in .BIN file. • Allows to test all parts of the algorithm in different points of time. • Uses the same protocol for all parts of the algorithm.
Generic Interface FPGA selection (We work with FPGA #3) Time point selection Weights input from .BIN/Indexes output to .BIN Number of Indexes in Output Control buttons Propogate 30K weights
Testing environment • IC1 – vhd that was created by ProcWizard for Frame1 and its .bdf file is used by Generic Program. • Frame1 – System main controler. • Generic – a testbench unit. • Resampling – our unit. IC1 Frame1 Generic Resampling
Test results (Generic vsMatlab) T=201 Number of indexes misplaced: 829
Test results (HW vsMatlab) T=1001 Number of indexes misplaced: 786
Test results (HW vsMatlab) T=2001 Number of indexes misplaced: 247
Test results (HW vsMatlab) T=3101 Number of indexes misplaced: 1127
T=4301 Number of indexes misplaced: 935
Results Analysis • Only the time points provided by Generic were tested. • Generic test results are very close to the matlab test. • There is an error in indexes caused by rounding (see next slide).
Error source • There is a step in algorithm which adds (1/30K) to the random number. Matlab precision is better than Generic, so there is a misfit in some indexes. • Generic: • Matlab: • Error = • It’s the only error source, next slide will demonstrate it.
Error source demonstration T=201 Different value in Matlab and Generic Same value in Matlab and Generic Number of indexes misplaced: 829 Number of indexes misplaced: 0
Summary of the unit: Summary of the unit: Summary of the unit: Table 2: resampling characteristics Timing and Resources • HW resources (including the new controller) • HW resources (without the new controller) • Timing(without the new controller) • Timing(including the new controller)
Problems and Solutions • There was no written manual about Generic. • Trial and error solution. • Generic has several bugs (see Generic document). • Some were found by Ayal (D1127). • Some were found by us (and again, trial and error apprauch). • Some code passes Quartus simulation but didn’t work on board. • Several code confuguration were tried until it worked.
Summary • All the input vectors were successfully tested. • Error source were found (no HW bug, but accuracy difference between Generic and Matlab). • HW resources slightly increased (we still can manage it). • Because of a new controller and the Generic protocol frequency has been reduced (10 times), but it still meet real-time requirement.