Перейти к содержанию
    

std-logic

Свой
  • Постов

    41
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные std-logic


  1. Продается демоборд SK-LPC2478-S3E (подробнее см SK-LPC2478-S3E по цене 3.5 тр.

     

    • NXP LPC2468 (ARM7, 512k Flash, 98k SRAM, EMC, SD-card, Ethernet, USB-host, USB-client ...)

    • Xilinx FPGA Spartan3E-500 (500 тысяч эквивалентных логических вентилей).

    • GSM/GPRS/GPS модуль SIM508 (в комплект не входит).

    • 16Mx16 SDRAM, 256Mx8 NAND Flash.

    • Ethernet PHY, UAB-host, USB-client, SD/MMC card, LCD 128x32, CAN PHY, RS232.

    • 74 линий I/O для микоконтроллера, 111 линий I/O для FPGA.

     

    Так же продается Jet5Link - цена 1тр.

     

    При покупке комплектом - цена 4тр

     

     

    Update: плата 3 тр, Jet5Link 800р, комплектом 3.5тр

  2. Продается демоборд SK-LPC2478-S3E (подробнее см SK-LPC2478-S3E по цене 3.5 тр.

     

    • NXP LPC2468 (ARM7, 512k Flash, 98k SRAM, EMC, SD-card, Ethernet, USB-host, USB-client ...)

    • Xilinx FPGA Spartan3E-500 (500 тысяч эквивалентных логических вентилей).

    • GSM/GPRS/GPS модуль SIM508 (в комплект не входит).

    • 16Mx16 SDRAM, 256Mx8 NAND Flash.

    • Ethernet PHY, UAB-host, USB-client, SD/MMC card, LCD 128x32, CAN PHY, RS232.

    • 74 линий I/O для микоконтроллера, 111 линий I/O для FPGA.

     

    Так же продается Jet5Link - цена 1тр.

     

    При покупке комплектом - цена 4тр

  3. Возвращаясь к теме стека NicheLite для LPC: Портировал ли кто-нибудь этот стек на другую операционку (в частности интересует FreeRTOS)? У меня пока не очень получается разобраться со взаимодействием NicheLite и RTOS... То есть основное понятно, подставляем в файле "osport.h" свои вызовы из своей оси, заменяем тики таймера на свои из оси и т.п. Но некоторые моменты мне не ясны - получается, что в netmain создаются задачи для стека, но как они взаимодействуют между собой? как я понял в NicheLite реализованы свои очереди? или они относятся только к пакетам из/в драйвера МАС ?

     

    Существует ли более подробное описание стека, кроме того, что представлено в дистрибутиве в папке LPC_30doc, особенно касательно взаимодействию с RTOS?

     

    Сравнивал ли кто-нибудь этот стек, например, с lwIP в плане скорости/сложности использования/доступности для понимания?

     

    У кого есть опыт использования NicheLite - отзовитесь :help:

  4. Столкнулся со следующей проблемой:

     

    Задача стоит портировать freeRTOS для LPC2468, работаю в Кейл. На freeRTOS.org есть порт для LPC2xxx, но для версий Кейл с родным (кейловским же) компилером. Сейчас же, как известно, кейл идет с АРМовским компилером. В нем, в числе прочего, изменился формат инлайн ассемблера и встроенного ассемблера тоже. Из-за этого вываливается куча ошибок при компиляции startup.s и portmacro.h (то есть файлов с ассемблерным кодом).

     

    Попытки самостоятельно переделать упомянутые файлы пока не увенчались успехом (в АРМ-ассемблере, особенно в его вариантах под разные компиляторы, я новичок...)

    Портов freeRTOS под LPC2xxx для RealView компилятора найти не смог :help:

     

    Может быть кто-то уже решал такую задачу?

  5. Получил плату SK-LPC2478-S3E от starterkit.ru ...

     

    Первые впечатления хорошие :a14: , подробнее :

    http://starterkit.ru/new/index.php?name=Fo...topic&id=61

     

    На плате: ARM LPC2478, FPGA XILINX S3E-500, SDRAM, Ethernet PHY, USB host, dev and OTG и прочая периферия

     

    Теперь - более подробно и по теме: какие я вижу задачи для ARMа на этой плате и на какие вопросы хотел бы получить ответы и консультации здесь (дело в том, что с ARMами я, можно сказать, только начинаю плотное знакомство, занимаюсь больше с FPGA, хотя связку ARM + FPGA считаю наиболее перспективной для своих дальнейших проектов...)

     

    От ARMа я бы хотел:

     

    *) ВЕБ сервер с динамическими страницами, с которого, без дополнительных программ на хосте т.е. только через браузер можно было бы загружать FPGA прямо, загружать прошивку для FPGA в соответствующую конфигурационную память на борту платы (хотя это практически тоже самое, что и загрузка FPGA), желательно загружать FLASH ARMа, то есть иметь bootloader через TCP/IP. Кроме этого, через ВЕБ сервер иметь возможность управлять регистрами в FPGA и осуществлять прочее управление (например пинами, ЦАП, АЦП...), передавать в/из FPGA массивы данных с максимальной скоростью (хотя для этого, возможно, лучше все же иметь программу на хосте и использовать UDP ?)...

     

    *) MassStorageDevice на USB host, то есть иметь возможность писать/читать на стандартную флэшку большого объема, вставленную в host.

     

    *) Файловую систему для MassStorageDevice (я так полагаю FAT32)... Или это подразумевается в MassStorageDevice?

     

    *) иметь OS для всего этого :biggrin: , причем я так понимаю RTOS...

     

    *) на этой OS видимо имеет смысл тоже файловая система, например для ВЕБ-сервера?

     

    После некоторого ознакомления с вариантами предварительно остановился на freeRTOS в качестве OS :) (открытые исходники, хорошая популярность и поддержка) и NicheLite стек (впрочем, какой стек выбрать - еще вопрос, NicheLite привлекает открытостью, работой в RTOS). Порты всего этого хозяйства по отдельности для LPC2ххх есть, мож у кого есть готовая связка и не жалко?

     

    Хотелось бы услышать мысли, советы, критику вышеизложенных идей, выбора...

     

     

    PS. Смежная тема, со стороны FPGA:

    http://electronix.ru/forum/index.php?showt...p;p=233731&

  6. Большое спасибо всем откликнувшимся!

    Прогресс не стоит на месте... Как оказалось, преобразователь с заявленными параметрами - вполне обычное дело, есть большой выбор... С эффективностью тоже никаких проблем - порядка 95%. Цены вполне доступные.

     

    Electronix FOREVER! :a14: :yeah:

  7. Это похоже на: быстро, качественно, недорого.

    О высоком КПД можете даже не мечтать, с ценой и доступностью может быть чуть проще.

     

    Не знаю как вы собираетесь получать от одной батарейки выходную мощность преобразователя 5Вт. Это если очень грубо прикинуть, при КПД хотябы 60%: 5вт/0,6=8,33Вт. И столько же ампер при 1 вольте питающего. С такими токами могут справиться разве что некоторые образцы АА аккумуляторов, но проработают они минут 15.

    Отсюда вывод: то что вы задумали нереально осуществить.

     

    А по идеям низковольтных преобразователей от 0,3В кто-то здесь уже выкладывал вот эту стаейку:0_3V.pdf

     

    Собственно, подразумевался максимальный ток (т.е. кратковременный, пусковой, импульсный), который должен выдерживать преобразователь. Рабочий же выходной ток меня устроил бы 0.1 ... 0.3 А

     

    Что касается современных АА аккумуляторов - емкость в 3 А*Ч уже доступна. Таким образом при выходном токе 100мА * 5В и КПД=0.6 потребляемый от батареи ток до 0.8 А при 1В, то есть часа на 3..4 работы от полностью заряженного аккумулятора рассчитывать ИМХО можно.

  8. На чем можно собрать STEP-UP преобразователь со входным напряжением от 1 В (и до 4..5 В), выходом, скажем 5В и максимальным током 1А. Назначение - питание электроники от одной батарейки (или аккумулятора) АА или ААА. Соответственно основной критерий - экономичность (КПД), второй критерий - цена и (быстро-)доступность комплектующих.

  9. Ваш пример никак не связан с точностью способа деления. например, можно напрямую целочисленно делить 29 на 10 , и получиться 2, в предельном случае единица младшего разряда все равно теряется. Вообще из простых способов деления умнажение на обратное наиболее эффективно.

     

    Собственно, если 29 делить на 10 и получить 2 - то это правильно (деление ведь целочисленное).

     

    А в целом с проблемой я разобрался, всем спасибо за советы, особенно за книжку Уорена младшего - Алгоритмические трюки для программистов.

    Если имеешь дело с целочисленной математикой - эта книга, на мой взгляд, должна быть настольной.

    :a14:

  10. Ежли делить будете на ограниченное количество фиксировааных чисел, то деление лучше заменить умножением на обратное.

     

    Есть маленькая проблемка:

    Например делим на 3 или, что тоже самое, умножаем на 1/3 или 0.01010101010101.... в двоичном коде. Если например делим 63 ("111111") - получим 10100.1111111..... т.е 20.9999999.... вместо 21. Как разрулить такую ситуацию. Просто округлять нельзя - целочисленное деление подразумевает отбрасывание остатка, а если отбросить в данном случае - будет неправильно...

    И еще - на каком разряде при умножении (бесконечная дробь!) можно остановиться - интересует общий случай для произвольных разрядности и делителя?

    Подскажите, где почитать по деталям реализации таких делителей?

  11. Подскажите пожалуйста, может кто-нибудь сталкивался с реализацией делителя на константу. Конкретно - необходимо делить 8-ми (в перспективе до 16) разрядные значения на 3, на 5, на 7 (и желательно общий случай - на Х). Деление не конвеерное - в одном такте!! Критично быстродействие (минимальное кол-во уровней логики при синтезе), но и ресурсы тоже важны.

     

    Был бы рад коду на VHDL , ну или хотя бы детальному алгоритму (к сожалению сейчас нет времени самому велосипед изобретать :)

  12. Закончил плату в таком составе:

    Altera EP2C20 - 1

    SDRAM IS42S16400B - 2

    ADC ADS5421 - 1

    ADC MAX1168 - 1

    DAC AD5663 - 4

    MAX964 - 1

    ATMEGA169 - 1

    MAX3232CPW - 1

     

    + необходимая обвязка

     

    Предусмотремы порты для стыковки с rainbow. Вобщем девайс специфический, но может кому-нибудь будет интересно. Имеет смысл здесь это обсуждать? или лучше в форуме по fpga?

     

    А можно схемку в студию?... (Если конечно не trade-секрет) Или хотя бы блок-схему.

    И как она к АРМу цепляется (PIO- ?)

  13. Что скажете насчет Spartan3E QFP100?

     

    Ок, тем более в этом корпусе можно поставить 250-й кристалл, емкости которого должно хватить для большинства не очень ресурсоемких применений. Вот только ножек в 100-м корпусе доступно не более 66 и то из них 7 - только на вход...

  14. 2 std-logic

    До S3E можно было хранить в одной флешке (с последовательным интерфейсом) и конфигурацию FPGA и свои данные (см xapp482) но только в зайлинковских конфигурационных флешках. S3E может грузить конфигурацию еще и из "ширпотребных" SPI флешек (например AT45) это может быть актуально для хранения больших своих массивов.

    Если хотите заложить возможность конфигурить FPGA еще и с РС, тогда Вам все-таки резонней выбрать S3E с загрузкой из SPI флешки т.к. протокол конфигурирования будет проще на порядок чем делать то же самое по JTAG-у.

     

    Ок, спасибо за совет! Посмотрел повнимательней - действительно имеет смысл использовать SPI-флэш и развести этот SPI еще и на проц. Таким образом кроме загрузки ПЛИС со флэша мы будем иметь возможность грузить ПЛИС прямо процом, а также шить флэш процом (или хранить в ней свои данные)

     

    2 lehho

    на данный момент, можно сказать, что контроллер внешней памяти в 2378 не работает

     

    И по этой причине тоже выбор пока падает на STR912

     

     

    std-logic,

     

    рабочий вариант схем

    part1(pdf,zip)

    part2(pdf,zip)

     

    Ok, thank you!

  15. SPARTAN 3E в 208-pin - это 158 пользовательских ножек

    1 чип DDR 32Мх16 - это 43 задействованных пина. умножаем на 2чипа: 86 pins

    1 чип флаш 16Мх16: 47 ножек (Intel NOR Flash)

    на интерфейс (быстрый!) с ARM и с CCD/CMOS-сенсорами остается 25 pins

    не малова-то ли??

     

    ЗЫЖ (и еще надо учесть, как тут правильно подметили, что определенный % ножек у 3E могут работать только как входы)

     

    Флэш-память будет подключаться в основном для конфигурирования ПЛИС, причем наверное по последовательному протоколу, посколльку скорость загрузки не так важна. Причем, если не ошибаюсь, через эти же пины можно будет уже при работе общаться с флэшом. То есть вместо 47 ножек будет использовано всего несколько. Как еще один вариант - флэш вообще не ставить, грузить конфигурацию процом с компа. Однако при таком раскладе исключена автономная работа. Думаю, все же нужно конфигурационную флэш развести, но и предусмотреть загрузку процом. Саму флэш можно при этом и не запаивать.

     

    То astro: весьма интересно, а можно схему (или блок-схемку хотя бы с тем, что там будет установлено)

  16. Идея, конечно, хорошая, но все же STR912 не позиционируется производителем для таких задач.

    Поэтому DDR было бы неоправданно круто для него. Следует помнить, что предназначение ПЛИС на таком устройстве скорее вспомогательное, чем ведущее. А в описанном Вами подходе мне кажется все наоборот.

    Такое решение больше подходило бы для платы на основе SAM9260. Однако прошу заметить что четыре анонсированных устройства следует отнести к классу простых и дешевых ЕК с возможностью адаптации под конкретное приложение, поэтому ПЛИС+DDR как-то не вяжется, это решение для устройств более высокого класса. Или я ошибаюсь?

     

    DDR будет подключен к ПЛИС и использоваться будет IP-ядрами. Хотя если будет необходимость у проца в большой памяти - контроллер динамической памяти можно будет собрать в той же ПЛИС.

     

    По поводу использования ПЛИС - действительно, в полном варианте проц будет в основном использоваться для связи с компом (ВЕБ-интерфейс, управление ПЛИС-железом, небыстрые алгоритмы обработки и пр.), а все быстрые алгоритмы (ДСП, обработка, сжатие видео в реальном времени и т.п.) будут в ПЛИС. Однако хотелось бы иметь именно универсальную плату с хорошим процессором и развитой периферией и интерфейсами и в то же время хорошую ПЛИС с быстрой независимой памятью и скоростным каналом в компьютер (опять же через быстрый проц с быстрым интерфейсом - ethernet например).

     

    По стоимости - я не думаю, что себестоимость платы даже в максимальной комплектации будет выше $100. STR912 вроде недорогой (насколько я знаю <$20), SPARTAN3E500PQ208 порядка $30. А все прочее в 50 уложится, думаю, без проблем.

    Тем более, если задача не требует ПЛИС или памяти - можно просто не запаивать соответствующие компоненты... Если плата разведена по максимуму - не должно возникать необходимости делать новые платы под каждую задачу. Что будет сильно экономить время и деньги на заказах плат в единичных экземплярах.

    Кстати - по тематики это обсуждение наверное ближе к ПЛИС - предлагаю продолжить там: http://electronix.ru/forum/index.php?showtopic=29325

  17. Полностью разделяю Ваше мнение, желание поставить ПЛИС имеется, посмотрим как будет с местом. Плата на STR912 еще не разводилась. Контроллера SDRAM нет на чипе, поэтому остается вариант прицепить SDRAM к FPGA, у которого найдутся и сторонники и противники. Если есть желание по этому вопросу пообщаться, пишите в асю 238-109-334

     

    Я думаю, общаться имеет смысл именно здесь - общеполезнее будет :)

     

    Контроллер SDRAM, на мой взгляд, и должен быть на FPGA - во-первых это более гибкий вариант применения, во-вторых потребность в памяти есть не только у проца... Для IP-ядер на FPGA память также бывает необходима (особенно для обработки изображений и видео). И логика работы контроллера памяти зачастую бывает весьма сложная (например для 2-Д вэйвлет-преобразования).

    Причем для задач быстрой обработки видео (real-time) очень желательно было бы иметь минимум два независимо подключенных к ПЛИС чипа SDRAM (DDR) - читаем из одного, прогоняем через фильтры и параллельно пишем во вторую (с задержкой в несколько тактов). При таком подходе впольне можно обрабатывать (например жать) поток HDTV - 74.25 МПикс/с в реальном времени.

  18. Уважаемые коллеги!

     

    Нашей организацией было принято решение продолжать развивать направление отладочных средств и минимодулей более интенсивно. Выбрано два пути (параллельных). Первый - минимодули,

     

    --- skip ---

     

    2. - Камень STR912

    - SRAM

    - Ethernet

    - USB

    - CAN

    - RS-485

    - RS-232

    - AT24

    - AT45

    - DS18B20

    - JTAG

    - IRDA

    - ARef

    - небольшая ПЛИС на EMI (под вопросом)

     

    --- cut ---

     

    Хотелось бы увидеть нечто подобное, но с наличием нормальной ПЛИС уровня СПАРТАН3 и желательно SDRAM вместо SRAM (важен объем).

    Вообще, отладочных плат с процами и с ПЛИСами по отдельности достаточно много разных, но плат, где было бы и то и другое (и не в ущерб одно другому) и чтобы цена была демократичной - таких я что-то не видел.

    На мой взгляд наличие на отладочной плате достаточно мощного процессора (ARM) + Ethernet + не самая маленькая FPGA + память + прочее по мелочи будет покрывать подавляющее большинство потребностей большинства разработчиков... А в разных вариантах можно просто не запаивать ненужные компоненты.

  19. В ближайшей перспективе (не срочно) хотелось бы поиметь такую платку - либо готовую и распаяную, либо только PCB - для целей отладки разных IP-модулей в железе .Может кто подскажет где искать: FPGA уровня XILINX SPARTAN 3E - 400 или аналогичных возможностей от ALTERA, корпус - оптимально 208-pin. Процессор (ARM7 или ARM9) + Ethernet 100 (PHY & MAC), SDRAM (лучше DDR) - минимум два корпуса, не запараллеленых по входам т.е. подключенных к FPGA независимо. Ну и вся необходимая обвязка чтоб была разведена (питания, разъемы, JTAG etc.)

    Критично - быстродействие FPGA-память, наличие отлаженного быстрого TCP/IP стека под проц. и разумная цена.

     

    Если в ближайшее время найти что либо готовое не удастся - придется разводить самому. Тогда принимаются пожелания от тех, кто хотел бы иметь что-то подобное. Пока конфигурация мне видится следующим образом:

     

    FPGA - XILINX SPARTAN 3E PQ208 (соответственно лог. объем запаивается по необходимости)

    Проц - STR912 (достаточное быстродействие и богатая периферия, хотя рассматриваются и другие варианты) + Ethernet PHY + возможно USB (если кому нужно, мне достаточно Ethernet-a)

    Память - 2 чипа DDR, независимо разведенных на FPGA.

    FLASH для FPGA.

     

    Предназначение - отработка алгоритмов обработки и сжатия изображений/видео в реальном времени, в т.ч. с подключаемых к плате CCD/CMOS - сенсоров. В ARMe - TCP/IP стек, WEB сервер etc.

     

    Если есть какие мысли, предложения - поделитесь pls.

×
×
  • Создать...