کج نویس

می خوام شگفت انگیز شم

کج نویس

می خوام شگفت انگیز شم

کج نویس

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

+ آموزش‌های مربوط به FPGA رو شروع کردم، این مطالب رو تو وبلاگ اگزور وان میارم، تو لیست پیوندها هست.

طبقه بندی موضوعی
آخرین نظرات
پیوندها
جمعه, ۱ دی ۱۳۹۶، ۰۶:۴۶ ب.ظ

راه اندازی AD9371: استفاده از Cygwin

سلام

می‌خوام از این به بعد آموزش بخشی از کارهایی که انجام میدم رو اینجا بذارم. ، فعلا سازماندهی نداره ولی به تدریج بهتر میشه. می‌دونم که بهتر بود برای اولین کار یه آموزش مقدماتی‌تر میذاشتم. ان شالله این کارو می‌کنم.

امروز می‌خوام در مورد درست کردن پروژه Vivado با Cygwin صحبت کنم. سیگوین یه نرم افزاره که محیط لینوکس رو تو ویندوز شبیه سازی می‌کنه. مزیت کار با سیگوین اینه که تمام آی‌پی‌ها و اینترفیس‌ها رو به ترتیب درستش می‌سازه و نیازی نیست شما دستی این کار رو بکنید، به هر حال برای پروژه‌هایی که تو github هست استفاده از سیگوین بهتره. مثلا من در حین اینکه این پست رو می‌نوشتم پروژه راه اندازی AD9361 رو با سیگوین ساختم. الان دارم برای ساخت پروژه fpga و راه اندازی ماژول AD9371 از این نرم افزار استفاده می‌کنم. البته هنوز راه نیفتاده، AD9361 ساده‌تر بود ولی این یکی یک مقدار تخسه. می‌تونید از این صفحه برای ساخت پروژه Vivado استفاده کنید. سیگوین رو از اینجا  دانلودش کنید. یه سری Package داره شما باید shell و make (توی Devel) رو هم تیکش رو بزنید. وقتی installer رو اجرا کردید همه رو دیفالت اوکی کنید تو پنجره Select Packegas زیر شاخه Devel و شاخه Shells ، make  و bash رو انتخاب کنید.  Git رو تو همون صفحه سیگوین لینک داده می‌تونید دانلودش کنید.  بعدش می‌تونید از این صفحه برای ساخت پروژه Vivado استفاده کنید. وقتی git clone رو بزنید خطا میده، باید برید تو git،

git remote add origin  git@github.com:analogdevicesinc/hdl.git

رو بزنید. احتمالا باید درست بشه. برای git clone از پروتکل https استفاده کنید. Ssh یک مقدار فرآیندش پیچیده است. یعنی به جای دستور

git clone git@github.com:analogdevicesinc/hdl.git

از دستور

git clone https://github.com/analogdevicesinc/hdl.git

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

۹۶/۱۰/۰۱
هایتن

نظرات  (۱۱)

این شوخی بود؟‌0-0
پاسخ:
شوخی که نبود ولی خب مباحثش پیشرفته بود، ان شالله شروع می کنم از مباحث مقدماتی هم میگم :)
عه چه خوب آموزش میذارید ...
میگم نمیشه مثلاً آموزش طراحی مودمم بذارید -_- که یه سری دیتا بفرسته و یه سری دیتا دریافت کنه :| ... قشنگ معلومه این پروژه این ترم درس طراحیم منم هیچکارشو نکردم هنوز :))

پاسخ:
خب این مودم شما باید مدولاسیونش معلوم باشه، بعد اینکه قراره از ADC و DAC هم استفاده بشه یا نه فقط یه لوپ بک داخل FPGA هستش
شما کارتون رو شروع کنید کمک لازم داشتید بگید من راهنمایی کنم :)
سلام بر دکتر بزرگ
خیلی خوبه ادامه بده. خودش خود بخود درست میشه.
فقط ادامه بده.
پاسخ:
سلام محمد، آره حالا یه آرشیوم درست بشه خوبه، بعدا میشه مرتبش کرد 
به ادامه دادنم شک داری لابد :)
سلام دکتر
یه پیشنهاد برای اول کار. چون میدونم بعدا سخته که درست بشه این یکی براحتی!
همین اول یه وبلاگ جدید برای این کار به نظرم ایجاد کن مثلا HiTen_FPGA چون رفتم سرچ کردم "ماژول AD9371" دیدم لینکت تو گوگل 4امی بود!
اگه پستاتو تو وبلاگ خودش بنویسی علاوه هزاران مزایای دیگه اش :)، بهترینش اینه که گوگل از اول این لینک رو میشناسه (تو وبلاگ جدید)
پاسخ:
سلام محمد
این ad9371 یه ماژول ADC و DAC چند کاناله ست که برای سرعت های بالا (بیشتر از 100 مگ) طراحی شده، یه تکنولوژی جدیدی داره که فعلا تو ایران کمتر روش کار کردن 
آره خودمم به فکر بودم یه سایت یا وبلاگ جدید برای این کار باز کنم، ان شالله همین کارو می کنم ممنون از پیشنهادت، یه مقدار باید در مورد اسمش فکر کنم:)
سلام...
مطالبتون مفید بود....دستتون درد نکنه....ادامه بدید لطفا....
من روی zynq +ad9361 دارم کار می کنم میخام مدولاسیون ASK روش ایجاد کنم... میتونید راهنمایی ام کنید کجای کدهای bare metal رو باید دستکاری کنم و چجوری؟؟؟
لطف می کنید اگر پاسخم رو بدید به ایمیل... منتظر راهنمایی تون هستم....
پاسخ:
سلام
ان شالله سعی می کنم ادامه بدم 
ad9361 نکته خاصی نداره راه اندازیش، اگر درست یادم مونده باشه باید از نرم افزاری که در متلب داره فرکانس نمونه برداریتون رو بذارید تا پهنای باند فیلترها رو بهتون بده و اون ها رو در تابع main پروژه sdk جایگذاری کنید جزئیات دقیقش رو الان خاطرم نیست 
به هر حال بهتره پروژه FPGA رو با سیگوین بسازید تا خطایی نداشته باشه. 
سلام....ممنون از راهنمایی تون.....ولی من مبتدی ام.....الان میخام یه تک تون سینوسی طبق دستورالعمل BIST روی tx ایجاد کنم همنوز نتونستم....
ضمنا من از متلب استفاده نمیکنم....الان یه سوال دیگه دارم...میخام فایل bin رو بریزم تو qspi روی برد....چکار کنم؟؟؟
یه سوال دیگه...فایلهای hdl مربوط به ad9361 رو دانلود کردم.طبق دستوراللعمل سایت ویکی انالوگ به صورت دستی library ها رو تو tcl اماده کردم و همچنین پروژه رو... ولی موقع تولید بیت استریم همه چی خوب پیش رفت یه اررور داد. به فکر افتادم با سیگوین تست کنم.الان سیگوین رو دانلود و نصب کردم...ولی دستور make رو چطوری استفاده کنم؟تو سایتا گفتن مسیر نصب vivado رو باید بدم بهش همچنین چند تا از مسیرهای داخل vivado...من دستورشونو میزنم ولی وقتی دستور which vivado میزنم نمیشناستش...این یگی رو حتما کمکم کنید گرفتار شدم...ببخشید زیاد سوال کردم....
پاسخ:
 فایل bin که باید اول یه پروژه FSBL توی  sdk بسازین بعد خود SDK یه گزینه داره که فایل bin رو توی حافظه QSPI دانلود می کنه اتفاقا خیلی هم راحت شده فقط برای اینکه از qpsk بالا بیاد حتما دقت کنید پین های مربوط به بوت شدن برد به درستی ست شده باشن

دستور make رو توضیح دادم باید وقتی سیگیوین رو اجرا میکنید package مربوط به make رو اضافه کنید اگر جستجو کنید تو package ها پیدا می کنید
فقط کافیه همون مسیر ویوادو رو بهش اضافه کنید مثلا مال من اینه 

C:\Xilinx\Vivado\2015.4\bin

البته یه راه راحت تر هم هست که با cmd این کار رو انجام میدید اگر جستجو کنید پیدا می کنید مثلا می تونید از این صفحه کمک بگیرید 

https://stackoverflow.com/questions/23400030/windows-7-add-path
سلام....ممنون بازم از راهنمایی تون تونستم روی qspi برنامه بریزم.... مشکلش حل شد
 ولی اینکاری رو که باید باید با cygwin  انجام بدم فعلا نتونستم..

آیا خود سیگوین رو باید تو همون درایوی که vivado نصبه قرار داد ؟یا لزومی نداره؟....

 پکیج make رو که از اول هم اضافه کرده بودم ولی جواب نمی داد....

 کاری که من کردم این بود :مثلا vivado من روی درایو c است

 export PATH=$PATH:/cygdrive/c/xilinx/Vivado/2016.4/bin
 
بعدش گفته که برای اینکه مطمئن بشید که درست عملیات رو انجام دادید دستور 

which make [~] رو بزنید ... اگر درست باشه باید یه پیغامی بیاد ولی برای من هیچی نمیاد.... ....
یه موضوع دیگه اینکه من مخابراتی نیستم و خیلی تو این مورد ضعیفم.... شما می تونید راهنمایی

یه مقدار راه بندازید منو که بتونم مدولاسیون ASK ایجاد کنم تو خروجی برد.... خیلی ممنونتون میشم.... واقعا گیر کردم.....

یه سری اطلاعات دیجیتالی 0 و 1 دارم میخام مدوله کنم بصورت ASK....

مثلا چطوری از تابع dac_init(ad9361_phy, DATA_SEL_DDS, 0) استفاده کنم....یه توضیحات کلی و مختصر بدین انشاء الله کارم راه می افته.....
بازم خیلی ممنون.....

پاسخ:
سلام، خواهش می کنم ان شالله بقیه مشکلات هم حل بشن به هر حال کار با fpga یک مقدار مشکله و همین تلاشی هم که برای حل کردن مسائلش میکنید باعث یادگیری اون میشه 
نیازی نیست سیگوین رو تو همون درایو نصب کنید ولی مطمئن بشید خودش به PATH ها اضافه شده 
برای مدولاسیون هم من از دستورات آماده استفاده نمی کنم تجربه ش هم نکردم، خودم توی FPGA می سازمش و میدمش به ADC
اول از روی تئوریش اون رو در متلب بسازید بعد همون رو تو FPGA پیاده کنید.
سلام مجدد.....
با سیگوین بالاخره یه کارایی کردم.... اول اینکه تمام لایبرری ها رو با دستور make آماده کردم. بعد هم خود پروژه رو..... فقط یه سوال ...
اینکه برای هر ماژول مثلا axi_clkgen وقتی make می کردم بعد از چند شاید 15 ثانیه بعد از چند خط می نوشت ok
ولی پروژه رو که make کردم هنوز تو مرحله building مونده.... الان نزدیکه 2 ساعت میشه تقریبا طول کشیده چرا اینطوریه....؟؟
اینم عکسش...
http://uupload.ir/files/q55s_kkk.jpg

برای شما هم اینقدر طول میکشید....؟؟؟؟

پاسخ:
سلام 
لازم نیست هر ماژول ها رو جداگانه بسازید فقط کل پروژه رو بسازید یعنی فقط کافیه دستور پایین رو بزنید، بقیه کارارو خود سیگوین انجام میده، سادگیش به خاطر همینه، 
make -C projects/fmcomms2/zed
بله....متوجه شدم....
بین فاصله اینکه شما جواب بدید اینکار رو کردم و دیدم که همه ماژول ها رو جداگانه میسازه.... فقط یه چیزی چرا تو خط آخر که می خواد خود برد رو مثلا Z706 یا zedboard که مال من هست رو بسازه چندین ساعت روش می ایسته ..... بعدش هم این Error رو داد.... رفتم تو log اش نگاه کردم...

open_run: Time (s): cpu = 00:01:02 ; elapsed = 00:00:59 . Memory (MB): peak = 1665.383 ; gain = 281.152
INFO: [Timing 38-91] UpdateTimingParams: Speed grade: -1, Delay Type: min_max.
INFO: [Timing 38-191] Multithreading enabled for timing update using a maximum of 2 CPUs
report_timing_summary: Time (s): cpu = 00:01:19 ; elapsed = 00:00:44 . Memory (MB): peak = 1728.211 ; gain = 62.828
WARNING: [Timing 38-164] This design has multiple clocks. Inter clock paths are considered valid unless explicitly excluded by timing constraints such as set_clock_groups or set_false_path.
WARNING: [Timing 38-127] No common period was found between clocks clk_out1_system_sys_audio_clkgen_0 {rise@0ns fall@40.6901ns period=81.3803ns} and clk_fpga_0 {rise@0ns fall@5ns period=10ns} in 1000 cycles.
WARNING: [Timing 38-164] This design has multiple clocks. Inter clock paths are considered valid unless explicitly excluded by timing constraints such as set_clock_groups or set_false_path.
WARNING: [Timing 38-127] No common period was found between clocks clk_out1_system_sys_audio_clkgen_0 {rise@0ns fall@40.6901ns period=81.3803ns} and clk_fpga_0 {rise@0ns fall@5ns period=10ns} in 1000 cycles.
ERROR: Timing Constraints NOT met!
    while executing

"adi_project_run fmcomms2_zed"
    (file "system_project.tcl" line 13)
INFO: [Common 17-206] Exiting Vivado at Thu May 03 16:50:29 2018...
البته فایل log اش صدها خط داشت من خطوط آخرش رو آوردم.... خطا رو هم براتون Bold کردم...
می گم که تمام ساخت ماژول ها انتهای خط شون OK زد ولی وقتی رسید به اصل پروژه بعد از چندین ساعت انتظار خطا داد ....

اینم عکسش

http://uupload.ir/files/stia_error.jpg


پاسخ:
ماژول ها رو خودتون قبلش ساختید به این خاطر این مشکل پیش اومده، نتونسته قیدهای تایمینگ رو بهش برسه داشته تو اون چند ساعت تلاشش رو می کرده

به هر حال پروژه رو دوباره از GITHUB دانلود کنید و یه بار دیگه بسازیدش این بار فقط پروژه رو بسازید ماژول ها رو نسازید
سلام.... این مشکل حل شد....
فقط تو export to SDK باید از فایل های no-OS-master که خودش داده استفاده کنیم...؟؟
یعنی تو پوشه zed در اون export کنیم.؟؟؟
اینم مسیر دانلوش است https://github.com/analogdevicesinc/no-OS/tree/master/ad9361
داخلش سه تا پوشه داره chipscope  ،
scripts و
sw است.... تو کدومشون export کنم؟؟؟ چطوری از فایل های C داخل این پوشه ها استفاده کنم.؟؟
ببخشید خیلی اذیت کردم شما رو
پاسخ:
سلام
پروژه رو که از داخل ویوادو  export کردین launch sdk  بزنید اونجا یه پروژه خالی بسازید و فایل های داخل فولد sw رو بهش import کنید یعنی تو پروژه روی فولدر src کلیک راست کنید import file بزنید و فایل های داخل src رو ایمپورت کنید. 
دکتر جان خیلی مردی......دمت گرم.....خدا کارتو راه بندازه.....انشاءالله علمت بیشتر بشه.....
پاسخ:
خواهش می کنم، ان شالله شمام موفق باشی 

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">