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

 
 
> Как правильно сформировать сигнал DATA READY?
eteP
сообщение May 17 2005, 14:31
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 50
Регистрация: 24-06-04
Пользователь №: 166



Привет.

Посмотрите плз. код.
Хотелось бы сделать так как показыно на картинке ну и с наименьшими затратами ресурсов в FPGA.
Сигнал DRY не зависел от длинны ND.
Ну и передний фрот DRY на 180 сдвинут от CLK.

Спасибо.

Код
library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;

entity a2b is
    port(
 CLK:    in std_logic;
 RSTl:    in std_logic;
 ND:  in std_logic;
 DIN:    in std_logic_vector(15 downto 0);
 DRY:    out std_logic;
 DOUT:    out std_logic_vector(15 downto 0)
    );
end a2b;


architecture a2b_arch of a2b is

signal DRY1: std_logic;
signal R: std_logic;

begin

P1:    process (CLK, RSTl)
begin
    
    if RSTl = '0' then

 DRY1 <= '0';
 DOUT <= (others => '0');
    
    elsif CLK'event and CLK = '1' then
 
 if ND = '1' then
     DOUT <= DIN;
     DRY1 <= '1';
 else
     DRY1 <= '0';
 end if;
 
    end if;
    
end process P1;

P2: process (CLK, RSTl, R)
begin

    if RSTl = '0' then
    
 DRY <= '0';
 R <= '0';
 
    elsif CLK'event and CLK = '0' then
    
 if R = '1' then
     DRY <= '0';
 elsif DRY1 = '1' then
     DRY <= '1';
     R <= '1';
 else
     R <= '0';
 end if;
 
 end if;
end process P2;

end a2b_arch;
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
oval
сообщение May 18 2005, 13:28
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 265
Регистрация: 15-03-05
Из: Москва
Пользователь №: 3 367



Цитата(eteP @ May 18 2005, 15:33)
Я использую среду альдек. Ситезатор  XST 6.3 мапирование и разводу тоже сфот от ксалинкса. Все параметры по умолчанию, кроме как выходные буфера добавить.
Все делаю для Virtex2 2000 -4
Ограничение только одно period для клока ставлю 20 ns. (что бы увидить на сколько развидется)
Вот и все вроде.

Понятно. Для этой технологии (Virtex-II) полученные результаты временного анализа - явный бред. Особенно 454 и 607МГц, если учитывать к тому же добавление буферов ввода/вывода. Кстати, 113МГц для моего варианта схемы - это возможно реально.
Цитата
Меня настораживает только одно, что есть большие различия между функциональной симуляции и временной симуляции.

А что за различия? Логика работы не должна меняться в любом случае.
Цитата
К сожалению у меня нет сейчас JTAG кабеля и не могу посмотреть что реально происходит. Попробую сейчас вывести сигнал на ружу и посмотреть скопом, хоть примерно оценить как все работает.

Вот еще нашел опцию у мапера -timing интрестные результаты получаются с ней и без. То что работало без нее (имеется ввиду временная симуляция) не работает с этой опцией и наоборт. Я только пол года занимаюсь этим и для меня много чего является откравениемsmile.gif)
*

Ничего, все приходит с опытом. Главное точно понимать, что делаешь и как работает.
Go to the top of the page
 
+Quote Post
eteP
сообщение May 18 2005, 14:00
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 50
Регистрация: 24-06-04
Пользователь №: 166



Когда я говорил что есть различия в моделирование, я использовал схему от makc.
При функциональном моделирование все работает корректно при любой частоте клока. А вот при временном симулирование, даже с учетом задержек на выходных буферах, она работает правильно (так как мне нужно), только в определенном диапазоне частот.

Ваша схема работает правильно при всех видах симуляции и для частот от 10 до 100 МГц (больше я не пробывал) без проблем.


Как я понял, что схема от makc, для передачи данных из одного частотного домена в другой. Но ее можно пользовать и для задачи которую я описал.
Для этого миняем RUN -> ND, EN выкидываем.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- eteP   Как правильно сформировать сигнал DATA READY?   May 17 2005, 14:31
- - tocha   Если надо сформировать по фронту короткий импульс ...   May 17 2005, 15:45
- - oval   Обычно я поступаю следующим образом: Кодsignal DRY...   May 17 2005, 16:26
|- - eteP   А основной процесс работает по фронту? Эта схема ...   May 17 2005, 16:37
- - makc   Если я не ошибаюсь, то в вышеприведенных схемах не...   May 17 2005, 17:48
|- - eteP   А не должно ли быть здесь Код process(clk...   May 17 2005, 18:35
||- - makc   Цитата(eteP @ May 17 2005, 21:35)А не должно ...   May 18 2005, 06:12
|- - des00   Цитата(makc @ May 17 2005, 12:48)Если я не ош...   May 18 2005, 04:12
|- - makc   Цитата(des00 @ May 18 2005, 07:12)Цитата(makc...   May 18 2005, 06:05
- - oval   Действительно, если сигнал ND асинхронен по отноше...   May 18 2005, 10:43
|- - eteP   Я использую среду альдек. Ситезатор XST 6.3 мапир...   May 18 2005, 12:33
- - oval   Цитата(makc @ May 17 2005, 20:48)Если я не ош...   May 18 2005, 13:45
- - oval   Цитата(eteP @ May 18 2005, 17:00)Когда я гово...   May 18 2005, 14:33
|- - eteP   Тригер Q0 клокируется сигналом ND и не зависит от ...   May 18 2005, 15:06
|- - makc   Цитата(eteP @ May 18 2005, 18:06)Тригер Q0 кл...   May 18 2005, 15:12
- - sazh   Признаюсь, такую реализацию увидел в первый раз. Е...   May 19 2005, 06:38
- - oval   Цитата(eteP @ May 18 2005, 18:06)Тригер Q0 кл...   May 19 2005, 12:27


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

 


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


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