اطلاعیه

Collapse
No announcement yet.

microblaze اترنت

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    microblaze اترنت

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

    ممنون میشم کمکم کنید.

    #2
    پاسخ : microblaze اترنت

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

    ممنون میشم کمکم کنید.
    باید ابتدا یک ماژول شبکه تهیه کنید، تو جمهوری آماده هاش هست و با یک کانکتور IDC قابل استفاده هستن.
    دیتاشیتش رو کامل بخونید که مطمئن بشید کاری که میخواین انجام بدید رو میشه با اون مدل انجام داد. بعد برای microblaze یک address map تعریف کنید که مثل یک memory map عمل کنه، اونوقت یک آدرس قراردادی مثل 0x4000 رو برای پورت شبکه بگذارید، اونوقت توی اون آدرس میتونید بنویسید و بخونید. ماژولها هم اکثرا fifo دارن. پس با همون پورت هم میشه تنظیمات اون ماژول رو انجام داد و هم پکتها رو از اون ماژول خوند، البته باید از وقفه استفاده کنید که سرعتش real-time باشه و گرنه پکتها drop میشن. معمولا این کار به صورت استاندارد با همون کد VHDL انجام میشه و بخش management و monitoring رو به microblaze میدن.

    موفق باشید.
    اسمایل، تومورو ویل بی وُرس

    دیدگاه


      #3
      پاسخ : microblaze اترنت

      ممنون از پاسختون

      ولی من یه چیزهایی هنوز واسم گنگه!

      تو EDK به صورت wizard میشه ethernet mac اضافه کرد، این چیه؟ میشه یکم بیشتر توضیح بدید.

      بعد این که من ماژول شبکه بخرم، اینم واسم یکم گنگه.
      ببینید درست میگم. یکسری از FPGA ها مثلا Vertix خودشون ماژول شبکه رو دارند یعنی میشه به I/O اون یک کابل ethernet وصل کرد.
      ولی یکسری دیگه که این امکانات رو ندارند باید خودمون روی برد اضاف کنیم. درسته؟

      بعد یک سوال دیگه ای که داشتم این بود که:

      اگر قصد من پیاده سازی سخت افزاری نباشه، یعنی فقط سنتز کنم و سیموله، در این صورت یکم راهنماییم کنید.
      یعنی به چه صورت باید پکت های اترنت رو با استفاده از C در Microblaze بشکونم و به DATA اصلی دسترسی پیدا کنم؟
      میشه نمونه کد C بهم معرفی کنید با لینک بدید یا یکسری keywod در این خصوص بهم بگید.

      بازم ممنون

      دیدگاه


        #4
        پاسخ : microblaze اترنت

        نوشته اصلی توسط mehdi_15
        ممنون از پاسختون

        ولی من یه چیزهایی هنوز واسم گنگه!

        تو EDK به صورت wizard میشه ethernet mac اضافه کرد، این چیه؟ میشه یکم بیشتر توضیح بدید.

        بعد این که من ماژول شبکه بخرم، اینم واسم یکم گنگه.
        ببینید درست میگم. یکسری از FPGA ها مثلا Vertix خودشون ماژول شبکه رو دارند یعنی میشه به I/O اون یک کابل ethernet وصل کرد.
        ولی یکسری دیگه که این امکانات رو ندارند باید خودمون روی برد اضاف کنیم. درسته؟

        بعد یک سوال دیگه ای که داشتم این بود که:

        اگر قصد من پیاده سازی سخت افزاری نباشه، یعنی فقط سنتز کنم و سیموله، در این صورت یکم راهنماییم کنید.
        یعنی به چه صورت باید پکت های اترنت رو با استفاده از C در Microblaze بشکونم و به DATA اصلی دسترسی پیدا کنم؟
        میشه نمونه کد C بهم معرفی کنید با لینک بدید یا یکسری keywod در این خصوص بهم بگید.

        بازم ممنون
        سلام،
        اون ip core برای ethernet هست که نیاز به phy خارجی داره، یعنی تنها با داشتن یک سخت افزار که کابل شبکه بهش وصل بشه و ولتاژ شبکه رو به ولتاژ های دیفرانسیلی fpga تبدیل کنه میشه یک پورت شبکه داشت، ولی این کورها پولی هستند و نیاز به لایسنس دارن.

        ماژول های شبکه خیلی کار باهاشون راحته، با پورتی مثل I2C ، SPI یا موازی قابل تنظیما و دیتای موازی هم دارن. مثلا wiz850mj خیلی ماژول خوبیه.
        درسته که بعضی از FPGA ها قابلیت اتصال شبکه رو دارن و کور داخلی مجزا دارن، اما اونها همراه با لایسنس هستند. در ضمن نیاز به phy (physical connection)
        خارجی دارن.

        برای شبیه سازی اصلا نیازی به ماژول شبکه نیست، نرم افزار colasoft capsa رو دانلود کنید و پکتهای شبکه رو تا مدت زمانی که لازم دارید کپچر کنید، در فایل ذخیره کنید و برید سراغ سیمولیشن. در سیمولیشن هم کافیه یک پورت برای microblaze تعریف کنید و اون فایل رو در modelsim به اون پورت اساین کنید تا هر بایتی که از اون پورت میخونید، یک بایت از فایل رو به شما پاس بده.
        نمونه کد c برای اینکار توی codeproject حتما هست. بستگی داره توی کدوم لایه میخواین کار کنید. اگه آسون میخواین UDP خیلی راحتر از TCP هست. بهش چند بایت هم اضافه کنید RTP هم میشه که برای Video Over IP خیلی کار برد داره.
        اسمایل، تومورو ویل بی وُرس

        دیدگاه

        لطفا صبر کنید...
        X