Разработка микросхем дело сложное, дорогое и продолжительное. И цена любой неточности очень громадна. По окончании изготовления кристалла обновлениями и патчами уже ничего не исправить. Исходя из этого к проверке проектируемых схем на этапе разработки подходят особенно скрупулёзно. Для каждого функционального блока пишутся блочные тесты во всех рабочих и не рабочих режимах. По окончании интеграции блока в неспециализированную схему проводятся системные тесты, как данный блок трудится составе совокупности.
Все тесты всегда крутятся в регрессионном тестировании. Кроме того имеется неформальный показатель более менее приемлемого уровня тестирования – в то время, когда количество кода тестов на порядок больше количества кода тестируемого блока. Но все эти тесты не дают ощущения, что схема жизнеспособна, поскольку любое моделирование это поведение схемы в течении сотен миллисекунд максимум. А в жизни схема обязана отработать много тысяч часов.
в один раз я искал сбой, в то время, когда на 1 Гбайт переданной информации терялись 1 либо 2 байта и никакие функциональные тесты эту проблему не обнаруживали. И проявлялась эта неточность лишь на FPGA прототипе будущей микросхемы. О том какие конкретно прототипы делали мы и что по большому счету твориться в мире поведает эта статья.
Смотрите кроме этого: Раздача слонов: FPGA платы для образовательных проектов с MIPSfpga
Месяц назад в русских университетах прошли семинары по MIPSfpga (1, 2, 3, 4), а джентлемен из НИИСИ по имени Антон Павлов написал заметку про его личные улучшения MIPSfpga «MIPSfpga: вне канона». Так как доктора наук встретили новый продукт для обучения студентов электронике в целом положительно, то появилась мысль оказать помощь начинаю платами, причем сходу у нескольких организаций и людей.В частности, в честь Нового Года я в кооперации с Виталием Кравченко из univeda.ru планируем маленькую раздачу слонов, то бишь бесплатных плат Terasic DE0-CV с FPGA Altera Cyclone V.
Прототипирование будущих микросхем на FPGA это единственный метод проверить как трудится схема на настоящих задачах в более менее настоящем масштабе времени. Прототип разрешает отладить софт, взять начальные характеристики производительности и другое. Современные FPGA владеют большим количеством ресурсов для этих задачи.
К примеру, вы имеете возможность сами на плате с FPGA за 300$ реализовать полноценный компьютер с процессором Intel 8086. 2004 годК сожалению самого первого прототипа в залежах отечественного шкафа со скелетами отыскать не удалось, но это была маленькая платка на базе Xilinx Spartan3-400 (XC3S400). 400 свидетельствует число тысяч эквивалентах вентилей, каковые дешёвы разработчику для собственной схемы. Цена платки составляла приблизительно 50$ и разрешала реализовать в ней простой 8-ми битный микроконтроллер со всей памятью и на частоте 40 МГц.
Прототипирование было в том, что созданный микроконтроллер на ней поморгал светодиодом.2005 годСпециальная плата для прототипа уже разрабатывалась не как опыт, а как осмысленный этап проекта. Использовалась уже FPGA Xilinx Spartan3-1000. Т.е. нам уже был дешёв 1 млн вентилей, и проектируемый микроконтроллер трудился на собственной макимальной частоте 48 МГц. И именно на данной плате я ловил те самые 2 потерянных байта на гигабайт. Цена платы составляла приблизительно 200$.
2007 годДля нового 32-х разрядного микроконтроллера было разумеется, что 1 млн вентилей может и не хватить. По этому была создана новая плата на базе Xilinx Spartan3-5000, благодаря которой стало доступно уже 5 млн вентилей. Цена платы составила приблизительно 500$ и надолго эта плата стала главной для прототипирования новых разработок. На ее базе проверялись не только микроконтроллеры, но и разные специальные микросхемы.
Проектируемые микроконтроллер в FPGA трудился уже на пониженной частоте в 20 МГц, не смотря на то, что позже в кремнии трудились на частотах 100 МГц а также 150 МГц.Прототип 32-х битного микроконтроллера:Прототип видеоплаты (к сожалению в судьбу проект так и не отправился, но готовый RTL ожидает собственного часа):Прототип 4-х потового Ethernet коммутатор с встроенными приемопередатчиками:2010 годПри разработке двухъядерного микроконтроллера (32-х битный RISC + 16 битное DSP ядро) мы наконец дошли до отметки, в то время, когда 5 млн было уже мало. Но реализация в FPGA разных усеченных конфигураций будущей микросхемы разрешила проверить ее функционирование.
К примеру, реализовывали два ядер (RISC+DSP) и с усеченным комплектом периферии либо же одно ядро(RISC), но вся периферия.2012 годНовый проект "настойчиво попросил" новой платы, поскольку требуемый количество внутренней памяти для нового 32-х разрядного DSP ядра уже превосходил дешёвый количество в самой большой FPGA Spartan. Было нужно переходить на более дорогие и сложные ПЛИС. Время проекта было ограничено, и решили отыскать уже готовое ответ.
Выбор пал на плату от INREVIUM c самой большой на то время FPGA Xilinx Virtex-6 XC6VLX760. И не смотря на то, что число эквивалентный вентилей увеличилось всего до 8 млн, но количество встроенной блочной памяти увеличился с 2 Мбит до 25 Мбит. Выбор так же вероятнее выяснило то, что на сайте германского представительства в кэше Гугл сохранилась цена платы, и мы знали что она будет стоить 18К$ до подписания всяких NDA.
А при стоимости лишь одной микросхемы FPGA в 15 тыс $ это снимало все вопросы о разработке собственной платы. Серийные платы для таких громадных FPGA в большинстве случаев стоят или столько же какое количество и сами FPGA или мало дороже. Приобретение платы также доставило большое количество занимательных знаний, так к примеру отечественный локальный дистрибьютор был уверен, что эта плата стоит 40K$ c учетом доставки, и по большому счету он весьма рискует при 100% предоплате с отечественной стороны.
В конечном итоге было куплено 3 таких платы без посредников и по сей день они используются для прототипирования отечественных DSP процессоров2013 годДля нового 32-х битного специального микроконтроллера было решено все же попытаться сделать собственную плату. Во-первых, разработчики модулей на FPGA должны развиваться и не опасаться использовать микросхемами, каковые дороже их личных машин, а во-вторых у одного из дистрибьюторов завалялись на складе пара Virtex-6 XC6VLX550Т и он предлагал их с громадным дисконтом.
FPGA LX550Т это на одну ступень меньше чем LX760 (приблизительно на 30% меньше вентилей), но конечная цена плат с учетом разработки составила всего около 8К$. Таких плат было собрано 6 шт. Раздавать их клиентам мы не планировали, а организовали для разработчиков доступ к ним через интернет.
В плате было реализовано большое количество занимательных ответов. К примеру, файлы прошивок грузились на плату как на MassStorage Device в особую SD карту, и позже уже из нее загружались в FPGA. Всего на карте возможно до 10 разных прошивок, и через особую программу управления возможно выбрать какую из них применять сейчас. Так же реализованы разные защиты «от дурака», что бы случайно не сжечь дорогую микросхему.
Все это разрешает трудиться с этими платами удалено, безопасно и доверять их кроме того студентам. Проектируемый МК в FPGA трудился на частоте 40 МГц.Сама плата (прототип специального двухъядерного 32-х битного микроконтроллера):Прототип специальной микросхемы для датчиков преобразования угол в код:К сожалению в данной плате имеется пара недочётов: выбраны «плохие» разъемы для подключения дополнительных модулей, но это пол беды, забыли сделать крепежные отверстия около разъемов, и модули держатся практически лишь в разъемах.
Так же что бы получить доступ к некоторым элементам управления главной платы приходится фигурно вырезать модули расширения.Отечественный опытА что же другие разработчики заказных микросхем? К примеру МЦСТ при прототипировании СБИС 1891ВМ6Я (R-1000, четырёхъядерный процессор с 64-битной архитектурой SPARC v.9) применяла специальную плату с 10 FPGA Altera Stratix II ( 4 х EP2S180 + 5 x EP2S130 + 1 x EP2S90). Объем логических вентилей совокупности возможно оценить в 20 млн.
на данный момент одна микросхема EP2S180 стоит около 8К$. Так что цена лишь микросхем FPGA в прототипе превышает 50К$.Для прототипирования процессора Эльбрус-4C+ потребовалась уже 21 микросхема Altera Stratix IV EP4SE820 и с суммарным количеством в 100 млн. вентилей (не смотря на то, что сам МЦСТ приводит цифру в 750 млн) и ценой около 200К$.
Наряду с этим рабочая частота прототипа 9 МГц.Зарубежный опытСейчас специальные ответы для FPGA прототипирования предлагают компании специализирующиеся на разработке средств САПР для микроэлектроники, не смотря на то, что пригодные для прототипирования модули возможно отыскать и у других компаний. FPGA прототипы имеется у Intel и IBM, но их характеристики не афишируются, и становятся известны широкому кругу, лишь тогда, в то время, когда прототип уже моральна устарел.
Cadence предлагает особую Rapid Prototyping Platform выстроенную на базе FPGA Altera Stratix-4 EP4SE820. В минимальной конфигурации платформа складывается из двух (c суммарным количеством в 10 млн вентилей), в большой из шести FPGA (c количеством до 30 млн вентилей). Цена одной микросхемы EP4SE820 сейчас ~10К$.
Новая совокупность от Cadence носит название Protium и стоится на базе Xilinx Virtex-7 XC7V2000Т и разрешает реализовать от 25 млн на двух FPGA до 100 млн вентилей на восьми. Цена одной микросхемы XC7V2000Т на данный момент около 20К$. Т.е. в полной комплектации Protium будет стоить не меньше 160К$.Компания Aldec кроме средств разработки так же предлагает платформу для FPGA протоипирования HES-7.На одной плате расположено до шесть FPGA Xilinx Virtex-7 XC7V2000Т либо UltraSacle XCVU440.
При реализации модуля на базе FPGA UltraSacle XCVU440 суммарное число вентилей достигает 158 млн. Посредством дополнительной платы возможно собрать в единый модуль 24 микросхемы FPGA и взять 633 млн вентилей. Цена одной микросхемы XCVU440 на данный момент 49К$. А большая суммарная цена всех FPGA переваливает за 1М$.Synopsys имеет возможно громаднейший опыт в разработке платформ для FPGA прототипирвоания. Ранние их модели строились на базе FPGA Virtex-6 (HAPS-60), после этого Virtex-7 (HAPS-70).
Последняя их разработка HAPS-80 в одном модуле содержит от одной до четырех FPGA Xilinx UltraScale XCVU440. Готовые модули возможно объединять в единую стойку.
И в этом случае суммарный количество образовывает рекордные 1,6 млрд вентилей.При применении одной FPGA большая частота до 300 МГц, при применении соседних в одном модуле до 100 МГц, при применении нескольких модулей частота понижается до 30 МГц.Так, имея приблизительно 3,5М$ на приобретение FPGA вы сможете собрать платформу пригодную для прототипирования Intel Xeon E7. Ну либо подождать 20 лет, в то время, когда FPGA для того чтобы количества подешевеют до пары сотен долларов.
Случайная статья:
- Обзор планшета prestigio multipad 10.1 ultimate 3g
- Как перестать беспокоиться и начать правильно снимать на фантом
T4D #84 — Pt 2 Bitcoin Mining, BFL ASIC vs FPGA vs GPU vs CPU
Похожие статьи:
-
Взгляд на 10g ethernet со стороны fpga разработчика
Всем привет!Многие эксперты знают, что топовое сетевое оборудование применяет особые чипы для обработки трафика. Я принимаю участие в разработке таких…
-
Bitcoin: история развития, asic
Bitcoin-майнер от ASICMINER, производительностью ~2TH/s (источник)Прошлая часть.Сейчас разглядим последнюю часть истории развития вычислительных…
-
Embedded world 2015: что нового? что интересного?
Всем привет!Мне с моими сотрудниками посчастливилось побывать на очередной выставке Embedded World 2015. Выставлялось, как в большинстве случаев,…