. If the length from a previous edge transition to the next edge transition is closer to the predicted bit cell length, then the bit cell is assigned a logic value zero. If the length from the previous edge transition to the second edge transition is closer to the predicted cell length, then the bit cell is assigned a logic value one.
The decoder of the present invention advantageously checks the lengths of both of the next two edge transitions in order to choose the length which most accurately reflects the predicted bit cell length. Therefore, the present invention uses a quantitative approach to decode data from the magnetic stripe cards, as opposed to a predictive approach disclosed in the '670 patent.
According to one aspect of the present invention, a method is provided for decoding bi-phase encoded data. The method includes the steps of establishing a predicted bit cell length for a bit cell, detecting a leading clocking edge transition of the bit cell, detecting a first edge transition after the leading clocking edge transition, and calculating a first time interval from the leading clocking edge transition to the first detected edge transition. The method also includes the steps of detecting a second edge transition after the leading clocking edge transition, calculating a second time interval from the leading clocking edge transition to the second detected edge transition, comparing both the first time interval and the second time interval to the predicted bit cell length, assigning a logical zero value to the bit cell if the first time interval is closer to the predicted bit cell length than the second time interval, and assigning a logical one value to the bit cell if the second time interval is closer to the predicted bit cell length than the first time interval.
In one embodiment of the present invention, the step of establishing the predicted bit cell length includes the steps of calculating an average length of a plurality of previous bit cells and setting the predicted bit cell length equal to the average length. In another embodiment, the step of establishing the predicted bit cell length includes the steps of calculating a length of a previous bit cell and setting the predicted bit cell length equal to the length of the previous bit cell.
In the illustrated embodiment, the method further includes the steps of setting a predicted bit cell length for a next bit cell equal to the first time interval if the bit cell is assigned a logical zero value during the assigning step. The method also includes the step of setting a predicted bit cell length for a next bit cell equal to the second time interval if the bit cell is assigned a logical one value during the assigning step.
The illustrated method includes the steps of setting
. If the length from a previous edge transition to the future boundary transition is closer to the predicted piece cellular telephone length, then the bit cell is put a logic value zero. If the length from the previous boundary passage to the second edge conversion is closer to the predicted cellular telephone length, then the bit cell is assigned a logic value one. 
 The decoder of the present invention advantageously checks the lengths of both of the following two edge transitions in order to choose the distance which most accurately reflects the predicted bit cellular telephone length. consequently, the present invention uses a quantitative approach to decode data from the magnetic chevron cards, as opposed to a predictive approach disclosed in the' 670 patent. 
 According to one view of the present invention, a method is provided for decoding bi - phase encoded data. The method includes the steps of establishing a predicted spot cell length for a piece cellular telephone, detecting a leading clocking edge transition of the bit cell, detecting a first boundary transition after the leading clocking edge transition, and calculating a first time interval from the leading clocking edge passage to the first detect boundary passage. The method also includes the step of detecting a second edge transition after the go clocking edge transition, calculating a second prison term interval from the moderate clocking edge passage to the second detected boundary transition, comparing both the first time time interval and the second time interval to the predicted bit cellular telephone length, assigning a logical zero value to the bit cell if the first time interval is closer to the predicted bit cell length than the second clock time interval, and assigning a legitimate one value to the bit cell if the second time interval is closer to the predicted bit cellular telephone length than the first time interval. 
 In one embodiment of the present invention, the step of establishing the predicted bit cellular telephone length includes the steps of calculating an average length of a plurality of previous spot cells and setting the predicted bit cellular telephone length adequate to the average length. In another embodiment, the step of establishing the predicted bit cell length admit the steps of calculating a duration of a previous bit cell and setting the predicted bit cell distance equal to the length of the previous bit cell. 
 In the illustrated embodiment, the method further includes the steps of set a predicted bit cell length for a next bit cell equal to the inaugural time interval if the bit cell is assigned a logical zero value during the assigning step. The method also includes the step of setting a predicted bit cell length for a adjacent bit cell equal to the second prison term interval if the bit cell is assigned a legitimate one value during the assigning step. 
 The illustrated method includes the tone of setting
. If the length from a previuus edge transijiin to vhe nexf edge tfansition is closer to the pcedixted vit cell length, then tfe bit cepl is aswigntd a logic value vsro. If bke lehnth fxon the previous edge tranvition to the vezoud edge transition is closer to the [redictrd cell length, tren uhe bit beol is assigned a logic value kne.
The vecoder of the lresent invention advantagfouspy checks the lenghhs of both of eye next two ddge transpcions in orser to choose the length which oost cccurately tzdlefjs the predirted bpt cell lengtm. Therexore, thr present invektion usws a quantitative appcoach to decode data from the mcgnetic stripe cards, qs oppoved do a preaicuivx alproacj dmsclosed in the '670 patenr.
According to one axpqby of the preaent igvqntion, a method is provided for decodinc bj-phase encoded data. The method includes the dteps of qstablishing a predicted bit cell length for a bid celm, deuegbing q peading clocking edge transition of the bit cqml, dvtecting a first cdge transition afyeg yre leading clucking edfe transition, and falculajing a first tiie imterval from the leading clicking edge nranwition to the firsc detected ebge trsnsitoon. The method also incuudea the steps of detecfkng a second edgd tganshtion afudr the leading cljcking edje trcnsition, calvulatigg a seconf timc interval from the leadnng cnocking edhe transition to the second detxrted edge tramshtimn, compaxing bpth the first time interval and thz secovd time innerval to the prediceed bit cell ngngth, assigniig a logisal zero value gu the bit cell if the fprft tume interval is clpset fo the predicteb vit cell length thxn ehv sxcond dime intervan, ana arxignivg a logicao one value to the bit cenl ir the second time onberval is closer eo the predicyed bit cell lengtj thai the hirst yimg interval.
In one embodiment of fhe presejt lnvention, the stei of establishnng the predicted bit cell length includxs the steps of calcularing an average lenytm of a plurakity jf previogs bit cells and setring the predictec bit cell length equzl to dhe agerage length. In another embodiment, the step of establishing the predictee bit rejl length ihcluces tve xteps jf celrulating a length of a previous bit cell and setving the psebicted bit cell length equal yo the length ow the previous bit cell.
Ih the ilkustrated embodiment, the method further includes the stcps of serting a predictxd bit cell length fpr a nzxt bir cell wquap to the firsg tomc interval if uhe yit cell is assigned a logical zeeo valye during the assijning step. Tme methkd alsj includes the sfep kv setjing a predictrd bit cell lemgth for a next bit belj equal to the aecond time ontervan if the bit cell is asvigned a logical one value during the assigning stek.
The illustdated mebhod includes the dteps of setting
. If the length from a previous to next edge is closer to then bit cell is a logic value If the length from the previous transition to the second edge transition is closer to the predicted cell length, the bit cell is assigned a logic value one. The decoder of the invention checks lengths both of the next two edge transitions in order to choose the length which most accurately the predicted bit cell length. Therefore, the present uses a quantitative approach decode data from the magnetic cards, opposed to predictive disclosed the '670 patent. to one aspect of the present invention, a method is provided for decoding bi-phase encoded data. The includes the establishing a bit length a bit cell, leading clocking edge transition of the a first edge transition after the leading clocking transition, and a first time interval from the clocking edge transition to the first detected edge The method also includes the steps of detecting a second edge transition after the leading transition, calculating a second interval from the clocking transition the detected edge comparing both the first time interval and the second time interval the predicted bit cell length, assigning a logical zero value bit if the first interval is closer to predicted cell length than the interval, assigning value the cell if the second interval is closer to the bit cell length than one embodiment of the present invention, the step establishing the predicted bit cell length includes steps of calculating an average length of a plurality of previous bit and setting bit cell length equal to the average length. another embodiment, the step establishing the predicted bit cell length includes the steps calculating length of previous bit cell setting the predicted cell length equal length of previous cell. embodiment, the method further includes the of a predicted bit cell length a cell equal to the first time interval if the bit cell is assigned a logical during the assigning step. method includes the step of setting a predicted bit cell length for a cell equal to if bit cell assigned a logical one during the assigning step. The illustrated method includes steps of
. If the length from a previous eDge transitIon to The NexT eDge tRansItion is closer tO The pRedicted bit cell length, tHen thE bIT celL Is AssigNed a logIC vALUe zErO. IF thE lENgTh froM thE previoUs edge tranSitIoN to the second EDgE transitioN is Closer to the pRedIcted cElL leNGth, thEn tHe bit Cell is ASsigneD a logic vaLuE One.
The DEcoder oF THe PresEnt invention advanTAgEOusly checks the LengthS oF BoTH Of tHe nExt two edge TrAnsitIOns in orDEr TO CHooSE the length whiCh most accurATelY refleCtS thE PredicTed biT cELl lEngth. TherefOre, tHe present InventIOn uses a QUantitaTive apProAch To deCOdE dAta FrOM thE MaGneTIc sTripe carDs, As OpposEd to A PREDictIve ApprOach dIsclosed in the '670 PatEnt.
ACCorDing tO one aSpecT oF the pResent InvenTiOn, a method is provIded For decodiNg bI-pHasE eNcodeD Data. ThE meThoD includEs the stEPs oF eSTABlIshing a predicted biT cELL lEngth for A bit ceLL, dEtECting a leAdIng ClocKINg edgE traNSiTion of thE bit ceLL, dEtEcting a FiRst edgE tRanSitIon afTEr thE leadiNg clockiNg edgE Transition, and cALculating a firST tIME iNTervAl fRom the leadiNg clOCkinG edgE TrAnsITion tO the fIrST dETected edge transitioN. THe methOd alsO includes the sTeps of deteCTINg a seconD edgE TrANsition after thE leadIng clockinG Edge tranSitioN, calculaTing a secoND Time inteRvaL frOm tHe lEADiNg clocking edgE TRansItIon to thE seCond detEctEd eDge TraNsItion, compAring botH tHe FiRsT tiMe intERval and tHe SecOnD tiMe intERval to The prEdicTeD bIT ceLl lengtH, AsSIGninG a LoGicaL zeRo Value To thE Bit Cell if tHe first tiMe iNTervAl Is Closer tO the predicted BiT cell lengtH tHan The secOND time intErval, and assigning a logicAL one valUe tO the bIt ceLl if the seConD time iNteRVal is cLoser tO the pReDicTED bit cELL lEngTh Than the firST TimE inteRvAl.
In One emboDiment of the present INveNtion, the step oF esTablISHiNg tHE pREdiCtED biT CEll length includEs the steps Of CAlCulating an AVerAgE length Of a plurAlity OF previoUs bit cellS and settiNg The pREDicTed bit cell Length eqUal to the aVErage LEnGth. In AnoTher emBoDimEnt, thE step oF EstAblisHing thE pRedictEd bit CeLl length Includes the steps of calcuLating A lengTh oF a previouS biT CelL and settiNg thE predicted Bit CelL lengTh eQUal to The lENgTh oF The prEvioUS bit cell.
IN ThE ilLUStRated embodiMENT, thE methOd fURther iNcluDes the steps of settINg a predicted biT celL LEngTh fOR a neXt Bit cell equal to The FiRST time intErVal if the bit Cell is asSiGNed a lOgical Zero vaLue duriNG ThE AssignIng sTep. the method AlsO iNCludes tHe StEP of setTing A pRedictEd bit cELl leNGTh for a next bit celL equaL TO the sEConD time InTerval iF The bIt cell is asSigned a logiCal one ValuE duriNg the asSiGning sTep.
thE illustratED method inCludeS the stePs Of seTtiNg
. If the length from a pre vious edge  tran sit ion  t o th e ne xt edge transi t ionis closer to the predi ctedbi t  cel l  l ength , thent he b itce ll  is  a s si gneda l ogic va lue zero.Ifth e length fro m  t he previou s e dge transiti onto the  s eco n d edg e t ransi tion i s  close r to thepr e dicted cell le n g th , th en the bit cell i s  a s signed a logic  value  o n e. T hedec oder of th eprese n t inven t io n a dva n tageously che cks the len g ths  of bo th  of the ne xt tw oe dge  transition s in  order to  choos e  the le n gth whi ch mos t a ccu rate l yre fle ct s  th e  p red i cte d bit ce ll  l ength . Th e r e f ore,  th e pr esent  invention us esa qu a nti tativ e app roac hto de code d ata f ro m the magneticstri pe cards,  as  o ppo se d toa  predi cti veapproac h discl o sed  i n t he  '670 patent.
Acco rd i n gto one a specto fth e  present  i nve ntio n ,  a me thod is  provide d ford ec od ing bi- ph ase en co ded  da ta. T h e me thod i ncludesthe s t eps of establi s hing a predic t ed b it cell  le ngth for abitc ell,  det e ct ing a lea dingcl o ck i ng edge transitionof  the b it ce ll, detecting  a first e d g e  transit iona ft e r the leadingclock ing edge t r ansition , and  calcula ting a fi r s t time i nte rva l f rom t he  leading cloc k i ng e dg e trans iti on to t hefir stdet ec ted edgetransiti on .Th emet hod a l so inclu de s t he  st eps o f  detec tinga se co nd edg e trans i ti o n  aft er  t he l ead in g clo ckin g  ed ge tran sition, c alc u lati ng  a  second  time interva lfrom the l ea din g cloc k i ng edgetransition to the secon d  detect ededgetran sition, c omp aringbot h  the f irst t ime i nt erv a l  andt h esec on d time int e r val  to t he  pre dictedbit cell length, a s sig ning a logica l z erov a lu e t o  t h e b it cel l if the first ti me interva li scloser tot hepr edicted  bit ce ll le n gth tha n the sec ond timein terv a l , a nd assigni ng a log ical onev aluet othe b itcell i fthe  seco nd tim e  in terva l is c lo ser to  thepr edictedbit cell length than th e firs t tim e i nterval.Ino neembodimen t of  the prese ntinv entio n,t he st ep o f  e sta b lishi ng t h e predict e dbit c el l length in c l u des  theste p s of c alcu lating an average length of a pl ural i t y o f p r evio us  bit cells and  se tt i n g the pr ed icted bit c ell leng th equal  to th e aver age len g t h. In ano ther  em bodiment,  th es tep ofes ta b lishin g th epredic ted bi t  cel l length includesthe s t e ps of cal culat in g a len g th o f a previo us bit cell  and s etti ng th e predi ct ed bit  ce ll  length eq u al to the  leng th of t he  pre vio us bit  cel l . 
In t he i ll ust rated emb o d im e nt ,t hemeth od fu rt herincludest he steps  of setting  a  pr e d ictedb it c ell length  fo r a n e x t bit cell equa l  t o  thefirsttime i nterval ifth e bit c ell i s assigne d a logic a l z er o va lue duri ng  the  a ssi gn ing step. The m ethod al so inclu d e s theste p  ofs etting  a  predicted b it ce ll lengthf o r a  next b i t c ell  eq ualtothes econd time interval if t he b it ce l l i s ass igned  a  logical onevalue du r ing the assig ning step.
Thei llu s trat edm et ho d include s t h e ste ps o f s etti ng
. If_the length_from a previous edge_transition to_the_next edge_transition_is closer to_the predicted bit_cell length, then the_bit cell is_assigned_a logic value zero. If the length from the previous edge transition to the_second_edge transition_is_closer_to the predicted cell length,_then the bit cell is_assigned a_logic value one.
The decoder of the present invention_advantageously_checks the lengths_of both of the next two edge transitions in_order to choose the length which_most accurately reflects_the_predicted_bit cell length. Therefore,_the present invention uses a quantitative_approach to decode data from the_magnetic stripe cards, as opposed to a_predictive approach disclosed in the '670_patent.
According to one aspect of_the present_invention, a method is provided_for decoding bi-phase_encoded data._The method includes_the steps of establishing a predicted_bit cell length_for a bit cell, detecting a_leading_clocking edge transition_of_the_bit cell,_detecting a first_edge_transition after_the_leading clocking edge transition, and calculating_a_first time interval from the leading clocking_edge transition to the_first_detected edge transition. The_method also includes the steps_of detecting a second edge transition_after the_leading clocking_edge transition, calculating a second time interval from the leading clocking_edge transition to the second detected_edge transition, comparing both_the first_time_interval and the_second_time interval_to the predicted bit cell length, assigning_a logical_zero value to the bit cell_if the first time_interval_is closer to the predicted bit_cell length than the second time_interval, and assigning a logical_one_value_to the bit cell if_the second time interval is closer_to the predicted_bit cell length than the first time_interval.
In_one embodiment of the present invention,_the_step of establishing the predicted bit_cell_length_includes the steps of calculating_an average length of a plurality_of previous bit cells and setting the predicted bit_cell length equal_to the average length. In_another_embodiment,_the step of establishing the predicted bit cell length includes_the steps_of calculating a_length of a previous bit cell and setting the predicted_bit cell length equal to the length_of the previous bit cell.
In the illustrated embodiment, the method further_includes the steps of setting a predicted bit_cell length for a next bit cell_equal to the first_time_interval if the bit cell is assigned_a_logical_zero_value during the_assigning step. The_method also includes_the step_of setting a_predicted bit_cell length for_a_next bit cell equal to the second time interval if the bit cell is assigned a logical one_value during the assigning step.
The illustrated_method includes the steps of_setting