سیستمهای توکار (تعبیه شده) Embedded Systems
Download
Report
Transcript سیستمهای توکار (تعبیه شده) Embedded Systems
y
محمد رضا حسینی
فهرست مطالب
• معرفی سیستمهای توکار
• حوزههای کاربرد
• روند تکامل
• خصوصیات
• روند توسعه
• نرم افزار
سیستمهای توکار -اردیبهشت ۱۳۹۱
2
؟؟؟
سیستمهای توکار -اردیبهشت ۱۳۹۱
3
Raspberry Pi
Linux •
700 MHz ARM •
256MB memory •
HDMI •
USB •
25$ - 35$ •
4
۱۳۹۱ اردیبهشت- سیستمهای توکار
سؤال؟
سیستمهای توکار -اردیبهشت ۱۳۹۱
5
سیستم توکار
ی
• یک سیستم کامپیوتر
• کاربرد خاص و ویژه
• جزیی از سیستمی بزرگتر
سیستمهای توکار -اردیبهشت ۱۳۹۱
6
ی
سیستم کامپیوتر
• سخت افزار
– پردازنده
– حافظه
• نرم افزار
– سیستم عامل
• توسعه نرمافزار سادهتر از سخت افزار است.
سیستمهای توکار -اردیبهشت ۱۳۹۱
7
حوزههای کاربرد
• شبکه
• وسایل دیجیتال
• صنعت
– تلویزیون
• هوا فضا
– Mp3 player
• نیروگاههای هستهای
• صنایع نظامی
• پزشکی
– تجهیزات آزمایشگاهی
• رباتیک
سیستمهای توکار -اردیبهشت ۱۳۹۱
8
وسایل دیجیتال
سیستمهای توکار -اردیبهشت ۱۳۹۱
9
تجهیزات شبکه
سیستمهای توکار -اردیبهشت ۱۳۹۱
10
رباتیک
سیستمهای توکار -اردیبهشت ۱۳۹۱
11
سیستمهای توکار -اردیبهشت ۱۳۹۱
12
سیستمهای توکار -اردیبهشت ۱۳۹۱
13
تاریخچه
• Apollo Guidance Computer
• ۱۹۶۶
• نا مطمئنترین
قسمت آپولو!
سیستمهای توکار -اردیبهشت ۱۳۹۱
14
تاریخچه -ادامه
• ظهور میکروپروسسور و میکرو کنترلرها
• کاهش قیمتها و پیشرفت تکنولوژی
• پردازندههای جدید
• FPGA
• ARM
• Linux
سیستمهای توکار -اردیبهشت ۱۳۹۱
15
خصوصیات
• انجام یک عمل خاص
• جزیی از یک سیستم بزرگتر
• بالدرنگ ()real time
• محدودیت در منابع
سیستمهای توکار -اردیبهشت ۱۳۹۱
16
مالحظات و محدودیتها
• قدرت پردازش ی
• حافظه
– حجم
– تکنولوژی
• فضای ذخیره سازی (حافظه جانبی)
• ابزار ذخیره سازی
سیستمهای توکار -اردیبهشت ۱۳۹۱
17
مالحظات و محدودیتها -ادامه
• تعامل با کاربر
– پورتهای ارتباطی
• فرایند بوت
– بوت سریع
سیستمهای توکار -اردیبهشت ۱۳۹۱
18
پردازنده ها
• تنوع بسیار زیاد
– Von Neumannو Harvard
– RISCو CISC
– خیلی ضعیف و خیلی قوی
• معماریهای معمو ل:
• ،Blackfin ،ARM ،Microblaze ،PowerPC ،MIPS ،x86
... ،Coldfire ،SPARC
سیستمهای توکار -اردیبهشت ۱۳۹۱
19
ارتباط با کاربر
• بدون ارتباط
• LED
• دکمه
• پورت سریال
• LCD
• صفحه ملس ی
• موس و کیبورد
سیستمهای توکار -اردیبهشت ۱۳۹۱
20
بوردهای آماده
• برای پیاده سازی یک سیستم توکار معموال از بوردهای آماده استفاده میشود.
• ویژگیها و امکانات متنوع
• پردازنده +دستگ اهها و ابزارهای جانبی
– انواع پورتها
– صفحه نمایش
– LED
– امکانات توسعه
سیستمهای توکار -اردیبهشت ۱۳۹۱
21
بوردهای آماده ـ ادامه
Xilinx ML505 •
Virtex5 •
Serial •
USB •
SATA •
VGA •
Flash •
Ethernet •
22
۱۳۹۱ اردیبهشت- سیستمهای توکار
بوردهای آماده ـ ادامه
• Inrevium
• فقط پورت سریال!
سیستمهای توکار -اردیبهشت ۱۳۹۱
23
نرم افزار
• بدون سیستم عامل
– Stand alone applications
– Interrupt controlled
–…
• با سیستم عامل
– یک سیستم عامل
– بقیهی نرمافزارها روی سیستم عامل
– انعطاف پذیری زیاد
سیستمهای توکار -اردیبهشت ۱۳۹۱
24
سیستمعاملهای توکار
• بالدرنگ ()RTOS
• غیر بالدرنگ
• معماری سختافزار
• قابلیتها
• هزینه
– رایگان O(100000$) ، O(10000$) ،
سیستمهای توکار -اردیبهشت ۱۳۹۱
25
ادامه- سیستمعاملهای توکار
• لینوکس
uClinux –
Windriver vxWorks –
Montavista Mobilinux –
Windows CE •
eCos •
26
۱۳۹۱ اردیبهشت- سیستمهای توکار
تخصصهای مورد نیاز
الکترونیک
• طراحی بورد ،استفاده از بورد
سخت افزار
• ارتباط نرم افزار و سخت افزار
• طراحی سیستم و کار با سخت افزار
نرم افزار
• توسعه نرم افزار
سیستمهای توکار -اردیبهشت ۱۳۹۱
27
مراحل کار
• انتخاب بورد /طراحی بورد
• انتخاب سیستم عامل
• برقراری امکان استفاده از قابلیتها و ابزارهای سخت افزار
– شناساندن سخت افزار به سیستم عامل
• پیاده سازی برنامهها
• ریختن نرم افزار روی سخت افزار!
سیستمهای توکار -اردیبهشت ۱۳۹۱
28
توسعه نرم افزار
• در کامپیوترهای معمولی
– توسعه نرم افزار روی همان محیطی که استفاده میشود.
• در سیستم های توکار
– توسعه نرم افزار روی محیطی ( )hostمتفاوت با محیطی که نرم افزار
استفاده میشود (.)target
سیستمهای توکار -اردیبهشت ۱۳۹۱
29
Cross Compile
• کامپیوتر میزبان x86
• کامپیوتر هدف ARM
• نرم افزار ،روی کامپیوتر x86برای معماری ARMکامپایل
میشود.
– روی کامپیوترمیزبان قابل اجرا نیست
– انتقال به کامپیوتر هدف
سیستمهای توکار -اردیبهشت ۱۳۹۱
30
DEBUG
• Instrumentation
– اضافه کردن کد به منظور جمع آوری اطالعات
• On-Chip Debugging
– اجرای برنامه روی کامپیوتر هدف و دیباگ کردن برنامه روی کامپی وتر
میزبان
سیستمهای توکار -اردیبهشت ۱۳۹۱
31
On-Chip Debugging
• نیاز به ابزار مخصوص دارد
– JTAG
– پورت سریال
– دیباگر
• gdb
– سرور روی یک کامپیوتر
– کالینت روی دیگری
– انتقال اطالعات بین سرور و کالینت
سیستمهای توکار -اردیبهشت ۱۳۹۱
32
ی
مالحظات نرم افزار
• پایداری نرم افزار
• محدودیت منابع
• بهینگی
• بروزآوری
سیستمهای توکار -اردیبهشت ۱۳۹۱
33
بعض ی مشکالت متداو ل
• Endianness
– ارتباط سیستم embeddedبا سیستم های دیگر
• فایل سیستمهای نامتداو ل
– JFFS2
ت کتابخانهها
• محدودی
– uclibcبه جای glibc
– Linux Threads
سیستمهای توکار -اردیبهشت ۱۳۹۱
34
جمع بندی
• سیستمهای کامپیوتری با کاربرد خاص
• پیچیدگی توسعه
• دانش فنی باال
• بکر
سیستمهای توکار -اردیبهشت ۱۳۹۱
35
سیستمهای توکار -اردیبهشت ۱۳۹۱
36