🎯Tujuan Pembelajaran

Sub-CPMK 5.1: Simulasi rangkaian sekuensial menggunakan software

🔄 Finite State Machines

Memahami konsep dan implementasi FSM dalam rangkaian sekuensial

⏱️ Timing Analysis

Menganalisis timing dan propagation delay dalam sistem sekuensial

🔧 Advanced Simulation

Menguasai teknik simulasi untuk sistem sekuensial kompleks

📊 Debugging Techniques

Menerapkan teknik debugging untuk sistem sekuensial

📖 Simulasi Sistem Sekuensial

Sistem sekuensial memiliki memori dan perilaku yang bergantung pada sejarah input sebelumnya. Simulasi yang efektif membutuhkan pemahaman tentang state, timing, dan sequence operation.

Karakteristik Sistem Sekuensial

Memory: Memiliki state yang menyimpan informasi sejarah

Timing: Operasi bergantung pada clock dan timing constraints

Sequence: Output bergantung pada sequence input

Feedback: Output dapat mempengaruhi input berikutnya

🔧 Jenis Rangkaian Sekuensial

Berbagai jenis rangkaian sekuensial membutuhkan pendekatan simulasi yang berbeda:

🔄

Finite State Machines

Moore & Mealy Machines
  • State transitions berdasarkan input
  • Output bergantung state (Moore) atau state+input (Mealy)
  • Digunakan untuk control logic
  • Implementasi dengan state register
🔢

Counters & Registers

Synchronous & Asynchronous
  • Binary counters, modulo counters
  • Shift registers, ring counters
  • Timing analysis critical
  • Propagation delay considerations
🎯

Sequence Detectors

Pattern Recognition
  • Mendeteksi sequence input tertentu
  • Overlapping & non-overlapping
  • Multiple sequence detection
  • Error detection capabilities

🔄 Simulasi Finite State Machine

Finite State Machine (FSM) adalah model komputasi yang terdiri dari states, transitions, dan actions.

FSM Example: Sequence Detector "101"

S0
S1
S2
Current State: S0 Output: 0
// FSM State Table for "101" detector
Current State | Input | Next State | Output
------------------------------------------
S0 | 0 | S0 | 0
S0 | 1 | S1 | 0
S1 | 0 | S2 | 0
S1 | 1 | S1 | 0
S2 | 0 | S0 | 0
S2 | 1 | S1 | 1 // Pattern detected!

⏱️ Analisis Timing dan Waveforms

Timing analysis sangat kritis dalam sistem sekuensial untuk memastikan setup time, hold time, dan propagation delay memenuhi requirements.

Timing Diagram: Synchronous Counter

CLK
Q0
Q1

Setup Time and Hold Time Analysis

// Timing Analysis Results\n Clock Period: 20 ns\n Setup Time: 2 ns ✓\n Hold Time: 1 ns ✓\n Max Frequency: 47.6 MHz\n Status: TIMING MET ✓

Teknik Simulasi Lanjutan

1

Testbench Development

Buat comprehensive testbench untuk verifikasi sistem sekuensial

// Example testbench structure
module testbench;
  reg clk, reset, input_seq;
  wire output_seq;
  
  sequence_detector uut(clk, reset, input_seq, output_seq);
  
  initial begin
    clk = 0; reset = 1;
    #10 reset = 0;
    // Apply test sequence
  end
endmodule
2

Waveform Analysis

Gunakan waveform viewer untuk debugging timing issues

Debugging Tips:

• Gunakan probe untuk monitor internal signals

• Check setup/hold time violations

• Verifikasi state transitions

• Monitor metastability conditions

3

Performance Metrics

Analisis performance metrics untuk optimisasi desain

// Key performance metrics
- Maximum Clock Frequency
- Power Consumption
- Area Utilization
- Critical Path Delay
- Timing Slack
💡

Latihan Simulasi Sekuensial

Exercise 1: Desain dan simulasikan FSM untuk sequence detector "1101" dengan overlapping

Exercise 2: Buat modulo-12 counter synchronous dengan reset asynchronous

Exercise 3: Simulasikan 4-bit shift register dengan parallel load dan bidirectional shift

Exercise 4: Analisis timing untuk sistem dengan clock 100MHz dan propagation delay 8ns