FPGA
پروگرم کردن FPGAها وابسته یه نوع آنها است. FPGA از خانواده های متفاوتی تشکیل شده است که هر کدام قابلیتهای خاص خود را شامل می شود. اصولا باید اول با نوع نیاز سپس با خود تراشه آشنا باشید که البته روش پروگرم شدن هم میتواند به خودی خود در طرح نهایی موثر باشد.
معمولا FPGA ها به روش JTAG برنامه ریزی می شوند که در این روش از چهار پین استفاده می کنند:
1- TDI که یک پین ورودی است . این پین آدرس و دیتا را به داخل چیپ هدایت میکند.
2- TDO که یک پین خروجی است و می توان از طریق آن برنامه ریزی چیپ را آزمایش کرد. ( در این روش TDI با TDO مقایسه می شود)
3- TCK که یک پین ورودی است و از طریق این پین Clock برنامه ریزی چیپ تامین می شود. (پین های TDI و TDO با توجه به سطح پالس های این (کلاک) Clock عکس العمل نشان می دهند. که TDI با لبه بالا رونده و TDO با لبه پایین رونده عمل می کنند.)
4- TMS - از طریق این پین FPGA ریست می شود و یا می توان مد تست را مشخص کرد.
در عمل شما نیازی به گاهی کامل از سیگنالهای مورد نیاز این پینها نخواهید داشت زیرا تمام سیگنالهای مورد نیاز توسط پروگرمر تامین می شوند اما هنگامی که خود شما وظیفه اتصال اینترفیس پینهای کانکتور پارالل و پینهای تراشه را دارید این گاهی مختصر، مفید خواهد بود. برای نمونه در خانواده ALTERA می توانید چند تراشه را با هم و بطور همزمان برنامه ریزی کنید که در این حالت پین TDO از تراشه اول را به پین TDI از تراشه بعد متصل می کنید، پین TDO از آخرین تراشه نیز به پین همنام آن روی Connector پارالل متصل می شود. البته باید توجه داشته باشید که اتصال تراشه و پورت پارالل به صورت غیر مستقیم و از طریق یک بافر راه انداز، برقرار می شود. برای اطلاعات بیشتر به برگه اطلاعاتی چیپ مورد نظر و نرم افزار مربوطه مراجعه کنید.
پروگرمری که در MAX+PLUS II و از روش JTAG استفاده میکند Byte Blaster نام دارد.
حتما توجه داشته باشید که پینهای برنامه ریزی بعد از عملیات پروگرم کردن وابسته به مشخصات تراشه می توانند به حالت های غیر فعال، High impedance و یا I/O تبدیل شوند که بخصوص در حالت I/O با ید اتصالات و وضعیت این پینها را برای جلوگیری از اتصالات نا خواسته پیشبینی کنید.
روشهای دیگری نیز برای پروگرم کدن چیپ وجود دارند که نسبت به نوع تراشه،پروگرمر و طرح شما انتخاب می شوند.
نوشته اصلی توسط rezababa
معمولا FPGA ها به روش JTAG برنامه ریزی می شوند که در این روش از چهار پین استفاده می کنند:
1- TDI که یک پین ورودی است . این پین آدرس و دیتا را به داخل چیپ هدایت میکند.
2- TDO که یک پین خروجی است و می توان از طریق آن برنامه ریزی چیپ را آزمایش کرد. ( در این روش TDI با TDO مقایسه می شود)
3- TCK که یک پین ورودی است و از طریق این پین Clock برنامه ریزی چیپ تامین می شود. (پین های TDI و TDO با توجه به سطح پالس های این (کلاک) Clock عکس العمل نشان می دهند. که TDI با لبه بالا رونده و TDO با لبه پایین رونده عمل می کنند.)
4- TMS - از طریق این پین FPGA ریست می شود و یا می توان مد تست را مشخص کرد.
در عمل شما نیازی به گاهی کامل از سیگنالهای مورد نیاز این پینها نخواهید داشت زیرا تمام سیگنالهای مورد نیاز توسط پروگرمر تامین می شوند اما هنگامی که خود شما وظیفه اتصال اینترفیس پینهای کانکتور پارالل و پینهای تراشه را دارید این گاهی مختصر، مفید خواهد بود. برای نمونه در خانواده ALTERA می توانید چند تراشه را با هم و بطور همزمان برنامه ریزی کنید که در این حالت پین TDO از تراشه اول را به پین TDI از تراشه بعد متصل می کنید، پین TDO از آخرین تراشه نیز به پین همنام آن روی Connector پارالل متصل می شود. البته باید توجه داشته باشید که اتصال تراشه و پورت پارالل به صورت غیر مستقیم و از طریق یک بافر راه انداز، برقرار می شود. برای اطلاعات بیشتر به برگه اطلاعاتی چیپ مورد نظر و نرم افزار مربوطه مراجعه کنید.
پروگرمری که در MAX+PLUS II و از روش JTAG استفاده میکند Byte Blaster نام دارد.
حتما توجه داشته باشید که پینهای برنامه ریزی بعد از عملیات پروگرم کردن وابسته به مشخصات تراشه می توانند به حالت های غیر فعال، High impedance و یا I/O تبدیل شوند که بخصوص در حالت I/O با ید اتصالات و وضعیت این پینها را برای جلوگیری از اتصالات نا خواسته پیشبینی کنید.
روشهای دیگری نیز برای پروگرم کدن چیپ وجود دارند که نسبت به نوع تراشه،پروگرمر و طرح شما انتخاب می شوند.
دیدگاه