|
|
  |
нужен FPU! |
|
|
|
Sep 14 2011, 19:34
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 26-07-11
Пользователь №: 66 426

|
Помогите пожалуйста... нужен примитивный FPU! задача - просто находить синус и перемножать... точнее - интерполяция по элипсу нужна (X=Xc+Xr*Cos(a)/ Y=Yc+Yr*Sin(a))... есть ПЛИСка Altera Cyclon II 6C, в ней городить таблицу синусов, а тем более перемножитель - последнее дело... она итак занята много чем - от простой логики до эзернета.... в помощь ей хотелось допаять пусть микросхему 8087... да вот только толкового сопроцессора даже 387SX/DX уже не найти, ни то что 8087... а российские аналоги от амстренга стоят под 4000р (((( аналоги от AMD - сложно найти, пока не удалось... а от Motorola - стоят под 3000 ((( и есестно все это старье от 80-90-х годов.... нашел именно то что мне надо - uM-FPU V3.1 - http://www.micromegacorp.com/downloads/doc...20Datasheet.pdf , цена - 12-15 баксов, приемлема... но так его никак не купишь у нас в России... может ли кто подсказать как выйти из ситуации - найти аналог этого uM-FPU, где купить его у нас в России... или какой микропроцессор/микроконтроллер с FPU, удобным программатором и дешевым.... SHARC и AT32UC3C в этом плане не устраивают (((
Сообщение отредактировал abit - Sep 14 2011, 19:50
|
|
|
|
|
Sep 14 2011, 20:30
|
Местный
  
Группа: Участник
Сообщений: 468
Регистрация: 4-03-05
Пользователь №: 3 066

|
Цитата(abit @ Sep 14 2011, 23:34)  Помогите пожалуйста... нужен примитивный FPU! задача - просто находить синус и перемножать... точнее - интерполяция по элипсу нужна (X=Xc+Xr*Cos(a)/ Y=Yc+Yr*Sin(a))... есть ПЛИСка Altera Cyclon II 6C, в ней городить таблицу синусов, а тем более перемножитель - последнее дело... она итак занята много чем - от простой логики до эзернета.... в помощь ей хотелось допаять пусть микросхему 8087... да вот только толкового сопроцессора даже 387SX/DX уже не найти, ни то что 8087... а российские аналоги от амстренга стоят под 4000р (((( аналоги от AMD - сложно найти, пока не удалось... а от Motorola - стоят под 3000 ((( и есестно все это старье от 80-90-х годов.... нашел именно то что мне надо - uM-FPU V3.1 - http://www.micromegacorp.com/downloads/doc...20Datasheet.pdf , цена - 12-15 баксов, приемлема... но так его никак не купишь у нас в России... может ли кто подсказать как выйти из ситуации - найти аналог этого uM-FPU, где купить его у нас в России... или какой микропроцессор/микроконтроллер с FPU, удобным программатором и дешевым.... SHARC и AT32UC3C в этом плане не устраивают ((( Что за бред???? Какие еще нафиг 8087 и иже с ним??? Что за хлам??? Задача в том виде, как описана, ложится на ПЛИС как нефиг делать! Это именно что первая задача для ПЛИС  . Не нужны никакие таблицы, вычисление sin/cos + пара умножителей это нулевые или близкие к нулевым затраты ресурсов, тем более что в Cyclon II есть встроенные аппаратные умножители, а sin/cos одновременно считаются одним CORDIC-ом. Ничего не сказано, конечно, про частоты, но то, что была упомянута 8087 наводит на мысль что человеку нужно отнюдь не сотни и даже не десятки MFLOPS:). Да и чудо чип по ссылке по мимо того, что имеет наружу жалкие SPI/I2C может похвастаться всего лишь 30-ю MIPS-ами  . Второй циклон его просто порвет, как тут говорят обычно  . А если не нравится Cyclon II, тогда любой DSP процессор. Причем именно что любой  А может и АРМ потянет. Ах да, плавающая точка тут тоже нужна, скорее всего, как рыбе зонтик  . Все делается с использованием обычных операций с обычной фиксированной точкой. Более того, тут даже и умножители не нужны, все сделает ОДИН единственный CORDIC:)))
|
|
|
|
|
Sep 14 2011, 20:55
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 26-07-11
Пользователь №: 66 426

|
Самурай Я извиняюсь, у нас там целый отдел плисников, они с MAXа тока недавно перешли на Cyclon II, все финансирование поджимает... вернее не только финансирование - а поддержка проектов с 98-го года... стратиксов нам вобщем не купить ) я сам лично слабо в этом рулю - в плане что там во втором циклоне... но мне нужно запихнуть математику (интерполятор эллипса) в циклон...пообщавшись с программистами альтеры я пришел к выводу, что они не знают как замутить синус и перемножитель в этой ПЛИСке, так чтобы места хватило... там как бы нужно иметь 7 координат в общем случае ((( и они кричат что им места не хватит.... поэтому я стал исследовать вопрос внешнего FPU... дошел до uM-FPU V3.1... да пусть и uM-FPU V2... устроит... где взять и как? есть связи во франции и в германии, так они уже неделю ищут эти микросхемы у себя в крупнейших поставщиках электрокомпонентов... результат - ноль можете, пожалуйста, прояснить как во втором циклоне 6C при нуле ресурсов сделать X*SIN(a), чтобы я донес это нашим программистам? частоты - сложно сказать, всётаки управление с обратной связью, но по отношению к X*SIN(a+c), где a и X - переменные, c - константа... хотелось бы иметь порядка 50-70 операций в секунду(X*SIN(a+c)), точность 9-й знак...
Сообщение отредактировал abit - Sep 14 2011, 21:08
|
|
|
|
|
Sep 14 2011, 21:25
|
Местный
  
Группа: Участник
Сообщений: 468
Регистрация: 4-03-05
Пользователь №: 3 066

|
Цитата(abit @ Sep 15 2011, 00:55)  ...можете, пожалуйста, прояснить как во втором циклоне 6C при нуле ресурсов сделать X*SIN(a), чтобы я донес это нашим программистам? Ну, Вы бы цифры хоть какие-нибудь привели, да уточнили постановку задачи, а то сначала две координаты было, теперь вот семь..., потом выяснится, что еще пару сотен страниц с формулами забыли вспомнить  . В общем, говорите, какая скорость поступления данных, сколько свободного места в циклоне (и Cyclone II 6 вроде как нет, есть 5 или 8, если не ошибаюсь) и что конкретно делать, тогда народ подскажет, хватит ли Cyclone или надо что-то еще ставить. PS Ага, скорость увидел, но там другие вопросы еще есть  PPS Впрочем, на таких скоростях и с такой точностью справится абсолютно любой процессор! Тот который больше всего нравится  . Банальный AVR на 16МГц скорее всего спокойно посчитает все что нужно, думаю даже в плавающей точке, не говоря уже о целочисленных вычислениях  .
|
|
|
|
|
Sep 14 2011, 21:29
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 26-07-11
Пользователь №: 66 426

|
Цитата(Самурай @ Sep 15 2011, 01:14)  Ну, Вы бы цифры хоть какие-нибудь привели, да уточнили постановку задачи, а то сначала две координаты было, теперь вот семь..., потом выяснится, что еще пару сотен страниц с формулами забыли вспомнить  . В общем, говорите, какая скорость поступления данных, сколько свободного места в циклоне (и Cyclone II 6 вроде как нет, есть 5 или 8, если не ошибаюсь) и что конкретно делать, тогда народ подскажет, хватит ли Cyclone или надо что-то еще ставить. PS Ага, скорость увидел, но там другие вопросы еще есть  ну две - это зависимые координаты в интерполяции у станков... в общем виде я встречал не более трех зависимых... смысл в том, что если одна из координат начинает вести себя в обратной связи не правильно - все остальные так же подстраивают себя под это неправильное поведение, чтобы выдержать исходную зависимость движения... в общем для 7-ми координат, что требуется мне, это - вовсе не нужно, они отнюдь не зависимы между собой.... аналог uM-FPU или микроконтроллера с FPU и простым программатором - был бы идеален!!! сейчас я купил AT91SAM7S, но его JTAG (IAR) больно неудобен и его IAR-студия дорога.... а самому этот внутрисхемный отладчик-программатор не смастерить.....
|
|
|
|
|
Sep 15 2011, 18:10
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 26-07-11
Пользователь №: 66 426

|
Самурай Огромное вам спасибо!!! Там речь шла о 5 мегафлопсах (и это еще с большим запасом)... для интерполяторов с обртной связью все равно даже с дискретой 1нм больше не требуется... Сегодня произошел диалог с плисниками - в общем у нас первое семейство Cyclon - EP1C6, перемножителей там нет, EP2C8 они хотели взять, но не знали как быть с sin/cos... к нашему стыду ни я, ни они не знали про CORDIC... для нас это просто открытием было... вопрос решен, спасибо огромное... наша промышленность продвинулась вперед )
Сообщение отредактировал abit - Sep 15 2011, 18:16
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|