🎯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
- State transitions berdasarkan input
- Output bergantung state (Moore) atau state+input (Mealy)
- Digunakan untuk control logic
- Implementasi dengan state register
Counters & Registers
- Binary counters, modulo counters
- Shift registers, ring counters
- Timing analysis critical
- Propagation delay considerations
Sequence Detectors
- 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"
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
Setup Time and Hold Time Analysis
⚡ Teknik Simulasi Lanjutan
Testbench Development
Buat comprehensive testbench untuk verifikasi sistem sekuensial
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
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
Performance Metrics
Analisis performance metrics untuk optimisasi desain
- 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