james-kramer commited on
Commit
3750912
·
verified ·
1 Parent(s): 35cb0c1

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +49 -1
README.md CHANGED
@@ -10,5 +10,53 @@ pinned: false
10
  license: mit
11
  short_description: LLM for digital circuit timing
12
  ---
 
13
 
14
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  license: mit
11
  short_description: LLM for digital circuit timing
12
  ---
13
+ # Digital Circuit Clock Frequency Calculator
14
 
15
+ A deterministic calculator that computes the maximum operating frequency for synchronous digital circuits based on timing constraints. This tool performs first-principles timing analysis and provides natural language explanations of the results.
16
+
17
+ ## Overview
18
+
19
+ This application calculates the maximum clock frequency at which a synchronous digital circuit can reliably operate by analyzing setup and hold timing constraints. It helps digital designers understand timing closure and identify potential violations before fabrication.
20
+
21
+ ## Features
22
+
23
+ - **Setup Time Analysis**: Calculates maximum frequency based on critical path timing
24
+ - **Hold Time Verification**: Checks if hold constraints are satisfied at all clock frequencies
25
+ - **Safety Margins**: Computes timing slack and safety factors for both constraints
26
+ - **Natural Language Explanations**: Uses LLM to generate plain-English descriptions of results
27
+ - **Interactive Interface**: Real-time calculations with immediate feedback
28
+ - **Example Scenarios**: Pre-loaded cases covering FPGA, ASIC, and violation scenarios
29
+
30
+ ## Input Parameters
31
+
32
+ All timing parameters are specified in **nanoseconds (ns)**:
33
+
34
+ | Parameter | Symbol | Description | Typical Range |
35
+ |-----------|--------|-------------|---------------|
36
+ | Clock-to-Q Delay | T_cq | Time for flip-flop output to be valid after clock edge | 0.08 - 2.0 ns |
37
+ | Max Logic Delay | T_logic | Longest combinational path between flip-flops (critical path) | 0.4 - 50 ns |
38
+ | Min Logic Delay | T_logic_min | Shortest combinational path between flip-flops | 0.05 - 10 ns |
39
+ | Setup Time | T_setup | Data must be stable before clock edge | 0.05 - 1.5 ns |
40
+ | Hold Time | T_hold | Data must remain stable after clock edge | 0.01 - 0.8 ns |
41
+ | Clock Skew | T_skew | Uncertainty in clock arrival times | 0.02 - 5.0 ns |
42
+
43
+ ## Output Results
44
+
45
+ The calculator provides:
46
+
47
+ 1. **Maximum Operating Frequency**: Displayed in MHz or GHz
48
+ 2. **Minimum Clock Period**: Required clock period in nanoseconds
49
+ 3. **Setup Slack**: Timing margin for setup constraint (0 at F_max)
50
+ 4. **Hold Margin**: Timing margin for hold constraint (must be ≥ 0)
51
+ 5. **Hold Safety Factor**: Ratio of available to required hold time
52
+ 6. **Constraint Status**: Pass/fail verdict for both setup and hold
53
+ 7. **Recommendation**: Design guidance based on results
54
+ 8. **LLM Explanation**: Plain-English summary for non-experts
55
+
56
+ ## How to Use
57
+
58
+ 1. **Enter Timing Parameters**: Input the six timing values for your circuit design
59
+ 2. **Click "Calculate Maximum Frequency"**: Run the timing analysis
60
+ 3. **Review Results**: Check the numerical results table
61
+ 4. **Read Explanation**: Understand the natural language summary
62
+ 5. **Try Examples**: Click pre-loaded scenarios to see different cases