درس طراحی کامپیوتری سیستمهای دیجیتال یکی از دروس اصلی رشته مهندسی کامپیوتر در مقطع کارشناسی است که به علاقهمندان طراحی سختافزار این قابلیت را میدهد تا بتوانند مدارهای پیچیده را به کمک یک زبان توصیف ...
مهدی امینیان
درس طراحی کامپیوتری سیستمهای دیجیتال یکی از دروس اصلی رشته مهندسی کامپیوتر در مقطع کارشناسی است که به علاقهمندان طراحی سختافزار این قابلیت را میدهد تا بتوانند مدارهای پیچیده را به کمک یک زبان توصیف سختافزار ایجاد و شبیهسازی کنند. سپس آنها را به کمک ابزارهای سنتز تبدیل به مدارهای قابل پیادهسازی روی بسترهای سختافزاری همچون FPGA (Field Programmable Gate Array) و یا ASIC (Application Specific Integrated Circuits) کنند.
امروزه FPGA (آرایه منطقی برنامهپذیر) بهعنوان سختافزارهای قابل برنامهریزی بهسرعت درحال رشد هست و حتی امکان ایجاد یک سیستم کامل کامپیوتری روی یک تراشه (SoC – System on a Chip) را فراهم میکنند، که شامل پردازندهها، حافظهها، ماژولهای ورودی/خروجی، عناصر محاسباتی، و از همه مهمتر عناصر سختافزاری قابل برنامهریزی هستند. از این رو تمرکز این درس نیز روی آشنایی با این تراشهها و نحوه توصیف سختافزارها برای پیادهسازی روی آن است.
این درس با مقدمات مربوط به ایجاد کامپیوترها و تراشههای اولیه شروع میشود، سپس به معرفی روشهای مرسوم پیادهسازی مدارهای دیجیتال میپردازد. بعد از آشنایی کلی با روشهای متفاوت پیادهسازی روی تراشهها، تمرکز روی تراشههای با قابلیت برنامهریزی (PLD در حالت کلی و FPGA در حالت خاص و کاربردی) قرار میگیرد و نحوه ایجاد این قابلیت روی سختافزار، با وجود انتظار عدم تغییر آنها، توضیح داده میشود.
توصیف سختافزار به کمک یک زبان بهینه شده برای این کار به طراحان این امکان را میدهد که به سادگی سیستم موردنظر را توصیف و پیادهسازی کنند. بعد از آشنایی با FPGA، نیاز است که روشهای توصیف سیستمهای دیجیتال با قابلیت پیادهسازی روی این تراشهها بهطور کامل توضیح داده شود. درنتیجه، با انتخاب زبان VHDL، قسمت عمده این درس به نحوه توصیف مدارها به کمک این زبان اختصاص داده شدهاست. با معرفی دستورات پایه زبان VHDL امکان توصیف مدارهای منطقی ساده فراهم میشود و به مرور با معرفی دستورات شرطی و حلقه و سپس نحوه توصیف عناصر حافظه همگام با کلاک، نحوه توصیف سیستمهای ترکیبی و ترتیبی توضیح داده میشود.
سپس، آشنایی با ماشینهای حالت و نحوه پیادهسازی آنها این امکان را به طراحان میدهد که سیستمهای دیجیتال را بهصورت ساختیافته و منظمتر ایجاد و کنترل کنند. با ترکیب ماشین حالت و بخشهای پردازش داده و آشنایی با متد طراحی FSMD (طراحی بخشهای داده و کنترلی) توانایی توصیف سیستمهای بزرگتر را ایجاد میکند. با اضافه کردن حافظهها به سیستم (در صورت نیاز)، یک سیستم کامل سختافزاری توصیف میشود. درنهایت به کمک سنتز کدهای توصیف شده، امکان برنامهریزی FPGA برای انجام کار خواسته شده فراهم میشود.
از پیشنیازهای مهم این درس آشنایی کامل با مدار منطقی و همچنین معماری کامپیوتر است. برای همین پیشنهاد میشود. حتما مباحث درس مدارهای منطقی مرور شود تا درک مفاهیم پایه این درس سادهتر شود.
اطلاعات بیشتر
از مجموع 15 امتیاز
7 نظرنظرات بیشتر
دکتر مهدی امینیان، تحصیل آکادمیک خود را در سال ۸۱ در رشته مهندسی کامپیوتر از دانشگاه امیرکبیر آغاز کرد و در سال ۸۵ با گرایش سختافزار به پایان رساند. در سال ۸۵ در همان دانشگاه بهعنوان استعداد درخشان برای کارشناسیارشد مهندسی کامپیوتر با گرایش معماری کامپیوتر پذیرفته شد و تمرکز خود را روی مباحث دیجیتال همانند الکترونیک دیجیتال، VLSI، طراحی مدارهای دیجیتال و سپس روی مدارهای کوانتومی قرار داد و در سال ۸۷ مدرک کارشناسی ارشد خود را با پایاننامه ای در زمینه همانندسازی مدارهای کوانتومی اخذ کرد.
سپس، در اواسط سال ۸۸ برای ادامه تحصیل در مقطع دکترا به دانشگاه پلیتکنیک فدرال لوزان سوییس (EPFL) رفت و در دانشکده برق و گروه معماری پیشرفته کوانتومی پذیرفته شد. در انتهای سال ۲۰۱۴ (آذر ۱۳۹۳) توانست تز دکترای خود را در زمینه طراحی و ساخت تشخیصدهندههای نوری حساس به امواج مادون قرمز براساس مواد سیلیکونی و ژرمانیومی برای کار در دماهای فوق پایین به پایان برساند و مدرک دکترای خود را از یکی از بهترین دانشگاههای اروپا و جهان اخذ کند.
دکتر مهدی امینیان از سال ۹۴ بهعنوان عضو هیئت علمی مهندسی کامپیوتر دانشگاه گیلان مشغول به فعالیت است.
اطلاعات بیشتر