سیستمهای توکار (تعبیه شده) Embedded Systems
y. سیستمهای توکار (تعبیه شده) Embedded Systems. محمد رضا حسینی. دانشگاه صنعتی اصفهان دانشکدهی برق و کامپیوتر اردیبهشت ماه 13۹۱. فهرست مطالب. معرفی سیستمهای توکار حوزههای کاربرد روند تکامل خصوصیات روند توسعه نرم افزار. ؟؟؟. Raspberry Pi. Linux 700 MHz ARM 256MB memory HDMI
سیستمهای توکار (تعبیه شده) Embedded Systems
E N D
Presentation Transcript
y سیستمهای توکار (تعبیه شده)Embedded Systems محمدرضا حسینی • دانشگاه صنعتی اصفهان • دانشکدهی برق و کامپیوتر • اردیبهشت ماه 13۹۱
فهرست مطالب سیستمهای توکار - اردیبهشت ۱۳۹۱ معرفی سیستمهای توکار حوزههای کاربرد روند تکامل خصوصیات روند توسعه نرم افزار
؟؟؟ سیستمهای توکار - اردیبهشت ۱۳۹۱
Raspberry Pi سیستمهای توکار - اردیبهشت ۱۳۹۱ Linux 700 MHz ARM 256MB memory HDMI USB 25$ - 35$
سؤال؟ = ? + سیستمهای توکار - اردیبهشت ۱۳۹۱
سیستم توکار سیستمهای توکار - اردیبهشت ۱۳۹۱ یک سیستم کامپیوتری کاربرد خاص و ویژه جزیی از سیستمی بزرگتر
سیستم کامپیوتری سیستمهای توکار - اردیبهشت ۱۳۹۱ • سخت افزار • پردازنده • حافظه • نرم افزار • سیستم عامل • توسعه نرمافزار سادهتر از سخت افزار است.
حوزههای کاربرد سیستمهای توکار - اردیبهشت ۱۳۹۱ • وسایل دیجیتال • تلویزیون • Mp3 player • پزشکی • تجهیزات آزمایشگاهی • رباتیک • شبکه • صنعت • هوا فضا • نیروگاههای هستهای • صنایع نظامی
وسایل دیجیتال سیستمهای توکار - اردیبهشت ۱۳۹۱
تجهیزات شبکه سیستمهای توکار - اردیبهشت ۱۳۹۱
رباتیک سیستمهای توکار - اردیبهشت ۱۳۹۱
تاریخچه سیستمهای توکار - اردیبهشت ۱۳۹۱ Apollo Guidance Computer ۱۹۶۶ نا مطمئنترین قسمت آپولو!
تاریخچه - ادامه سیستمهای توکار - اردیبهشت ۱۳۹۱ ظهور میکروپروسسور و میکرو کنترلرها کاهش قیمتها و پیشرفت تکنولوژی پردازندههای جدید FPGA ARM Linux
خصوصیات سیستمهای توکار - اردیبهشت ۱۳۹۱ انجام یک عمل خاص جزیی از یک سیستم بزرگتر بلادرنگ (real time) محدودیت در منابع
ملاحظات و محدودیتها سیستمهای توکار - اردیبهشت ۱۳۹۱ • قدرت پردازشی • حافظه • حجم • تکنولوژی • فضای ذخیره سازی (حافظه جانبی) • ابزار ذخیره سازی
ملاحظات و محدودیتها - ادامه سیستمهای توکار - اردیبهشت ۱۳۹۱ • تعامل با کاربر • پورتهای ارتباطی • فرایند بوت • بوت سریع
پردازنده ها سیستمهای توکار - اردیبهشت ۱۳۹۱ • تنوع بسیار زیاد • Von Neumann و Harvard • RISC و CISC • خیلی ضعیف و خیلی قوی • معماریهای معمول: • x86، MIPS، PowerPC، Microblaze، ARM، Blackfin، SPARC، Coldfire، ...
ارتباط با کاربر سیستمهای توکار - اردیبهشت ۱۳۹۱ بدون ارتباط LED دکمه پورت سریال LCD صفحه لمسی موس و کیبورد
بوردهای آماده سیستمهای توکار - اردیبهشت ۱۳۹۱ • برای پیاده سازی یک سیستم توکار معمولا از بوردهای آماده استفاده میشود. • ویژگیها و امکانات متنوع • پردازنده + دستگاهها و ابزارهای جانبی • انواع پورتها • صفحه نمایش • LED • امکانات توسعه
بوردهای آماده ـ ادامه سیستمهای توکار - اردیبهشت ۱۳۹۱ Xilinx ML505 Virtex5 Serial USB SATA VGA Flash Ethernet
بوردهای آماده ـ ادامه سیستمهای توکار - اردیبهشت ۱۳۹۱ Inrevium فقط پورت سریال!
نرم افزار سیستمهای توکار - اردیبهشت ۱۳۹۱ • بدون سیستم عامل • Stand alone applications • Interrupt controlled • … • با سیستم عامل • یک سیستم عامل • بقیهی نرمافزارها روی سیستم عامل • انعطاف پذیری زیاد
سیستمعاملهای توکار سیستمهای توکار - اردیبهشت ۱۳۹۱ • بلادرنگ (RTOS) • غیر بلادرنگ • معماری سختافزار • قابلیتها • هزینه • رایگان ،O(10000$) ، O(100000$)
سیستمعاملهای توکار - ادامه سیستمهای توکار - اردیبهشت ۱۳۹۱ • لینوکس • uClinux • WindrivervxWorks • MontavistaMobilinux • Windows CE • eCos
تخصصهای مورد نیاز سیستمهای توکار - اردیبهشت ۱۳۹۱
مراحل کار سیستمهای توکار - اردیبهشت ۱۳۹۱ • انتخاب بورد / طراحی بورد • انتخاب سیستم عامل • برقراری امکان استفاده از قابلیتها و ابزارهای سخت افزار • شناساندن سخت افزار به سیستم عامل • پیاده سازی برنامهها • ریختن نرم افزار روی سخت افزار!
توسعه نرم افزار سیستمهای توکار - اردیبهشت ۱۳۹۱ • در کامپیوترهای معمولی • توسعه نرم افزار روی همان محیطی که استفاده میشود. • در سیستم های توکار • توسعه نرم افزار روی محیطی (host) متفاوت با محیطی که نرم افزار استفاده میشود (target).
Cross Compile سیستمهای توکار - اردیبهشت ۱۳۹۱ • کامپیوتر میزبان x86 • کامپیوتر هدف ARM • نرم افزار، روی کامپیوتر x86 برای معماری ARM کامپایل میشود. • روی کامپیوترمیزبان قابل اجرا نیست • انتقال به کامپیوتر هدف
DEBUG سیستمهای توکار - اردیبهشت ۱۳۹۱ • Instrumentation • اضافه کردن کد به منظور جمع آوری اطلاعات • On-Chip Debugging • اجرای برنامه روی کامپیوتر هدف و دیباگ کردن برنامه روی کامپیوتر میزبان
On-Chip Debugging سیستمهای توکار - اردیبهشت ۱۳۹۱ • نیاز به ابزار مخصوص دارد • JTAG • پورت سریال • دیباگر • gdb • سرور روی یک کامپیوتر • کلاینت روی دیگری • انتقال اطلاعات بین سرور و کلاینت
ملاحظات نرم افزاری سیستمهای توکار - اردیبهشت ۱۳۹۱ پایداری نرم افزار محدودیت منابع بهینگی بروزآوری
بعضی مشکلات متداول سیستمهای توکار - اردیبهشت ۱۳۹۱ • Endianness • ارتباط سیستم embedded با سیستم های دیگر • فایل سیستمهای نامتداول • JFFS2 • محدودیت کتابخانهها • uclibc به جای glibc • Linux Threads
جمع بندی سیستمهای توکار - اردیبهشت ۱۳۹۱ سیستمهای کامپیوتری با کاربرد خاص پیچیدگی توسعه دانش فنی بالا بکر
? سیستمهای توکار - اردیبهشت ۱۳۹۱