Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: умножение в microblaze
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
abraziv
Всем привет. Пытаюсь выполнить слдующий код :
Код
#include "xparameters.h"
#include "xuartlite.h"
#include "xgpio.h"
#include "stdio.h"
#include "xstatus.h"
#include <time.h>
#include <stdio.h>

#define SIZE 100000                          
#define LED_CHANNEL 1


int main (void) {

XGpio Gpio;

   //Инициализация GPIO драйвера
   XGpio_Initialize(&Gpio, XPAR_LEDS_POSITIONS_DEVICE_ID);


   //Установим порты на выход
    XGpio_SetDataDirection(&Gpio, LED_CHANNEL,0x0);

    // Установим выходной порт в 1
    XGpio_DiscreteWrite(&Gpio,LED_CHANNEL,0x00);
        
     print("Start \n\r");
         
    
   float A[SIZE];
    float B[SIZE];
    float C[SIZE];
    int j,k;
    
    
        for( k = 0; k < SIZE; k++)
        {            
            C[k] += A[k]*B[k];    
        }
    
                                        
    
     print("Stop \n\r");
    
      
XGpio_DiscreteWrite(&Gpio,LED_CHANNEL,0xff);

        
   return 0;

}


Почему, то цикл for вообще не хотит выполняться (Start и Stop одновременно выводятся в терменале). А самое забавное, что есть вообще. отключить оптимизацию, то даже лампочк не загораются.
Что не так в этом когде?
RobFPGA
Приветствую!

Могу предположить что Вы проверяли этот код в конце рабочего дня - уставшим
и поэтому не смогли на глаз заметить огромную задержку в пару ms между началом и окончанием цикла wink.gif

Будет правильней в помощь своему глазу использовать осциллограф
ну или например получать значение таймера перед началом цикла и после его окончания и выводить разницу.

Также желательно сделать массивы статическими, объявить их как volatile,
инициализировать их правильными float значениями.

Успехов! Rob.





Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.