در مدارهای منطقی ترتیبی (Sequential)، مقدار خروجی در هر لحظه علاوه بر وضعیت فعلی ورودیها، به وضعیت قبلی خروجی نیز وابسته است. لذا اینگونه مدارها نوعی «حافظه» نیز به شمار میروند.
اما خروجی مدارهای منطقی ترکیبی (Combinational) تنها تابعی از وضعیت فعلی ورودی است. با تغییر ورودی، خروجی نیز به طور آنی تغییر میکند که این خروجی ممکن است ۰ منطقی یا ۱ منطقی باشد.
در نتیجه مدارهای ترکیبی هیچ فیدبکی ندارند و هر تغییری در سیگنالهای ورودی، بلافاصله در خروجی تأثیر میگذارد. به عبارت دیگر، در یک مدار ترکیبی، خروجی هر زمان به ترکیب ورودیها در همان زمان وابسته است. از آنجایی که در طراحی مدارهای ترکیبی هیچگونه «حافظه»، «زمانبندی» و یا «حلقهی فیدبک» استفاده نمیشود، اگر وضعیت یکی از ورودیها از ۰ به ۱ و یا از ۱ به ۰ تغییر کند، خروجی متناظر نیز تغییر خواهد کرد.
مدارهای منطقی ترکیبی از گیتهای پایهای NAND ،NOR یا NOT تشکیل شدهاند. با ترکیب و اتصال این گیتها میتوان مدارهای ترکیبی پیچیدهتری ساخت. در واقع گیتهای منطقی بلوکهای سازندهی مدارهای ترکیبی هستند. «دیکودر» (decoder) نمونهای از یک مدار ترکیبی است که کد باینری موجود در ورودی را به چند خط خروجی تبدیل کرده و در هر لحظه کد دهدهی معادل در خروجی قرار میگیرد.
هر مدار ترکیبی ساده یا پیچیده را میتوان تنها با استفاده از چند گیت NAND یا NOR پیادهسازی کرد، لذا به این دو گیت، گیتهای «جامع» یا یونیورسال (universal) نیز گفته میشود.
روشهای کلی برای مشخص کردن توابع مدارهای ترکیبی عبارتند از:
با دقت در شکل زیر میتوان این سه روش را بهتر درک کرد.
از آنجایی که مدارهای ترکیبی تنها از گیتهای منطقی تشکیل شدهاند، به آنها «مدارات تصمیمگیری» نیز اطلاق میشود. در واقع منطق ترکیبی عبارت است از: ترکیب گیتهای منطقی با یکدیگر به منظور پردازش دو یا چند سیگنال و در نتیجه تولید دست کم یک سیگنال خروجی مطابق تابع منطقی هر گیت. «مالتیپلکسر» (multiplexer)، «دیمالتیپلکسر» (demultiplexer)، «انکودر» (encoder)، «دیکودر» (decoder)، «نیم جمعکننده» (half adder) و «تمام جمعکننده» (full adder) نمونههای رایجی از مدارهای ترکیبی هستند که وظایف مختلفی را انجام میدهند.
یکی از مهمترین کاربردهای منطق ترکیبی در مالتیپلکسرها و دیمالتیپلکسرها است. در اینگونه آیسیها، چندین ورودی یا خروجی به یک خط سیگنال مشترک وصل شده و گیتهای منطقی وظیفهی کدگشایی یا «دیکود» آدرس را بر عهده دارند؛ تا تنها یک دادهی ورودی (در مالتیپلکسر) یا سوئیچ خروجی (در دیمالتیپلکسر) انتخاب شود.
هر مالتیپلکسر از چند سوئیچ Solid State و یک دیکور منطقی مجزا از هم تشکیل شده است. اما قبل از آنکه بیشتر راجع به مالتیپلکسرها، دیمالتیپلکسرها و دیکودرها صحبت کنیم، ابتدا لازم است با نحوهی استفاده از سوئیچهای Solid State در طراحی مدارات ترکیبی بیشتر آشنا شویم.
ادوات TTL استاندارد که از ترانزیستور ساخته شدهاند، تنها میتوانند جریان سیگنال را در یک جهت عبور دهند. لذا به اینگونه ادوات، ادوات یکجهته یا «uni-directional» نیز گفته میشود. این ویژگی در سوئیچهای الکترومکانیکی مرسوم یا رلهها نیز یافت میشود. اگرچه برخی از ادوات سوئیچینگ CMOS که از FET ساخته شدهاند، در زمرهی سوئیچهای دوجهته یا «bi-directional» قرار میگیرند و لذا برای استفاده به عنوان سوئیچ Solid State بسیار مناسبند.
سوئیچهای Solid State به شکلهای مختلفی عرضه میشوند و کاربردهای بسیار گوناگونی نیز دارند. به طور کلی میتوان اینگونه سوئیچها را در سه گروه دستهبندی کرد. در مجموعه آموزشهای مربوط به منطق ترکیبی تنها به شرح «سوئیچهای آنالوگ» میپردازیم، هرچند که اساس کار همهی سوئیچها تقریباً یکسان است.
طرز کار سوئیچهای آنالوگ به این شکل است که در صورتی که «داده» (data) یا جریان سیگنال در وضعیت ON باشند، آنها را سوئیچ کرده و در صورتی که در وضعیت OFF باشند، آنها را مسدود میکند. معمولاً با اعمال یک سیگنال دیجیتال به گیت کنترل سوئیچ، سوئیچینگ سریع بین وضعیتهای ON و OFF را کنترل میکنند. یک سوئیچ آنالوگ ایدهآل در وضعیت ON یا «بسته» (close) دارای مقاومت صفر، و در وضعیت OFF یا «باز» (open) دارای مقاومت بینهایت است. هرچند که سوئیچهایی با RON کمتر از ۱Ω نیز بسیار مناسبند.
میتوان با اتصال موازی یک ماسفت N-channel و یک ماسفت P-channel، سیگنالها را در دو جهت عبور داد و در واقع یک سوئیچ دوجهته ساخت. مقدار سیگنال عبوری از هر کدام از ماسفتهای N-channel یا P-channel به نسبت ولتاژ خروجی به ورودی بستگی دارد. این دو ماسفت به وسیلهی دو تقویتکنندهی داخلی معکوسکننده و غیر معکوسکننده، به ترتیب به وضعیت ON یا OFF سوئیچ میشوند.
همانند سوئیچهای مکانیکی، سوئیچهای آنالوگ نیز بسته به تعداد «قطبها» (pole) و «فکهای متحرک» (throw)، انواع مختلفی دارند. بنابراین اصطلاحاتی مانند SPST یا «یک قطب و یک فک متحرک» (single-pole single throw) و SPDT یا «یک قطب و دو فک متحرک» (single-pole double-throw) در کلیدهای آنالوگ Solid State نیز به کار میروند. همچنین اینگونه کلیدها را میتوان به دو صورت «make-before-break» و «break-before-make» تنظیم کرد.
با کنار هم قرار دادن چند سوئیچ آنالوگ یک IC استاندارد ساخته میشود که علاوه بر یک مالتیپلکسر چند کاناله، قابلیت تنظیم به صورت سوئیچ SPST یا SPDT نیز دارد.
سادهترین و رایجترین IC سوئیچ آنالوگ ۷۴HC4066 نام دارد. در این آیسی ۴ کلید ON/OFF دو جهته و مستقل از هم قرار گرفته است. اما پرکاربردترین سوئیچهای آنالوگ CMOS به عنوان «سوئیچهای دوجهتهی چند مسیره» یا به طور مختصر آیسیهای «مالتیپلکسر» و «دیمالتیپلکسر» شناخته میشوند که در آموزش بعد به طور مفصل راجع به آنها صحبت خواهیم کرد.
بهطور خلاصه، مدارهای منطقی ترکیبی از ورودی، خروجی و دو یا چند گیت منطقی تشکیل شدهاند. گیتهای منطقی بهگونهای به یکدیگر متصل میشوند که وضعیت خروجی کاملاً وابسته به وضعیت فعلی ورودی باشد. مدارهای منطقی ترکیبی بدون «حافظه»، «زمانبندی» یا «حلقهی فیدبک» هستند و نتیجهی عملیات فوراً تولید میشود. هر مدار ترکیبی عملیات مورد نظر را طبق یک عبارت بولی یا جدول صحت انجام میدهد.
«نیم جمعکننده» (half adder)، «تمام جمعکننده» (full adder)، «مالتیپلکسر» (multiplexer)، «دیمالتیپلکسر» (demultiplexer)، «انکودر» (encoder) و «دیکودر» (decoder) نمونههایی از مدارهای منطقی ترکیبی هستند.