Перейти к содержанию
    

Quartus компилирует, но задействовано ноль ресурсов

module CUR_AMP1(
	input CLOCK_50,

	//////////// 2x13 GPIO Header //////////
	inout 		    [12:0]		GPIO_2,
	input 		     [2:0]		GPIO_2_IN,

	//////////// GPIO_0, GPIO_0 connect to GPIO
	inout 		    [33:0]		GPIO_0,
	input 		     [1:0]		GPIO_0_IN,

	//////////// GPIO_1, GPIO_1 connect to GPIO
	inout 		    [33:0]		GPIO_1,
	input 		     [1:0]		GPIO_1_IN
);

wire CLOCK_200;

PLL1 (CLOCK_50, CLOCK_200);

reg [11:0]	sine [0:79];						// один период синуса
reg [11:0]	buf_tx [0:1023];					// буфер 50 мкс
reg [11:0]	buf_rx [0:10239];					// буфер 500 мкс

reg [3:0]	presc = 4'b0;						// счётчик предделителя 200 МГц на 10
reg [14:0]	cir_count = 15'b0;				// кольцевой счётчик 1 мс
reg			clk20 = 1'b0;						// строб 20 МГц

reg [11:0]	DAC = 12'b0;						// выход на ЦАП
reg [11:0]	ADC = 12'b0;						// вход с АЦП

assign GPIO_0[11:0] = DAC[11:0];				// определение ног регистра ЦАП
assign GPIO_1[11:0] = ADC[11:0];				// определение ног регистра АЦП

integer i;

initial begin

	sine[0]  = 12'd0;								// синус pi/2 амплитудой 2048-128
	sine[1]  = 12'd151;
	sine[2]  = 12'd300;
	sine[3]  = 12'd448;
	sine[4]  = 12'd593;
	sine[5]  = 12'd735;
	sine[6]  = 12'd872;
	sine[7]  = 12'd1003;
	sine[8]  = 12'd1129;
	sine[9]  = 12'd1247;
	sine[10] = 12'd1358;
	sine[11] = 12'd1460;
	sine[12] = 12'd1553;
	sine[13] = 12'd1637;
	sine[14] = 12'd1711;
	sine[15] = 12'd1774;
	sine[16] = 12'd1826;
	sine[17] = 12'd1867;
	sine[18] = 12'd1896;
	sine[19] = 12'd1914;
	sine[20] = 12'd1920;
	
	for (i=1; i<=19; i=i+1) begin
		sine[20 + i] = sine[20 - i];			// вторая pi/2
	end
	
	for (i=0; i<=39; i=i+1) begin
		sine[40 + i] = 12'd2048 - sine[i];	// отрицательная pi +2048
		sine[i] = 12'd2048 + sine[i];			// положительная pi +2048
	end

//	for (i=0; i<=79; i=i+1) begin
//		$display( " adr = %d data = %d " , i, sine[i]);
//	end
//	$finish;
		
end

always @ (posedge CLOCK_200)					// предделитель 200/10 МГц
	begin
		if(presc >= 9)
			begin
				presc <= 0;
				clk20 <= 1;							// выход-строб 20 Мгц
			end
		else
			begin
				presc <= presc + 1;
				clk20 <= 0;
			end
	end

endmodule

Quartus 13 компилирует без ошибок, но задействованных ресурсов в списке ноль, кроме ножек. Раньше делал пару схем такого же размера, ресурсы тратились. Что не так?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

29 minutes ago, Plain said:

Quartus 13 компилирует без ошибок, но задействованных ресурсов в списке ноль, кроме ножек. Раньше делал пару схем такого же размера, ресурсы тратились. Что не так?

 

 

И что у вас на ножки выходить должно было?  А что реально подключено в исходнике?  

Qu молодец - с оптимизировал вам ваши хотелки :wink2:

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Т.е. пока с кристалла ничего не выходит, он статистику считать просто не будет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, Plain said:

Т.е. пока с кристалла ничего не выходит, он статистику считать просто не будет?

Почему не будет - посчитает с точностью до гейта :biggrin: . Ну а то что логика вашего дизайна укладывается в 0 гейтов Qu не виноват :unknw:

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

56 минут назад, Plain сказал:

Т.е. пока с кристалла ничего не выходит, он статистику считать просто не будет?

Раз никуда ничего не выходит - значит это никому не нужно. А раз так, зачем тратить ресурсы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, RobFPGA сказал:

что у вас на ножки выходить должно было?  А что реально подключено в исходнике?

 

Подключил, ничего не изменилось:

assign GPIO_0[11:0] = 1 ? DAC[11:0] : 12'bz;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

8 minutes ago, Plain said:

Подключил, ничего не изменилось:


assign GPIO_0[11:0] = 1 ? DAC[11:0] : 12'bz;

 

Это конечно должно было  все радикально поменять  :acute:но увы -  а как быть с этим ?  reg [11:0] DAC = 12'b0;

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, Plain said:

Этим в регистр определены хоть какие-то данные. Или нет?

Если данные константны и ни как не меняются во времени то зачем нужны эти регистры? Не проще ли сразу назначить нужные уровни на ножки (подумал Qu).

Успехов! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем, тема, нормально ли такое компилирование и такого типа его статистика. Ответ — нормально. Всем спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...