[an error occurred while processing this directive]
Не вижу никакой связи. (+)
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено dxp 25 февраля 2005 г. 13:07
В ответ на: Поэтому утверждение, что оба варианта синтезируются в одно и тоже, неверно. отправлено cdg 25 февраля 2005 г. 12:33

Вот в упрощенной форме.

Вариант 1.


reg [1:0] state;
reg [1:0] next_state;
localparam STATE_IDLE = 0;
localparam STATE_LOCK = 1;
localparam STATE_RUN = 2;
localparam STATE_LEAVE = 3;
always @(*)
begin
case(state)
STATE_IDLE: if(...) next_state = STATE_RUN;
STATE_LOCK: if(...) next_state = STATE_LEAVE;
STATE_RUN: if(...) next_state = STATE_LOCK;
STATE_LEAVE: if(...) next_state = STATE_IDLE;
end

always @(posedge clk, posedge reset)
begin
if(reset) state <= STATE_IDLE;
else state <= next_state;
end

Вариант 2.


reg [1:0] state;
localparam STATE_IDLE = 0;
localparam STATE_LOCK = 1;
localparam STATE_RUN = 2;
localparam STATE_LEAVE = 3;

always @(posedge clk, posedge reset)
begin
if(reset) state <= STATE_IDLE;
else begin
case(state)
STATE_IDLE: if(...) state <= STATE_RUN;
STATE_LOCK: if(...) state <= STATE_LEAVE;
STATE_RUN: if(...) state <= STATE_LOCK;
STATE_LEAVE: if(...) state <= STATE_IDLE;
end
end


Я лишь хотел сказать, что оба эти варинаты по результату синтеза совершенно равнозначны. А сигнал next_state из первого варианта - комбинационный. Только и всего. Не понимаю, с чем Вы спорите.

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru