IP Library Granted Patent US 12,294,451
Granted Patent B2
US 12,294,451 · App. 18/098,228 · Granted May 6, 2025

System and methods for network data processing

Inventor: Thomas Joergensen (Soeborg, DK)
Assignee: Microchip Technology Incorporated
H04J3/0667
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,294,451
App. No.
18/098,228
Granted
May 6, 2025
Kind
B2
Abstract

A system for network data transactions, the system including an ingress port to receive data frames and timestamp received data frames, a frame analyzer to forward the data frames to a processor, the processor to extract timing information from the data frames and update the data frames based on updated timing calculations and output updated data frames via one or more egress ports. Data frames are timestamped at ingress and egress ports, and egress timestamps are saved in a timestamp memory. The system reduces overall network delays by using dedicated hardware and stored timestamp information.

Claims (40)

1. A device comprising:

an ingress port comprising a timestamp circuit to determine a first timestamp information based on a received data frame and to update the received data frame based on the first timestamp information to create a timestamped data frame, the ingress port to output the timestamped data frame;

an output circuit comprising one or more egress ports to receive updated and timestamped data frames and modified and timestamp data frames, wherein the egress ports comprise a timestamp circuit to determine egress timestamp information and to save egress timestamp information to a timestamp memory, the output circuit to output data frames;

a frame analyzer to receive the timestamped data frame from the ingress port and forward the timestamped data frame to a processor, the processor comprising:

a timestamp extractor to extract the first timestamp information from the timestamped data frame and to read egress timestamp information from the timestamp memory;

a time calculator with inputs coupled to receive the first timestamp information and egress timestamp information, the time calculator to calculate a residence time based at least on the first timestamp information and egress timestamp information;

a clock rate extractor to extract clock rate information from the timestamped data frame;

a clock rate calculator to receive the extracted clock rate information from the clock rate extractor, and to update one or more clock rate parameters;

a frame generator with an output coupled to provide data frames to the output circuit, the frame generator to generate a data frame based at least on updated clock rate parameters from the clock rate calculator, and

a rewriter circuit with an input coupled to the output of the frame analyzer, the rewriter circuit to modify the received data frame from the frame analyzer and to output the modified and timestamped data frame to the one or more egress ports of the output circuit.

2. The device as claimed in claim 1 , wherein the rewriter circuit modifies the received data frame based at least on information in the received data frame.

3. The device as claimed in claim 1 , wherein the timestamp memory is a first-in, first-out memory.

4. The device as claimed in claim 1 , wherein the clock calculator calculates clock information based at least on the extracted clock rate information.

5. A system comprising:

a plurality of network devices, wherein respective ones of a plurality of network devices are coupled to at least one other of the plurality of network devices, each respective ones of the network devices comprising:

an ingress port comprising a timestamp circuit to determine a first timestamp information based on a received data frame and to update the received data frame based on the first timestamp information to create a timestamped data frame, the ingress port to output the timestamped data frame;

an output circuit comprising one or more egress ports to receive updated and timestamped data frames and modified and timestamp data frames, wherein the egress ports comprise a timestamp circuit to determine egress timestamp information and save egress timestamp information to a timestamp memory, the output circuit to output data frames;

a frame analyzer to receive the timestamped data frame from the ingress port and forward the timestamped data frame to a processor, the processor comprising:

a timestamp extractor to extract the first timestamp information from the timestamped data frame and to read egress timestamp information from a timestamp memory;

a time calculator with inputs coupled to receive the first timestamp information and egress timestamp information, the time calculator to calculate a time value based at least on the first timestamp information and the egress timestamp information;

a clock rate extractor to extract clock rate information from the timestamped data frame;

a clock rate calculator to receive the extracted clock rate information from the clock rate extractor and to update one or more clock rate parameters;

a frame generator with an output coupled to provide data frames to the output circuit, the frame generator to generate a data frame based at least on updated clock rate parameters from the clock rate calculator, and

a rewriter circuit with an input coupled to the output of the frame analyzer, the rewriter circuit to modify the received data frame from the frame analyzer and to output the modified and timestamped data frame to the one or more egress ports of the output circuit.

6. The system as claimed in claim 5 , wherein the rewriter circuit modifies the first received data frame based on information in the first received data frame.

7. The system as claimed in claim 5 , wherein the timestamp memory comprises a first-in first-out memory.

8. The system as claimed in claim 5 , wherein the time calculator calculates a residence time and peer delay of the first received data frame based at least on the first received data frame.

9. The system as claimed in claim 5 , wherein the clock rate extractor computes updated clock rate information based at least on the extracted clock rate information.

10. A method comprising:

receiving a first data frame at an ingress port and generating a first timestamped data frame at the ingress port,

transmitting first timestamped data frame to a processor,

extracting the first timestamp information from the first data frame;

reading a second timestamp information from a timestamp memory;

calculating residence times and peer delays based on the first and second timestamp information;

extracting clock rate information from the first data frame;

calculating updated clock rate information based at least on the extracted clock rate information;

generating an updated and timestamped data frame based at least on the updated clock rate information, and

transmitting the updated and timestamped data frame on an egress port.

11. The method as claimed in claim 10 , the method comprising saving timestamp information in a timestamp memory.

12. The method as claimed in claim 10 , the extracting clock rate information comprising computing updated clock rate information based at least on the extracted clock rate information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2023
From: JOERGENSEN, THOMAS
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 062406/0654 →
Continuity (2)
Provisional Application 63404710 · Sep 8, 2022
Related Publication 20240089021A1 · Mar 14, 2024
References Cited (23)
US 8625640B2 · Wei · 2014 [cited by examiner]
US 8644348B2 · Zampetti · 2014 [cited by examiner]
US 8842994B2 · Lanzone · 2014 [cited by examiner]
US 8873588B2 · Joergensen · 2014 [cited by examiner]
US 9391768B2 · Roberts · 2016 [cited by examiner]
US 9515908B2 · Hayes · 2016 [cited by examiner]
US 9665121B2 · Aweya · 2017 [cited by examiner]
US 10250379B2 · Haddad · 2019 [cited by examiner]
US 10432553B2 · Tse · 2019 [cited by examiner]
US 10855388B2 · Joseph · 2020 [cited by examiner]
US 11177897B2 · Evans · 2021 [cited by examiner]
US 11533327B2 · Weber · 2022 [cited by examiner]
US 20120014377A1 · Joergensen et al. · 2012 [cited by applicant]
US 20120119359A1 · Im et al. · 2012 [cited by applicant]
US 20170150464A1 · Kazehaya · 2017 [cited by examiner]
US 20240364417A1 · Ambeskar · 2024 [cited by examiner]
CN 111800213A · 2020 [cited by applicant]
EP 2595331A2 · 2013 [cited by applicant]
WO 2019023515A1 · 2019 [cited by applicant]
Köhler, Daniel, “A Practical Implementation of an IEEE1588 Supporting Ethernet Switch,” 2007 International IEEE Symposium on Precision Clock Synchronization for Measurement, Control, and Communication, pp. 134-137, Oct.… [cited by applicant]
Diarra, Aboubacar et al., “Improved Clock Synchronization Start-Up Time for Ethernet AVB-Based In-Vehicle Networks,” 2015 IEEE 20 [cited by applicant]
Schungel, Maximilian et al., “Analysis of Time Synchronization for Converged Wired and Wireless Networks,” 2020 25th IEEE International Conference on Emerging Technologies and Factory Automation, vol. 1, pp. 198-205, Se… [cited by applicant]
International Search Report and Written Opinion, Application No. PCT/US2023/073642, 16 pages, Dec. 13, 2023. [cited by applicant]