کتاب طراحی مدارهای دیجیتال با System Verilog

نویسنده/ مترجم Mark Zwolinskiمهندس علی کارگرنژاد

مهندس محمدتقی فاتحی خواجهمهندس ندا پرقیمت

ناشر نوآور
تعداد صفحات 352
سال چاپ 1401
نوبت چاپ 1
شابک 9786001680656
سی‌دی ندارد
وزن 528 گرم
قطع کتاب وزیری
رنگ صفحات سیاه سفید
جلد شومیز (مقوایی)

139,000 تومان

تعداد محصول:

139,000 تومان

کتاب طراحی مدارهای دیجیتال با System Verilog

نویسنده/ مترجم Mark Zwolinskiمهندس علی کارگرنژاد

مهندس محمدتقی فاتحی خواجهمهندس ندا پرقیمت

ناشر نوآور
تعداد صفحات 352
سال چاپ 1401
نوبت چاپ 1
شابک 9786001680656
سی‌دی ندارد
وزن 528 گرم
قطع کتاب وزیری
رنگ صفحات سیاه سفید
جلد شومیز (مقوایی)

139,000 تومان

طراحی مدارهاي دیجیتال با System Verilog

بعد از اين که “کتاب طراحي سيستم ديجيتال با VHDL” منتشر شد، ايده نوشتن يک کتاب طراحی مدارهای دیجیتال با system verilog بوسيله يک زبان توصيف سخت افزار به نظر جديد مي‌آمد.

اکنون کتاب طراحی سيستم ديجيتال با VHDL توسط چندين دانشگاه به عنوان مرجع اصلی پذيرفته شده و به زبان‌های لهستانی، چينی، ژاپنی و ايتاليايی ترجمه شده است. طولی نکشيد که بعد از انتشار ويرايش دوم طراحی سيستم ديجيتال با VHDL، System Verilog به عنوان يک زبان جديد توصيف سخت افزار پديدار شد.

کتاب طراحی مدارهای دیجیتال با system verilog به عنوان کتاب درسی مختص دانشجويان دوره ليسانس و هم فوق ليسانس می باشد. اکثر کتاب‌های وريلاگ و سيستم‌ وريلاگ، بر اساس طرح‌های عملی برای مهندسين بنا نهاده شده‌اند. بنابراين بعضی از ويژگی های سيستم‌وريلاگ به هيچ عنوان در اين کتب بيان نشده‌اند. در مقابل، جنبه‌هایی از طراحی ديجيتال در اين کتاب پوشش داده شده که در کتاب‌های نمونه سيستم‌وريلاگ ديگر نخواهد بود.

سرفصل‌ها برای مهندسی برق، الکترونيک و کامپيوتر در ميان کشورها، دانشگاه‌ها يا کالج‌ها متفاوت می باشد. مطالب مطرح در کتاب طراحی مدارهای دیجیتال با system verilog برای دانشجويان سال دوم و سوم کارشناسی و همچنين دانشجويان کارشناسی ارشد در نظر گرفته شده است. اين طور فرض می شود که دانشجويان با قواعد جبر بولی و طراحی منطق ترکيبی آشنا هستند.

در دانشگاه ساوتمپتون انگلستان سر فصل‌های دانشجوی سال اول دوره ليسانس، شامل طراحی ترتيبی آسنکرون و منطق قابل برنامه‌ريزی نيز مي‌باشد. بنابراين، اين کتاب بر اين اساس به وجود آمده است. اغلب اين گونه تصور می شده که مباحثی مانند سيستم‌وريلاگ برای تدريس در سال دوم بسيار اختصاصی بوده و بهتر است به سال آخر يا دوره فوق ليسانس موکول شود.

دلايل محکم و خوبی وجود دارد برای اينکه چرا بايد سيستم‌وريلاگ هرچه زودتر در برنامه درسی گنجانده شود. با افزايش پيچيدگی مدارهای مجتمع، کسب دانش علم سيستم‌ وريلاگ و ابزارهای طراحی مربوطه يک نياز برای دانش آموختگان به شمار می آيد. اگر اين مباحث را به سال آخر موکول کنيم، زمان کمی و شايد هيچ زمانی برای اينکه دانشجويان اين علم را در کار پروژه‌ای به کار ببندند وجود نداشته باشد.

ثانياً گفت و گو با همکاران در بسياری از کشورها نشان داد که دانشجويان امروزی برگزيدن علوم کامپيوتر يا مهندسی کامپيوتر را به مهندسی برق يا الکترونيک ترجيح می دهند. سيستم‌وريلاگ مفاهيم جذابی را برای دانشجويان کامپيوتر در طراحی سخت افزار عرضه کرده است. سرانجام ابزارهای شبيه‌سازی و سنتز و بسته طراحی FPGA ساخته شده و به طور نسبتاَ ارزان در موسسه‌های آموزشی و روی سيستم عامل کامپيوتر‌های شخصی در دسترس می باشند.

ساختار اين کتاب

فصل ۱ / ايده‌های را که در بطن اين کتاب است، معرفی می کند، به طور مثال استفاده از ابزارهای خودکارسازی طراحی الکترونيک و CMOS و تکنولوژی منطق قابل برنامه ريزی . ما همچنين بعضی از مشکلات مهندسين مثل محدوده نويز و گنجايش خروجی را در نظر گرفتيم.

در فصل ۲ / قواعد جبر بولی و طراحی منطق ترکيبی مرور می شوند. مسئله مهم زمان‌بندی و مشکلات مربوط به هزارد مورد بررسی قرار می گيرند. برخی تکنيک‌های مقدماتی برای نشان دادن داده‌ها مطرح می شود.

در فصل ۳/ سيستم‌وريلاگ به واسطه مدل‌های اوليه گيت منطقی معرفی می شود. در اين فصل بر اهميت کد مستند شده تاکيد می شود. ما نشان می دهيم که چطور نت ليست‌های گيت‌های اوليه ساخته می شوند و چگونه تاخيرها به واسطه گيت‌ها مدل‌سازی می شوند. ما همچنين مدل‌های پارامتری را مطرح خواهيم کرد. ايده استفاده از سيستم‌وريلاگ براي تصدیق مدل‌ها، با استفاده از testbench تعريف ميگردد.

در فصل ۴ / تکنيک‌های متنوع مدل‌سازی شرح داده می شود. بلوک‌های ساختاری ترکيبی ، ديکدرها، انکدرها، مالتی پلکسرها، جمع کننده‌ها و چک کننده‌های پريتی مدل‌سازی شده، با استفاده از يک رشته ساختار کد همزمان و ترتيبی سيستم‌وريلاگ، مدل سازی می شوند. مدل‌های سخت افزاری سيستم‌وريلاگ دراين فصل معرفی می شوند و در فصول ۵، ۶ و ۷ عملا مدل‌های سخت افزاری سنتز‌پذير بيان می شوند. گرچه بحث اينکه چه چيزهايی دقيقا پشتيبانی می شوند تا فصل ۱۰ به عقب افتاده است. روش طراحی testbench دوباره در فصل ۴ مطرح می شود. به علاوه نماد وابستگی IEEE معرفی می شود.

فصل ۵ / بلوک‌های ساختاری ترتيبی گوناگونی را نشان می دهد: لچ‌ها، فليپ فلاپ‌ها، ثبات‌ها، شمارنده‌ها، حافظه و يک مالتی پلکسر ترتيبی . به همان سبکی که در فصل ۴ استفاده شد با نماد وابستگی IEEE، طراحی testbench و معرفی ساختار کد‌بندی سيستم‌وريلاگ.

فصل ۶/شايد مهمترين فصل اين کتاب باشد و در مورد اين بحث می کند که در اصول طراحی ديجيتال چه چيزهايی ممکن است مطرح شود:طراحی ماشين‌های حالت متناهی . علائم چارت ASM بيان می شود. فرايند طراحی از چارت ASM به فليپ فلاپ‌های نوع D و منطق حالت بعدی و خروجی شرح داده می شود. مدل‌های سيستم‌وريلاگ ماشين‌های حالت معرفی می شوند.

در فصل ۷/ مفاهيم سه فصل قبل ترکيب می شوند. علائم چارت ASM برای بيان ماشين‌های حالت کوپله شده و خروجی های رجيستر شده، توسعه ميابند و بنابراين مسيرداده-کنترل‌کننده، قسمت‌بندی می شود. از اين رو ما ايده دستورالعمل در قالب سخت افزار را توضيح می دهيم و مدل‌سازی يک ريزپردازنده بسيار مقدماتی را در سيستم‌وريلاگ ادامه می دهيم. اين وسيله‌ای را برای معرفی واسط‌ها و پکيج‌ها تأمين می کند.

طراحی testbench در فصل ۸ با جزئيات بيشتر مورد بحث قرار می گيرد. پس از پوشش‌دهی تکنيک‌های فصل‌های قبل، ما بحث درباره معماری testbench، توليد آزمون تحميلی تصادفی و تائيد مبتنی بر اثبات را ادامه می دهيم.سيستم‌وريلاگ اصولا يک زبان مدل‌سازی باقی می ماند.

فصل۹/ عمليات يک شبيه ساز سيستم‌وريلاگ را توصيف مي‌کند. ابتدا ايده شبيه‌سازی  رويدادگرا توضيح داده می شود و سپس ويژگی های مخصوص سيستم‌وريلاگ مورد بحث قرار می گيرد.

مسئله ديگری که به طور فزاينده مهم شمرده می شود نقش سيستم‌وريلاگ به عنوان يک زبان برای توصيف مدل‌های سنتز به همان صورت که در فصل ۱۰ توصيف شد، می باشد. امروزه نوع عمده ابزارهای سنتز که در دسترس است، براي سنتز RTL می باشد.

اين ابزارها می توانند به وجود فليپ فلاپ‌ها و لچ‌ها در يک مدل سيستم‌وريلاگ پی ببرند. اين ساختارها توصیف شده‌اند. متقابلاً فليپ فلاپ‌ها می توانند به غلط ايجاد شوند اگر توصيف ضعيف نوشته شده باشد و يا توصيف شامل خطاهای معمول باشد. فرايند سنتز می تواند توسط محدوديت‌هايی کنترل شود. به دليل اينکه اين محدوديت‌ها خارج از خود زبان هستند آنها در شرايط کلي مورد بحث قرار می گيرند.

ساختارهای مناسب برای FPGA بيان شده است. و در نهايت سنتز رفتاری که انتظار می رود که يک تکنولوژی طراحی مهم شود، به طور خلاصه بررسی می شود.

فصل ۱۱ و ۱۲ / به مباحث آزمون و طراحی برای آزمون اختصاص داده شده‌اند. اغلب اين سطح از مطلب مورد اهمال قرار می گرفت. اما امروزه به عنوان يک بخش مهم از فرايند طراحی شناخته می شود. در فصل ۱۱ ايده مدل‌سازی خطا معرفی شده است. سپس شيوه‌های توليد آزمون بيان مي‌شود. اثرات يک آزمون توسط شبيه‌سازی خطا تعيين می شود.

در فصل ۱۲ سه اصل مهم در طراحی براي آزمون شرح داده می شود: مسير اسکن، آزمون خودساخته و اسکن مرزی . اين هميشه يک موضوع بی نتيجه بوده است. اما يک شبيه ساز سيستم‌وريلاگ به طور مثال می تواند به منظور اينکه نشان دهد چگونه يک ساختار آزمون خودساخته مي‌تواند اثرات متفاوتی برای مدارهای عاری از خطا و خطادار توليد کند، استفاده شود.

ما در فصل ۱۳ از سيستم‌وريلاگ به عنوان ابزاری برای کشف رفتارهای متناقض در مدارهای ترتيبی آسنکرون استفاده می کنيم. اگرچه روش غالب طراحی به طور رايج سنکرون است. محتملاً سيستم‌های ديجيتال به طور فزاينده شامل ارتباط آسنکرون مدارهای سنکرون با يکديگر خواهند بود. ما مفاهيم مد اساسی را معرفی می کنيم و نشان می دهيم چگونه مدارهای آسنکرون تجزيه و تحليل و طراحی می شوند. ما از شبيه‌سازی سيستم‌وريلاگ به منظور توضيح مشکلات هزاردها، رقابت‌ها و نقض زمان راه اندازی و نگه داری استفاده می کنيم. ما همچنين مشکل شبه پايداری را مورد بررسی قرار می دهيم.

فصل آخر کتاب طراحی مدارهای دیجیتال با system verilog Verilog-AMS و مدل‌سازی سيگنال ترکيبی را معرفی می کند. توضيح خلاصه‌ای از مبدل‌های ديجيتال به آنالوگ و آنالوگ به ديجيتال آورده شده است. ساختارهای Verilog-AMS که به عنوان مبدل‌ها مدل شده‌اند بيان شده است. ما اينجا همچنين ايده حلقه قفل شده فاز را معرفی می کنيم و يک مدل ساده سيگنال ترکيبی را ارائه داديم. پيوست به طور خلاصه تشريح می کند که چگونه سيستم‌وريلاگ با ورژن‌های قبلی وريلاگ متفاوت است.

انتهای هر فصل شامل تعدادی تمرين می باشد. اين تمرين‌ها همچنين بصورت کمکی هستند تا دستورات هر فصل را شبيه‌سازی و يا در صورت لزوم سنتز کنيد. براي اجرای اين اعمال شبيه‌سازی و سنتز ممکن است خواننده خودش مجبور به نوشتن testbench‌ها و فايل‌های محدوديت (قيد) شود.

فهرست مطالب کتاب طراحی مدارهای دیجیتال با system verilog:

پيشگفتار

فصل ۱ / مقدمه

۱-۱ طراحی ديجيتال امروزی(نوين)

۱-۲ طراحی با زبان‌های توصيف سخت افزار

۱-۲-۱ طراحی خودکار

۱-۲-۲ SystemVerilog چيست؟

۱-۲-۳ VHDL چيست؟

۱-۲-۴ شبيه سازی

۱-۲-۵ سنتز

۱-۲-۶ استفاده مجدد

۱-۲-۷ تأييد

۱-۲-۸ روند طراحی

۱-۳ تکنولوژی CMOS

۱-۳-۱ گيت‌های منطقی

۱-۳-۲ ASIC‌ها و FPGA

۱-۴ منطق قابل برنامه‌ريزی

۱-۵ مشخصات الکتريکی

۱-۵-۱ محدوده نويز

۱-۵-۲ گنجايش خروجی

فصل ۲ طراحی منطق ترکيبی

۲-۱ جبر بولی

۲-۱-۱ مقادير

۲-۱-۲ عملگرها

۲-۱-۳ جداول درستی

۲-۱-۴ قوانين جبر بولی

۲-۱-۵ قانون دمورگان

۲-۱-۶ قضيه بسط شانن

۲-۲ گيت‌های منطقی

۲-۳ طراحی منطق ترکيبی

۲-۳-۱ حداقل‌سازی منطق

۲-۳-۲ جدول‌های کارنو

۲-۴ زمان‌بندی

۲-۵ کدهای عددی

۲-۵-۱ اعداد صحيح

۲-۵-۲ اعداد با مميز ثابت

۲-۵-۳ اعداد با مميز شناور

۲-۵-۴ کاراکترهای الفبايی – عددی

۲-۵-۵ کدهای گری

۲-۵-۶ بيت‌های توازن

فصل ۳ / منطق تركيبی با استفاده از مدل‌های گيت سيستم‌وريلاگ

۳-۱- فايل‌ها و ماژول‌ها

۳-۲ شناسه‌ها، فضاها و توضيحات

۳-۳ مدل‌های گيت‌پايه

۳-۴ يك نت ليست ساده

۳-۵ مقادير منطقی

۳-۶ انتساب‌های پيوسته

۳-۶-۱ عملگرهای سيستم‌وريلاگ

۳-۷ تأخيرها

۳-۸ پارامترها

۳-۹ )Testbenchبستر آزمون)

فصل ۴ / بلاك‌های ساختار تركيبی

۴-۱ مالتی پلكسر (تسهيم‌كننده)

۴-۱-۱ مالتی پلكسر ۲ به ۱

۴-۱-۲ مالتی پلكسر ۴ به ۱

۴-۲ ديكدر (رمزگشا)

۴-۲-۱ ديكدر ۲ به ۴

۴-۲-۲ ديكدر پارامتری

۴-۲-۳ ديكدر سِوِن سگمنت (۷-seg)

۴-۳ رمزگذار اولويت

۴-۳-۱ مقادير يكتا و بي‌اهميت

۴-۴ جمع‌كننده‌ها

۴-۴-۱ مدل تابعی

۴-۴-۲ جمع‌كننده موجی

۴-۴-۳ Tasks (كارها)

۴-۵ چك‌كننده توازن

۴-۶ بافرهاي سه حالته

۴-۶-۱ منطق چند مقداری

۴-۷ Testbench بلاك‌های تركيبی

فصل ۵ / مدل‌های سيستم‌وريلاگ بلاک‌های منطقی ترتيبی

۵-۱ نگهدارنده‌ها(لچ‌ها)

۵-۱-۱ نگهدارنده SR

۵-۱-۲ نگهدارنده D

۵-۲ فليپ فلاپ‌ها

۵-۲-۱ فليپ فلاپ D تغييرکننده با لبه

۵-۲-۲ SET وRESET آسنکرون (نشاندن و بازنشاندن آسنکرون)

۵-۲-۳ Set و Reset سنکرون و فعال‌ساز کلاک

۵-۳ فليپ فلاپ‌های JK و T

۵-۴ ثبات‌ها و ثبات‌های انتقالی

۵-۴-۱ ثبات چندبيتی

۵-۴-۲ ثبات‌های انتقالی (شيفت رجيسترها)

۵-۵ شمارنده‌ها

۵-۵-۱ شمارنده باينری

۵-۵-۲ شمارنده جانسون

۵-۵-۳ ثبات انتقال با فيدبک خطی

۵-۶ حافظه

۵-۶-۱ ROM

۵-۶-۲ SRAM

۵-۶-۳ RAM سنکرون

۵-۷ ضرب‌کننده ترتيبی

۵-۸ Testbench براي بلاک‌های ساختار ترتيبی

۵-۸-۱ توليد کلاک

۵-۸-۲ Resetها و ساير سيگنال‌های قطعی

۵-۸-۳ پاسخ‌های بررسی

فصل ۶ / طراحی ترتيبی سنکرون

۶-۱ سيستم‌های ترتيبی سنکرون

۶-۲ مدل‌های سيستم‌های ترتيبی سنکرون

۶-۲-۱ ماشين‌های مور و ميلی

۶-۲-۲ ثبات‌های حالت

۶-۲-۳ طراحی يک شمارنده سه بيتی

۶-۳ ماشين‌های حالت الگوريتمی

۶-۴ سنتز از روی چارتهای ASM

۶-۴-۱ پياده‌سازی سخت افزار

۶-۴-۲ تخصيص حالت

۶-۴-۳ حداقل‌سازی حالت

۶-۵ ماشين‌های حالت در سيستم‌وريلاگ

۶-۵-۱ اولين مثال

۶-۵-۲ تشخيص‌دهنده بيت توازن متوالی

۶-۵-۳ ماشين Vending

۶-۵-۴ ذخيره‌سازی داده

۶-۶ test bench‌ها برای ماشين حالت

فصل ۷ /سيستم‌های ترتيبی پيچيده

۷-۱ ماشين‌های حالت به هم پيوسته

۷-۲ تقسيم‌بندی مسير داده- کنترل کننده

۷-۳ دستورالعمل‌ها

۷-۴ يک ميکروپروسسور ساده

۷-۵ مدل سيستم‌وريلاگ يک ميکروپروسسور ساده

فصل ۸ / نوشتن Testbench

۸-۱ Testbenchهاي پايه

۸-۱-۱ توليد کلاک

۸-۱-۲ Reset و ساير سيگنال‌های قطعی

۸-۱-۳ نمايش پاسخ‌ها

۸-۱-۴ پاسخ‌های موقت

۸-۱-۵ بردارهای تست از يک فايل

۸-۲ ساختار Testbench

۸-۲-۱ برنامه‌ها

۸-۳ توليد محرک‌های تصادفی ساختگی

۸-۳-۱ برنامه‌نويسی شي گرا

۸-۳-۲ توليد عدد تصادفی (Randomization)

۸-۴ تأييد مبتنی بر بازبينی

فصل ۹ / شبيه‌سازی سيستم‌وريلاگ

۹-۱ شبيه‌سازی فعال شده با رخداد

۹-۲ شبيه‌سازی سيستم‌وريلاگ

۹-۳ رقابت‌ها

۹-۳-۱ اجتناب از رقابت

۹-۴ مدل‌های تأخير

۹-۵ ابزارهای شبيه‌سازی

فصل ۱۰ / سنتز سيستم‌وريلاگ

۱۰-۱ سنتز RTL

۱۰-۱-۱ سيستم‌وريلاگ سنتزناپذير

۱۰-۱-۲ فليپ فلاپ‌ها و نگهدارنده‌هاي استنتاج شده

۱۰-۱-۲-۱ نگهدارنده حساس به سطح

۱۰-۱-۲-۲ فليپ فلاپ حساس به لبه

۱۰-۱-۳ منطق ترکيبی

۱۰-۱-۴ خلاصه‌ای از قوانين سنتز RTL

۱۰-۲ قيود

۱۰-۲-۱ صفات

۱۰-۲-۲ قيدهای مساحتی و ساختاری

۱۰-۲-۲-۱ کدگذاری حالت

۱۰-۲-۲-۲ قيدهای منبع

۱۰-۲-۲-۳- قيدهای زمانی

۱۰-۲-۳ صفات full_case و Parallel_case

۱۰-۳ سنتز FPGA‌ها

۱۰-۴ سنتز رفتاری

۱۰-۵ بازبينی نتايج سنتز

۱۰-۵-۱- شبيه‌سازی زمان‌بندی

فصل ۱۱ / آزمون سيستم‌های ديجيتالی

۱۱-۱ ضرورت وجود آزمون

۱۱-۲ نمونه‌های خطا

۱۱-۲-۱ مدل خطای گيرکرده تکی

۱۱-۲-۲ خطاهای PLA

۱۱-۳ توليد الگوی آزمون مبتنی خطا

۱۱-۳-۱ الگوريتم مسير حساس

۱۱-۳-۲ خطاهای غيرقابل تشخيص

۱۱-۳-۳ الگوريتم D

۱۱-۳-۴ PODEM

۱۱-۳-۵ از بين رفتن خطا

۱۱-۴ شبيه‌سازی خطا

۱۱-۴-۱ شبيه‌سازی موازی خطا

۱۱-۴-۲ شبيه‌سازی همزمان خطا

فصل ۱۲ / طراحی برای قابليت آزمون‌پذير بودن

۱۲-۱ بهبود قابليت آزمون پذيری تک منظوره

۱۲-۲ طراحی ساخت يافته برای آزمون

۱۲-۳ خودآزمايی درون ساخته شده

۱۲-۳-۱ مثال

۱۲-۳-۲ بررسی بلوک منطقی ساخته شده در داخل (BILBO)

۱۲-۴ اسکن مرزی (۱/۱۱۴۹ IEEE)

فصل ۱۳ / طراحی ترتيبی آسنکرون

۱۳-۱ مدارهای آسنکرون

۱۳-۲ تجزيه و تحليل مدارهای آسنکرون

۱۳-۲-۱ تجزيه و تحليل غير رسمی

۱۳-۲-۲ تجزيه و تحليل رسمی

۱۳-۳ طراحی مدارهای آسنکرون

۱۳-۴ ماشين‌های حالت آسنکرون

۱۳-۵ زمان‌های راه اندازی و نگهداری و ناپايداری

۱۳-۵-۱ محدوديت‌های مد اساسی و مدارهای سنکرون

۱۳-۵-۲ مدل‌سازی سيستم‌وريلاگ نقض زمان برپايی و نگهداری

۱۳-۵-۳ ناپايداری

فصل ۱۴ / مواجهه با دنياي آنالوگ

۱۴-۱ مبدل‌های ديجيتال به آنالوگ

۴-۲ مبدل‌های آنالوگ به ديجيتال

۱۴-۳ Verilog-AMS

۱۴-۳-۱ اصول وريلاگ_AMS

۱۴-۳-۲ دستورات كمكی

۱۴-۳-۳ مدلسازی سيگنال مختلط

۱۴-۴ حلقه‌های قفل فاز

۱۴-۵ شبيه‌سازهای AMS_وريلاگ

پيوست الف) پاسخ به سوالات انتخابی

منابع و مآخذ کتاب طراحی مدارهای دیجیتال با system verilog

وزن 528 g
ابعاد 25 × 17.5 × 1.5 cm

نقد و بررسی‌ها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین کسی باشید که دیدگاهی می نویسد “کتاب طراحی مدارهای دیجیتال با System Verilog”

نشانی ایمیل شما منتشر نخواهد شد.