Coverage for src / tracekit / analyzers / digital / __init__.py: 100%
12 statements
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-11 23:04 +0000
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-11 23:04 +0000
1"""Digital signal analysis module.
3Provides digital signal extraction, edge detection, timing analysis,
4signal quality metrics, multi-channel correlation, clock recovery,
5bus decoding, edge timing analysis, and signal quality metrics.
7- RE-THR-001: Time-Varying Threshold Support
8- RE-THR-002: Multi-Level Logic Support
9"""
11from tracekit.analyzers.digital.bus import (
12 BusConfig,
13 BusDecoder,
14 BusTransaction,
15 ParallelBusConfig,
16 decode_bus,
17 sample_at_clock,
18)
19from tracekit.analyzers.digital.clock import (
20 BaudRateResult,
21 ClockMetrics,
22 ClockRecovery,
23 detect_baud_rate,
24 detect_clock_frequency,
25 measure_clock_jitter,
26 recover_clock,
27)
28from tracekit.analyzers.digital.correlation import (
29 ChannelCorrelator,
30 CorrelatedChannels,
31 CorrelationResult,
32 align_by_trigger,
33 correlate_channels,
34 resample_to_common_rate,
35)
36from tracekit.analyzers.digital.edges import (
37 Edge,
38 EdgeDetector,
39 EdgeTiming,
40 TimingConstraint,
41 check_timing_constraints,
42 classify_edge_quality,
43 interpolate_edge_time,
44 measure_edge_timing,
45)
46from tracekit.analyzers.digital.edges import (
47 TimingViolation as EdgeTimingViolation,
48)
49from tracekit.analyzers.digital.edges import (
50 detect_edges as detect_edges_advanced,
51)
52from tracekit.analyzers.digital.extraction import (
53 LOGIC_FAMILIES,
54 detect_edges,
55 get_logic_threshold,
56 to_digital,
57)
58from tracekit.analyzers.digital.quality import (
59 Glitch,
60 NoiseMarginResult,
61 Violation,
62 detect_glitches,
63 detect_violations,
64 noise_margin,
65 signal_quality_summary,
66)
67from tracekit.analyzers.digital.signal_quality import (
68 NoiseMargins,
69 SignalIntegrityReport,
70 SignalQualityAnalyzer,
71 SimpleQualityMetrics,
72 TransitionMetrics,
73 analyze_signal_integrity,
74 measure_noise_margins,
75)
77# RE-THR-001, RE-THR-002: Adaptive Thresholding and Multi-Level Logic
78from tracekit.analyzers.digital.thresholds import (
79 AdaptiveThresholder,
80 AdaptiveThresholdResult,
81 MultiLevelDetector,
82 MultiLevelResult,
83 ThresholdConfig,
84 apply_adaptive_threshold,
85 calculate_threshold_snr,
86 detect_multi_level,
87)
88from tracekit.analyzers.digital.timing import (
89 ClockRecoveryResult,
90 TimingViolation,
91 hold_time,
92 phase,
93 propagation_delay,
94 recover_clock_edge,
95 recover_clock_fft,
96 setup_time,
97 skew,
98 slew_rate,
99)
101__all__ = [
102 # Extraction
103 "LOGIC_FAMILIES",
104 "AdaptiveThresholdResult",
105 # Adaptive Thresholds (RE-THR-001)
106 "AdaptiveThresholder",
107 # Clock Recovery (DSP-002)
108 "BaudRateResult",
109 # Bus Decoding (DSP-003)
110 "BusConfig",
111 "BusDecoder",
112 "BusTransaction",
113 # Correlation (DSP-001)
114 "ChannelCorrelator",
115 "ClockMetrics",
116 "ClockRecovery",
117 # Timing
118 "ClockRecoveryResult",
119 "CorrelatedChannels",
120 "CorrelationResult",
121 # Edge Analysis (DSP-004)
122 "Edge",
123 "EdgeDetector",
124 "EdgeTiming",
125 "EdgeTimingViolation",
126 # Quality
127 "Glitch",
128 # Multi-Level Logic (RE-THR-002)
129 "MultiLevelDetector",
130 "MultiLevelResult",
131 "NoiseMarginResult",
132 # Signal Quality (DSP-005)
133 "NoiseMargins",
134 "ParallelBusConfig",
135 "SignalIntegrityReport",
136 "SignalQualityAnalyzer",
137 "SimpleQualityMetrics",
138 "ThresholdConfig",
139 "TimingConstraint",
140 "TimingViolation",
141 "TransitionMetrics",
142 "Violation",
143 "align_by_trigger",
144 "analyze_signal_integrity",
145 "apply_adaptive_threshold",
146 "calculate_threshold_snr",
147 "check_timing_constraints",
148 "classify_edge_quality",
149 "correlate_channels",
150 "decode_bus",
151 "detect_baud_rate",
152 "detect_clock_frequency",
153 "detect_edges",
154 "detect_edges_advanced",
155 "detect_glitches",
156 "detect_multi_level",
157 "detect_violations",
158 "get_logic_threshold",
159 "hold_time",
160 "interpolate_edge_time",
161 "measure_clock_jitter",
162 "measure_edge_timing",
163 "measure_noise_margins",
164 "noise_margin",
165 "phase",
166 "propagation_delay",
167 "recover_clock",
168 "recover_clock_edge",
169 "recover_clock_fft",
170 "resample_to_common_rate",
171 "sample_at_clock",
172 "setup_time",
173 "signal_quality_summary",
174 "skew",
175 "slew_rate",
176 "to_digital",
177]