پایان نامه بررسی و شبیه سازی عملکرد کنترلر CAN ، با استفاده از زبان توصیف سخت افزاری VHDL، و پیاده سازی آن بر روی FPGA

تعداد صفحات: 100 فرمت فایل: word کد فایل: 10001387
سال: 1385 مقطع: کارشناسی دسته بندی: پایان نامه مهندسی برق
قیمت قدیم:۱۶,۶۰۰ تومان
قیمت: ۱۴,۵۰۰ تومان
دانلود فایل
  • خلاصه
  • فهرست و منابع
  • خلاصه پایان نامه بررسی و شبیه سازی عملکرد کنترلر CAN ، با استفاده از زبان توصیف سخت افزاری VHDL، و پیاده سازی آن بر روی FPGA

    پایان نامه کارشناسی رشته مهندسی برق – الکترونیک 

    فصل اول

    1- مقدمه

    در دو دهه گذشته پیشرفت روز افزون علم الکترونیک تحولات شگرفی را در کار آمدی سطوح فناوری باعث گردیده است به شکلی که این روند رو به افزایش در عرصه های گوناگون از قبیل ارتباطات، پزشکی، اتوماسیون، نظامی و ... کاملا مشهود است.

    به عنوان نمونه در اتوماسیون صنعتی و روباتیک واحدهای الکترونیکی که بخش مهمی از سیستم بشمار می روند توانسته اند بهره وری سیستم را فزونی بخشند. از مسایل مطرح در این زمینه می توان طراحی و پیاده سازی شبکه های صنعتی را نام برد . از جمله این شبکه ها، (Control Area Network) CAN ، شبکه Profibus و شبکه Ethernet هستند. که هر یک از این شبکه ها در زمینه خاصی کاربرد دارند.

    در شبکه های فوق و از جمله شبکه کنترل محلی (CAN) نیاز به تراشه های کنترل شبکه است که از نوع تراشه های خاص بوده و انواع متفاوتی از آنها توسط کمپانیهای سازنده به بازار عرضه شده اند. یکی از این محصولات تراشه 82527 اینتل می باشد که مورد توجه طراحان شبکه های کنترل محلی قرار گرفته است.

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

    علاوه بر این در صورتی که تهیه یک تراشه با کاربرد خاص بنا به دلایل گوناگون از جمله عدم انتقال تکنولوژی مشکل باشد با داشتن مشخصات کاری آن تراشه به این روش می توان تراشه مورد نظر را بر روی تراشه های قابل برنامه ریزی پیاده سازی نمود.

    در این پروژه با استفاده از یکی از زبانهای توصیف سخت افزاری و تراشه های قابل برنامه ریزی به طراحی و پیاده سازی تراشه 82527 ( کنترلر گذرگاه CAN ) اقدام شده است. در عین حال اصلاحاتی نیز در عملکرد این تراشه لحاظ شده که کار آیی آنرا بهبود می بخشد. در ادامه این فصل ابتدا به معرفی گذرگاه CAN می پردازیم. پس از آن مروری بر تراشه های قابل برنامه ریزی و در انتها هم مروری بر زبانهای توصیف سخت افزاری خواهیم داشت.

    در فصل دوم مروری بر برخی از پیاده سازیها در ارتباط با طراحی و اصلاح پردازنده های عمومی و نیز پیاده سازی پردازشگرهای سیگنال دیجیتال خواهیم داشت. در فصل سوم یکی از پر کاربردترین کنترلرهای گذرگاه CAN و پروتکلهای ارتباطی در این شبکه را معرفی خواهیم نمود.در فصل چهارم به معرفی یکی از زبان های توصیف سخت افزار که در این پروژه مورد استفاده قرار گرفته است می پردازیم. در فصل پنجم به پیاده سازی کنترلر معرفی شده می پردازیم. در انتها نتایج حاصل از پیاده سازی را نشان خواهیم داد و به جمع بندی خواهیم پرداخت.

    1-2- معرفی CAN

    شبکه کنترل محلی (Control Area Network) برای کنترل سیم بندی های ساده تا شبکه های پیچیده قابل استفاده بوده و از جمله موارد کاربرد این شبکه را می توان سیستمهای اتوماسیون صنعتی، وسائل و تجهیزات پزشکی، صنایع خودرو، هواپیما، کشتی سازی و ... را نام برد.

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

    استانداردهای گوناگون با سرعتهای متفاوت که بر اساس قواعد CAN عمل می نمایند وضع گردیده است و هر یک از صنایع استفاده کننده از شبکه کنترل محلی یکی از این استانداردها را بکار می برند استفاده می نمایند.

    در این شبکه ارتباطات بین بخشهای مختلف به صورت سریال می باشد و اتصال اجزای مختلف این شبکه توسط گذرگاه سریالی که از پروتکلهای استاندارد CAN  پیروی می کند صورت می گیرد.

    بخشهای مختلف این شبکه عبارتند از :

    یک کنترلر شبکه، یک میکروکنترلر یا میکروپروسسور و تعداد لازم فرستنده – گیرنده پیام (Transciver) و ایزوله کننده های نوری (Opto cupler).

    میکروکنترلر به منظور راه اندازی و فرمان دادن به کنترلر شبکه بکار گرفته می شود. در بعضی از شبکه‌های بزرگ بیشتر از یک کنترلر وجود دارد. شکل های (1-1) تا (1-3) نحوه اتصال اجزا مختلف این شبکه را نشان می دهند.

    تراشه های کنترلر زیادی از شرکتهای سازنده نیمه هادی به بازار عرضه شده است. به عنوان نمونه تراشه های 82526 و 82527 از شرکت اینتل تراشه 82200 از کارخانه فیلیپس از جمله تراشه های کنترلر عرضه شده می باشند. کنترلر 82527 در صنعت کاربرد بیشتری دارد زیرا این تراشه از بقیه کاملتر است. از دلایل دیگر کاربرد این تراشه شرکت سازنده آن است، به دلیل اینکه محصولات شرکت اینتل در ایران رایج تر می باشد.

    کنترلر شبکه توسط گذرگاه سریال (CAN Bus) اطلاعات لازم را از گره های شبکه (فرستنده – گیرنده ها) دریافت نموده و در صورت لزوم در اختیار پردازنده سیستم قرار می دهد. همچنین با توجه به فرامین پردازنده سیستم پیامهائی را به گره های شبکه ارسال می کند.

    تاریخچه تکامل شبکه کنترل محلی (CAN)

    استفاده از شبکه داخلی در وسائط نقلیه توسط شرکت بوش (1983).

    تصویب و معرفی قواعد مربوط گذرگاه CAN (1986).

    ساخت و ارائه نخستین کنترلر گذرگاه CAN (1987).

    تصویب و ارائه نسخه دوم قواعد ارتباطات در گذرگاه CAN توسط شرکت بوش (1991).

    معرفی پروتکل (قواعد) لایه های بالائی در شبکه مذکور (1991).

    تشکیل و معرفی هیات کاربران CiA (CAN in Automation) (1992).

    ارائه قواعد مربوط به لایه کاربردی شبکه توسط CiA(1992).

    تولید اولین اتومبیل از کارخانه مرسدس بنز که از CAN استفاده نمود(1992).

    تصویب استاندارد ISO 11989 مربوط به CAN (1993).

    برگزاری اولین کنفرانس CAN توسط انجمن CiA (1994).

    ارائه اصلاحات استاندارد ISO 11898 (1995)..

    توسعه قواعد ارتباطات در CAN (2000). ‌‌[1] [2] [3] [4] [5].

     

    1-3- مقدمه ای بر تراشه های قابل برنامه ریزی

    مدارهای مجتمع با کاربرد خاص ASIC (Application Specific Integrated Ciccuits) به سه دسته تقسیم می شوند:

    الف – مدارهای کاملا خاص Full Custom  .

    ب- مدارهای نیمه سفارشی Semi – Custom  .

    ج- مدارهای قابل برنامه ریزی PLD  و Gate Array  .

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

    در مورد دسته ب همانند حالت قبل مدار با کمک نرم افزار ویژه طراحی شده و سپس نتیجه طراحی جهت ساخت در اختیار سازنده قرار می گیرد با این تفاوت که این بار مدار بر روی تراشه های نیمه خام گیت ها مثل AND و OR یا مدارهای دیگر بر روی آنها از قبل ایجاد گردیده و فقط اتصالات بین آنها وجود ندارد که اینها اتصالاتی هستند که با توجه به طرح مشتری بر روی تراشه ایجاد می گردند. یک نمونه این مدارها Gate Array می باشد.

    چکیده

    یکی از موضوعات مطرح در اتوماسیون صنعتی و روباتیک تبادل اطلاعات بین اجزاء شبکه مانند CPU و فرستنده و گیرنده هایی است که نظارت و کنترل اجزاء یک سیستم را بعهده دارند از جمله زیر ساختهای لازم برای تبادل اطلاعات وجود شبکه ها  و گذرگاه های تعریف شده و استاندارد برای اتصال اجزاء یک سیستم اتوماسیون صنعتی است شبکه کنترل محلی (CAN-Control Area Network) و گذرگاه آن مدتی است که در سیستمهای صنعتی مورد استفاده قرار گرفته است و تراشه های متعددی با عنوان کنترلر گذرگاه CAN مورد استفاده قرار می گیرد یکی از این محصولات تراشه 82527 اینتل می باشد که اخیرا مورد توجه طراحان شبکه های کنترل محلی قرار گرفته است .

    از ابداعات جدید علم الکترونیک که امروزه کاربرد روزافزونی یافته است طراحی و پیاده سازی مدارهای دیجیتال و پردازنده های با کاربرد خاص بر روی تراشه های قابل برنامه ریزی FPGA است از مزایای مهم این نوع پیاده سازی طراحی مدارهای با قابلیت پیکربندی مجدد بر اساس خواست طراح است .

    علاوه بر این در صورتی که تهیه یک تراشه با کاربرد خاص بنا به دلایل گوناگون از جمله عدم انتقال تکنولوژی مشکل باشد با داشتن و مشخصات کاری آن تراشه به این روش می توان تراشه مورد نظر را بر روی تراشه های قابل برنامه ریزی پیاده سازی نمود.

    در این پروژه با استفاده از زبان توصیف سخت افزاری VHDL و تراشه های قابل برنامه ریزی به طراحی و پیاده سازی تراشه 82527 (کنترلر گذرگاه CAN ) اقدام شده است در عین حال اصلاحاتی نیز در عملکرد این تراشه لحاظ شده که کارایی آن را بهبود می بخشد نتایج بدست آمده موفقیت این پروژه را در طراحی ، پیاده سازی و بهبود تراشه با انجام تغییرات پیشنهادی نشان می دهد .

  • فهرست و منابع پایان نامه بررسی و شبیه سازی عملکرد کنترلر CAN ، با استفاده از زبان توصیف سخت افزاری VHDL، و پیاده سازی آن بر روی FPGA

    فهرست:

    چکیده

     

    فصل اول – مقدمه

    مقدمه

    معرفی CAN

    مقدمه ای بر تراشه های قابل برنامه ریزی

    مروری بر زبان های توصیف سخت افزاری

    نرم افزارهای طراحی تراشه های FPGA

    1

     

    2

    3

    4

    6

    8

    9

     

    فصل دوم – مروری بر کارهای انجام شده

    2-1- مقدمه

    2-2- میکروکنترلر مقاوم شده در برابر تشعشع

    2-3- کانولوشن کننده های (Convolelrs) دو بعدی

    2-4- فیلترهای دیجیتال

    2-4-1- فیلترهای با پاسخ ضربه محدود (FIR)

    2-4-2- فیلترهای با پاسخ ضربه نامحدود (IIR)

    2-4-3- فیلترهای Wavelet متقارن

    2-5- تبدیل کسینوسی گسسته و معکوس آن (IDCT,DCT)

    2-6- مبدلهای فضای رنگی ()

    2-7- مدولاتور دیجیتال

    2-8- کنترلر گذرگاه USB

    2-9- کنترلر گذرگاه PCI

    2-10-کد کننده گفتار ITU-T G.723.1

    2-11- کد کننده ها کدفایر

    2-12- پیاده سازی سخت افزاری الگوریتم های سطح بالای پردازش تصویر

    با استفاده از پیکر بندی جزئی FPGA در زمان اجرا

    2-13- مترجم های زبان های سطح بالا به زبان VHDL

    2-14- پیاده سازی یک پردازشگر تصویر قابل پیکر بندی مجدد

    2-15- جمع بندی

     

    10

    11

    11

    14

    15

    15

    17

    18

    19

    19

    20

    21

    23

    24

    24

    25

     

    26

    28

    29

     

    فصل سوم – کنترلر گذرگاه CAN

    3-1- مقدمه

    3-2- پایه های تراشه کنترلر CAN

    3-3- بررسی سخت افزار کنترلر CAN

    3-3-1- شمارنده های خطا در کنترلر CAN

    3-3-2- ثبات های کنترل

    3-3-2-1- ثبات فعال کننده وقفه ها

    3-3-2-2- ثبات وضعیت

    3-3-2-3-  ثبات واسط CPU

    3-3-2-4- ثبات پیکربندی گذرگاه

    3-3-2-5- ثبات CIK out

    3-3-3- واحد زمان بندی بیت

    3-3-3-1- سرعت نامی نرخ بیت

    3-3-3-2- ثبات صفر زمان بندی بیت

    3-3-3-3- ثبات یک زمان بندی بیت

    3-3-4- ثبات ماسک توسعه یافته و استاندارد

    3-3-5- بسته های پیام

    3-3-5-1- میدان کنترل

    3-3-5-2- میدان داوری یا شناسه

    3-3-5-3- میدان داده

    3-3-5-4- میدان ترکیب بندی

    3-3-6- ثبات وقفه

    3-4- دریافت و ارسال پیام

    3-4-1- انواع فریم های اطلاعات قابل مبادله بین گره ها و کنترلر

    3-4-1-1- فریم داده

    3-4-1-2- فریم دور

    3-4-1-3- فریم خطا

    3-4-1-4- فریم اضافه بار

    3-4-2- بررسی کدهای خطا در تبادلات کنترلرCAN

     

     

    31

    32

    33

    34

    34

    36

    36

    37

    38

    38

    39

    40

    40

    41

    41

    42

    42

    42

    45

    45

    45

    45

    46

    46

    46

    48

    48

    49

    50

     

    فصل چهارم – خلاصه ای از خصوصیات اصلی زبان VHDL

    4-1- مقدمه

    4-2- شی (object)

    4-3- عملگرهای زبان VHDL

    4-4- توصیف کننده های یک مولفه

    4-5- ساختارهای همزمانی و ترتیبی

    4-6- روشهای توصیف سخت افزار

    4-6-1- روش توصیف ساختاری

    4-6-2- روش توصیف فلوی داده (Data Flow)

    4-6-3- روش توصیف رفتاری

    4-7- کد نویسی قابل سنتز

    4-8- جمع بندی

    51

    52

    52

    52

    53

    55

    55

    56

    57

    58

    59

    60

     

    فصل پنجم – پیاده سازی کنترلر گذرگاه CAN

    5-1- مقدمه

    5-2-ثبات ارسال و دریافت پیام در کنترلر

    5-3- ثبات ماسک

    5-4- سیستم مقایسه شناسه ها

    5-5- افزایش تعداد بسته های پیام

    5-6- واحد  محاسبه کننده کد CRC 

    5-7- دیاگرام پایه های کنترلر طراحی شده و پیاده سازی دیکودر آدرس

    5-8- نرم افزار مورد استفاده در پیاده سازی کنترلر CAN

    5-9- جمع بندی

     

     

    61

    62

    62

    63

    64

    66

    67

    72

    73

    73

    فصل ششم – نتایج و جمع بندی

    6-1- مقدمه

    6-2- نتایج حاصل از تست وضعیتهای مختلف کنترلر

    6-3- نتایج حاصل از تست واحد CRC توسعه یافته

    6-4- نتایج حاصل از تست  stuff bit

    6-5- ارسال فریم خطا

    6-6- بررسی وضعیت پایه فرکانس خروجی CLK out

    6-7- بررسی عملکرد حالت Sleep , pwd

    6-8- نتایج مربوط به پیاده سازی سخت افزار روی تراشه

    6-9- نتیجه گیری و پیشنهادات برای ادامه کار

    مراجع.

    منبع:

    [1]”82527 Serial Communications Controller”, Intel, 1996.

     

    [2] “Data Link Layer”, available at Am Weichselgarten 26, D-91058 Erlangen, headquarters@ can – cia. De.

     

    [3]”Milsone of CAN history”, available at: http://www.CiA . Com.

     

    [4] “CANopen,an overview”,available at: http://www. CiA .com.

     

    [5] “CAN in passenger cares”, avaigable at: http:// www. CiA. Com.

     

    [6] عباس وفائی مبانی تراشه های قابل برنامه ریزی دانشگاه اصفهان، 1380.

     

    [7] Ghosh . s, “Hardware Description Language, Concepts and principles”, IEEE Press, 1999.

     

    [8]DeLima,F.G.E.,Carro,L.,Lubaszewski,M.,Reis,R., Velazco,R.,”Designing a Radiation Hardened 8051 – Like Micro-Controller”,proceedings of the 13th Symposium on Integrated Circuits and Systems Design , Grenoble- France
     ( SBCCI’00 ).

     

    [9] “Implementing Logic with the Embedded Array in FLEX 10K Devices”, available at: http://www . altera . com.

     

    [10] Kazizimierz Wiatr and Ernest Jamro,”Implementation Image Data Convolutions operations in FPGA Rconfigurable Structures for Real – Time Vision Systems”,proceedings of the  The Interntional Conference on Information Technology: Coding and Computing.

     

    [11] ستار میرزا کوچکی، شهرام طلاکوب” پیاده سازی سخت افزاری یک فیلتر دیجیتال FIR معکوس شده”. دهمین کنفرانس برق، تبریز، اردیبهشت 81 .

     

    [12] Oppenhim, A. V. And Schafer, R.W.”Discrete-Time Signal processing”, prentice –Hall, 1998.

     

    [13]”Impementing FIR Filters in FLEX Devices”, available at http:// www. altera. cam.

     

    [14] Lorca, F.G, Kessal, L., Demigny, D. “Efficient ASIC and FPGA

    Implementations of IIR Filters for real time edge detection”, proceedings of

    The 1997 International Conference on Image processing, Cergy pontoise, France (ICIP‍‍َ97)

     

    [15] “Biquad IIR Filter”, available at http://www. Altera. com.

     

    [16] Mari`A.Trenas, Juan Lo`pez and Emilio L.Zapata, “FPGA Implementation of Wavelet packet Transform With Reconfigurable Tree Structure”,proceedings of The 26 th EUROMICRO Conference, Universidad de Malaga, 2000.

     

    [17] “Biorthogonal Wavelet Filter Megafunction”, available at http:// www. altera. com.

     

    [18] “Discrete Cosine Transform Megafunctions”, available at http:// www. altera . com.

     

    [19] “RGB2YCrCb8YCrCB2RGB Converter”,

    available at :http:// www . altera. com.

     

    [20]” Digital Modulator Megafunction”, available at: http://www altera. com.

     

    [21] “New Bus Architectures: How CardBus Fits with IEEE 1394, USB, and PCI and Others.”Intel Inc.1998, available online at: http:// :www. PC-CARD. Com/papers/new.

     

    [22]”USB Host Controller Megafunction”, available at

    http://www.altera.com.

     

    [23] سید مهدی فخرائی، فرشید رئیسی، مهدیه مهران،؛ پیاده سازی کنترلر گذرگاه PCI بر روی “FPGA پایان نامه کارشناسی ارشد، دانشگاه صنعتی خواجه نصرالدین طوسی، زمستان 79.

    [24] مهران شتابی، احمد اکبری، “ پیاده سازی کد کننده های گفتار با استفاده از سیستم های با قابلیت پیکربندی مجدد”، یازدهمین کنفرانس برق، شیراز، اردیبهشت 82.

    [25] مهدی قویدل جلیسه، حسن حاج قاسم، محمد ابراهیم نژاد سلمانی، “ طراحی و پیاده سازی ASIC کد کننده و کد بردار کد فایر”، یازدهمین کنفرانس برق، شیراز، اردیبهشت 82 .

    [26] محمود فتحی، صالح یوسفی. “ پیاده سازی سخت افزاری الگوریتمهای سطح بالای پردازش تصویر با استفاده از پیکربندی جزئی FPGA در زمان اجرا”، یازدهمین کنفرانس برق، شیراز، اردیبهشت 82 .

     

    [27] Rinker,R.,Hammes,J,“Compiling Image processing Applications to Reconfigurable Hardware”,Proceedings of the IEEE International Conference on Application Specific Systems, ASAP 2000.

     

    [28] Bios,G., Bosi,B.,” High performance Reconfigurable Coprocessor for Digital Mentor Graphics User s Group, Oregan,Oct. 1997

     

    [29] Haldar,M., Nayka, A., Choudhary,A., “FPGA Hardware Synthesis From

    Matlab”, 14th International Conference on VLSI Design, Bangalore, India,

    January 03-07,2001.

     

    [30] Lbrra, A.,Femandez, C., Alvarez, B. Femandez-Merono J.M..”FPGA Solution for Low Cost Applications of Real – Time Automated Visual Inspection (RT-AVI)

    Systems”, Dedicated Systems Magazine –2001 Q2 (http://www. dedicated –systems .com).

     

    [31] Woods,r., “Applying an XC 6200 to Real-Time Image Processing”, IEEE Design and Test of Computers, Vol.15, No.1, Jan-March 1998.

     

    [32] Fawcett, B.K., Watson, J.,”Reconfigurable processing with Field programmable

    Gate Arrays”, International Conference on Application-specific  System,

    Architectures, and processor, Chicago, IL, 1996.

     

    [33] “Embedded Microcontrollers”, Intel. 1996.

     

    [34] “CAN Specification 2.0 part B”, available online at http://www.CAN-Cia.de.

    [35] “CAN Specification 2.0 part A”, available online at http://www.CAN-Cia.de.

     

    [36] Navabi, Z., "VHDL Analysis and Modeling of Digital Systems" , 2nd edition, McGraw – Hill, 1998.

     

    [37] Ashenden, P.J., "The designer s Guide to VHDL" , 2nd edition, Academic Press, 2002.

     

    [38] Cohen, B., "VHDL Coding Styles and Methodologies " ,2nd edition, Kluwer Academic Publishers, 1999.

     

    [39] Armstrong, J.R. Gray , F.G. , " VHDL Design Repersentation and Synthesis" , 2nd edition , Prentice – Hall PTR , 2002.

     

    [40] Pellerin, D. and D.Taylor, D., "VHDL Made Easy" , Prentice Hall Inc, 1997.

     

    [41] Mano, M.M., " Computer System Architecture " 3rd edition , Prentice-Hall, 1993.

     

    [42] Mazidi, M.A. " The 80X86 IBMPC  & compatible computers" , 2 nd edition , prentice- Hall, VolumeII, 1998.

     

    [43] Anderw Tanebaum, S." computer Networks" , 3rd edition, Prentice-Hall, 1996.

     

    [44] Nair, R ., Ryan G., Farzaneh, F., "A symbol Based Algorithm for Hardware Implementation of cyclic Redundancy Check (CRC)" , 1997 VHDL International User s Forum , Arlington, 1997.

     

    [45] Atmel Inc. " Configurable Lagic Data Book" , 2001.

    .

ثبت سفارش
عنوان محصول
قیمت