Chapter 4 Combinational Logic

Slides:



Advertisements
Similar presentations
Awe sim.
Advertisements

فصل چهارم مدارهای ترکیبی.
التصميم المنطقي Second Course
ارائه روشي براي شناسايي کاراکترهاي دستنويس، برپايه شبکه LVQ.
Combinational Logic Chapter 4. Digital Circuits Introduction Logic circuits for digital systems may be combinational or sequential. A combinational.
نمايش اعداد.
Combinational Logic Chapter 4.
نمايش اعداد.
Combinational Logic1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
Chapter 3 Combinational Logic Design
CS 105 Digital Logic Design
Combinational Circuits
Morgan Kaufmann Publishers
Combinational Logic Design
Combinational Logic Chapter 4.
Outline Analysis of Combinational Circuits Signed Number Arithmetic
Combinational Logic Chapter 4. Digital Circuits Combinational Circuits Logic circuits for digital system Combinational circuits the outputs are.
Sahar Mosleh PageCalifornia State University San Marcos 1 Multiplexer, Decoder and Circuit Designing.
Chap 3. Chap 3. Combinational Logic Design. Chap Combinational Circuits l logic circuits for digital systems: combinational vs sequential l Combinational.
CORRECTION Last session, I have made a mistake about two digital coding methods. I explained Hamming code as Grey code mistakenly. Here is correct explanation.
Combinational Circuits
1 Binary storage & registers. CS 151 Binary Variables Recall that the two binary values have different names: –True/False –On/Off –Yes/No –1/0 We use.
نمايش اعداد علی عادلی.  مبنا ( base ): –مبناي r: ارقام محدود به [0, r-1]  دسيمال:(379) 10  باينري:( ) 2  اکتال:(372) 8  هگزادسيمال:(23D9F)
1 Chapter 4 Combinational Logic Logic circuits for digital systems may be combinational or sequential. A combinational circuit consists of input variables,
Combinational Logic. Digital Circuits Introduction Logic circuits for digital systems may be combinational or sequential. A combinational circuit.
Digital System Ch4-1 Chapter 4 Combinational Logic Ping-Liang Lai ( 賴秉樑 ) Digital System 數位系統.
CHAPTER 4 Combinational Logic
CS 105 DIGITAL LOGIC DESIGN Chapter 4 Combinational Logic 1.
Chap 2. Combinational Logic Circuits
1 Chapter 4 Combinational Logic Logic circuits for digital systems may be combinational or sequential. A combinational circuit consists of input variables,
Combinational Circuits
اسامي شناسه ها (Identifier names) اسامي متغيرها ، توابع ، برچسب ها (labels) وبقيه اشياء تعريف شده توسط كاربر در C ، شناسه ( identifier ) ناميده مي شود.
Logic Design (CE1111 ) Lecture 4 (Chapter 4) Combinational Logic Prepared by Dr. Lamiaa Elshenawy 1.
Lecture 1 Gunjeet kaur Dronacharya group of institutions.
Presented by A. Maleki Fall Semester, 2010
آشنايي با سيستم اعداد.
Chap 3. Combinational Logic Design
DIGITAL LOGIC CIRCUITS
Combinational Logic Logic circuits for digital systems may be combinational or sequential. A combinational circuit consists of input variables, logic gates,
مدارهای منطقی فصل چهارم و پنجم - مدارهاي منطقي تركيبي ماجولي
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
Chapter 4 Combinational Logic
SY800 router mode [AD-14-TB ].
ANOVA: Analysis Of Variance
ANOVA: Analysis Of Variance
نمايش معادلات فضاي حالت توسط فرمهاي كانوليكال
آشنايي با برنامه نويسي به زبان C++
فصل دوم جبر بول.
تکنیک دیماتل DEMATEL: decision making trial and evaluation laboratory.
تبدیل فوریه (Fourier Transform)
نمايش اعداد در کامپيوتر چهار عمل اصلي
Similarity transformation
مدارهای منطقی فصل سوم - خصوصیات توابع سويیچی
FIGURE 4.1 Block diagram of combinational circuit
سميرا قانوني زهرا معدني
هیدرولیک جریان در کانالهای باز
معماري کامپيوتر استاد درس: منصور فاتح.
Ch 4. Combinational logic
مدار منطقی Logic Circuits
مدار منطقی Logic Circuits
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
با تشکر از جناب آقای مهندس بگ محمدی
فصل ششم مدارهای ترتیبی.
مثال : فلوچارتي رسم كنيد كه دو عدد از ورودي دريافت كرده بزرگترين عدد
مدار منطقي مظفر بگ محمدي
مدار منطقي مظفر بگ محمدي
تبديل همانندي در معادلات حالت و خروجي P ماتريس تبديل ثابت و ناويژه
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
Chapter-4 Combinational Logic
Presentation transcript:

Chapter 4 Combinational Logic

Combinational Logic Circuit Combinational circuit: logic circuit whose outputs at any time are determined directly and only from the present input combination. A combinational circuit performs a specific information-processing operation fully specified logically by a set of Boolean functions. Sequential circuit: one that employ memory elements in addition to (combinational) logic gates—their outputs are determined from the present input combination as well as the state of the memory cells.

Introduction The state of the memory elements, in turn, is a function of the previous inputs (and the previous state). Its behavior therefore is specified by a time sequence of inputs and internal states. In many applications, the source and the destination are storage registers. A combinational circuit also can be described by m Boolean functions, one for each output variable.

Block Diagram of a Combinational Circuit n inputs m outputs Fig. 4-1: Block Diagram of Combinational Circuit

Analysis Procedure ABC A + B + C AB (AB + AC + BC)’ AB + AC + BC AC BC (A + B + C)(AB + AC + BC)’ + ABC A + B + C AB (AB + AC + BC)’ AB + AC + BC AC BC

Design Procedure 1. Define the problem. 2. Determine the number of input/output variables. 3. Assign letter symbols to input/output variables. 4. Derive the truth table and defines the required relationships between inputs & outputs via KM. 5. Obtain the simplified Boolean function for each output. 6. Draw the logic diagram.

Adder The most basic arithmetic operation is the addition of 2 bits. A combinational circuit that performs this operation is called a half-adder. A combinational circuit that performs the addition of 3 bits is called a full-adder, which can be implemented by 2 half-adders.

Half Adder

Half Adder-Various Implementation

Full Adder

Full Adder

Implementation of FA

Implementation of FA S = z (x  y) = z’(xy’ +xy’) + z (xy’ +x’y)’ = z’(xy’ +x’y) + z(xy + x’y’) = xy’z’ + x’yz’ + xyz + x’y’z The carry output is C = z(x’y + xy’) + xy = xy’z + x’yz + xy

Binary Subtractor Subtraction = addition of minuend and 2’s-complemented subtrahend. Also can implement subtraction directly—with half-subtractors and full-subtractors.

Subtractor Z در اینحا بیت قرض گرفته شده از مرحله قبلی یعنی مقداری که در مرحله قبل از x کم شده است. B خروجی رقم قرضی فعلی. اگر z=0 باشد مدار یک نیم تفریق گر خواهد بود.

Code Conversion Example

Maps for BCD to Excess-3 Code Converter

Maps for BCD to Excess-3 Code Converter

Code Conversion The expressions obtained may be manipulated algebraically for the purpose of using common gates for 2 or more outputs. w = A + BC + BD = A + B(C + D) x = B’C + B’D + BC’D’ = B’(C + D) + B(C + D)’ y = CD + C’D’ = CD + (C + D)’ z = D’

Binary Adder Iterative Logic Array (ILA)

Binary subtractor Iterative Logic Array (ILA)

4-Bit Adder Subtractor

طراحي مدار جمع‌كنندة BCD مداري است كه دو عدد BCD را بعنوان ورودي پذيرفته و مجموع آنها را بصورت يك عدد BCD چهار بيت، همراه با يك بيت نقلي توليد مي‌كند. از آنجا كه هر عدد BCD از 0 تا 9 مي‌باشد ولي داراي چهار رقم است، شش حالت بلااستفاده وجود دارد كه بعنوان حالات بي‌تفاوت در نظر گرفته مي‌شوند. هر عدد BCD حداكثر ممكن است 9 باشد. با فرض اينكه هر دو برابر با 9 باشند و بيت نقلي از مرحلة قبل هم موجود باشد، بزرگترين عدد حاصل در خروجي مي‌تواند 9+9+1=19 باشد كه مي‌توان آنرا با يك عدد BCD چهار رقمي و يك بيت نقلي نمايش داد. آن 6 حالت بلااستفاده در واقع 10 11 12 13 14 15 هستن 23

BCD Adder کامپیوترها و ماشین حسابها عملیات محاسباتی را مستقیما در سیستم اعداد دهدهی انجام میدهند بنابراین جمع کننده ها باید اعداد را درسیستم دهدهی بپذیرند و نتیجه را در همین کد تحویل دهند. جمع کننده دهدهی چهار بیت برای کد کردن هر عدد نیاز دارد و یک رقم نقلی ورودی و یک رقم نقلی خروجی بنابراین 9 ورودی و 5 خروجی خواهد داشت. کد یک رقم دهدهی 4 بیتی دارای 6 حالت غیر معتبر است بنابراین تعدادی از ترکیبهای ورودی حالت بی اهمیت هستند.

BCD Adder چون مقدار رقم هر ورودی بیشتر از 9 نیست لذا مجموع خروجیها نیمتواند بیشتر از 9+9+1 باشد در جمع BCD اعدادی که بزرگتر از 9 هستند دارای رقم نقلی 1 هستند. همانطور که در جدول صفحه بعد مشخص است مجموع اعداد باینری و BCD تنها زمانی متفاوت است که حاصلجع بیشتر از 9 باشد درصورتی که بخواهیم با استفاده از جمع کنند ه دودویی جمع کنند BCD را طراحی کنیم باید درحالیتکه جوابها متفاوتند حاصلجمع دودویی را با عدد 6 جمع کنیم حاصلجمع صحیح را بصورت BCD به ما میدهد. حال برای اینکه تشخیص دهیم چه زمانی این جمع باید انجام شود طبق جدول وقتی که یکی از شرایط زیر برقرار باشد: یا جمع دودویی دارای رقم نقلی باشد یا Z8و Z4 توما 1 باشند یا Z8و Z2 توما 1 باشند

Binary Multiplier با مقایسه جدول مشخص است که

Binary Multiplier با مقایسه جدول مشخص است که

Binary Multiplier

4-Bit by 3-Bit Binary Multiplier

Decoder

Decoder

دياگرام منطقي (موازي و خروجي هاي فعال بالا) Truth Table E A B m0 m1 m2 m3 B A m0= AB 1 0 0 1 0 1 1 1 0 1 1 1 0 × × 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 m1= AB m2= AB m3= AB

دياگرام منطقي (موازي و خروجي هاي فعال پايين) B A m0 m1 m2 m3

2-to-4-Line Decoder with Enable Input

4 16 Decoder Constructed with Two 3  8 Decoders

پياده‌سازي توابع بولي با استفاده از ديكدر ديكدرها در واقع تمامي جملات مي‌نيمم را توليد مي‌كنند. هر تابع بولي را مي‌توان بصورت مجموعي از جملات مي‌نيمم نشان داد. براي تبديل هر تابع بصورت مجموع جملات مي‌نيمم روشهاي متفاوتي از جمله جدول كارنو وجود دارد. از تركيب يك ديكدر و يك گيت OR مي‌توان هر تابعي را ساخت.

پياده‌سازي تمام جمع‌كننده با ديكدر روابط مربوط به تمام‌جمع‌كننده: C=x′yz+ x′yz′+xy′z′+xyz S=xy+xz+yz S(x,y,z)=∑(1,2,4,7) C(x,y,z)= ∑(3,5,6,7,)

انكودر يا رمز‌كننده عمل آن دقيقاً برعكس ديكدر است. مداري ديجيتالي است كه حداكثر 2n ورودي و n خط خروجي دارد.در خروجي كد دودويي متناظر با مقدار ورودي توليد مي‌شود. با استفاده از چند گيت OR براحتي ساخته مي‌شود.

مثال: يك اينكدر براي براي چهار خط ورودي طراحي كنيد بشرطي كه در هر لحظه از زمان فقط يك ورودي فعال باشد. x0 4 –to- 2 Encoder A0 x1 x2 A1 x3

x3 x2 x1 x0 A1 A0 A1 A0 0 0 0 0 d 1 d 1 d d d A1= X2+X3 d d d d d d d 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 d d d 1 d 1 0 0 0 1 d d d d d A1= X2+X3 d d d 1 0 d d d d d d d d d d A0 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 d d d d 1 d d d d d d d A0= X1+X3 d d d d d d d d 1 d d d d d d d

دياگرام منطقي A0= X1+X3 x1 x3 A1= X2+X3 x2 x0

انكودر با حق‌تقدم مدار رمزكننده‌اي است كه شامل تابع حق‌تقدم مي‌باشد. اگر دو ورودي يا بيشتر بطور همزمان مساوي با 1 شوند، ورودي با بالاترين حق تقدم برتري خواهد داشت. يك خروجي ديگر هم براي مدار در نظر گرفته مي‌شود كه هميشه مقدار آن 1 است بجز حالتي كه همة وروديهاي انكودر برابر با صفر باشند. بعبارت ديگر 1 بودن آن نشان دهندة معتبر بودن خروجي انكودر است.

انكودر 4 ورودي با حق‌تقدم اگر همة وروديها برابر با صفر باشند، خروجي V بايد برابر با صفر باشد ودر غير اينصورت برابر با 1 خواهد بود. بالاترين حق‌تقدم متعلق به D3 و سپس به ترتيب به D2 ، D1 و نهايتاً D0 مي‌باشد. مدار داراي چهار ورودي و سه خروجي است. جدول درستي بصورت زير است:

جدول درستي براي انكودر با حق تقدم وروديها خروجي‌ها D0 D1 D2 D3 x y V X 1

جدول كارنو براي خروجيx انكودر

جدول كارنو براي خروجي‌y انكودر

مدار انكودر با حق تقدم

يك MUX 2 به 1 منظور از S همان ورودي انتخاب است. I1 و I2 نيز دو خط ورودي هستند.

مدار داخلي MUX (4 به 1)

MUX چهارتايي 2 خطي به 1 خطي

روشهاي پياده‌سازي يك تابع بولي با استفاده از گيت‌هاي منطقي با استفاده از مدارهاي MSI و LSI با استفاده از ديكدر با استفاده از مالتي‌پلكسر با استفاده از PLA

Boolean Function Implementation

پياده‌سازي تابع بولي بوسيلة MUX اگر تابع بولي داراي n+1 متغير باشد، nتا از آنها را به خطوط انتخاب MUX وصل مي‌كنيم. اگر A متغير منفرد (باقي‌مانده) تابع بولي باشد، ورودي‌هاي MUX مي‌توانند A، A′، 1 و يا 0 باشند. ساده‌تر اينست كه اولين يا آخرين متغير را بعنوان متغير منفرد انتخاب كرده، بقية متغيرها را به ورودي‌هاي انتخاب MUX بدهيم.

مراحل پياده‌سازي آخرين متغير را جدا كرده، بقيه رابه ترتيب به وروديهاي انتخاب MUX وصل كنيد. جدول درستي تابع را تشكيل دهيد. محتواي جدول درستي را از بالا دو سطر، دو سطر جدا كنيد. براي قسمتهاي جدا شده، اگر هر دو مقدار تابع برابر با: صفر هستند، آنگاه ورودي متناظر از MUX برابر با 0 قرار داده مي‌شود. 1 هستند، آنگاه ورودي متناظر از MUX برابر با 1 قرار داده مي‌شود. مقادير متغير منفرد هستند، آنگاه همان متغير منفرد به ورودي متناظر از MUX داده مي‌شود. مكمل مقادير متغير منفرد هستند، آنگاه مكمل متغير منفرد به ورودي متناظر از MUX داده مي‌شود.

مثال جدول درستي تابع بولي زير همراه با نحوة‌پياده‌سازي آن توسط MUX نشان داده شده است:

مثال جدول درستي تابع بولي چهار متغيره زير همراه با نحوة‌پياده‌سازي آن توسط MUX نشان داده شده است:

مثال1 : MUX 8 × 1 F(A , B ,C) = ∑ m(1, 2 , 3 , 5 ,6) a b c F I0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 I1 1 MUX I2 1 F I3 1 I4 8 × 1 1 I5 1 I6 I7 a b c

مثال2 : MUX 4 × 1 c F(A , B ,C) = ∑ M(1 ,2 , 3, 6) a b c F 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 I0 c I0 MUX 1 I1 I1 I2 4 × 1 I2 I3 c I3 a b

مثال3 : 1 F(A , B ,C) = ∑ m(1, 2 , 4 , 5 ,6) a b c F I0 0 0 0 0 0 1 00 01 11 10 a a b c 1 F I0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 I0= b c I1= b + c = bc 1 I1 I0 b c I0 F MUX 2 × 1 I1 I1 s0 a

مثال4 : a b c d F(A , B , C , D) = m(1 , 3 , 5 , 6 , 7 , 10 , 11 , 15) ∑ 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 I0 c d 00 01 11 10 a b I0 1 1 00 01 I1 1 1 1 I1 11 1 I2 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 10 1 1 I3 I2 I0=d I1= d+c I2=C I3= cd I3

مثال4 : d I0 MUX I1 F c 4 × 1 I2 I3 a b

Multiplexers with Three-State Gates

Three-State Gates

2-to-1-Line Multiplexer

Stimulus and Design Modules Interacion