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

 
 
> Генератор клока на самой ПЛИС
maharaj
сообщение May 15 2009, 09:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 13-05-09
Пользователь №: 49 005



Можно ли сделать (делал ли кто-то) генератор клока на самой ПЛИС?

Примерно так, как на приложенной схеме - типовая схема на двух инверторах. X, Y, Z входы/выходы ПЛИС и на них R и C, задающие частоту.

S - внутренний сигнал. Первый элемент сделан AND, чтобы компилятор не мог просто соединить X и Z; кроме того, в моей задаче нужно, чтобы клок можно было отключать. Частота клока требуется очень небольшая (единицы КГц), и не хочется городить внешний генератор.

Тип ПЛИС - один из младших MAX7000S (питание 5 В).
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 9)
SM
сообщение May 15 2009, 09:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(maharaj @ May 15 2009, 13:42) *
Можно ли сделать (делал ли кто-то) генератор клока на самой ПЛИС?

По такой схеме нельзя (схема работает за счет того, что лог. элемент является, в общем, аналоговым усилителем, а пути внутри ПЛИС намного сложнее). А вот добавив снаружи одногейтовый триггер шмитта, или используя ПЛИС, у которой есть входы с ТШ - другое дело. И еще вариант - реализация ТШ на ПЛИС при помощи двух резисторов, сопротивлением значительно выше зарядно-разрядного резистора. Тоже работает.
Go to the top of the page
 
+Quote Post
Rst7
сообщение May 15 2009, 09:57
Сообщение #3


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



http://www.pldworld.com/_xilinx/html/tip/sixeasypieces.htm


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 15 2009, 10:03
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Если не требуется высокая точность и стабильность по частоте, то в altera генератор можно сделать на основе LCELL

Код
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_signed.all;
LIBRARY altera_mf;
USE altera_mf.altera_mf_components.all;

entity clk_gen is
    port(
        ena            : in STD_LOGIC;
        clk            : out STD_LOGIC
        );
end clk_gen;

architecture a of clk_gen is
    COMPONENT LCELL
        PORT (a_in : IN STD_LOGIC;
            a_out : OUT STD_LOGIC);
    END COMPONENT;

    signal out_reg : STD_LOGIC_VECTOR(3 downto 0) := (others => '0');

begin

    out_reg(0) <= ena and out_reg(3);

    LCELL1 : LCELL
        PORT MAP(
            a_in => out_reg(0),
            a_out=> out_reg(1)
            );
    
    LCELL2 : LCELL
        PORT MAP(
            a_in => out_reg(1),
            a_out=> out_reg(2)
            );
    
    out_reg(3) <= not(out_reg(2));

    clk <= out_reg(2);
end a;
Go to the top of the page
 
+Quote Post
maharaj
сообщение May 15 2009, 12:30
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 13-05-09
Пользователь №: 49 005



Спасибо всем, кто отликнулся. Вопрос прояснился. ОК.


Цитата(vv_gulyaev)
Если не требуется высокая точность и стабильность по частоте, то в altera генератор можно сделать на основе LCELL

Тут две LCELL используются просто как линия задержки, так что генерить будет на частоте, соответствующей быстродействию ячеек, верно? Получится сколько-то МГц, мне же надо КГц-ы, придется делить - если останутся триггеры на это дело, то можно, иначе все равно придется делать на RC. Пока проект не сделан, непонятно, влезем ли в минимальную (7032), потому не знаю, есть ли запас по триггерам. В любом случае спасибо за код - может, пригодится.smile.gif
Go to the top of the page
 
+Quote Post
vv_gulyaev
сообщение May 15 2009, 16:01
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 15-10-08
Из: Воронеж
Пользователь №: 40 984



Цитата(maharaj @ May 15 2009, 16:30) *
Тут две LCELL используются просто как линия задержки, так что генерить будет на частоте, соответствующей быстродействию ячеек, верно? Получится сколько-то МГц

Да, частота будет сколько-то МГц.
Go to the top of the page
 
+Quote Post
tvcam
сообщение May 15 2009, 16:41
Сообщение #7


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

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



Микросхемы EPM7032 и EPM7032S снимаются с производства
http://www.altera.ru/#19022009_2
Go to the top of the page
 
+Quote Post
des00
сообщение May 17 2009, 10:09
Сообщение #8


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(maharaj @ May 15 2009, 04:42) *
Можно ли сделать (делал ли кто-то) генератор клока на самой ПЛИС?


дешевле и спокойнее поставить внешний генератор


--------------------
Go to the top of the page
 
+Quote Post
maugli
сообщение May 25 2009, 10:11
Сообщение #9


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

Группа: Свой
Сообщений: 199
Регистрация: 29-07-08
Из: Серпухов
Пользователь №: 39 283



А вот решение от XILINX для Virtex-5 с применением примитива IODELAY - Creating a Controllable Oscillator Using the Virtex-5 FPGA IODELAY Primitive XAPP872
Go to the top of the page
 
+Quote Post
moonrock
сообщение May 28 2009, 19:25
Сообщение #10


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

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



можно
http://electronix.ru/forum/index.php?showt...24324&st=15
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 23:19
Рейтинг@Mail.ru


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