ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.






جهت تبلیغ در وب سایت ECA کلیک کنید.

کاربران برچسب زده شده

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2008/01/01
    8
    0

    کد هافمن با وریلاگ

    سلام
    اگه امکان داره در مورد یه برنامه کمکم کنید:

    می خوام کد هافمن را به زبان وریلاگ روی fpga
    پیاده سازی کنم،اما کد هافمن یه درخت دودویی است ونمی دونم چطوری این کارو انجام بدم!
    در حد بلوک دیاگرامی هم کمک کنید ممنون میشم
    یعنی اینکه چه ماژول هایی نیاز است؟
  2. #2
    2008/01/01
    8
    0

    پاسخ : کد هافمن با وریلاگ

    کسی نیست کمکم کنه!!!؟
    اینم الگوریتم کد هافمن:
    http://fa.wikipedia.org/wiki/%DA%A9%D8%AF%E2%80%8C%DA%AF%D8%B0%D8%A7%D8%B1%DB%8 C_%D9%87%D8%A7%D9%81%D9%85%D9%86
  3. #3
    2008/07/15
    تهران
    82
    0

    پاسخ : کد هافمن با وریلاگ

    کد هافمن کاملا بستگی به متنی داره که می خواهید کد کنید و این که کدوم نگاشت ها توی اون متن بیشتر استفاده شده. پیاده سازی اون بی اهمیه و به وسیله یک look-up table خیلی ساده انجام می شه و اصلا نیازی به درخت و اینا نداره. ( توی Verilog اینو با یک حافظه RAM ) می سازند. ولی مقادیری که توی این حافظه می گذارید رو باید با کاغذ و مداد به دست بیارید.
    لذا گذاشتن یک کد هافمن که برای جای دیگری طراحی شده براتون اصلا فایده ای نداره.
  4. #4
    2008/01/01
    8
    0

    پاسخ : کد هافمن با وریلاگ

    من نمی خوام متن رو کد کنم بلکه می خوام یه سری داده که از طریق سنسور(مثلا دما)وارد fpga میشود را کد کنم حالا چه بکنم؟
    در مورد look_up table هم که اینجا استفاده می شه توضیح بدید!
  5. #5
    2008/07/15
    تهران
    82
    0

    پاسخ : کد هافمن با وریلاگ

    فرقی نمی کنه. شما باید داده های سریال ورودی خودتون ( همون سنسوره ) رو بلاک بلاک کنید ( مثلا هر 8 بیت ) و ببینید که چه داده ای بیشتر از همه تکرار می شه و همون الگوریتم های هافمن که زده شد رو روش بزنید. این 8 بیت، میشه مثلا ورودی ROM شما، خروجی ROM هم کد هافمن حاصل هست. برای مثلا سنسور دما شما می تونید بسته به محیط کار فرض کنید مثلا دماهای مثل 25 یا 26 یا ... بیشتر تکرار می شوند تا دمای مثلا 180درجه و ال اخ!!

    درباره ROM خوب من نمی دونم چه توضیحی بدم. رام رامه خوب! این یک نمونه پیاده سازی برای fpgaهای خانواده Xilinx ( البته الان بهتره به جای این از استفاده کنید. )

    کد:
    module ROM16X1 (o, a3,a2,a1,a0) /* synthesis black_box */;
    input a3,a2,a1,a0;
    output o;
    endmodule
    
    module rom_16x8 (o,a);
    input [3:0] a;
    output [7:0] o;
    ROM16X1 u0 (o[0],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=FFFF" */;
    ROM16X1 u1 (o[1],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=ABCD" */;
    ROM16X1 u2 (o[2],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=BCDE" */;
    ROM16X1 u3 (o[3],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=CDEF" */;
    ROM16X1 u4 (o[4],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=CCDD" */;
    ROM16X1 u5 (o[5],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=0000" */;
    ROM16X1 u6 (o[6],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=0010" */;
    ROM16X1 u7 (o[7],a[3],a[2],a[1],a[0]) /* synthesis xc_props="INIT=1100" */;
    endmodule
    به عنوان مثال، یک جدول کد هافمن برای الگوریتم فشرده سازی JPEG که یک بار می خواستم به صورت بود:
    00110000000000001010
    00010000000000000000
    00010000000000000001
    00100000000000000100
    00110000000000001011
    01000000000000011010
    01100000000001111000
    01110000000011111000
    10010000001111110110
    11111111111110000010
    11111111111110000011
    این جدول تا 352 خط ادامه پیدا می کنه...


    ولی همون طور که گفتم این کد ها کارتو راه نمی ندازن. جدولی که می خوای بنویسی کاملا وابسته به صورت مسئله خودتونه.
    اگر همچنان سوالی داشتین خوشحال میشم بتونم کمکی کنم.
  6. #6
    2008/01/01
    8
    0

    پاسخ : کد هافمن با وریلاگ

    ممنون از توجه تان
    اما یعنی نمی شه برنامه ایی نوشت که برای همه ی ورودی ها این کد را تولید کند یعنی انقدر جامع باشه که خودش بتونه تشخیص بده که دیگه look_up table لازم نباشه؟
نمایش نتایج: از 1 به 6 از 6

موضوعات مشابه

  1. پاسخ: 0
    آخرين نوشته: 2016/05/06, 18:35
  2. توصیف سخت افزاری if else در وریلاگ
    توسط alizzzzz در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 1
    آخرين نوشته: 2015/08/02, 08:18
  3. کد وریلاگ جمع کننده ممیز شناور
    توسط smehdia در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 0
    آخرين نوشته: 2015/03/09, 22:50
  4. تبدیل کد های مطلب به کد وریلاگ یا vhdl ،چگونه ؟
    توسط farshad_ravaee در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 5
    آخرين نوشته: 2012/11/24, 12:21
  5. درخواست برنامه الگوریم هافمن ( فوری)
    توسط naghi bakhsh در انجمن برنامه نويسي و اينترفيس
    پاسخ: 0
    آخرين نوشته: 2007/06/23, 15:47

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •