SE525930C2 - Anordning för tidsstämpling av referenshändelser - Google Patents
Anordning för tidsstämpling av referenshändelserInfo
- Publication number
- SE525930C2 SE525930C2 SE0401922A SE0401922A SE525930C2 SE 525930 C2 SE525930 C2 SE 525930C2 SE 0401922 A SE0401922 A SE 0401922A SE 0401922 A SE0401922 A SE 0401922A SE 525930 C2 SE525930 C2 SE 525930C2
- Authority
- SE
- Sweden
- Prior art keywords
- time
- module
- unit
- event
- events
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0421—Multiprocessor system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0644—External master-clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Multi Processors (AREA)
- Electric Clocks (AREA)
Description
l5 20 OO O l Ofibb O I o u ß)ou lJl I o O I I I OII IQ .ÛÛÛ Qfiflfi I! Q nl II b; n 0 00 o 0 0 O O I J. I I '" c nu G IÜOI .I 0 0 u 0 via för analysverktyget anpassad hårdvara som innefattar en gemensam klockfunlction för tidstämpling. Produkten "Sync Box XL" från Vector Informatik GmbH är ett exempel på teknikens ståndpunkt. Här har man en speciell synkroniseríngsledning för att generera synkronisationspulser. Vid mottagning av en hög-till-lågflank på denna ledning tidstämplar varje denna händelse. Förutom att denna enhet ansluten speciellt lösning kräver ett hårdvaruarrangemang måste också säkerställas att inte elektromagnetiska störningar ger falska tidsangivelser. Det föreligger således ett behov att på systemnivå kunna få olika moduler att kunna samverka inom givna tidsramar utan ett gemensamt protokoll för tidsynkronisering och ett behov att kunna få information från olika moduler tidsrelaterade till varandra utan speciell hårdvara eller förbindelser för behandling i en dator utan realtidsoperativsystem. Den föreslagna läsningen löser båda problemen.
Det föreligger även behov av att kunna eliminera arrangemang för synkronisering av lokal klocka till annan klocka, dvs. behov av anordning för att eliminera synkroniseringsbehov vid klocka i en modul till klocka i annan modul. Dessutom föreligger önskemål om ökad individualisering och utökade möjligheter att relationsställa tider och händelser. Förbindelser skall kunna samutnytt las till referenshändelser och olika klockor. Dessutom föreligger önskemål om ökad handlingsfriliet och kunna åstadkomma olika lösningar på aktuellt problem. Global tid skall kunna utnyttjas, liksom fristående arbetande klockor. Det skall även bemärkas att tiden under justering av klockor kan systemfunktionen inte utnyttjas.
Det som huvudsakligen kan anses kännetecknande för uppfinningen är att man på systemnivå identifierar händelser som detekteras av två eller flera moduler inom en given tidsmarginal och utnyttjar tidstämpling av dessa händelser för att i en eller flera omräkningsenheter omräkna respektive moduls lokala tidsdomän till en för systemets funktion lämplig tidsdomän för samordning eller övervakning av händelser eller grupper av händelser. PCT/SE2003/00l736 behandlar bland annat hur en sådan analys kan utföras. Kännedomen om tidsrelationen mellan den identifierade eller de identifierade händelserna samt de detekterande enhetemas möjligheter att tillföra tidinfonnation utnyttjas av en tidöversättare för att genom beräkning och kännedom om mottagande enheters egenskaper översätta tidinfonnation från en enhet till en eller flera 10 15 20 B) klv mottagande enheter. Tidinformationen kan vara såväl direkt i form av tidstämpling av meddelanden eller händelser som indirekt i form av inställningsinformation till enheter med anpassningsbara lokala klockor. Tidöversättaren kan kontinuerligt övervaka kvaliteten på tidsangivelser från anslutna enheter. Ett kännetecken är således att processen är asymmetrisk.
Samverkande moduler behöver inte stå i direkt förbindelse med varandra och behöver inte ha ett gemensamt protokoll för tidsynkronisering för att systemet skall kunna arbeta i realtid eller för att ett övervakande system skall kunna tidsrelatera händelser i systemet gentemot en för övervakningen lämplig tidsbas.
Det som mera konkret kännetecknar uppfinningen är bl.a. att modulen innefattar minnesorgan för lagring av modulens tidstämplingar hänförbara till de av modulen noterade händelsema och de bland dessa utvalda referenshändelsema samt att modulen innefattar en mikroprocessor som alstrar till modulens lagrade tidstämplingar relaterade meddelanden. Modulen är vidare anordnad att via en eller flera förbindelser översända respektive alstrade meddelanden till en tidomräkningsenhet. Tidomräkningsenheten är enligt uppfinningen anordnad att efter eventuell mellanlagring relationsställa modulens respektive noterade referenshändelse och effektuerade tidstämpling till i enheten ytterligare införd eller befintlig referenshändelse och tidstämpling.
Vidareutvecklingar av uppfinningstanken framgår av de i nedanstående angivna underkraven.
En för närvarande föreslagen utföringsform av en anordning som uppvisar de för uppfinningen signifikativa särdrageri skall beskrivas i nedanstående under samtidig hänvisning till bifogade ritningar där figur I i schemaform och principiellt anger ett övervakningssytem i form av ett analysverktygsarrangemang, figur 2A i principschemaforrn och principiellt visar ett system med moduler, 10 15 20 figur 3 i principschemaform och detaljerat visar ett system där USB i protokollet SOF-paket utnyttjas som referenshändelser för tidsrelatering, figur 4 i principschemaforrn/blockschemaforrn visar ett exemplel på tidöversättningsenhet där modulen använder Ethemet för kommunikationen, och figur 5 i princip- och blockschemaform visar en uppbyggnad med moduler, klockfimktioner, captureregister och händelsedetektor.
Figur 1 visar ett övervakningssystem i form av ett analysverktygsarrangemang V1 som skall analysera systemen S1 och S2 och deras samverkan. Verktyget eller verktygsarrangemanget består av ett antal moduler eller enheter som schematiskt visas i figur 1 där enhet 100, grundenheten, innefattar en enhet lämpad för kommunikation med människan och med kringutrustning och utrustad med en USB-masterport, till exempel en PCav konventionellt slag eller en PDA med USB OTG (On The Go). Till enheten 100 är ansluten eller ansluts i en utföringsform en enhet 101, som utgör en USB-hub. I många fall är en sådan sammanbyggd med PCn. Anslutningen är utförd via en anslutning102 av gängse typ för USB. Enheten 101 har ett antal kanaler, vanligtvis fyra eller sju, över vilka PCns USB-kanals bandbredd fördelas. Till varje kanal kan anslutas en interfaceenhet som kan anslutas till målsystemets kommunikationstörbindelse. Denna enhet innefattar en míkroprocessor med erforderlig kringutrustning samt programvara för att kunna ta emot meddelanden från och eventuellt sända meddelanden till kommunikationsförbindelsen enligt förbindelsens protokoll. I figuren visas schematiskt två målsyrstem, S1 och S2, som sinsemellan är sammankopplade via enheten G1 som medger samverkan mellan systemen, exempelvis en gateway eller masterenhet. S1 arbetar med I protokollet P1 och SI! med protokollet P2, exempelvis LIN resp. CAN med tillhörande HLP (Higher LayersProtocol). PCn ansluts till S1 via förbindelsen 102, protokollomvandlarenheten USB till/från P1 103 och anslutningen 103' till systemförbindelsebussen Bl och till S2 via förbindelsen 102, protokollomvandlarenheten USB till/från P2 104 och anslutningen 104' till 10 15 20 :'": 30 systemförbindelsebussen B2. Ytterligare enheter av speciell karaktär för att tillföra information som inte är tillgänglig på målsystemen kan anslutas. Detta exemplifieras med enheten 105 som kan ta emot GPS-information. Grundenheten 100 innehåller en fór ändamålet ägnad databas 106, en därmed arbetande applikation 107, samt ett applikationsgränssnitt (API) med erforderliga DLLer 101, 103, 104 och 105. Med databasedition/inställningsprogrammet 106' kan användaren redigera databasen och ange hur arbetande mot enhetema värden i denna skall tolkas och representeras på bildskärmen i verktyget samt hur de olika interfaceenhetema skall inställas. lnmatning av tolkningsdata kan ske direkt från PC:s tangentbord eller från en konfigureringsfil. Som exempel på databaseditor kan nämnas ”Navigator Database Editor” och inställningsprogram "Kvaser Configurator" från Kvaser AB, SE. Applikationen är skriven i ett vanligt förekommande språk, exempelvis Delphi, C++ eller Visual Basic. Exempel på en applikation är Kvaser Navigator och på API CANlib från Kvaser AB. Uppbyggnaden visas schematiskt med 108. l den ovan beskrivna uppställningen används USB för att beskriva uppfinningen. I en USB- uppkoppling till flera kanaler via en HUB genereras en Start Of Frame bitsekvens från PCns USB som fortplantar sig genom HUBen till anslutna enheter och detekteras av dessa. Detta utnyttjas som en referenshändelse. Ett SOF-paket översändes normalt och har sekvensnummer, vilket underlättar korrekt association av tidstämpel till referenshändelse. USB paketen propagerar ut i ett USB-system på ett definierat sätt och en USBvärd_(host) kan ses som en referenshändelsegenerator i en egen tidsdomän, skild från andra tidsdomäner, exempelvis den domän en applikation under Windows arbetar i, i samma PC där USB hosten verkar.
Referenshändelsema kan utsändas till alla som ingår i samma USB-arrangemang, dvs. alla enheter kan avlyssna samma SOF-paket samtidigt. Med samtidigt avses här max 50-100 ns jitter i detektionen för samtliga enheter plus upp till ett par hundra ns konstanta fórdröjningar. 1 ett USB HS (High Speed) arrangemang kan maximal fördröjning vara 26 ns i kabeln, 4 ns i ”hub trace”, 36 hs-bitar i hubelektroniken i max 5 nivåer plus 30 ns för att koppla in den sista enheten, totalt 530 ns. Tidsjittret för SOF i en l-lS-fórbindelse pga. USB protokollet kan vara maximalt 5 hs-bitar per hub och max 5 hubbar kan anslutas i ett träd, vilket ger en maximal osäkerhet av 25 hs-bitar, vilket motsvarar ca 50 ns tidsonogranhet för utbredningen av en SOF genom ett USB- 10 l5 20 0 NJ (Il 00 00 00 I O I I I I 000 0 0 0 0 0 0 000 00 0000 0000 00 0 0 0 0 0 0 00 b) G träd.
Respektive enhet ansluten tilll0l är utrustad med en lokal klocka, 103', 10Å', 105' och tidpunkten för detekteringen av SOF registreras. Varje ansluten enhet skickar via USB upp sitt klockvärde till PCn och ett program i denna kan räkna om respektive tid till en gemensam tidsbas. Applikationer: kan därmed tidsmässigt relatera senare såväl som äldre händelser som tidstämplas av respektive ansluten interfaceenhet till varandra. Denna metod liknar den i EP 0570 557 beskrivna, men skiljer sig på en väsentlig punkt: Tidinformationen går endast en väg och mottagande enhet sänder inte sin tid tillbaka och behöver således inte relatera tidsmeddelanden till någon egen klocka. I det beskrivna fallet ovan utnyttjas ingen klocka över huvud taget i PCn, vilket löser ett välkänt problem för analysverktyg som arbetar under protokoll med dåliga realtidsegenskaper som exempelvis Windows. Genom att PCn arbetar som tidöversättare och inte är beroende av en egen klocka för detta, så är noggrannheten enbart beroende av de anslutna interfaceenhetemas noggrannhet vid tidstämplingen av SOF. Andra protokoll än USB kan användas och referenshändelser behöver inte vara bundna till att uppträda på kommunikationsfötbindelsen.
I många fall är det önskvärt att kunna referera inträffade händelser till en för många system gemensam tidsbas. En mycket generell tidsbas är UTC som kan nås via en GPSförbindelse. I figur 1 visas en GPSmodul 105 som är ansluten till PCn 100 via HUBen 102. Modulen 105 mottager UTCtid och tillhörande epochsignal från GPS och tidstämplar mottagandet enligt tiden för den lokala klockan 105'. Den tidstämplar också SOF i USB. PCn erhåller således både tidstämpling av SOF, en referenshändelse, och mottagandet av UTC tid, en händelse, tidstämplat med en och samma klocka 105'. PCn kan därmed relatera SOF till UTC tid och då räkna om tider enligt 105' till UTC ticl och göra detsamma för 103' och 104'. 1 figur 2 visas ett system 201 bestående av modulema 202 - 205 samt ytterligare moduler, som inte berör uppfinningen, symboliserade med 206. l detta fall har systemkonstruktören funnit att modulema 202, 203, 2104 och 205 passar väl in så när som på tidsynkoronisationen. 202 och 205 är konstruerade enligt ett tidsynkroniseringsprotokoll 206 baserat på idéer enligt SE 466 123, 10 15 20 OO O O I I O. I 0 000 0 0 0000 0 0 0 0 0 000 00 0000 0000 IQ 'Jl q- 0000 .. oc coon I - . oo : z . g .o 0 ,. .
. I j. ÜÜÜ I canon o .:: a 0 dvs. synkronisering av respektive lokal klocka 202' och 205' till en av modulema som utses till master. 203 och 204 är konstruerade enligt ett tidsynkroniseringsprotokoll 207 baserat på idéer enligt EP 0570 557 , dvs. lokal omräkning av respektive lokal klocka 203' och 204' till en gemensam referenstid. Protokollen 206 och 207 innehåller avsevärda detaljskillnader eftersom de är utvecklade oberoende av varandra. Systemkonstruktören inför en egen modul 208 í systemet som har en tidomrëkningsfunktion 209 enligt denna uppfinning. Denna utsänder ett meddelande 210 som mottages och tidstämplas av modulema 202 - 205. Meddelandet är en referenshändelse enligt uppfinningen. Modulen 209 efterfrågar respektive modul 202 - 205 tidpunkten för meddelandets 210 mottagande. Översättningsfunktionen kan därmed räkna om respektive moduls tid till en jämförelse tid. Eftersom systemkonstruktören valt modulema har han detaljerad kännedom om protokollen och kan därmed dels korrigera för eventuella protokollsspecifika tidsawíkelser som uppkommer vid tidstämplingen av meddelandet 210 och dels införa metoder att ensa de olika modulemas tider. Exempelvis kan ett tidsmeddelande från modulen 205 enligt protokollet 206 sättas upp som "a time-registering start signal applied to the data bus" för modulema 203 och 204 enligt protokollet 206. När modulen 209 erhåller tidsmeddelandet ompackas och eventuell justeras tidsvärdet till ett meddelande enligt protokollet 206 och utsändes. På så sätt kan modulema 203 och 204 ensas med 205 trots att de följer olika protokoll. 205 och 2022 ensas med det gemensamma protokollet 207. Därmed är alla modulema 202 - 205 ensade mot en gemensam tid tack vare modulen 209 som saknar klocka.
Metoden kan kaskaderas genom att tillföra 209 en lokal klocka 211, en förbindelse 212 till en ytterligare enhet eller system 213, exempelvis ett tidigare beskrivet övervakningssystem, och erforderlig funktionalitet 214' och 215. Den lokala klockan 211 används för att tidstämpla referenshändelser från 213. Den kombinerade tidöversättningsfunktionen 209/214 översätter all tidinformation från systemet 201 till lokal tid enligt klockan 2ll vid kommunikation med 2l3. 213 kan därmed på ett enkelt sätt tidsrelaterad information från andra till sig anslutna enheter och system, symboliserade med 2l6 med hjälp av uppfinningen.
Ett system kan innehålla flera tidöverättare som betjänar olika grupper av moduler. En tidöversättare kan placeras på valfri plats i systemet, men placering i en gemensam punkt är 10 15 20 o coca: o o con co F) KII n I 0 u 000 IQ 0000 I ..\..j .\,J fördelaktig från effekt ivitetssynpunkt. Tidöversättare kan utföra översättning från en enhet till en annan via en vald referenstid altemativt enligt principen alla-till-alla, dvs. direkt från varje enhet till varje annan enhet. En logisk översättningsmatris kan därvid utnyttjas. En matris som kan hålla reda på hur översättning snabbt skall ske från alla-till-alla kan dock anta stora dimensioner och vara resurskrävande att hålla uppdaterad (komplexiteten skalar kvadratiskt), men ger som resultat snabbare översättningar. Tidöversättningen är även möjlig att utföra enbart genom att hålla referenstidstämplarna uppdaterade, men detta resulterar i mera arbete per översättning. Översättningsenheten kan föra statistik över hur bra relaterade klockoma är anordnade och skicka med denna information som parameter jämte mätvärdet. Onoggrannheten kan beräknas och medsändas varje mätvärde. Översättningsfunktionen kan utföras med större träffsäkerhet i efterhand, dvs. när ytterligare ett referensmeddelande har utbytts. I anslutning härtill kan exempelvis derivatan för innevarande period användas i stället för att anta att det gäller samma derivata som föregående period. Mera generellt uttryckt utnyttjas interpolation istället för extrapolation för angivelse av ett värde. Denna möjlighet är av speciellt stor betydelse vid analys och verifiering av ett systems funktion. Kort och koncíst kan nämnas att varje enhet/modul som har beretts tillgång till referenshändelsers inträffande i olika tidsdomäner kan anordnas att utföra översättning tidsdomänema emellan vare sig enhetema/modulema själva ingår i/representerar någon av nämnda domäner eller inte. För att inga ambivalenser ska uppstå om vilken tidsdomän en viss angivelse tillhör bör protokoll upprättas som exempelvis anger vem som översätter vad och i vilken mån en enhets inkommande/utgående angivelser ska anses tillhöra sändande och/eller mottagande enhets tidsdomän. Översättningsfunktionen kan ske genom att offset mellan den första och andra tiden adderas till den tid som skall översättas. Med denna metod behövs endast liten beräkningskraft för respektive översättning. Företrädesvis sker synkronisering/relationsställning ofta med denna metod för att minimera inverkan av respektive klockas drift i förhållande till de övriga klockoma. Översâttningen kan även åstadkommas genom både offset och fast frekvensfelskompensation (driltkompensation). Översättning AX till B, (new och old syftar på referenstidstämplar) kan ske enligt: 10 15 20 r* r: ff (e. ~ t: Box = Blew + (Blew '_ B(-ld)*(AX ' Anei-d/(Anew ' Auld) Givet en dator med begränsad upplösning och/eller beräkningsnoggrannhet och givet att tidema A och B redan är skalade till att gå ungefär lika (derivatan dem emellan ungefär ett) kan följande metod ge bättre resultat: i Box = Blew_( Ax " Anm) + ' Anew) _ (Bald " Auld))*(Ax ' Anew»/(Anew ' Auld) Båda metodema är analytiskt sett ekvivalenta och baseras på linjär regression. Då beräkning sker med dator måste diskretiserade värden användas som medför begränsade resurser för representation vilket medfir att ordningsföljden är viktig. Beaktande måste oavsett metod tas så att inte beräkningen flödar över/trunkeras på ett oönskat/opredilcterat sätt. Den senare metoden kan vara ett sätt att underlätta detta.
I figur 3 visas ett detaljerat utföringsexempel på hur USB-protokollets SOF-paket kan utnyttjas som referenshändelse för tidsrelatering i enlighet med uppfinningen. I systemet ingår ett antal ' enheter 603, 603', 603”. Dessa är kopplade via en eller flera USB-hubbar 602 tilllen dator 601 exempelvis en PC. 60l sänder som sig bör enligt USB-protokollet ut SOF-paket med jämna mellanrum. Ett Start-Of-Frame-paket, SOF, innehåller typiskt ett Start-Of-Paket-/Sync-fált 691, ett identifikationsfált 692, identifikationsfáltet inverterat 693, framenummer 694, CRC-fält 695 och ett avslutande End-Of-Paket-fïált 696. 603 innehåller en USB-kontroller 631 som i sin tur innehåller en anordning 632 avsedd att detektera SOF-paket 651. Detektionema hos 632 är anordnade att trigga en avläsning av klockan 634 till ett capture-register 633. Den så sparade tiden kallas hädanefter Tref. Både klocka och capture-register är låsbara av mikroprocessom 635.
Både 633 och 634 skulle med fördel kunna vara inbyggda i 635. I minnet 636 finns lagrat programkod som exempelvis körs varje gång 635 tagit emot ett SOF-paket från 631. Programmet kan t ex läsa av frame-numret på SOF-paketen och beroende på krav och förutsättningar alltid eller med ett visst intervall läsa ut Tref från 633 och skicka i ett nytt USB-paket 652 med hjälp av 631 via 602 till 60l. 603 innehåller även anpassningselektronik 637 till en CAN-kontroller 638 som i sin tur innehåller en precis detektionsmekanism 638' för när CAN-meddelanden 10 15 20 4 00 bl inte 0 10 börjar. Detektionsmekanismen triggar också den ett capture-register 639 som då läser av 634.
Den tidstämpel som härvid finns i 639 kan tillsammans med det meddelande somtriggade avläsningen skickas i ett paket 653 till 601. Paketet typen 653 kan t ex bestå av USB overhead, 642 och 642””, data, 642', från CAN-kontrollem 638, en tidstämpel, 642”, av när datat 642' togs emot av 638, samt eventuellt mer data med tillhörande tidstämplar, 642”. Pakettypen 652 består förutom den overhead, 641, 641””, som USB tillför av en Tref, 6412 sekvensnumret på den SOF som gav upphov till dito Tref, 64l”, samt eventuellt fler Trefzar med tillhörande sekvensnummer och/eller annan data, 64l'”. 601 är anordnad med en USB-host 671. Som redan nämntsskickar 671 med jämna mellanmm SOF-paket 651 i enlighet med USB-protokollet. När datom tar emot paket av typen 652 från dess anslutna enheter 603, 603' etc. via USB-hosten 671 kan dessa läsas och behandlas av processom 672 med hjälp av programkod i minnet 673. I processom körs bland armat programkod enligt det logiska dataflödesschemat i 680. 681 representerar här de USB-drivrutiner som utgör en del av operativsystemet som 601 nyttjar.
Dessa håller bl.a. koll på den fysiska strukturen hos USA-systemet och läser ut datapaket från kontrollern 671. Om dessa paket härrör från någon av enhetema 603, 603' etc. skickas de via tidhanteringsfunktione ma 682 vidare till de därför avsedda drivrutinema 683. Om meddelandena är paket av typen 652 plockas informationen 652' ur dem, dvs. de s.k. Trefzama 64l', dito sekvensnummer 641” samt eventuell övrig data 641m, och tas de om hand av tidhanteringsfimktione ma 682 som är en del av 683. Systemet ärju tänkt att användas också och det representeras här av en användampplikation 685 som logiskt kommunicerar direkt med enhetema 603 etc. men praktiskt sker det via det allmänt kända gränssnittet 684 som just tillhandahåller alla de funktioner som en användare kan nyttja i enhetema. Gränssnittet 684 kopplar alltså samman programmet 685 med enhetemas drivrutiner 683. Gränssnittet presenterar t ex om så önskas alla tidstämplar från de olika enhetema utifrån en och samma tidsaxel, vilket sker med hjälp av tidhanteringsfunktionerna 682 helt i uppfinningens anda. I figuren är detta exemplifierat med meddelandet 653 skickat från en enhet 603 till 601. Enhet 671 avkodar paketet och skickar vidare innehållet, 6532 till processom 672 för vidare behandling.
Eitempelvis ser enhet 681 att meddelandet härstammar från en enhet av typen 603 och skickar vidare det till de därför avsedda drivrutinema 683. Tidhanteringsfunktionema 682 i 683 ser att meddelandet innehåller en tidstämpel 642” i en lokal enhets tid varför den översätter densamma OO' ecco av co U 0 0 0 I 10 15 20 II I 0000 0 I 00 k) UI ll till en lämplig tid enligt exempelvis nedanstående tillvägagångssätt. Den översatta tiden, 6432 och eventuellt uträknad onoggranheten, 643”, presenteras tillsammans med data, 643, (dvs. 642' eventuellt vidare behandlat av 683) och eventuell annan info, 643m, sammantaget '653”, för applikationen 685 via gränssnittet.
Tidhanteringsfunktionerna 682 kan delas in i en del som sparar och hanterar en historik, 682°, av Tref:ar med dito sekvensnummer som kommer från paketen 652' samt info om ursprungsenhet och håller översättningsfunktioner uppdaterade och en andra del som utför själva översättningama. För att kunna utföra direktöversättning mellan all enheters tider kan man nyttja en slags logisk översáittningsmatris 686. För varje par av enheter 687, 687' etc. vars tid ska kunna direktöversättas finns en lista 688 med senaste matchade par av Tref:ar 6882 688” etc.
Dessa Tref:ar 688' etc. kan sen utnyttjas för att utföra en översättning mellan ingående enheters tider exempelvis enligt: Box = Blew + (Blew _ B(~ld)*(Ax "' (Anew- Auld) alt Box = Blew_( Ax ' Arten) + " Anew) _ (Bald ' Auld))*(Ax ' (Anew ' Auld) där A, ska översättas till B, med hjälp av de matchade Tref-paren (Amw, BW) och (Acid, Bow) som alltså kan motsvaras av 688' och 688m. Som synes finns det en del beräkningar som kan utföras på förhand exempelvis (Bmw - Bord) och (Am, - Acid) i första alternativet och (BW - AW) och (Bow - Aoid) etc. i andra altemativet. Dylika beräkningar kan som sagt med fördel beräknas på förhand och sparas på därför avsedd plats 689 för att förenkla och därmed snabba upp kommande översättningar. Även ifrågavarande statistisk onoggrannhet kan beräknas och sparas på därför avsedd plats 689”. Det går givetvis att göra en väldigt komplex och uttömmande uppskattning av eventuell onoggrannhet baserat på hela historiken av matchade Tref-par, men för att ge ett enkelt belysande exempel kan exempelvis en av Trefzama i ett par 688' översättas med hjälp av två andra par i listan 688. Den översatta Trefzen jämförs sen med den faktiska Trefzen i nämnt par. Skillnaden dem emellan kan ses som ett enkelt mått på onoggranhet/olinjäritet.
En annan variant på översättningsmatrisen kan vara att införa/låta en rad/kolumn representera en virtuell tid baserat exempelvis på någon sammanvägning av lämpliga övriga tider. r- n *f x \.).. _. . *l »J q u son n.. va: g .n.: :ng 10:. , z .o :CU '9 ::o:oon O: 0 g. g: Q" ', ': 'g-ø e .u z 0.; , nn u Q I 12 En enklare variant av översättningsmatrisen är specialfallet att endast en eller ett fåtal rader/kolumner i matrisen hålls uppdaterad på ovan nämnda vis. Då varje rad/kolumn ju kan ge info om hur relationsställande kan tillgå från och till en viss tid kan denna tid utnyttjas som en 5 slags master-/mellan-tid i översättning mellan två andra tider. Detta kan innebära ett mindre minnes- och/eller resurskrävande altemativ till att hålla hela matrisen uppdaterad till priset av något mer komplicerade översättningar och/eller eventuellt större onoggranhet. Översättningsfunktionen 682 kan brytas ned i ett antal delmoment som dock inte alla lO nödvändigtvis måste utföras i varje enhet anordnad med funktionen. Vissa moment kan utföras av en enhet som sen skickar den infonnationen till en annan enhet som då slipper utföra närnnda moment. Exempel på delmoment: l. är att samla in och hålla reda på tidstämplade referensftmktionsutövanden för varje tid som ska kunna översättas. 15 2. är att bland insamlade tidstämplar hitta tidstämplar från olika enheter av samma i referensfunktionsutövande. 3. är att utifrån dessa matchade tidstämplar fastställa hur en eventuell översättning ska ske beroende på givna förutsättningar. 4. kan vara att utifrån matchade tidstämplar avgöra hur stabil/noggrann en viss tid kan anses 20 vara, exempelvis med hjälp av statistik. 5. kan vara att om en tid anses för instabil/onoggrann begära mer frekventa tidstämplade referensfunktic-nsutövanden från systemet. 6. är attuttöra översättningar när så begärs.
OI I I IÛOO I I I I OI _ _25 l utföringsexemplet har USB-protokollet använts som demonstration och referenshändelsen överförs på USB-förbindelsen. Uppfmningen är inte beroende av USB-protokollet utan andra íj-'š protokoll kan användas. Referenshändelsen behöver heller inte vara knuten till kommunikationen. För att utnyttja uppfinningen behöver bara följande förutsättningar vara uppfyllda: °";:3o s 10 15 20 ß 30 c C00 n .CCI one Û I O o 13 Översättningsenheten skall kunna kommunicera med övriga enheter Respektive övriga enheter har vardera en lokal klocka En eller flera referenshändelser som utväljes av systemkonstruktören Övriga enheter kan detektera någon referenshändelse Övriga enheter kan relatera en referenshändelse till sin lokala klocka .°*$^PE'°!°1" Respektive övrig enhet kan meddela översättningsenheten tidpunkten för detekteringen av en referenshändelse 7. Översättningsenheten kan, med kännedom om de utvalda referenshändelsemas inbördes tidsrelationer, vilka övriga enheter som detekterar respektive referenshändelse och respektive övrig enhets intema tidstäplingsfunktion, omräkna en övrig enhets tid till en annan övrig enhets tid och vice versa, altemativt till en annan, godtycklig tidsbas.
I figur 4 visas ett utforingsexempel på en tidöversättare där modulenhetema använder Ethemet för kommunikation. Det som främst ska klargöras i och med följande beskrivning är det faktum att alla enheter inte nödvändigtvis måste tidstämpla exakt samma referenshändelse under ñrutsättning att tiden mellan de referenshändelser som nyttjas är känd. Ethemet används som grund för många olika kommunikationsprotokoll. På transceivernivå detekteras bitar på förbindelsen och på controllemivå bitmönster som skiljer ut Ethemetmeddelanden. När controllem konstaterat att ett korrekt meddelande enligt Ethemetprotokollet har mottagits, så indikeras detta till nästa protokollsnivå, exempelvis TCP/IP, som avgör hur meddelandet senare skall behandlas, exempelvis om meddelandet är adresserat till ifrågavarande modul, om det skall kombineras med andra meddelande till en til, etc. Beroende på kommunikationselektronikens konstruktion så genereras en elektrisk signal vid konstaterandet av ett Ethernet-meddelande eller vid ett senare tillfälle i sekvensen. Denna signal kan användas att trigga en avläsning av den lokala klockan och användas som referenshändelse.
I systemet ingår modulenhetema 410, 420 och 430 som vardera är utrustade med en lokal klocka 4l l, 42l och 431. Av en anledning som modulema inte nödvändigtvis känner till tidstärihplar de både inkommande och utgående meddelanden exempelvis 470-473 och skickar på begäran information baserad pá tidstämplama till enheten 410, som också den tidstämplar all trafik in och 10 15 20 'so o o I o oo 14 ut. Tidöversättaren 400 kan så med hjälp av dels de tidstämplar modulen 4l0 samlat in från övriga moduler samt -1l0's egna tidstämplar direkt relatera två godtyckliga klockor i systemet.
Tidöversättaren 400 kan vara uppkopplad för att kommunicera direkt med 4l0 på en separat förbindelse, alternativt på samma förbindelse som övriga enheter. För att exempelvis relatera klockan i 420 med den i 430 kan följande metod användas av 400: Ett meddelande 470 från 410 till 420 får tidstämpeln 470a av 410 och 470b av 420. På samma sätt får ett meddelande 472 från 410 till 430 tidstämpeln 472a av 4l0 och 472b av 430. Dessa två meddelande är naturligtvis separata händelser, men kan också ses som en gemensam referenshändelse 'för 420 och 430 med känd tid mellan respektive enhets mottagande, dvs. 472a minus 470a. Referenstidstämpelparet blir alltså: (470b, 472b - (412a - 470a» Meddelandet 470 avsänds av 4l0 till 420 och tidstämlas 470a enligt klockan 471. Samma meddelande tidstämplas av 420 enligt klockan 421 till 470b. Detta tidsvärde skickas till 410 i meddelandet 471. Samma procedur tillämpas mot modulen 430 med meddelandet 472 och returmeddelandet 473 som medför tidstämplingen av 472 enligt klockan 431. 4l0 “sänder tidstämplama 470a och 470b med meddelandet 474 och 472a och 472b med 475 på förbindelsen 480. Då både 470a och 472a är angivna i enhet 4l0's lokala tid kan det vara lämpligt att dessa först översättas till 430's lokala tid i det givna exemplet. Det så erhållna referenstidparet kan därefter utnyttjas i enlighet med i detta patent beskrivna metoder för att relatera 420's lokala tid med den i 430. Det påpekas också att kommunikationsvägen till 4l0 kan varieras på mångahanda sätt inom uppfinningstanken. Det väsentliga är att enheten 400 erhåller informationen 470a, 470b, 472a och 472b för att kunna utföra tidomräkning.
Om enheten 4l0 dessutom har en GPS-mottagare kopplad till sig kan den exempelvis tidstämpla de sekundtick som GPS-mottagaren ger ifrån sig och på så sätt bereda tidöversättaren möjlighet att kunna relatera systemets olika lokala klockor till UTC och den fysikaliska sekunden. 10 15 20 Û I IÜ. c o oc: oo coon one. h) ll! 15 Exemplet visar att uppfinningens tillämpning inte kräver att ingående moduler kräver någon gemensam förbindelse utan kan tillämpas så snart som detekterande av händelser och lokal tidstämpling av dessa kan ske och att man på systemnivå kan identifiera händelsesekvenser vars tidsrelationer är kända eller kan uppmätas.
I figur 5 beskrivs en enkel uppbyggnad av uppfinningen som klargör uppfinningstanken. En modul 501 innefattar en klockfunktion 510 med ett eller flera capturerregister 511, 512. En_ händelsedetektor 520 är anordnad att detektera händelsema H1, H2, H3, etc. och vid detektering, av en händelse genererar detektom en signal 521 som utlöser fångningen av klockans 510 tid i registret 511. Händelsen är därmed tidstämplad enligt tiden Ta. Klockan 510 genererar en lokal tid enligt en lokal tidsbas. Tidsvärden enligt denna tidsbas betecknas Ta. CPUn 530 avläser registret 511 och överför värdet till minnet 531 vilket i figuren representeras av 532. CPUn skapar ett meddelande 533 där information om händelsen, representerat med H(n), och tidpunkten ßr dess iriträffande enligt tidsbasen Ta, representerat med Ta(n). Modulen 501 är förbunden med enheten 551 via en kommunikationsförbindelse med for kommunikation mellan modul efrordelig hård- med 552.
Kommunikationsförbindelsen kan vara uppbyggd enligt någon vanligt förekommande typ, exempelvis USB, CAN, Ethemet, TCP/IP, IEEE 802.11, Bluetooth, etc. Enheten har tillgång till en klockfunktion, representerat med 553, som kan tidsstämpla händelserna RI, R2, R3, etc. enligt tidsbasen Tb pá samma eller liknande sätt som beskrivits för modulen 501. CPUn 554 och enhet och mjukvara, representerat lagrar information från modulen 501 och klockfunktionen 553 i minnet 555. Allteñer som enheten 551 mottar information om tidstämplade händelser från modulen 501, lagar CPUn denna information i minnet 555. På så sätt skapas en tabell med Hl-Tal, H2-Ta2, H3-Ta3, etc. På systemnivå är det känt att händelsen H3 som detekteras av modulen 501 är samma händelse som klockenheten 553 detekterar som händelsen Rl. Detsamma gäller för H6 och R2 samt H9 och R3, dvs. att respektive händelsepar är samma händelse detekterad och tidstämplad av olika enheter enligt respektive enhets lokala tidsbas. I och med att det detekterade händelseparet emanerar från en och samma händelse är den lämplig som referenshändelse och utnyttjas nu i enheten 551 för att tidsmarkera händelsema H1, H2, etc. enligt en tidsbas Tc. Händelsen Rl lagras i minnet 555 och därmed kan tider enligt Ta och Tb samordnas och representeras som Tc. 10 15 20 000 0 00 0 00 00 00 00 0 00 0 0 0 0 0 0 0 0 0 0 0 n 0000 0 I O Û I Q IC OO. OI IOOI IIOI åh 16 Informationen 556 kan rådande offset mellan Ta3 och Tbl beräknas som Toff =(Ta3 - Tbl). Om Tc sätts lika med Tb kan nästa händelse H4, Ta4, direkt omräknas till Tc4 = (Ta4 - Toff). Nu kan också historiska tider omräknas, vilka presenteras med italic, Tcl, Tc2 och Ic3. Nästa tillfälle med en referenshändelse är H6. Med de lagrade värdena 557 kan ett nytt oiïsetvärde beräknas och därmed också hur fort de båda klockoma löper i förhållande till varandra. Med det nya offsetvärdet och en löpande korrigering av tidsuppgífter enligt Ta med hänsyn till fasskillnaden mellan Ta och Tb, kan en ny tidsbas T°c skapas och händelsen H6 kan kopplas till tiden~T'c7. De till H6 kan nu också omräknas till basen T'c. Nästa referenshändelseinforrnation 558 kan användas för verifiering av omräkningsfaktorer eller för historiska värdena tör H1 skapande av en ytterligare förfinad tidsbas T"c. Nyttan av även denna enkla tillämpning av uppfinningen blir tydlig om man förutsätter att klockfunktionen 553 är väl kalibrerad för noggrann tidsangivning med den fysikaliska sekunden som bas medan klockan 510 baserar sin tidsbas Ta på pulser från en lokal oscillator 513. Fysikaliska beräkningar baseras ofta på den fysikaliska sekunden och det är då viktigt att tidsangivelser av mätvärden refererar till den fysikaliska sekunden, Med uppfinningen kan uppmätningar gjorda av moduler med enkla okalibrerade klockor användas då tiderna kan korrigeras genom tidomräkning baserad på en I, noggrann klocka i systemet.
I exemplet ovan används detekteringen av en och samma händelse som H3 och R1 som referenshändelse och utgångspunkt för tidomräkning. Detektering' av olika händelser A och B kan användas om bara tiden mellan As uppträdande och Bs uppträdande i en gemensam tidsbas är känd eller kan uppmätas. Som beskrivits ovan kan tidomräkning från en tidsbas till en annan ske direkt vid erhållande av tidstämplad information så snart som omräkningsfaktorema mellan tidsbasema är kända. Historiska värden kan räknas om till bättre noggranhet och kvaliteten på tidsangivelser från olika källor kan kontinuerligt övervakas. Var och när tidomräkning sker är helt beroende på det övergripande problemets art. I distribuerade system är det vanligt att man loggar information i systemet för att verifiera korrekt funktion av systemet eller att i efierhand finna orsaken till felfunktioner. Detekterande av mätvärden är typiska händelser som tidstämplas.
Loggning av mätvärden och tillhörande tid kan direkt omräknas till en gemensam tidsbas men ett bättre altemativ kan 'vara att lagra tidsangivelsema enligt respektive lokal tidsbas och i den n o ø 0 en 10 15 20 ÛO Ib I 0 0 0 0 0 Q 0 0 0000 0 0 Ü Û I I 0000 0000 00 IQ L!! OO O I 0 0 00 0 0 0 0 0 000 IC I O I I 0 00 000 00 D) G 17 efterföljande analysen välja ut lämpliga referenshändelser som utgångspunkt för tidomräkningar.
Som visats ovan kan 1istoriska värden omräknas med större precision ju fler referenshändelser som finns att tillgå och i allmänhet har man bättre datorkapacitet tillgänglig vid analys än vid loggning.
En första enhet med processor och applikation ett kommunikationsorgan med två eller flera kanaler en för kanalema gemensam och på respektive kanal detekterbar första händelse alt. flera första händelser vars tidsrelationer kan bestämmas två eller flera andra enheter med processor och programvara vardera med ett första kommunikationsorgan som kan samverka med första enhetens kommunikationsorgan vardera med en lokal l-:locka ett gemensamt kommunikationsprotokoll vardera kommunicerande med den första enheten via en kanal med tillhörande förbindelse vardera med ett andra kommunikationsorgan och protokoll ansluten med en andra förbindelse sändande och/eller mottagande meddelanden via den andra ßrbindelsen tidstämpla indikering av händelse på första förbindelsen överföra tidsvärdet för händelsen till första enheten via första förbindelsen tidstämpla andra händelser detekterade på den andra förbindelsen överföra tidinformation för detektering av andra händelser till den första enheten via den första ßrbindelsen den första enheten relationsstäl ler de lokala tidema till varandra med utnyttjande av tidsangivelser av första händelser i den första enheten relationsställer tidsangivelser mellan andra enheter för andra händelser En första enhet PC PDA kan utgöras av en loggerenhet En första händelse kan utgöras av en SOF 18 Ett ßrsta protokoll kan bestå av USB, Ethemet, Bluetooth, IEEE 802.11, En andra enhet utgöres av ett CAN-USB interface, LIN-USB interface, CAN-Ethemet interface Ett andra protokoll kan bestå av CAN, LIN, MOST, Ethemet, GPS En andra händelse kan utgöras av mottagande av meddelande, sändande av ett eller en sekvens 5 av meddelande, övergång från ett status till ett annat, utförande av en programsekvens, tidsangivelse från GPS Första protokoll bandbredd > l0*andra protokoll utnyttjad bandbredd 10 Om första förbindelsen är en USB-förbindelse, så kan denna upplänk och nedlänksegenskapema optimeras med avseende på tidsfödröjningen mellan ßrsta och andraenhetema genom att ställa om USBs standardiserade tidstick av l ms (full speed) eller 0,125 ms (high speed) till ett värde utanför specifikationen. 15 Uppfmningen kan även ses som en anordning vid tidomräkníngsenhet i system med lokalt utspridda moduler där en eller flera moduler innefattar klockor som arbetar medelst meddelanden i systemet överförbara tidsangivelser för tekniska skeenden/händelser i systemet.
Tidomräkningsenheten innefattar dels mottagningsorgan fór nämnda meddelanden, dels omräkningsorgan anordnade att i beroende av mottagning av ett meddelande som representerar 20 med en första klocka i en första modul angiven första tid åstadkomma förskjutning av en medelst en andra klocka i den första modulen eller en andra modul angiven andra tid till motsvarighet med den första tiden eller vid den andra klockan rådande allmän tid. Tidomräkningsenheten är anordnad att arbeta självständigt och onödiggöra den andra klockans eller dess moduls egen nå.. omställning till den andra eller den allmänna tiden, omräkningsorganen är anordnade att :':_§25 effektuera omvandlingen i beroende av mottagna meddelanden och kännedom om meddelandenas uppbyggnad och uppträdande i systemet. Uppfinningen avser sålunda en :a anordning vid tidomvandlingsenhet (tidomräkningsenhet) för meddelanden av teknisk och .šut tidsrelaterad karaktär i lokalt utspritt modulariserat system, varvid enheten innefattar g “z mottagningsorgan för meddelanden initierade i anslutning till systemet av i detta ingående Iš. 30 tekniska skeenden indikerande organ. Enheten är anordnad dels att från det indíkerande 10 15 19 enhetema mottaga meddelanden som representerar åtminstone två lokala tidsangivelser i åtminstone en modul av flera moduler, dels att vara anordnad med omvandlingsorgan (omräkningsorgan) som omvandlar mottagna första tidsangivelser med en första tidparameter t.ex. en första klockhastighet, en första klockstarttid, etc., till andra tidsangivelser med en andra tidparameter, t.ex. en andra klockhastighet, en andra klockstarttid, etc. Omvandlingsorganen är anordnade att effektuera omvandlingen i beroende av de mottagna meddelandena och kännedom om meddelandenas uppbyggnad och uppträdande i systemet.
En referenshändelse utgöres enligt ovanstående av en första händelse som är detekterbar av åtminstone en modul i ett system och som kan tidstämplas av moduler med modulens lokala klocka samt att antingen denna händelse kan detekteras och tidstämplas av en annan modul ansluten till enbart samma system och/eller annat system eller att den andra modulen detekterar och tidstämplar inträffandet av en annan händelse, vars inträffande i tid kan relationsställas till i inträffandet av den första händelsen.
Uppfinningen är inte begränsad till den i ovanstående såsom exempel visade utföringsforrner utan kan underkastas modifikationer inom ramen för efterföljande patentkrav och uppfinningstanken.
Claims (23)
1. l. Anordning vid modulariserat system med decentraliserade och funktionsutövande moduler där en modul med tillhörande klocka är anordnad att effektuera tidstämpling av till systemet knutna händelser och bland dessa utvalda referenshändelser, k ä n n e t e c k n a d därav, att modulen innefattar minnesorgan för lagring av modulens tidstämplingar hänförbara till de av modulen noterade händelsema och bland dessa utvalda referenshändelserna, att modulen innefattar en mikroprocessor som alstrar till modulens lagrade tidstämplingar relaterade meddelanden, att modulen är anordnad att via en eller flera förbindelser översända respektive alstrade meddelanden till en tidomräkningsenhet, och att tidomräkningsenheten är anordnad att efter eventuell mellanlagring relationsställa modulens respektive noterade referenshändelse och effektuerade tidstämpling till i enheten ytterligare införd eller befintlig referenshändelse och tidstämpling.
2. Anordning enligt patentkravet l, k ä n n e t e c k n a d därav, att modulen utgör en första modul och att även en andra modul är ansluten till tidomräkningsenheten för att möjliggöra den ytterligare eller befintliga referenshändelsen och tidstämplingen.
3. Anordning enligt patentkravet l, k ä n n e t e c k n a d därav, att tidomräkningsenheten är ansluten och arbetar med en generell eller global klocktid, t.ex. GPS-tid.
4. Anordning enligt patentkravet l, 2 eller 3, k ä n n e t e c k n a d därav, att systemets moduler eller systemets modul och omräkningsenheten anordnade att inom utnyttjade tidsramar samverka utan krav på gemensamt protokoll för tidsynkronisering.
5. Anordning enligt något av patentkraven 1-4, k ä n n e t e c k n a d därav, att systemets moduler eller systemets modul och omräkningsenheten är anordnade att arbeta utan behov av att kunna få information från annan modul eller enhet som är tidsrelaterade till varandra utan därför avsedd hårdvara eller förbindelser för behandling i dator utan realtidsoperativsystem. o o c 0 0 oo nu coon ecco 10 15 20 25 - nu . ' ' ' o n v :_ \_ . \.. 1,! ' . o o 21
6. Anordning enligt något av patentkraven 1-5, k ä n n e t e c k n a d därav, att den är anordnad att på systemnivå identifiera av två eller flera moduler inom en aktuell tidsmarginal detekterade händelser och utnyttja dessa för att i omräkningsenheten eller flera omräkningsenheter omräkna respektive moduls lokala tidsdomän till en för systemets funktion vald tidsdomän för samordning eller övervakning av händelser eller grupper av händelser.
7. Anordning enligt något av patentkraven 1-6, k ä n n e t e c k n a d därav, att händelsen/ett händelsemeddelande är detekterbar(-t) och tidstämplingsbarßt) av såväl modulen respektive den första modulen som enheten respektive den andra modulen ansluten till samma system och/eller till annat system.
8. Anordning enligt något av patentkraven l-6, k ä n n e t e c k n a d därav, att enheten respektive den andra modulen är anordnad att detektera och tidstâmpla inträffandet av en från en första händelse skild andra händelse, vars inträffande i tid är relationsställbar till inträlïandet av den första händelsen.
9. Anordning enligt något av föregående patentkrav, k ä n n e t e c k n a d därav, att modulen respektive den första modulen och/eller enheten respektive den andra modulen är anordnad tidstämpla hândelsema/referenshåindelsema representerade med händelsegenerator (-er) som åstadkommer respektive anordnade att detektera respektive meddelanden, pulser, kontrolldel, fallande flank etc.
10. Anordning enligt något av föregående patentkrav, k ä n n e t e c k n a d därav, att tidomräkningsenhetenßerna) är anordnad(-e) separat från modulen(-ema).
11. ll. Anordning enligt något av föregående patentkrav, k ä n n e t e c k n a d därav, att tidomräkningsenheten består av eller innefattar en logiskt arbetande översättningsmatris. 10 15 20 22
12. respektive enhet och modul är anordnad att utföra omsättning/omräkning tidsdomänema emellan Anordning enligt något av föregående patentkrav, k ä n n e t e c k n a d därav, att oavsett enheten(-ema)'modulen(-erna) ingår i/representerar domänen(-ema) eller inte.
13. Anordning enligt patentkravet 12, k ä n n e t e c k n a d därav, att ett protokoll är anordnat att ange det som modulen(-ema) respektive enheten(-erna) översätter och uppgifi om en modul eller enhets inkommande respektive utgående angívelser avseende tillhörighet till sändande och/eller mottagande rnoduls respektive enhets tidsdomän.
14. respektive enheter är anordnade att inte behöva tidstämpla samma eller exakt samma Anordning enligt något av patentkraven l-13, k ä n n e t e c k n a d därav, att moduler referenshändelse under förutsättning att tiden mellan använda referenshändelser är känd.
15. ema) respektive enhe1en(-ema) är anordnade att arbeta med ett fall där de har vetskap om det Anordning enligt något av patentkraven 1-14, k ä n n e t e c_ k n a d därav, att modulen(- som skall tidstämplas.
16. ema) respektive enheten(-ema) är anordnade att arbeta med ett fall där de saknar inbördes Anordning enligt något av patentkraven 1-14, k ä n n e t e c k n a d därav, att modulen(- överenskommelse om det som skall tidstämplas.
17. tidomräkningsenheten utväljer referensmeddelanden från händelsemeddelanden, att en eller flera Anordning enligt något av patentkraven l-16, k ä n n e t e c kan a d därav, att moduler respektive en heter är anordnade att knyta referenshändelser direkt eller indirekt lokala tidsangivelser i modulen, modulema respektive enheten(-ema), och att tidomräkningsenheten är anordnad att använda referensmeddelandena och kännedom om dessa eller information i dessa, för att ange hur referensmeddelandena är tidsmässigt relaterade till varandra för fiamräknande av tidsangivelser refererande till respektive moduls lokala tidsbas altemativt till en gemensam tidsbas. 10 15 20 I I I I I o lo oo IO- .z ...: . g' . o none g o o 0 oo: oo oooo IIOI IQ lJt %h-'v ._.\ 23
18. Anordning enligt patentkravet 17, k ä n n e t e c k n a d därav, att tidomräkningsenheten överför meddelanden eller information från eller om meddelanden tillsammans med framräknade tidsuppgifier relaterade till mottagande moduls lokala tidsbas, altemativt, ' till en tidsbas gemensam för en eller flera till tidomräkningsenheten anslutna moduler.
19. Anordning enligt något av patentkraven 1-18, k ä n n e t e c k n a d därav, att tidomräkningsenheten framräknar korrektionsfaktorer för att en modul skall kunna omräkna tider från en annan modul, altemativt synkronisera sin klocka till en för en eller flera andra moduler gemensam klocka.
20. (501) respektive den första modulen utöver en klocka (klockfunktion) (510) med capturerregister (511, 512) innefattar en händelsedetektor (520) anordnad att detektera händelser (H1, H2, H,3...etc.) och att vid detektering av respektive händelse generera en eller flera signaler (521) Anordning enligt något av patentkraven 1-19, k ä n n e t e c k n a d därav, att modulen som utlöser fastställandet av klockans (510) tid i ett register (S11), varvid tidstämpling föreligger enligt en tid (Ta), och att klockan (510) genererar en lokal tid enligt en lokal tidsbas.
21. Anordning enligt patentkravet 20, k ä n n e t e c k n a d därav, att modulen (501) är förbunden med tidomräkningsenheten (551) via en kommunikationsförbindelse för kommunikation mellan modulen och en utnyttjad hård- och i mjukvara (552), att omräkningsenheten är försedd med en sig tilldelad klocka (klockfunktion) (555) för tidstämpling av händelser (Rl, R2, R3...etc.) enligt en tidsbas (Tb) på samma eller motsvarande sätt som för modulen/den första modulen (501), att enheten innefattar en mikroprocessor (554) som lagrar eller åstadkommer lagring av information från modulen (501) och klockan (klockfunktionen) (553) i ett minne (555), och att informationerna om tidstämplade händelser från modulen (501) ligger till grund för skapande av en tabell i enheten.
22. referenshändelse är knuten till en förbindelse/första förbindelse anordnad att överföra tidstämplade händelser från annat håll än nämnda referenshändelse. Anordning enligt något av patentkraven 1-21, k ä n n e t e c k n a d därav, att en 24
23. Anordning enligt något av patentkraven 1-22, k ä n - n e t e c k n a d därav, att start-of-frame (SOF)i ett USB- system (dess förbindelse) utgör en referenshändelse, och att övrig händelse eller händelser är företrädesvis 3; detekter- bart anordnad respektive anordnade på annat system än USB, t.eX. CAN, LIN, MOST, etc. oo g ,. z : .. . ' ...U I..I o n o o g z ÛI: .o 'o coon o g o ooo co oooo oc.. ..'
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE0401922A SE0401922L (sv) | 2004-07-23 | 2004-07-23 | Anordning för tidsstämpling av referenshändelser |
DE102005031704A DE102005031704B4 (de) | 2004-07-23 | 2005-07-05 | Anordnung bei einem modularisiertem System zur Durchführung einer Zeitstempelung von Ereignissen/Referenzereignissen |
DE602005026610T DE602005026610D1 (de) | 2004-07-23 | 2005-07-19 | Vorrichtung in einem modularisierten System zur Zeitstempelung von Veranstaltungen/Referenzveranstaltungen |
EP05445061A EP1624361B1 (en) | 2004-07-23 | 2005-07-19 | Device in a modularized system for effecting time-stamping of events/reference events |
US11/184,821 US7899936B2 (en) | 2004-07-23 | 2005-07-20 | Device in a modularized system for effecting time-stamping of events/reference events |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE0401922A SE0401922L (sv) | 2004-07-23 | 2004-07-23 | Anordning för tidsstämpling av referenshändelser |
Publications (3)
Publication Number | Publication Date |
---|---|
SE0401922D0 SE0401922D0 (sv) | 2004-07-23 |
SE525930C2 true SE525930C2 (sv) | 2005-05-31 |
SE0401922L SE0401922L (sv) | 2005-05-31 |
Family
ID=32906877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE0401922A SE0401922L (sv) | 2004-07-23 | 2004-07-23 | Anordning för tidsstämpling av referenshändelser |
Country Status (4)
Country | Link |
---|---|
US (1) | US7899936B2 (sv) |
EP (1) | EP1624361B1 (sv) |
DE (2) | DE102005031704B4 (sv) |
SE (1) | SE0401922L (sv) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2849248B1 (fr) * | 2002-12-20 | 2005-06-24 | Oberthur Card Syst Sa | Entite electronique securisee permettant une certification du temps |
SE527004C2 (sv) * | 2003-11-26 | 2005-12-06 | Kvaser Consultant Ab | Anordning av distribuerat för simulering i distribuerade styrsystem t ex i fordon |
SE528072C2 (sv) * | 2004-01-16 | 2006-08-29 | Kvaser Consultant Ab | Anordning, enhet och arrangemang vid ett eller flera distribuerade system för insamling av drift eller felinformation |
SE528607C2 (sv) * | 2004-04-30 | 2006-12-27 | Kvaser Consultant Ab | System och anordning för att tidsmässigt relatera händelser i ett fordon |
US7636345B2 (en) * | 2006-02-01 | 2009-12-22 | Comsys Communication & Signal Processing Ltd. | Apparatus for and method of time related communications between multiple devices having different time bases |
CA2640556A1 (en) * | 2006-02-15 | 2007-08-23 | Fiberbyte Pty Ltd | Distributed synchronization and timing system |
CN101952833A (zh) | 2007-10-02 | 2011-01-19 | Nxp股份有限公司 | 多电平时间戳检测电路和方法 |
US9595015B2 (en) * | 2012-04-05 | 2017-03-14 | Nokia Technologies Oy | Electronic journal link comprising time-stamped user event image content |
US8897319B2 (en) | 2013-03-15 | 2014-11-25 | Concio Holdings LLC | High speed embedded protocol for distributed control systems |
US9432488B2 (en) | 2013-03-15 | 2016-08-30 | Concio Holdings LLC | High speed embedded protocol for distributed control systems |
US8737426B1 (en) | 2013-03-15 | 2014-05-27 | Concio Holdings LLC | High speed embedded protocol for distributed control system |
US9419737B2 (en) | 2013-03-15 | 2016-08-16 | Concio Holdings LLC | High speed embedded protocol for distributed control systems |
US9516395B2 (en) | 2014-03-28 | 2016-12-06 | Electronic Warfare Associates, Inc. | Systems and methods for sensor synchronization |
EP3149897B1 (en) | 2014-05-26 | 2021-07-28 | Kvaser AB | High speed embedded protocol for distributed control system |
WO2016054245A1 (en) | 2014-09-30 | 2016-04-07 | Concio Holdings LLC | Confirming data accuracy in a distributed control system |
US10326865B2 (en) | 2015-03-24 | 2019-06-18 | Concio Holdings LLC | Filter or bridge for communications between CAN and CAN-FD protocol modules |
EP3893443A1 (en) | 2015-11-02 | 2021-10-13 | Kvaser AB | Confirming data accuracy in a distributed control system |
DE102016215772B4 (de) * | 2016-08-23 | 2018-03-08 | Siemens Aktiengesellschaft | Diagnoseverfahren und Diagnoseanordnung für ein Fahrzeug |
EP3402129A1 (en) | 2017-05-09 | 2018-11-14 | Concio Holdings LLC | Bit encoding for a bus communication system |
US10597903B2 (en) | 2018-04-27 | 2020-03-24 | Andrew C. Reeves | Systems and methods of securing items and verifying the same |
IT201900006633A1 (it) * | 2019-05-08 | 2020-11-08 | Stmicroelectronics Application Gmbh | Sistema di elaborazione, relativo circuito integrato, dispositivo e procedimento |
CN113965285B (zh) * | 2021-09-14 | 2022-10-18 | 上海交通大学 | 一种基于ntp协议的跨系统多传感器时间同步与标定方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE452231B (sv) * | 1986-03-07 | 1987-11-16 | Philips Norden Ab | Forfarande for synkronisering av klockor ingaende i ett lokalt netverk av busstyp |
SE466123B (sv) | 1989-04-25 | 1991-12-16 | Kvaser Consultant Ab | Anordning foer att synkonisera data i ett datoriserat system, som innefattar en gemensam seriell datakommunikationskanal |
DE4140017C2 (de) | 1991-12-04 | 1995-01-05 | Nec Electronics Germany | Verfahren zum Betreiben von über einen Datenbus durch seriellen Datenaustausch miteinander kommunizierenden Rechnereinheiten |
US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
US5564285A (en) * | 1994-09-22 | 1996-10-15 | Thermo King Corporation | Method of converting a time based data logger to a time and random event based data logger |
US6118936A (en) * | 1996-04-18 | 2000-09-12 | Mci Communications Corporation | Signaling network management system for converting network events into standard form and then correlating the standard form events with topology and maintenance information |
US5896524A (en) * | 1997-02-06 | 1999-04-20 | Digital Equipment Corporation | Off-line clock synchronization for multiprocessor event traces |
US6535926B1 (en) * | 1999-09-30 | 2003-03-18 | Rockwell Automation Technologies, Inc. | Time synchronization system for industrial control network using global reference pulses |
DE10000305B4 (de) * | 2000-01-05 | 2011-08-11 | Robert Bosch GmbH, 70469 | Verfahren und Vorrichtung zum Austausch von Daten zwischen wenigstens zwei mit einem Bussystem verbundenen Teilnehmern |
US6766368B1 (en) * | 2000-05-23 | 2004-07-20 | Verizon Laboratories Inc. | System and method for providing an internet-based correlation service |
US6941557B1 (en) * | 2000-05-23 | 2005-09-06 | Verizon Laboratories Inc. | System and method for providing a global real-time advanced correlation environment architecture |
WO2002025859A1 (en) * | 2000-09-12 | 2002-03-28 | Kvaser Consultant Ab | An arrangement with a number of units that can communicate with each other via a wireless connection system and a method for use with such a system |
US7464154B2 (en) * | 2001-05-18 | 2008-12-09 | Network Resonance, Inc. | System, method and computer program product for analyzing data from network-based structured message stream |
US7139938B2 (en) * | 2002-04-01 | 2006-11-21 | Capital One Financial Corporation | System and method for providing common event format using alert index |
US20040059807A1 (en) * | 2002-09-16 | 2004-03-25 | Finisar Corporation | Network analysis topology detection |
SE524201C2 (sv) * | 2002-12-17 | 2004-07-06 | Lars-Berno Fredriksson | Anordning vid distribuerat styr- och övervakningssystem |
US7483448B2 (en) * | 2004-03-10 | 2009-01-27 | Alcatel-Lucent Usa Inc. | Method and system for the clock synchronization of network terminals |
SE528607C2 (sv) * | 2004-04-30 | 2006-12-27 | Kvaser Consultant Ab | System och anordning för att tidsmässigt relatera händelser i ett fordon |
US7623552B2 (en) * | 2004-10-14 | 2009-11-24 | Temic Automotive Of North America, Inc. | System and method for time synchronizing nodes in an automotive network using input capture |
US7983769B2 (en) * | 2004-11-23 | 2011-07-19 | Rockwell Automation Technologies, Inc. | Time stamped motion control network protocol that enables balanced single cycle timing and utilization of dynamic data structures |
US7903560B2 (en) * | 2004-12-30 | 2011-03-08 | Intel Corporation | Correlation technique for determining relative times of arrival/departure of core input/output packets within a multiple link-based computing system |
US7496686B2 (en) * | 2005-01-28 | 2009-02-24 | Gencsus | Localizing a remote event timestamp from a network device with an independent clock method and apparatus |
-
2004
- 2004-07-23 SE SE0401922A patent/SE0401922L/sv not_active IP Right Cessation
-
2005
- 2005-07-05 DE DE102005031704A patent/DE102005031704B4/de not_active Expired - Fee Related
- 2005-07-19 DE DE602005026610T patent/DE602005026610D1/de active Active
- 2005-07-19 EP EP05445061A patent/EP1624361B1/en not_active Not-in-force
- 2005-07-20 US US11/184,821 patent/US7899936B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1624361A3 (en) | 2006-06-14 |
US20060069939A1 (en) | 2006-03-30 |
DE102005031704A1 (de) | 2006-02-23 |
SE0401922L (sv) | 2005-05-31 |
SE0401922D0 (sv) | 2004-07-23 |
EP1624361B1 (en) | 2011-03-02 |
DE102005031704B4 (de) | 2009-05-07 |
US7899936B2 (en) | 2011-03-01 |
DE602005026610D1 (de) | 2011-04-14 |
EP1624361A2 (en) | 2006-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SE525930C2 (sv) | Anordning för tidsstämpling av referenshändelser | |
US8065052B2 (en) | Method and arrangement for correlating time bases between interconnected units | |
CN110329273A (zh) | 一种用于无人驾驶获取数据同步的方法及装置 | |
CN106817183B (zh) | 一种电力授时中的ptp精准时间协议授时模块及实现方法 | |
CN102244572B (zh) | 一种实现时钟同步的方法及装置 | |
US8108557B2 (en) | System and method for measuring clock skew on a network | |
CN103067112B (zh) | 时钟同步方法、装置及网络设备 | |
CN103427935B (zh) | 一种消除位置误差的网络时延测量方法及系统 | |
Ferrari et al. | A distributed instrument for performance analysis of real-time ethernet networks | |
CN105391509B (zh) | 基于fpga的网口高精度时间标定方法 | |
JP2016506712A (ja) | 電力スタック制御システム | |
CN110928176B (zh) | 一种支持多种授时技术的多功能授时设备 | |
CN110995388B (zh) | 一种分布式的共享时钟触发调延系统 | |
CN102523263B (zh) | 共享接入主机数量监测方法、设备及系统 | |
CN100473031C (zh) | 以太网与atm层对接数据转换校验装置及方法 | |
CN113392063B (zh) | 时间同步方法、装置及系统 | |
CN104901844A (zh) | 基于pcie的高精度时间戳获取方法、装置及网卡 | |
WO2020132834A1 (zh) | 一种打戳处理方法及装置 | |
CN107786292B (zh) | 一种协议栈网络时间的测量方法及装置 | |
CN103713544B (zh) | 一种基于fpga的soe系统实现soe的方法 | |
KR20200070972A (ko) | 시간정보 기반 직렬통신 제어 방법 및 장치 | |
CN208985031U (zh) | 一种同步信息产生电路及多系统时基同步平台 | |
CN211741962U (zh) | 一种计算机与带硬件触发功能设备的时钟驯服系统 | |
CN101321082A (zh) | 单板消息的时间戳的生成方法及计时模块 | |
US20240014916A1 (en) | Companion metadata for precision time protocol (ptp) hardware clock |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |