Combinational Circuits
المخرجات تعتمد فقط على المدخلات الحالية (Instant). لا توجد ذاكرة.
- • Adders (الجامع)
- • Decoders (مفك الشفرة)
- • Multiplexers (الناخب)
Sequential Circuits
المخرجات تعتمد على المدخلات + الحالة السابقة (Current State). توجد ذاكرة (Feedback).
- • Flip-Flops (القلابات)
- • Counters (العدادات)
- • Memory Registers
Combinational Circuits
1. Binary Adders (الجمع الثنائي)
Half Adder (نصف جامع)
يجمع 2 بت فقط (X, Y).
Sum = X XOR Y
Carry = X AND Y
Full Adder (جامع كامل)
يجمع 3 بت (X, Y, Carry_in).
Sum = X XOR Y XOR Cin
Cout = (X.Y) + (Cin.(X XOR Y))
2. Decoders vs. Multiplexers
| Device | Function (الوظيفة) | Inputs | Outputs |
|---|---|---|---|
| Decoder | اختيار موقع ذاكرة (Expansion). | $n$ | $2^n$ |
| Multiplexer (MUX) | اختيار مدخل واحد لتمريره (Selection). | $2^n$ | 1 |
Sequential Circuits (Flip-Flops)
تستخدم "الساعة" (Clock) للتحكم في التغيير. العنصر الأساسي للتخزين هو Flip-Flop.
SR Flip-Flop
Set / Reset
- S=1, R=0 $\rightarrow$ Set (1)
- S=0, R=1 $\rightarrow$ Reset (0)
- S=1, R=1 $\rightarrow$ Invalid (Unstable)
JK Flip-Flop
Modified SR
- J=1, K=0 $\rightarrow$ Set (1)
- J=0, K=1 $\rightarrow$ Reset (0)
- J=1, K=1 $\rightarrow$ Toggle (عكس الحالة)
D Flip-Flop
Data (The Memory Unit)
- D=1 $\rightarrow$ Next state is 1
- D=0 $\rightarrow$ Next state is 0
- يستخدم في الذاكرة والمسجلات (Registers).
Finite State Machines (FSM)
Moore Machine
المخرجات (Outputs) تعتمد فقط على الحالة الحالية (Current State).
Mealy Machine
المخرجات (Outputs) تعتمد على الحالة الحالية + المدخلات (Input).
MUX Control Lines
سؤال شائع: كم عدد خطوط التحكم (Select Lines) لناخب بـ 8 مدخلات؟
القاعدة: $Control Lines = \log_2(\text{Inputs})$
الحل: $\log_2(8) = 3$ lines.
JK Flip-Flop Behavior
ماذا يحدث للـ JK Flip-Flop عندما تكون J=1 و K=1؟
الجواب ليس "1" ولا "0".
الجواب هو Toggle (أو Complement)، أي تعكس الحالة السابقة.