|
Максимальная входная частота, MAX3000А |
|
|
|
 |
Ответов
|
Mar 6 2009, 23:11
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Цитата(SM @ Mar 6 2009, 23:24)  IMHO спор не о чем. Уже ведь сказали - если STA дает добро в worst case, то вперед ни о чем не думая, гарантия обеспечена. STA как раз в worst case добро не дает, в этом-то и интерес темы. Ведь не в 2 раза превышение, да и на практике вроде работает. Но если взять quartus, сделать проект с EPM3256ATCXXX-10, то STA для любого счетчика укажет предельный период клока 10.5nS (95.24MHz). STA quartus-а не очень-то позволяет вводить температурный диапазон и напряжение, как узнать и с кого потом спросить, на сколько можно превышать в тех или иных условиях пределы worst case? В версии 1.01 datasheet, которую можно нагуглить, был параметр Fmax=125MHz для EPM3256ATCXXX-10, в текущей версии документа 3.4 этого параметра нет. В проекте автора темы кроме 2-х битного счетчика есть мультиплексор управляемый выходом счетчика и 16 регистров на выходе. У меня от этой темы возникли вопросы к специалистам по max 3000a (один раз уже чуть было не пришлось с этим семейством работать): - Что это за подозрительные графики на 40 странице m3000a.pdf, что это за High speed/Low power? Намекают на turbo bit ? - Какой анализатор таймингов поддерживает это семейство ?
|
|
|
|
|
Mar 7 2009, 00:17
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(Shtirlits @ Mar 7 2009, 02:11)  В версии 1.01 datasheet, которую можно нагуглить, был параметр Fmax=125MHz для EPM3256ATCXXX-10, в текущей версии документа 3.4 этого параметра нет. Ну наконец то, БАЛЬЗАМ НА ИЗРАНЕННУЮ ДУШУ!!! А я то думаю чего это симулятор рисует вполне работоспособную диграмму аж до 125MHz включительно для -10!!! а для -7 аж до 144MHz!!! А у меня то всего каких-то смешных 100.7MHz !!! Цитата(Shtirlits @ Mar 7 2009, 02:11)  - Что это за подозрительные графики на 40 странице m3000a.pdf, что это за High speed/Low power? Намекают на turbo bit ? Да, графики очень странные! Интересно нафига мне знать скоко мой чип потребляет при комнатной температуре при входной частоте 172.4 MHz если максимальная 95??? Перестраховщики эти альтеровцы помоему. PS. И действительно поднял старую документацию на MAX300 и там Fmax для -10 = 125MHz! Там даже нет разделения на 032,064...256 а только по спидграде! Шож это получается в 2000 году умели быстрые чипы делать а в 2009 разучились!! Технологии улучшаются а скорость падает
|
|
|
|
|
Mar 7 2009, 01:11
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Кстати, раз сна нет, попробовал добавить к вашей схеме регистры на все входные сигналы, чтобы не возиться с констрейнами. Для 16-ти разрядных сигналов для -10 больше 92.59MHz не получается, для -7 выходит 121.95MHz. Код library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all;
entity max_clock is generic ( WIDTH : integer := 16 ); port ( clock : in std_logic; reset : in std_logic; Ain1 : in std_logic_vector(WIDTH-1 downto 0); Ain2 : in std_logic_vector(WIDTH-1 downto 0); Ain3 : in std_logic_vector(WIDTH-1 downto 0); Aout : in std_logic_vector(WIDTH-1 downto 0); A : out std_logic_vector(WIDTH-1 downto 0) ); end max_clock;
architecture max3000a of max_clock is
signal counter : std_logic_vector(1 downto 0); signal Ain1_reg, Ain2_reg, Ain3_reg, Aout_reg : std_logic_vector(WIDTH-1 downto 0);
begin process(reset, clock) begin if (reset='1') then counter <= "00"; Ain1_reg <= (others=>'0'); Ain2_reg <= (others=>'0'); Ain3_reg <= (others=>'0'); Aout_reg <= (others=>'0'); A <= (others=>'0'); elsif (rising_edge(clock)) then counter <= counter+1; Ain1_reg <= Ain1; Ain2_reg <= Ain2; Ain3_reg <= Ain3; Aout_reg <= Aout; case counter is when "00" => A <= Ain1_reg; when "01" => A <= Ain2_reg; when "10" => A <= Ain3_reg; when others => A <= Aout_reg; end case; end if; end process;
end max3000a;
|
|
|
|
|
Mar 7 2009, 02:23
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
У вас 4 входа по 16 разрядов Ain1, Ain2, Ain3, Aout. Сигнал со входных ножек идет сразу на мультиплексор и далее на регистры. К этой схеме я добавил по регистру на каждый входной сигнал. Анализатор без дополнительных констрейнов (хотя бы Tsu) проверяет только сигналы, у которых есть цикл регистр->что-то-еще->регистр. И нужно еще не забыть посмотреть на остальные результаты, которые призывно не светятся красным цветом, ведь время прохождения сигнала от входа до регистра и от регистра до выхода вообще не ограничивается, только приложением, про которое только вы можете знать.
Мне обычно лень писать констрейны (я их только со словарем пишу, констрейны везде разные, а vhdl одинаковый). Когда хочется быстренько сделать на незнакомой fpga оценку place-and-route, я добавляю регистры на входы и выходы. К тому же есть еще один повод - в больших FPGA на предельных частотах проверяемый блок может быть и легко достигает нужных частот, но входные и выходные сигналы пройти через всю микросхему на нужной частоте не успевают. Спасают сдвиговые регистры на каждый сигнал.
Так вот. После добавления входных регистров получилось вход->входной регистр->мультиплексор->выходной регистр->выход В результате анализатор подсчитывает времена прохождения всех сигналов через мультиплексор, а не только сигналов от регистра счетчика до регистра на выходе. Ту же саму проблему можно заметить обратив внимание на результат анализатора, что вышло с Tsu. Для -10 получается 6.9nS. Можно задать для примера Tsu=7nS, но нужно чтобы и в реальности данные на это время раньше клока приходили. Про выход вообще не думаем пока.
Для 6-ти и более битного варианта вашей схемы получаются частоты меньше пределной 95.24MHz. Имеет смысл менять дизайн. Например, тупо разбить схему на 4 одинаковых 4-х битных части, чтобы у каждой был свой счетчик или сделать pipeline, если условия задачи допускают.
|
|
|
|
|
Mar 7 2009, 10:59
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(Shtirlits @ Mar 7 2009, 06:23)  Так вот. После добавления входных регистров получилось вход->входной регистр->мультиплексор->выходной регистр->выход В моей схеме нету "вход->входной регистр" у меня только "счетчик->мультиплексор->выходной регистр->выход". Ain1 это выход двоичного счетчика на CLK которого поступает RD0. Аналогично Ain2, Ain3 и Aout. Главное чтобы время прохождения сигнала с выхода этого счетчика до выходного регистра было не больше 4-х тактов входной частоты (~40нс).
|
|
|
|
|
Mar 7 2009, 12:18
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Цитата(zombi @ Mar 7 2009, 13:59)  В моей схеме нету "вход->входной регистр" у меня только "счетчик->мультиплексор->выходной регистр->выход". Ain1 это выход двоичного счетчика на CLK которого поступает RD0. Аналогично Ain2, Ain3 и Aout. Главное чтобы время прохождения сигнала с выхода этого счетчика до выходного регистра было не больше 4-х тактов входной частоты (~40нс). Так сигналы Ain1, Ain2, Ain3, Aout внутринние ? Хочется понимать, что что снаружи, а что внутри.
|
|
|
|
|
Mar 7 2009, 12:48
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(Shtirlits @ Mar 7 2009, 16:18)  Так сигналы Ain1, Ain2, Ain3, Aout внутринние ? Хочется понимать, что что снаружи, а что внутри. Все сигналы Ain1, Ain2, Ain3, Aout внутренние, формируются опятьже внутренними RD0,RD1,RD2,WR на счетчиках. Внешний входной сигнал только GCLKКонечно есть еще и внешние сигналы от процессора, но я эту часть схемы не приводил т.к. частота проца 16MHz че там считать. Посути дела альтера должна просто переписать область озу с - до, начальный и конечный адрес задает проц и ждет окончания пересылки
|
|
|
|
|
Mar 7 2009, 13:30
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Цитата(zombi @ Mar 7 2009, 15:48)  Конечно есть еще и внешние сигналы от процессора, но я эту часть схемы не приводил т.к. частота проца 16MHz че там считать. Посути дела альтера должна просто переписать область озу с - до, начальный и конечный адрес задает проц и ждет окончания пересылки  Было бы неплохо убедиться в том, что сигналы от процессора надежно захватываются 100MHz клоком и фронты этих сигналов адекватные. Может греется и шумит из-за того, что где-то что-то генерирует.
|
|
|
|
|
Mar 7 2009, 13:36
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(Shtirlits @ Mar 7 2009, 17:30)  Было бы неплохо убедиться в том, что сигналы от процессора надежно захватываются 100MHz клоком и фронты этих сигналов адекватные. Может греется и шумит из-за того, что где-то что-то генерирует. Дык сигналы от проца вообще не захватываются! Адреса от проца поступают прямо на дешифратор, шд прямо на вход тригеров а WRcpu на CLK этих тригеров. Я бы с радостью простробировал их входной GCLK (100MHz) но свободных тригеров не осталось!!! А как узнать не генерирует ли что-то где-то??? PS. точнее всеже пяток тригеров всеже есть. Что лучше стробировать ша,шд или шу???
|
|
|
|
|
Mar 7 2009, 13:42
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Цитата(zombi @ Mar 7 2009, 16:36)  А как узнать не генерирует ли что-то где-то??? Я не знаю. С одной стороны, нарушения функциональности (глюки), завышенное потребление (температура) говорят о ненормальности. С другой можно проверять все времянки и убеждаться в честном их соблюдении. Проверьте еще раз констрейны этих самых сигналов от процессора. Если клок процессора (строб) и клок 100MHz не связаны, то будет непрятность.
|
|
|
|
Сообщений в этой теме
zombi Максимальная входная частота Feb 26 2009, 20:40 Шурила Цитата(zombi @ Feb 26 2009, 22:40) Собрал... Feb 26 2009, 21:33 zombi Цитата(Шурила @ Feb 27 2009, 00:33) Одно ... Feb 27 2009, 02:06  Шурила Цитата(zombi @ Feb 27 2009, 04:06) Но что... Feb 27 2009, 06:56 Евгений Николаев Фраза
ЦитатаMaximum internal global clock frequenc... Feb 27 2009, 08:12 Adlex Многое зависит от температуры эксплуатации. Чипы в... Feb 27 2009, 14:59 zombi Ув. знатоки альтеры!
Еще раз очень прошу Вашег... Mar 4 2009, 21:38 Shtirlits Цитата(zombi @ Mar 5 2009, 00:38) Приведу... Mar 4 2009, 23:02  zombi Цитата(Shtirlits @ Mar 5 2009, 03:02) Сим... Mar 5 2009, 02:23   des00 Цитата(zombi @ Mar 4 2009, 20:23) И всета... Mar 5 2009, 04:34    Shtirlits Цитата(des00 @ Mar 5 2009, 07:34) Ну и ес... Mar 5 2009, 12:00     mse Цитата(Shtirlits @ Mar 5 2009, 15:00) Рад... Mar 6 2009, 06:20 vladz На самом деле эта Maximum internal global clock fr... Mar 6 2009, 11:53 Shtirlits Цитата(vladz @ Mar 6 2009, 14:53) На само... Mar 6 2009, 13:20  mse Цитата(Shtirlits @ Mar 6 2009, 16:20) Ком... Mar 6 2009, 13:45 vladz Для тех, кому лень открыть документацию.
Maximum ... Mar 6 2009, 18:36 Sefo А Вы не пробовали этот вопрос задать спецам Alter-... Mar 7 2009, 20:06 zombi Спасибо Штирлиц! Буду изучать.
Кстати стробиро... Mar 7 2009, 22:23 Shtirlits Цитата(zombi @ Mar 8 2009, 01:23) И всета... Mar 8 2009, 01:14
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|