920 likes | 1.32k Views
23 970-00 디지털시스템. 200 6 학년도 1 학기 담당교수 김 보 관 충남대학교 정보통신공학부 전기 · 전자 · 전파전공. 교과목 개요.
E N D
23970-00 디지털시스템 2006학년도 1학기 담당교수 김 보 관 충남대학교 정보통신공학부 전기·전자·전파전공
교과목 개요 • 강의목표"논리회로 및 실험"에서 배운 기본 이론을 심화하여, 논리 소자의 내부 회로 구조 및 전기적 성질과 중대규모 디지털 시스템의 구조 및 해석설계 기법을 배운다: 논리소자의 전기적 성질, 논리군의 종류와 인터페이스, MSI/LSI급 IC를 이용한 디지털 시스템 설계, RTL 수준 표현과 설계, ASM Chart를 이용한 시스템 설계, 데이터 경로부와 제어부 구조, 비동기식 순차회로의 해석과 설계. • 주교재M. M. Mano and C. R. Kime, Logic and Computer Design Fundamentals, 3rded., Prentice-Hall, 2004. • 참고도서J. P. Hayes, Introduction to Digital Logic Design, Addison Wesley, 1993.… • Grading: Exams & HW’s, A(<30%), B(<40%), C&D&F(>30%) 디지털시스템
조합논리회로의 해석과 설계 (복습) 1. Digital System: What? Why? How? 2. Binary Logic & Gates 3. Boolean Algebra: Definition, Theorems 4. Boolean Expression: 분류, ⇔Logic Diagram 5. Map Simplification: Karnaugh Map 6. Other Logic Gates 7. 조합논리회로의 해석 8. 조합논리회로의 설계 9. Combinational Functional Blocks: Encoder, Decoder, Multiplexer, Demultiplexer, Code converter,Adder, Subtractor, Adder/Subtractor, Multiplier, … 디지털시스템
1. Digital System: What? Why? How? • Digital system ≡ a system that processes (stores, communicates, transforms/manipulates) information expressed in discrete(離散) form.(예) general-purpose digital computers, … • Digital signal ≡ signal with discrete meaningful states(values). ↔ analog signal • Digital over Analog: Reliability(信賴性) ≪high noise immunity • Analog to Digital: Quantization and EncodingDigital signalsfor analog information (or signal)?⇒ quantization(量子化) in both value and timeBinary signals for multivalued information?⇒ encoding(符號化) : BCD code, ASCII code, Excess-3 code • Coding? ⇒ What to do with that code? 效果와 效率 디지털시스템
2. BINARY LOGIC & GATES 1. Binary Logic (2進論理): 논리회로의 기본 수학 - Binary Logic ⊆Boolean Algebra Switching algebra, Two-valued Boolean Algebra 2値부울代數 {참, 거짓}n {참, 거짓} {HIGH, LOW}n 2진 디지털 시스템 {HIGH, LOW} {ON, OFF}n {ON, OFF} 논리학: 접속사 and, or, not Switch 회로: 직렬연결, 병렬연결, NC/NO switch {??, ??}n수학적 모델 {??, ??} ????, ???? 디지털시스템
2. BINARY LOGIC & GATES 2. Three Basic Logical Operations2진 디지털 시스템 기술에 필요, 충분한 연산(동작)의 수와 종류는? 2진논리 2진 시스템 1-bit 2진수 연산 (Binary Logic) (Binary Digital System) (1-bit Binary Arithmetic) 디지털시스템
2. BINARY LOGIC & GATES 3. (Basic) Logic Gates = 2진 논리를 수행하는 단위 전자회로 디지털시스템
2. BINARY LOGIC & GATES 4. Timing Diagram (타이밍도) 회로의 논리 동작을 표현하는 또 다른 방법 주로 순차논리회로의 동작을 규정하거나 해석하는데 사용 디지털시스템
2. BINARY LOGIC & GATES 5. 多入力(Multiple-Input) Gate 시스템 구성의 편이를 위하여 2입력AND, 2입력OR, NOT 이외에도 다양한gate를 제공함. (more at §2-6, §2-7) AND, OR gate의 입력 확장은AND, OR 연산의 결합법칙에 의해 정의됨. F = A·B·C = ((A·B)·C) F = A+B+C+D+E+F = (((((A+B)+C)+D)+E)+F) 디지털시스템
3. BOOLEAN ALGEBRA (부울代數) 1. Boolean FunctionF(X,Y,Z) = Boolean Expression = X + Y’·Z * 眞理表 (Truth Table) * 論理圖, 論理回路圖 (Logic Diagram) * algebraic expression ⇒ logic diagram * 좋은 표현식 ⇒ 좋은 회로도 * 하나의 함수에 대해 진리표 표현은 하나, 대수표현(회로도)는 여럿. * 설계의 일반적 과정 Informal Spec. ⇒ Formal Spec. ⇒대수 표현식 ⇒ 논리회로도 디지털시스템
3. BOOLEAN ALGEBRA (부울 代數) 2. Huntington의 부울 代數의 假說: < V={…}, O={+, .} > 1. (a) V is closed with respect to the operation p1. (b) V is closed with respect to the operation p2.2. (a) V has an identity element w.r.t the operation p1. (b) V has an identity element w.r.t the operation p2.3. (a) V is commutative w.r.t the operation p1. (b) V is commutative w.r.t the operation p2. 4. (a) p1 is distributive over p2. (b) p2 is distributive over p1.5. For each x in V, there exists an element y in V such that (a) x + y = 1 (b) x . y = 0 6. |V| ≥ 2 디지털시스템
3. BOOLEAN ALGEBRA (부울代數) 3. Basic Identities of Boolean Algebra 1) X + 0 = X 2) X·1 = X 恒等元(identity) (公理) 3) X + 1 = 1 4) X·0 = 0 Identity Theorem 恒等元 定理 5) X + X = X 6) X·X = X Idempotence Th. 冪等의 定理 7) X + X’ = 1 8) X·X’ = 0 補元(Complement ) 9) (X’)’ = X Involution Th. 累乘 定理 10) X + Y = Y + X 11) X·Y = Y·X Commutative Law 12) X+(Y+Z) = (X+Y)+Z 13) X·(Y·Z) = (X·Y)·Z Associative Law 14) X·(Y + Z) = X·Y+ X·Z 15) X + Y·Z = (X+Y)·(X+Z) Distributive Law 16) (X + Y)’ = X’·Y’ 17) (X·Y)’ = X’ + Y’ De Morgan’s Th. * 일반 대수와의 차이? 역원(inverse)? * 雙對性 原理(Principles of Duality): AND↔OR, 0↔1 디지털시스템
3. BOOLEAN ALGEBRA (부울代數) 4. Algebraic Manipulation (代數的 操作, 代數式 操作) - 표현식의 간소화 ⇒ 디지털 회로의 간소화 F = X’YZ + X’YZ’ + XZ= X’Y(Z+Z’) + XZ= X’Y + XZ 디지털시스템
3. BOOLEAN ALGEBRA (부울代數) 5. Other Useful Identities (1) 흡수 정리(Absorption Theorem)X + X·Y = X·1 + X·Y = X·(1 + Y) = XX·(X + Y) = (X + 0)·(X + Y) = X + 0·Y = X (2)X·Y + X·Y’ = X·(Y + Y’) = X·1 = X(X + Y)·(X + Y’) = X + Y·Y’ = X + 0 = X (3) 간소화 정리(Simplification Theorem)X + X’·Y = (X + X’)·(X + Y) = 1·(X + Y) = X + YX·(X’ + Y) = X·X’ + X·Y = 0 + X·Y = X·Y (4) 合意의 정리(Consensus Theorem)X·Y + X’·Z + Y·Z = X·Y + X’·Z(X + Y)·(X’ + Z)·(Y + Z) = (X + Y)·(X’ + Z) * 정리의 증명 방법: 진리표, 대수식 조작 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) Key Points: 부울 표현식의 형태 분류, 관련 용어, 형태 사이의 변환 1. 부울표현식의 형태 - 標準型(Standard Form): 곱의 합형(Sum-of-Products, SOP, or Disjunctive Form) F(X,Y,Z) = XY + X’Z + YZ합의 곱형(Product-of-Sums, POS, or Conjunctive Form) F(X,Y,Z) = (X + Y)(X’ + Z)(Y + Z) - 非標準型(Non-standard, Factored, or Parenthesized Form) F(X,Y,Z) = X’ + (Y + Z)(Y’ + Z’) - 正型(Canonical Form): 표준형의 특별한 경우곱의합 정형(Canonical SOP, or Canonical Disjunctive Form) F(X,Y,Z) = XYZ + XYZ’ + X’YZ [sum-of-minterms form]합의곱 정형(Canonical POS, or Canonical Conjunctive Form) F(X,Y,Z) = (X+Y+Z)(X+Y+Z’) [product-of-maxterms form]* 한 함수에 대한 정형 표현식은 唯一함. 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) * 곱항(product term) = ANDing of literals * 합항(sum term) = ORing of literals * 표준형 = 2段階 표현식(Two-Level Form) * 비표준형 = 多段階 표현식(Multi-Level Form) 2. Mintermsand Maxterms - minterm(最小項, 最小積項, 標準積standard product) = a product term in which all the variables appear exactly once, either complemented or uncomplemented. - maxterm(最大項, 最大合項, 標準合standard sum) = a sum term in which all the variables appear exactly once, either complemented or uncomplemented. * The order of the variables should be assumed for the symbolic representation of minterms/maxterms. 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) Table 2-6 Minterms for Three Variables 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) Table 2-7 Maxterms for Three Variables 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) 3. Canonical Expressions - sum-of-minterms of F and F’ F(X,Y,Z) = […] + […] + […] + …= X’Y’Z’ + X’YZ’ + XY’Z + XYZ= m0 + m2 + m5 + m7= Sm(0, 2, 5, 7), or S(0, 2, 5, 7) F’(X,Y,Z) = […] + […] + […] + …= X’Y’Z + X’YZ + XY’Z’ + XYZ’= m1 + m3 + m4 + m6= Sm(1, 3, 4, 6), or S(1, 3, 4, 6) 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) - product-of-maxterms of F and F’ F(X,Y,Z) = (…)·(…)·(…)·…= (X+Y+Z’)(X+Y’+Z’)(X’+Y+Z)(X’+Y’+Z)= M1·M3·M4·M6= PM(1, 3, 4, 6), or P(1, 3, 4, 6) Similarly, F’(X,Y,Z) = M0·M2·M5·M7 = P(0, 2, 5, 7) Another method: F’(X,Y,Z) = [F(X,Y,Z)]’ = (m0 + m2 + m5 + m7)’ = (m0)’·(m2)’·(m5)’·(m7)’ = M0·M2·M5·M7 = P(0, 2, 5, 7) F(·) = S(0, 2, 5, 7) = P(1, 3, 4, 6)F’(·) = S(1, 3, 4, 6) = P(0, 2, 5, 7) 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) 4. Non-Canonical to Canonical E = Y’ + X’Z’= (X+X’)Y’(Z+Z’) + X’(Y+Y’)Z’= (XY’+X’Y’)(Z+Z’) + X’YZ’ + X’Y’Z’= XY’Z + XY’Z’ + X’Y’Z + X’Y’Z’ + X’YZ’ + X’Y’Z’= X’Y’Z’ + X’Y’Z + X’YZ’ + XY’Z’ + XY’Z=S(0, 1, 2, 4, 5) E = Y’ + X’Z’= (Y’ + X’)(Y’ + Z’)= (X’X+Y’+Z’)(X’+Y’+Z’Z) = (X+Y’+Z’)(X’+Y’+Z’)(X’+Y’+Z)(X’+Y’+Z’) = P(3, 6, 7) 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) 5. Sum of Products - sum-of-minterms. obtained directly from a truth table. the most complex sum-of-products form. but, a starting point to a simplified s-o-p form - logic diagram of a s-o-p form?. two-level, AND-OR, implementation. (complements of input variables are assumed to be available) - Non-standard form to SOP form?. by means of the distributive law - SOP to simplified SOP?. many ways. Simplification Th., Consensus Th., Identity Th., …. - Figure 2-5, Figure 2-6 디지털시스템
4. BOOLEAN EXPRESSION (부울 표현식) - 다단계회로와 2단계회로 (Figure 2-6) 6. Product of Sums- Two-level, OR-AND Implementation- Figure 2-7 디지털시스템
5. MAP SIMPLIFICATION What to Study: Map method for logic simplification 맵 방법에 의한 논리 (표현식) 최소화/간소화 1. Simplification Criterion: 최소화/간소화된 곱의합 표현이란? F = (…) + (…) + (…) + … + (…)(i) with a minimum number of terms(ii) with the fewest possible number of literals * There may be many, equally good expressions! 2. 대수적 간소화(Algebraic Simplification) 과정의 예 f(a, b, c) = a’b’c’ + a’b’c + a’bc’ + a’bc + abc = a’b’ + a’b + abc = a’ + abc = a’ + bc 디지털시스템
5. MAP SIMPLIFICATION f(a, b, c) = a’b’c’ + a’b’c + a’bc’ + a’bc + abc = a’b’ + a’bc’ + bc = a’(b’ + bc’) + bc = a’(b’ + c’) + bc = a’b’ + a’c’ + bc = a’(bc)’ + bc = a’ + bc f(a, b, c) = a’b’c’ + a’b’c + a’bc’ + a’bc + abc = a’b’c’ + a’b’c + a’bc’ + a’bc + a’bc + abc = a’b’ + a’b + bc = a’ + bc = ??? * With proper duplication of product terms, only the distributive law would do the job. 디지털시스템
5. MAP SIMPLIFICATION 3. Algebraic Simplification: Use any boolean axioms and theorems, or(1) two adjacent product terms into one bigger product term(2) a term may be used more than once during combination(3) a term may be partitioned into smaller ones But, still we have some difficulties: (1) no specific rules to predict each succeeding step (2) difficult to determine whether the simplest expression has been achieved - Simplify the following expression: f(A,B,C,D) = A’BC’D + A’BCD + ABC’ + ABCD + A’BCD’ = A’BD + ABC’ + ABCD + A’BCD’ = …… ?????? = ABC’ + A’BC + BD 디지털시스템
5. MAP SIMPLIFICATION 4. Karnaugh Map, (K-map, Veitch Diagram) (1) 진리표의 2차원적 그림 표현 (인접관계를 시각적으로 판단 가능) (2) 인접한 최소항 또는 곱항끼리 물리적으로도 가까이 있도록 배치 (3) 수작업에 의한 간소화에 사용 (not for computer-aided design) (4) 곱의합 또는 합의곱 형태 간소화에 사용 (not apply directly to simplification in non-standard forms) (5) up to 4 variables? ==> depends on YOU! * possible to find two or more simplified expressions. Glue logic 디지털시스템
Y Y 0 1 0 1 X’Y’ X’Y m0 m1 0 0 XY’ XY m2 m3 Y Y X 1 X 1 0 0 1 1 0 0 0 1 0 0 Y X Y Z 0 0 0 0 1 0 1 0 0 1 1 1 X Y Z 0 0 0 0 1 1 1 0 1 1 1 1 1 0 1 1 X X 1 1 0 1 0 1 0 2 3 X 1 Note the adjacency of minterms 5. MAP SIMPLIFICATION 5. 2-, 3-, 4-Variable K-Maps * Gray Code 디지털시스템
Y Y 00 00 01 01 11 11 10 10 0 m0 1 m1 3 m3 2 m2 00 0 4 m4 5 m5 7 m7 6 m6 01 X 1 X 12 13 15 14 11 Z W 8 9 11 10 10 Z Y 00 01 11 10 0 1 3 2 0 4 5 7 6 X 1 Z 5. MAP SIMPLIFICATION Y 00 01 11 10 0 X 1 Z 디지털시스템
C 00 01 11 10 00 01 B 11 A 10 D 5. MAP SIMPLIFICATION [EXAMPLE 2-6] 디지털시스템
5. MAP SIMPLIFICATION What to Study: 맵 방법에 의한 논리 최소화 (체계적 방법)합의곱 표현의 최소화無關條件(Don’t-Care Conditions)이 있는 경우 1. Implicant, Prime Implecant, Essential Prime Implicant F = (…) + (…) + (…) + (…) - Implicant = a product term if the function has the value 1 for all minterms of the product term, 즉, 주어진 함수의 곱의합 표현에 나타날 수 있는 곱항. - Prime Implicant(PI) 主積項 = 문자를 더 이상 줄일 수 없는implicant,다른implicant에 포함되지 않는implicant. - Essential Prime Implicant (EPI) 必須主積項 = 어떤 최소표현식에도 항상 포함되어야 하는 주적항. 디지털시스템
5. MAP SIMPLIFICATION 2. 곱의합 표현식에서의 곱항F = (…) + (…) + … + (…)(i) 곱의합 표현식에서의 각 곱항은 그 함수의implicant이어야 함.(ii) 곱의합 최소표현식에서의 각 곱항은 그 함수의PI이다. 3. K-map에서의Implicant, PI, EPIImplicant = 1-cell 만을 포함하는 묶음.PI 主積項 = 더 이상 크게할 수 없는 묶음.EPI 必須主積項 = 곱의합 최소 표현식에 꼭 포함시켜야 할 묶음. 4. K-map에서의 간소화 과정 오직PI 묶음만을 고려하여,모든 1-cell이 어떤 묶음에 속할 때까지, (1) EPI 묶음을 모두 선택한다. (2) 덜 바람직한PI 묶음을 고려 대상에서 제외한다. (3) 이 상태에서 다시 필수적인PI 묶음[Secondary EPI]들을 선택한 후, (2)로 되돌아 간다. (4) 선택할 것도, 제외할 것도 없을 때에는 임의로(?) 하나를 선택한 후, 위 (2)와 (3)을 반복한다. 디지털시스템
C C C 00 00 00 01 01 01 11 11 11 10 10 10 1 1 1 1 1 1 00 00 00 1 1 1 1 1 1 1 01 01 01 B B B 1 1 1 1 1 1 1 11 11 11 A A A 1 1 1 1 10 10 10 D D D 5. MAP SIMPLIFICATION [Examples] 디지털시스템
C 00 01 11 10 1 1 0 1 00 0 1 0 0 01 B 0 0 0 0 11 A 1 1 0 1 10 D 5. MAP SIMPLIFICATION 5. Product-of-Sums Simplification (합의곱형 간소화) (1) F’의s-o-p를 구하여 양변의complement를 취함. (2) F의K-map에서 0-cell을grouping함. [Grouping한 조건들을 합항으로 표현할 때, 문자의 극성에 주의] [Example 2-8] F(A, B, C, D) = S(0, 1, 2, 5, 8, 9, 10) 디지털시스템
5. MAP SIMPLIFICATION 6. Don’t-Care Conditions (無關條件) = 함수의 출력이 정의되지 않은 입력 조건들. (i) the input combinations never occur. (ex) BCD code (ii) the input combinations would occur, but we do not care about the outputs in response to these combinations. => We simply do not care what value is assumed by the function for the unspecified conditions. * imcompletely specified functions (불완전하게 정의된 함수) - What shall we do with DC conditions? DC 조건에 대한 함수의 출력은 설계자가 임의로 설정 가능. But, somebody will get better designs!! How many complete specifications are possible for a 4-input 1-output function with 6 DC conditions? ==> 디지털시스템
5. MAP SIMPLIFICATION - 무관조건의 표현 진리표, K-map: -, x, X, d, D, D Equation : F = […] + ... + […] + dc([…] + ... + […]) = […] + ... + […] + ([…] + ... + […])dc = S(1, 2, …) + Sdc(7, 8, …) = P(0, 3, …) + Pdc(7, 8, …) - 무관조건이 있는 경우의 표현식 간소화 유관조건을 중심으로grouping을 하여 나아가되, 무관조건을 포함하는 경우에 group의 크기가 커질 수 있으면 그 무관조건을group에 포함시킴. (I) 유관조건: grouping의 개수와 크기를 결정. (ii) 무관조건: grouping의 크기에만 영향을 줌. 디지털시스템
C 00 01 11 10 x 1 1 x 00 0 x 1 0 01 B 0 0 1 0 11 A 0 0 1 0 10 D 5. MAP SIMPLIFICATION [Example] F(A,B,C,D) = S(1, 3, 7, 11, 15) + Sdc(0, 2, 5) 디지털시스템
6. OTHER LOGIC GATES What to study: NAND와NOR gate를 이용한 부울함수 具現 1. AND, OR, NOT 이외에 다른type의gate들이 제공됨. Gate type을 결정할 때의 고려 사항: - feasibility & economy of the gates in the implementation tech.- possibility of fan-in extension- ability to implement Boolean functions 2. Simple Gate Types in Bipolar and CMOS Technology:names(이름), graphic symbols(회로 기호), functions(기능) [Figure 2-26] in next slide * negation indicator, bubble 디지털시스템
6. OTHER LOGIC GATES 디지털시스템
6. OTHER LOGIC GATES 디지털시스템
6. OTHER LOGIC GATES 3. Functional(Logical) Completeness 函數的(論理的) 完全性 A set of gates are functionally, or logically complete if any Boolean function can be implemented or expressed using only the gate types in the set: {AND, OR, NOT} is functionally complete.{NAND} and {NOR} are functionally complete. [PROVE? => Figure 2-27, Figure 2-33 below] *Universal Gates 디지털시스템
6. OTHER LOGIC GATES 4. How to implement a Boolean function with NAND gates? (1) Obtain the simplified expression and/or circuit in terms of AND, OR, and NOT. (2) Convert AND, OR, NOT gates to NAND gates. [bubble insertion] more on later slides Alternative NAND and NOT Symbols for Conversion [Fig. 2-28] 디지털시스템
6. OTHER LOGIC GATES 5. Two-Level NAND Circuits - NAND-NAND Two-Level Implementation - S-O-P expression can be realized by NAND-NAND circuits Figure 2-29 for the circuits and also for the conversion from AND-OR using bubble insetion. [Example 2-9 & Fig. 2-30]F(x, y, z) = S(1, 2, 3, 4, 5, 7) 을NAND gates로 구현하라.(1) Simplify in sum-of-products form (2) Draw AND-OR network (Use buffer for terms with single literal) (3) Convert it into NAND-NAND network 디지털시스템
6. OTHER LOGIC GATES 6. NOR Circuits Can repeat the disscussion with NAND circuits. Alternative Symbols for NOR [Fig. 2-34] NOR-NOR form = P-O-S expression [Fig. 2-35] Converting AND/OR Circuits into NOR Circuits [Fig. 2-36] 디지털시스템
6. OTHER LOGIC GATES 디지털시스템
6. OTHER LOGIC GATES 1. Exclusive-OR 함수: XOR, EXOR, EOR - X Å Y = X·Y’ + X’·Y [difference ftn.] 2. Exclusive-NOR 함수: XNOR, EXNOR, ENOR - complement of exclusive-or - (X Å Y)’ = X’·Y’ + X·Y [equivanlece ftn] 디지털시스템
6. OTHER LOGIC GATES 3. XOR와 관련된 항등식들 X Å 0 = X X Å 1 = X’ X Å X = 0 X Å X’ = 1 X Å Y’ = (X Å Y)’ X’Å Y = (X Å Y)’ A Å B = B Å A (A Å B) Å C = A Å (B Å C) = A Å B Å C 디지털시스템
6. OTHER LOGIC GATES 4. XOR Gate의 NAND 구현: [Fig. 2-37] 5. 다변수 XOR - A Å B Å C = ??? - Odd function (홀수 함수) : F = 1 when … - K-map for XORs: check board : [Fig. 2-38] - Multiple-Input XOR with 2-Input XOR: [Fig. 2-39] - 응용 예: Parity 생성과 검출 디지털시스템
Gates as Control Elements • Gate as Operators • Gate as Control Elements 디지털시스템
ninputs moutputs 조합회로 조합 회로 블록도 組合 論理 回路와 順次 論理 回路 • 論理 回路 (1) 組合論理 回路 (Combinational Logic Circuits) - 정상상태에서의 현재의 출력은 현재의 입력에 의해 결정됨. - 논리gate들로 구성됨 (no feedback). (2) 順次論理 回路 (Sequential Logic Circuits) - 현재 및 과거의 입력이 현재의 출력을 결정함. - 논리gates + 저장소자(storage elements: latch, flip-flop) 디지털시스템