Jump to content
    

Нужен совет

Какой интерфейс, размер ОЗУ или размер таблицы если нужно, частоты, какие ещё фенечки и т.п.

Например:

Интерфейс - параллельный, в ПЗУ зашита четверь периода синуса, не менее 1024 отсчета, слово 12 бит. Структура - с использованием накапливающего сумматора. С логикой восстановления целого периода из четвертинок. Максимальная скорость выдачи кодов - 100нс. Питание 5В. Настройка кода частоты - по SPI. Входы включения и старт/стоп.

Share this post


Link to post
Share on other sites

Например:

Интерфейс - параллельный, в ПЗУ зашита четверь периода синуса, не менее 1024 отсчета, слово 12 бит. Структура - с использованием накапливающего сумматора. С логикой восстановления целого периода из четвертинок. Максимальная скорость выдачи кодов - 100нс. Питание 5В. Настройка кода частоты - по SPI. Входы включения и старт/стоп.

Мерси, psygash.

Можно было бы подумать о компактной реализации. Но:

4096 дискретов по х умножить на 100 нс = 0.4 мс -> 2.5 кГц максимально.

Кому-то нужен такой низкочастотный синус?

Share this post


Link to post
Share on other sites

Мерси, psygash.

Можно было бы подумать о компактной реализации. Но:

4096 дискретов по х умножить на 100 нс = 0.4 мс -> 2.5 кГц максимально.

Кому-то нужен такой низкочастотный синус?

Да, нужен именно такой. Может несколько больше 2-6кГц.

Share this post


Link to post
Share on other sites

4096 дискретов по х умножить на 100 нс = 0.4 мс -> 2.5 кГц максимально.

Кому-то нужен такой низкочастотный синус?

Не, вы не понимаете гениальную сущность DDS :)

Размер таблицы определяет максимальное разрешение по частоте и фазе, а максимальная частота синуса может быть вплоть до половины тактовой, согласно теореме Котельникова

 

Share this post


Link to post
Share on other sites

Размер таблицы определяет максимальное разрешение по частоте и фазе, а максимальная частота синуса может быть вплоть до половины тактовой, согласно теореме Котельникова

Может, но фильтр нужен крутой. Лучше ограничиться 1/8 от тактовой...

Для таблицы на 1/4 синуса нужно много памяти.

 

4096 дискретов по х умножить на 100 нс = 0.4 мс -> 2.5 кГц максимально.

Кому-то нужен такой низкочастотный синус?

Это вы минимальную частоту посчитали, при заданной тактовой. Максимальная - когда из таблицы берется несколько точек (в пределе больше 2, в реальности - пусть, 8). 1 / 100 ns / 8 = 1.25 MHz. Тоже мало, надо бы тактовую частоту поднять.

Share this post


Link to post
Share on other sites

Звиняйте, господа. Прикинул потребные ресурсы - в этот кристалл такая задача не влезет. Несмотря на ухищрения с минимизацией и заменой SIN ROM на жёсткую логику (получилось около 800 двухвходовок) . Да еще PLL городить и быстрый сумматор ...

 

В ожидании других интересных предложений.

Share this post


Link to post
Share on other sites

А ваши микросхемы ориентированы на промышленность и гражданских или на милитари? )

Share this post


Link to post
Share on other sites

А ваши микросхемы ориентированы на промышленность и гражданских или на милитари? )
На востребованность.

Но, видите как - либо многое уже есть из импорта, либо технологии не позволяют составить конкуренцию.

Получается, что разработчиков и так неплохо кормят комплектацией. Раз интереса маловато даже на предлагаемых условиях. Ну, или это не та площадка для таких вопросов. А другой-то и нет. Не рассылкой же по конторам заниматься.

 

Раз такое дело, - можно переформулировать задачу под небольшой ASIC. Отброшу универсальность.

Share this post


Link to post
Share on other sites

Раз такое дело, - можно переформулировать задачу под небольшой ASIC. Отброшу универсальность.

 

А он же, в общем, как я понимаю, просто стойкий gate array? Куча предразведенных транзисторов без слоев металла, соединяй, не хочу?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Всем привет. Тему решил оживить.

По причине того, что в минуты расслабленного созерцания энтропии придумал компактную реализацию преобразователя кода в код синуса.

 

Но, возник вопрос - а это кому-то нужно вообще?

И если нужно, то что именно?

Имеет ли это какую-то перспективу в виде ASIC?

 

Вот, например, уважаемый psygash.

Да, нужен именно такой. Может несколько больше 2-6кГц.

Составил вводную.

Вы такое хотели или что-то другое:

Постановка задачи для цифрового генератора функции синуса.

 

1. Дискретизация по Х.

13-ти разрядное число, 13-ый разряд зарезервирован под знак.

12-й и 11-й разряды определяют квадранты функции (по четверти периода).

00 – первый; 01 – второй; 10 – третий; 11 – четвёртый квадрант.

В каждом квадранте 10 разрядов дискретизации.

Диапазон значений аргумента в этих 10 разрядах - от 0 до (210 -1) =1023.

Количество значений аргумента 1023*4-1=(212-1) =4095 для полного периода функции.

По значению 212 начинается новый период, эквивалентно x=1

Число занимает 12+1 разрядов данных полностью,

от bin S 0000 0000 0000 до bin S 1111 1111 1111. S – знак.

Длительность одной дискреты по Х:

α = 360/4095 = 0,08791208791208791208791208791209 градусов.

Или dX= 2pi/4095 = 0,00153435538636864138630654133494 радиан

α[рад] = a[°] : (180° / pi)

 

2. Стандартная функция со знаком, без смещения по Y.

Сигнал симметричен относительно оси Х, имеет значение 0 при Y=0.

13-ти разрядное число, 13-ый разряд – знак. Единица соответствует минусу.

Минимальное значение функции равно –213+1 = – 8191.

Максимальное значение функции равно 213-1 = 8191.

Число занимает 12+1 разрядов данных полностью, от

bin S 0000 0000 0000 до bin S 1111 1111 1111. S – знак.

 

Реализуется функция Y=8191*sin(F),

где F=dX*N, N-входное 13-ти разрядное целое число со знаком (см. п.1)

Y округляется до целого по математическим правилам.

 

Или нужен совсем другой синус. Например, 16-ти разрядный. Или в виде, например, 100 000 *sin(x) ?

С добавленной функцией cos(x), sin(x)/x и т.п.

Вычисление таких функций по разложению в ряды требует неслабых ресурсов железа.

И внешняя "тригонометрическая ASIC" могла бы быть востребована?

Какие, вообще, синусы в "ходу"? :)

Share this post


Link to post
Share on other sites

По причине того, что в минуты расслабленного созерцания энтропии придумал компактную реализацию преобразователя кода в код синуса.

компактную реализацию - это вообще без умножителей?

 

Share this post


Link to post
Share on other sites

компактную реализацию - это вообще без умножителей?
Да, только микроскопические сумматоры и полусумматоры. Чистая комбинаторика.

Не, умножение как бы есть местами, на константы. Но, такое нежное, почти незаметное. :)

 

см. Direct Digital Synthesis
Век бы на них не смотреть. :)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...