реклама на сайте
подробности

 
 
> Power-Up Level, Altera, verilog
TailWind
сообщение Oct 28 2006, 09:31
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 125
Регистрация: 15-11-04
Пользователь №: 1 135



Как им управлять?

У меня много триггеров в дизайне.
После конфигурации нужно чтобы они были в заданных состояниях.

Для каждого триггера прописывать атрибут Power-Up Level - не удобно.

Когда у меня был QuartusII 2.2 я делал так:
Код
always @(posedge Clk or negedge Reset_)
if (!Reset_)  trigger <= 1;
else          trigger <= ....;

Обычный вериложный ресет.
Только вход Reset_ не был выведен на pin.
И всё работало.

Теперь я работаю с Cyclone, а он в Quartus 2.2 не поддерживается.
Поставил Quartus 4 - он не понимает такую конструкцию.
Quartus 6 - понимает для половины триггеров!!!

Как быть?
Чувствую придётся на ACEX и Quartus2.2 возвращаться ;(((
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sazh
сообщение Oct 31 2006, 14:55
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Дело в том, что в Cyclone есть асинхронный Load, а в ACEX нет.//////////////
Ну и что. Если есть асинхронный load, нет aset.
Вот пример. одинаково ведет на обоих кристаллах. (При моделировании. rest_n можно ведь и не активизировать). Все базируется на инициализации регистров в ноль.
А Ваше описание на автомат не похоже. неужели в RTL просмотрщике Вы видите машину состояний?

//Assignments > Settings > Analysis & Synthesis Settings > More Settings
module power_up
#(parameter [7:0] set_out_data = 8'h07)
(
input clk,
input reset_n,
input [7:0] in_data,
input enable,
output reg [7:0] out_data_a,
output [7:0] out_data_b
);

reg [7:0] out_data;

always @ (posedge clk or negedge reset_n) //// /* NOT-GATE PUSH-BACK ON (FPGA)
begin
if (reset_n == 1'b0) out_data_a <= set_out_data;
else if (enable) out_data_a <= in_data;
end

always @ (posedge clk)
begin
if (enable) out_data <= in_data ^ set_out_data;
end

assign out_data_b = out_data ^ set_out_data;

endmodule
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- TailWind   Power-Up Level   Oct 28 2006, 09:31
- - sazh   always @(posedge Clk or negedge Reset_) if (!R...   Oct 28 2006, 17:36
- - TailWind   Объясни пожалуйста подробнее Как поставить: -P...   Oct 28 2006, 19:29
- - TailWind   Чёрт возьми! А ведь это не от Quartusa зависит...   Oct 31 2006, 12:56
|- - TailWind   Цитата(sazh @ Oct 31 2006, 17:55) Дело в ...   Oct 31 2006, 16:04
|- - klop   Цитата(TailWind @ Oct 31 2006, 19:04) Я у...   Oct 31 2006, 16:12
- - klop   Ребяты а почему бы не сделать вход ресет у FPGA. И...   Oct 31 2006, 15:17
- - vetal   reset можно сформировать внутри fpga(sram) 1-dff-d...   Oct 31 2006, 17:26
|- - TailWind   Цитата(vetal @ Oct 31 2006, 20:26) reset ...   Oct 31 2006, 17:51
- - TailWind   Чёрт, vetal, работает!!! ;))) Спасибо...   Oct 31 2006, 18:15
- - vetal   ЦитатаЧёрт, vetal, работает!!! )) Я не...   Oct 31 2006, 18:20
|- - Postoroniy_V   Цитата(vetal @ Oct 31 2006, 21:20) Цитата...   Nov 1 2006, 10:35
- - Krys   Господа, нельзя ли разжувать это: Цитатаreset можн...   Nov 1 2006, 06:24
|- - TailWind   Цитата(Krys @ Nov 1 2006, 09:24) Господа,...   Nov 1 2006, 12:16
- - vetal   Цитата"задать значение после конфигурирования...   Nov 1 2006, 08:02
- - Krys   простите, но я не знаю HDL, поэтому нельзя ли расс...   Nov 7 2006, 12:56
|- - klop   Цитата(Krys @ Nov 7 2006, 15:56) простите...   Nov 7 2006, 13:19
- - sazh   Читайте внимательно. Здесь рассматривается случай,...   Nov 7 2006, 13:57
- - Krys   Спасибо! Теперь всё стало понятно!   Nov 8 2006, 04:25


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 21:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016