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





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









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









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






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

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

صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 16

موضوع: آموزش ChipScope

  1. #1
    2007/10/14
    تهران
    1,335
    38

    آموزش ChipScope

    سلام.
    قصد دارم در این تاپیک آموزش ChipScope رو به صورت خلاصه و همراه با مثال و عکس بذارم.
    ChipScope یکی از برنامه های جانبی Xilinx ISE Suit هست که همراه اون نصب میشه و در منوی برنامه ها به اسم Analyzer یا ChipScope Analyzer موجوده که برای سیستم های 32 بیتی و 64 بیتی برنامه های جدایی داره و باید برنامه مناسب سیستمتون رو اجرا کنید. همچنین امکان اجرای برنامه از داخل ISE هم وجود داره.
    اول یک توضیح کلی راجع به این برنامه و کاربردش:
    وقتی یک کد VHDL یا Verilog مینویسین برای تست درستی کدتون اولین راهی که معمولاً به ذهن میرسه شبیه سازی با برنامه هایی مثل ISim یا ModelSim هست در حالی که بعضی مواقع تولید فایل TestBench زمان زیادی میگیره و مثلاً لازمه که یک سیگنال ورودی که پیچیدگی هایی داره رو در کد تست تولید کنید یا به نحوی ذخیره کنید و با TextIO به شبیه سازی اضافه کنید.
    مشکل دیگه ای که وجود داره اینه که همیشه نتیجه شبیه سازی با نتیجه در عمل یکسان نیست مخصوصاً اگه زمانبندی های خیلی حساس داشته باشید.
    یک راه آسون و مطمئن وقتی سخت افزار در دسترسه استفاده از برنامه ChipScope هست. این برنامه با قابلیت های زیر میتونه به شدت زمان تست رو کاهش بده و قابلیت دیباگ به کدتون بده:
    1- مشاهده سیگنالهای داخلی کد با کلاک دلخواه مثلاً کلاکی که سیگنال با اون تغییر می کنه.
    2- مشاهده سیگنالها در صورت تریگر شدن توسط سیگنال دیگر.
    3- ورودی/خروجی آسنکرون یا سنکرون(با کلاک) از طریق JTAG (پروگرمر).

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

    محدودیت این برنامه هم اینه که حداقل زمان پدیت سیگنالهای متصل به ILA (بعداً توضیح میدم چیه) در نرم افزار 25 میلی ثانیه تعریف شده البته میشه هر سیگنال رو تا چند هزار (مقدار دقیق الان یادم نیست بعداً اصلاح می کنم) تریگ دید یعنی اگه مثلاً تریگ تعریف نشه و با کلاک سیستم کار کنه میشه تا چند هزار کلاک مقدار سیگنال رو دید.

    برای استفاده از ChipScope لازمه که در کدتون چند تا ماژول اضافه کنید:
    1- ICON که مخفف Integrated Controller هست، به ازای هر ماژول ILA یا VIO لازمه یک سیگنال کنترل اضافه بشه. طول سیگنال کنترل ثابته و هیچ نکته خاصی نداره.
    برای اضافه کردن این ماژول باید IP Core اون رو دقیقاً مثل روالی که برای اضافه کردن IP Core های دیگه طی میشه انجام داد. با وارد کردن عبارت icon در کادر جستجوی IP Core میشه سریعاً پیداش کرد.
    2- ILA که مخفف Integrated Logic Analyser هست، در این ماژول میشه سیگنالهایی که قصد مشاهده اونها رو دارین مشخص کنین، کلاکی که سیگنالها با اون کلاک مشاهده میشن و سیگنالهای تریگر رو تعریف کنید. این ماژول هم به صورت یک IP Core هست.
    3- VIO که مخفف Virtual Input/Output هست و در صورتی که بخواین مقداری رو به عنوان ورودی مجازی به یکی از سیگنالهای داخل کدتون بدین استفاده میشه (در صورتی که فقط خروجی از FPGA بخواین میشه فقط از ILA استفاده کرد).

    در حال حاضر سخت افزار در دسترس نیست ادامه مباحث و توضیحات و مثال در پست های بعدی در آینده نزدیک قرار میگیره.
    موفق باشید.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  2. #2
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    ادامه آموزش: در این پست نحوه اضافه کردن ماژول های مورد نیاز و توضیحات مرتبط آموزش داده میشه و نحوه استفاده در برنامه ChipScope برای بعد میمونه.

    یک IP Core از نوع ICON به Top Module اضافه کنید.


    تنها گزینه ای که ممکنه لازمه تغییر بدین تعداد پورت های کنترلی هست (در تصویر پایین مشخص شده) که در صورتی که فقط قصد اضافه کردن ILA دارید 1 و در صورتی که قصد اضافه کردن VIO هم دارید 2 پورت انتخاب کنید. (به ازای هر ILA یا VIO یک پورت کنترلی نیاز دارید)


    یک IP Core از نوع ILA به Top Module اضافه کنید.


    تنظیمات ILA که لازمه تغییر بدین:
    1- Sample Data Depth: مقادیر 512، 1024، 2048، 4096، 8192 و 16384 رو داره که بسته به نیازتون باید یکی رو انتخاب کنید.
    به عنوان مثال در صورتی که 512 رو انتخاب کنید، از لحظه شروع نمونه گیری (به صورت خودکار یا با تریگر) مقدار سیگنالها رو تا حداکثر 511 کلاک بعد هم نشون میده.
    2- Data Same as Trigger : باید تیک این گزینه رو بردارید و مقداری بین 1 تا 256 رو در کادری که فعال میشه وارد کنید.
    این مقدار، حداکثر طول مجموع سیگنالهایی است که میتونید در ChipScope ببینید.(نوع سیگنالها باید حتماً std_logic باشه)
    مثلاً اگه 256 رو انتخاب کنید میتونید هر تعداد سیگنال از نوع std_logic یا std_logic_vector که مجموع طولشون حداکثر 256 بشه رو ببینید.
    3- Number of Trigger Ports: تعداد پورت های تریگر: مقداری بین 1 تا 16. طول سیگنالهای تریگر ثابت و مساوی 8 هست.
    منظور از سیگنال تریگر رو با یک مثال توضیح میدم؛ فرض کنید یک ارتباط سریال در کدتون دارین و میخواین هر وقت دیتای جدیدی از طریق سریال دریافت کردید مقدار سیگنالهای ILA در ChipScope پدیت بشن، در این صورت سیگنال Data_Ready ماژول سریال رو به یکی از بیت های تریگر سیگنال تریگر ILA میدین و در ChipScope اون بیت رو تنظیم می کنید که هر وقت 1 شد تریگر انجام بشه. هر پورت تریگر به طور پیشفرض 8 بیت داره پس در صورت نیاز به تعداد بیشتری سیگنال تریگر میتونید تعداد پورت های بیشتری استفاده کنید یا طول سیگنال تریگر رو تا 256 زیاد کنید.


    در صفحه بعد تنظیمات ILA فقط نوع Match Type رو به extended with edges تغییر بدین.


    در صورتی که قصد دادن ورودی مجازی از طریق پروگرمر رو دارید ماژول VIO رو به Top Module اضافه کنید.


    در صفحه تنظیمات VIO کافیه که نوع Asynchronous Output Port رو فعال کنید (بقیه رو میتونید غیر فعال کنید چون در حالت معمولی کاربردی ندارن) و طول پورت ورودی (اسم Output در نوع پورت به این دلیله که این پورت از سمت JTAG یا کامپیوتر خروجی هست ولی برای FPGA ورودی حساب میشه) رو بین 1 تا 256 تعیین کنید.
    از طریق این پورت میشه به FPGA از طریق ChipScope ورودی داد.


    بعد از ایجاد IP Core های مورد نیاز باید اونها رو به کد اضافه کنید:
    راحت ترین راه اضافه کردن (هر نوع Core) اینه که طبق شکل زیر سورس مورد نظر رو انتخاب کنید و از کادر پایین گزینه View HDL Instantiation Template رو بزنید (در حالتی که IP Core نیست این گزینه زیر مجموعه Design Utilities هست):


    هر دو قسمت رو کپی کنید و در محل مناسب برنامه Paste کنید.
    پست خیلی طولانی شد، ادامه توضیحات در پست بعد.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  3. #3
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    مثال:
    کد:
    	signal CONTROL0 : STD_LOGIC_VECTOR(35 DOWNTO 0);
    	signal CONTROL1 : STD_LOGIC_VECTOR(35 DOWNTO 0);
    	
     component xICON
     PORT (
      CONTROL0 : INOUT STD_LOGIC_VECTOR(35 DOWNTO 0);
      CONTROL1 : INOUT STD_LOGIC_VECTOR(35 DOWNTO 0)
    	 );
    	end component;
    	
      signal ILA_DATA : STD_LOGIC_VECTOR(255 DOWNTO 0);
      signal ILA_TRIG0 : STD_LOGIC_VECTOR(7 DOWNTO 0);
    	
     component xILA
     PORT (
      CONTROL : INOUT STD_LOGIC_VECTOR(35 DOWNTO 0);
      CLK : IN STD_LOGIC;
      DATA : IN STD_LOGIC_VECTOR(255 DOWNTO 0);
      TRIG0 : IN STD_LOGIC_VECTOR(7 DOWNTO 0)
    	 );
    	end component;
    
     signal ASYNC_OUT : STD_LOGIC_VECTOR(7 DOWNTO 0);
     signal ADC_Trig : STD_LOGIC := '0';
     signal sRelay_Data : STD_LOGIC_VECTOR(8 DOWNTO 0);
     signal ADC_Status : STD_LOGIC_VECTOR(5 DOWNTO 0) := (others => '0');
     
     component xVIO
     PORT (
      CONTROL : INOUT STD_LOGIC_VECTOR(35 DOWNTO 0);
      ASYNC_OUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
    	end component;
    کد:
    	Inst_ICON : xICON
    	port map (
      CONTROL0 => CONTROL0,
      CONTROL1 => CONTROL1
    	 );
    	 
      Inst_ILA : xILA
      port map (
      CONTROL => CONTROL0,
      CLK => CLK40M,
      DATA => ILA_DATA,
      TRIG0 => ILA_TRIG0
    	 );
    	 
     Inst_VIO : xVIO
     port map (
      CONTROL => CONTROL1,
      ASYNC_OUT => ASYNC_OUT
    	);
    	 
     ILA_DATA(19 downto 0) <= Data_Alarm;
     ILA_DATA(28 downto 20) <= sRelay_Data;
     ILA_DATA(45 downto 30) <= Data_Array(1) & Data_Array(2);
     ILA_DATA(65 downto 50) <= Data_Array(3) & Data_Array(4);
     ILA_DATA(85 downto 70) <= Data_Array(5) & Data_Array(6);
     ILA_DATA(105 downto 90) <= Data_Array(7) & Data_Array(8);
     ILA_DATA(125 downto 110) <= Data_Array(9) & Data_Array(10);
     ILA_DATA(145 downto 130) <= Data_Array(11) & Data_Array(12);
     ILA_DATA(165 downto 150) <= Data_Array(13) & Data_Array(14);
     ILA_DATA(185 downto 170) <= Data_Array(15) & Data_Array(16);
     ILA_DATA(205 downto 190) <= Data_Array(17) & Data_Array(18);
     ILA_DATA(225 downto 210) <= Data_Array(19) & Data_Array(20);
    
     ILA_DATA(239 downto 230) <= ADC3DIN;
     ILA_DATA(249 downto 240) <= ADC4DIN;
     ILA_DATA(255 downto 250) <= ADC_Status;
     
     ILA_DATA(46) <= ADC0_SCK;
     ILA_DATA(47) <= ADC0_CS;
     ILA_DATA(48) <= ADC0_DO;
     ILA_DATA(49) <= ADC0_DO;
     
     ILA_TRIG0(0) <= ASYNC_OUT(0);
     ILA_TRIG0(1) <= ADC_Trig;
    دو خط آخر مربوط به VIO و قبلی ها مربوط به ILA هستند.
    نحوه کار با ChipScope در پست بعد در اولین فرصت...
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  4. #4
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    با یکی از دو روش زیر ChipScope رو باز کنید:

    از منوی استارت:


    یا از طریق ISE:


    بعد از باز شدن ChipScope آیکن اشاره شده در تصویر زیر رو بزنید(باید برنامه حاوی ICON/ILA/VIO روی FPGA پروگرم شده باشه و پروگرمر وصل باشه)


    اگه درست عمل کرده باشید عناصر موجود در chain شناسایی میشن. OK رو بزنید.



    بعد از زدن OK، عناصر ChipScope موجود در طرح نشون داده میشن:


    در شکل بالا:
    (1) ماژولهایی که به کد اضافه شدن نشون داده میشه.
    (2) پورت های Data و Trigger مربوط به ILA وقتی در کادر (1) انتخاب شده باشه و پورت های VIO وقتی در کادر (1) انتخاب شده باشه نشون داده میشه. تعداد پورت ها مطابق با مقداری است که در تولید IP Core های مربوط به اونها انتخاب شدن.
    (3) تولبار برنامه که ابزارهای پر استفاده در این قسمت قرار گرفتن.
    (4) Trigger Setup که قبلاً (در پست اول) توضیح مختصری راجع به تریگر داده شده بود.
    (5) Waveform مشابه wave در Isim که شکل موج دیتای ILA رو میشه مشاهده کرد.
    (6) در این کادر اطلاعاتی مثل قطع و وصل کابل، خطاها و ... نشون داده میشه. همچنین Progress bar سمت راست هم وضعیت لود شدن دیتا رو نشون میده.

    برای شروع کار، با توجه به سیگنالهایی که در کدتون تعریف کردین، پورت های دیتا رو در صورت نیاز به باس (معادل vecotr در VHDL) تبدیل کنید و اسم اونها رو به دلخواه تغییر بدین:


    برای شروع مانیتورینگ، طبق شکل زیر از لیست یکی از گزینه ها رو انتخاب کنید:
    1- Single: با انتخاب این گزینه، با هر بار زدن Run (دکمه مثلث شکل کنار لیست)، یک بار اطلاعات ILA خونده میشه. در هر بار خوندن اطلاعات، به همون تعدادی کلاکی که در تولید VIO مشخص کرین دیتاهای ILA به کامپیوتر لود میشن. توجه کنید که کلاک ILA لازم نیست کلاک اصلی سیستم باشه و بسته به نیاز شما میتونه هر سیگنالی باشه ولی اگه میخواین دیتای ILA رو بتونید تحلیل کنید بهتره همون کلاکی رو بدین که سیگنالهای دیتای ILA با اون کلاک عوض میشن.
    2- Repetitive: با انتخاب این گزینه اطلاعات ILA به صورت متوالی خونده میشن، هر چقدر عمق و تعداد سیگنالها کمتر باشه سرعت پدیت بیشتر میشه. برای شروع باید آیکن Run رو بزنید.
    3- Startup: اطلاعات رو از اولین لحظه شروع کار نشون میده.


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


    با راست کلیک کردن روی سیگنال بسته به این که تکی هست یا باس گزینه هایی در اختیارتون میذاره:
    Rename: عوض کردن اسم نمایشی سیگنال
    Color: عوض کردن رنگ سیگنال برای تمایز راحت تر سیگنالها
    Reverse Bus Order: ترتیب اهمیت سیگنالها در باس رو عوض میکنه، در حالت پیشفرض سیگنال با بالاترین شماره MSB و سیگنال با کمترین شماره LSB هستند.
    Bus Radix: مشابه Radix در ISim هست و شکل نمایش باس رو عوض میکنه مثلاً در شکل زیر نوع Hex (پیشفرض) به Unsigned Decimal تغییر پیدا کرده.
    گزینه های دیگه هم که مشخصه چکاری میکنن. (تذکر: در صورت حذف سیگنال از Waveform میتونید مجدداً اون رو از کادر Signals که در تصویر 5 این پست مشخص شده برگردونید).


    یکی از امکانات جالب ChipScope همون طور که در شکل زیر میبینید امکان دادن ضریب و آفست در تبدیل نوعه که بعضی جاها به درد میخوره. این پنجره بعد از انتخاب نوع Unsigned Decimal ظاهر شده.


    به جز امکان زوم کردن، میتونید با انتخاب یکی از مقادیر در قسمت Trigger Setup مطابق شکل زیر، زوم بهتری روی شکل موج داشته باشید. در شکل زیر، تعداد کلاکها 8192 هست که میشه از لیست نشون داده شده در شکل تعدادشون رو کم کرد. مقدار 8192 جزء تنظیمات ILA هست که موقع تولید این IP Core تنظیم کردین (دو پست قبل مقدار Sample Data Depth در تصویر 5 که حداکثر میتونه 2 باشه).


    یکی دیگه از امکانات جالب ChipScope امکان پلات کردن مقدار باس هست که یکی از کاربرهاش میتونه مشاهده مقدار خروجی ADC باشه. برای این کار گزینه Bus Plot رو از کادر Project (کادر شماره (1) در تصویر 5 همین پست) انتخاب کنید تا شکل زیر رو ببینید، باس های موجود در waveform به صورت اتوماتیک اضافه شدن که با زدن تیک کنار هر کدوم اون رو مشاهده می کنید.


    نحوه استفاده از سیگنال تریگر: در مثال زیر سیگنال LAN_Data_Ready به (Trigger(0 در کد VHDL داده شده، با تنظیم تریگر شماره 0 در ChipScope (جایگزین کردن مقدار X در جایگاه 0 با مقدار 1) در قسمت Trigger Setup و انتخاب حالت اجرای Repetitive هر بار سیگنال LAN_Data_Ready مساوی 1 بشه مقدار شکل موج پدیت میشه. (این مقدار در دو شکل بالاتر در قسمت Value پنجره Trigger Setup تنظیم شده)


    نحوه استفاده از VIO: در صورتی که در کدتون VIO هم اضافه کرده باشین میتونید با استفاده از ChipScope به FPGA ورودی بدین. این ورودی میتونه برای شبیه سازی رفتار کد استفاده بشه مثلاً فرض کنید که قراره دستوری از طریق سریال به FPGA داده بشه و کار خاصی انجام بده ولی در حال حاضر سخت افزار لازم رو ندارین در این صورت میتونید دستور رو با VIO بدین، فقط لازمه که سیگنالی که برای سریال تعریف کردین به طور موقت سیگنال VIO رو بهش وصل کنید.
    از کادر Project گزینه VIO رو انتخاب کنید تا پنجره VIO Console باز بشه. این پنجره تقریباً مشابه Waveform هست.


    مطابق شکل بالا، میتونید Radix باس رو تنظیم کنید برای ارسال مقدار به FPGA بعد از تغییر مقدار باید کلید اینتر رو بزنید و یا سیگنال های تکی رو مطابق شکل بعد به صورت کلید دائمی یا لحظه ای تعریف کنید که در این صورت کافیه روی کلید کلیک کنید تا مقدار به FPGA ارسال بشه.


    فکر می کنم مطالب اصلی گفته شده باشه به هر حال اگه ابهام یا سوالی بود در خدمتم تا مطلب تکمیل بشه و به صورت فایل PDF در پست اول قرار بگیره.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  5. #5
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    چند تا نکته الان یادم اومد:
    1- در تنظیمات ILA طول و عمق سیگنال، به نوع FPGA انتخاب شده بستگی داره.
    2- در پنجره Trigger Setup در برنامه ChipScope با تغییر مقدار Position میشه به همون تعداد کلاک قبل از تریگر رو هم دید. زمان تریگر با T Cursor روی waveform نشون داده میشه.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  6. #6
    2010/11/12
    39
    2

    پاسخ : آموزش ChipScope

    سلام
    آقای هادی واقعا خسته نباشد، عالی بود.
    فقط ای کاش کد vhdl که باهاش این آموزش رو گذاشتید هم، اینجا قرار میدادید تا از روی اون جلو بریم
    من یه برنامه ساده شمارنده رو گذاشتم . core ها رو درست کردم ، ولی برای استفاده از برنامه chipscope analayzer ،چون یه خورده برام گنگ بود توضیحات کار با برنامه analayzer ،نتونستم ادامه بدم .
    این قسمت رو متوجه نشدم :
    برای شروع مانیتورینگ، طبق شکل زیر از لیست یکی از گزینه ها رو انتخاب کنید:
    1- Single: با انتخاب این گزینه، با هر بار زدن Run (دکمه مثلث شکل کنار لیست)، یک بار اطلاعات ILA خونده میشه. در هر بار خوندن اطلاعات، به همون تعدادی کلاکی که در تولید VIO مشخص کرین دیتاهای ILA به کامپیوتر لود میشن. توجه کنید که کلاک ILA لازم نیست کلاک اصلی سیستم باشه و بسته به نیاز شما میتونه هر سیگنالی باشه ولی اگه میخواین دیتای ILA رو بتونید تحلیل کنید بهتره همون کلاکی رو بدین که سیگنالهای دیتای ILA با اون کلاک عوض میشن.
    2- Repetitive: با انتخاب این گزینه اطلاعات ILA به صورت متوالی خونده میشن، هر چقدر عمق و تعداد سیگنالها کمتر باشه سرعت پدیت بیشتر میشه. برای شروع باید آیکن Run رو بزنید.
    3- Startup: اطلاعات رو از اولین لحظه شروع کار نشون میده.
    اگه امکانش هست توضیحات برنامه chipscope analayzer با یه کد vhdl ساده تر بزارید .
    بازم ممنون .
  7. #7
    2012/07/02
    تهران
    60
    4

    پاسخ : آموزش ChipScope

    با خودم گفتم گزينه تشکر کافي نيست، لازمه به صورت کتبي ازتون تشکر کنم آقا هادي . خيلي مردي. خدا خيرتون بده. توضيحاتتون خيلي کامل بود.
    اميدوارم بتونم لطفتونو جبران کنم.
    يا حق
  8. #8
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    در اولين فرصت که وقت داشته باشم کد به همراه فايل cpj ميذارم.
    دقيقا کدوم قسمت رو متوجه نشدي؟ فعلا با موبايل اومدم و تايپ کردن سخته.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  9. #9
    2010/11/12
    39
    2

    پاسخ : آموزش ChipScope

    خیلی خیلی ممنون که میخواید کد رو بزارید.
    دقيقا کدوم قسمت رو متوجه نشدي؟
    دقیقا از لحظه شروع مانیترینگ که وضعیت Single یا Repetitive یا Startup رو انتخاب می کنیم و run رو میزنیم به بعدنتونستم ادامه بدم.
    نیاز من از این chipscope اینه که بتونم واقعا یه debugging مناسب به طوری که مشخص شه پیاده سازی صورت گرفته به ازای ورودی های مختلف از نظر زمانی (کلاکینگ) ،در خروجی جوابها ی درستی میده (البته در صورتی که مطمئن هستم الگوریتم رو درست پیاده کردم) .
    مثلا برای پیاده کردن یه فیلتر fir با ضرائب بسیار کم که کد اون رو دستی نوشتم ،مطمئن شم،نسبت به فرکانس سمپلینگ و فرکانس کاری، مثلا هیچ گونه هم پوشانی زمانی صورت نمیگیره (اینو به عنوان مثال گفتما).
    یا مثلا ورودی های کنترلی آسنکرون (مثلا سیگنال reset آسنکرون داشته باشم که بفهمم تفاوتش با reset سنکرون در وضعیت های مختلف چی هست) داشته باشم.
    خیلی ممنون میشم اگه یکم بحث رو باز تر کنید.
  10. #10
    2007/10/14
    تهران
    1,335
    38

    پاسخ : آموزش ChipScope

    بابت تأخیر در جواب دادن شرمنده، متأسفانه چند وقتی هست خیلی درگیرم و هنوز هم وقت نکردم فایل vhd و cpj درست کنم و بذارم.
    اگه مراحل قبلی درست انجام شده باشه کافیه در قسمتی که گفتی، یکی از موارد Single یا Repetitive رو انتخاب کنی و Run رو بزنی تا مانیتورینگ شروع بشه. در حالت Single فقط اولین بار که شرط Trig که در قسمت Trig Setup تنظیم کردی برقرار بشه مقادیر سیگنالها پدیت میشن و در حالت Repetitive هر بار که شرط برقرار بشه مقادیر پدیت میشن. در صورتی که گزینه Immediate رو هم بزنی با سریع ترین فرکانس ممکن، مقادیر بدون نیاز به برقراری هیچ شرطی پدیت میشن.
    تنظیمات دیگری هم در قسمت Trig Setup هست که فاکتور گرفته بودم. مثلاً رابطه بین شرط های Trig شدن چی باشه یا انتخاب این که با چند بار برقراری شرط Trig مقادیر پدیت بشن که زیاد مهم نیستن چون وقتی بتونی در حالت معمولی نتیجه بگیری کم کم با این گزینه ها هم کار کنی دستت میاد.
    ضمناً حالت Startup حالت خاصی هست که خودم باهاش کار نکردم و فکر می کنم از ویژگی های بعضی FPGA ها باشه و همه ندارن.
    چون فرکانس کاری FPGA خیلی بالا هست برای بررسی موارد تایمینگ فکر می کنم اول در شبیه سازی مطمئن بشی بهتر باشه، برای اطمینان بیشتر میتونی از شبیه سازی Post-route استفاده کنی.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 16

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

  1. chipscope
    توسط amin5659 در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 6
    آخرين نوشته: 2015/09/21, 22:44
  2. ChipScope cores adding (اضافه کردن cores)
    توسط masloob81 در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 9
    آخرين نوشته: 2015/03/17, 22:22
  3. chipscope ;;; اضافه کردن Core ICON & ILA به کدVHDL ....
    توسط masloob81 در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 0
    آخرين نوشته: 2015/03/11, 15:58
  4. در خواست chipscope 10.1
    توسط bikhi در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 0
    آخرين نوشته: 2014/06/24, 16:31
  5. کسی تا حالا با chipscope کار کرده ؟
    توسط tanbakoo در انجمن آموزش نرم افزارهاي آناليز و شبيه ساز
    پاسخ: 1
    آخرين نوشته: 2008/03/04, 23:07

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

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

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

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

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