Jump to content

    

mttphreak

Свой
  • Content Count

    77
  • Joined

  • Last visited

Everything posted by mttphreak


  1. Нужно интегрировать готовый рабочий IP из Vivado 2014.4 и собрать Linux на основе Ubuntu 16.04 для Zynq. $200 любой регион, спек по почте. Пишите на testforrest@bk.ru
  2. Считаю, что тут нужно учитывать price-performance. Если лицензия на Quartus стоит $500, то лицензии на тулзы, которые умеют все это делать, стоят $500k/year на 1 человека :laughing: SystemC хорош тем, что simulation kernel для него бесплатный, GtkWave (waveform viewever) тоже OpenSource. Так что модели процессоров и systems-on-chip можно учить детей еще со школы, при этом ничуть не убавляя в архитектуре самой системы. OVM/UVM полезны тем, кто работает в серьезных ASIC и больших/mission critical FPGA проектов. Если ваша компания делает маленькие поделки туда-сюда, то тут лучше сосредоточиться на основной работе и писать testbenches на SV, т.к на debug и поддержку Verification IP у вас уйдет много времени. Даже Chris говорит, что для малых-средних проектов лучше использовать SV. Его книга (3-d edition) очень хорошо написана, можно с нее начинать. В любом случае, для verification нужно иметь хорошый background на С++ SystemC - HDL http://www.vmmcentral.org/vmartialarts/200...tion-framework/
  3. Запустился под Ubuntu 12.10 без проблем. Проекты под Stratix V собираються, все работает шур-шур :laughing: . Только памяти много хочет, для Stratix V меньше 16 Gig лучше и не пытаться.
  4. Можно попробовать на некоторых местных флудерах Тут лучше заниматься своим делом. Bioengineering - очень широкая предметная область. Если серьезно занимаешься генетикой, то тебе и GPU и FPGA будет маловато - тут нужно юзать суперкомпьютер. Если у тебя есть уже что моделировать и мощностей ваших серверов уже нехватает, кинь мне письмо с описанием проэкта и ваших потребностей. У меня есть знакомые, которые под такое дело расшарят доступ на местные суперкомпьютеры, лишь бы что-то получилось. Если совсем все хорошо и уже что-то получаеться, можно и денег влить туда, есть знакомые, которые этим могут заинтересоваться. Если это студенческий проект или чтобы поиграться, то сумма скорее будет начинаться с $6k. За это можно купить StratixV борду, которая вместе с Quartus 13 будет поддерживать OpenCL. Можешь купить GPU всего за $2.4k и эту OpenCL-enabled FPGA и один и тот же код гонять и там и там (теоретически!) Но если будешь все это делать на FPGA с маленькой командой, то до генетики еще не скоро доберешься. Проще всего видиться использовать суперкомпьютер или GPU накрайняк.
  5. Здравствуйте У кого-нибудь есть опыт интегрирования Partial Differential Equations (PDE) на FPGA ? Сейчас интересуемся простыми линейными уравнениями 1-2 порядка. Интересует возможность распараллеливания алгоритма и сравнение по времени выполнения с программными имплементациями на C++ and Java :rolleyes: Как вообще там дела обстоят с потреблением памяти и точностью решения? Предполагаеться наличие PCIe или Ethernet интерфейсов для Data input/output Комментарии, критика, ссылки, советы и просто мысли вслух приветствуються :beer:
  6. Такие стандратные вещи нужно покупать. Я знаю этих ребят и для каких целей разрабатывалось это ядро. Они явно указывают, что этот core поставляеться "AS IS", без каких-либо гарантий, скорее в образовательных целях. Установка таких вещей в коммерческие продукты сулит большой головной болью на этапе расширения проекта и поддержки покупателей. Для твоих "корыстных" целей ядро можно купить за $15k-20k для FPGA и $35k-$45k для ASIC. Лучшие имплементации предлагают Американские компании. Там и оптимизация по latency and throughput, и документация, RTL, Verification Environment, Integration Scripts, Use Case examples, полный цыкл тестирования в железе и даже support для ASIC Back-End. :beer: Если цены не очень доступны, можно посмотреть в сторону Индии или Китая. Покупать у Российских компаний не рекомендую, т.к у большинства вендоров цены американские, а вот качество, поддержка и опыт коммерческих проектов очень ограниченый. :laughing:
  7. Можем сделать для вас хорошее предложение в этой области + хороший консалтинг и поддержку. Дополнительные детали и цены - в личку
  8. Спасибо за ссылку :beer: . Я в какой-то момент нашел эту статью, но сама реализация показалась мне уж слишком generic. Затем я порылся в OVM and UVM исходниках и обнаружил, что подобная реализация имплементирована и там. :laughing: В конце-концов, я остановился на более простом варианте, который нашел тут http://chipdesignmag.com/display.php?artic...&issueId=21
  9. Здравствуйте В проэкте нужно динамически подменять разные классы данных, чтобы создавать layered sequences и хорошенько прогружать логику. :smile3046: Нужно написать свою фабрику. Пример ниже не компилиться. Помогите найти ошибку или посоветуйте свою реализацию. Компилятор падает в месте, где выполняется this.my_car = new car_tank (); :laughing: Нужна именно custom factory, UVM/OVM/VMM не предлагать class car; // Common data memeber string ttype; // Common methods virtual function string get_type(); endfunction endclass class car_tank extends car; function new(); this.ttype = "car Tank"; endfunction function string get_type(); return this.ttype; endfunction : get_ttype endclass class car_bus extends car; function new(); this.ttype = "car Bus"; endfunction function string get_type(); return this.ttype; endfunction endclass class car_factory; car my_car; // Common methods function car get_car(int sel); if(sel == 1) this.my_car = new car_tank (); if(sel == 2) this.my_car = new car_bus (); return this.my_car; endfunction endclass
  10. Привет буду в Москве в конце сентября до половины октября. Могу поработать у вас пару дней внештатным переводчиком со знанием дела. С Zynq уже знаком, на x-fest бывал. Если ваша компания организовывает дизайнерские вечеринки в Москве, пишите в личку договоримся :beer:
  11. Заказывай у своего Team Lead'a Verification Training - приеду расскажу Не достаточно. Профи всегда используют разные подходы к задаче, по крайней мере рассматривают несколько options. Ни одна тулза не дает возможность на 100% вылавливать даже functional bugs (не говоря о unexpected glitches) в установленный deadline, тем более, если речь идет о SOC, которые делает Samsung LSI :laughing: Что касается Lint, то это милая штука, если умеешь правильно пользоваться ей. Я встречал многие случаи, когда симулятор либо не выдавал Warning на явно глючный RTL, либо дизайнер не обращал на них внимание и bugs вылавливали на поздних стадиях, вместо того, чтобы за 20 мин обнаружить их при помощи Lint
  12. Все нужно делать с умом. У Assertions тоже свои drawbacks - они замедляют симуляцию, их нужно качественно дебагать и просто уметь писать ). Но в твоем asynch design они почти must-use :1111493779: Неплохое начало для первого раза. Ты получил цифру, теперь нужно отталкиваться от нее. Соответственно, у вас должен быть Verification Spec, в котором прописаны числа необходимого coverage для этого проекта. SV позволяет использовать разные Coverage , поэтому ваш Project Manager должен утвердить число по каждому из них. :yeah: Твоя работа как Verification Engineer начинается тогда, когда уверенный в своем коде RTL дизайнер фризит код, а заканчивается тогда, когда ты по тулзам генерируешь репорты, которые удовлетворяют стандарт данного проекта. Все остальные технологии - дело вторичное. Все они направлены на то, чтобы получить необходимо минимальные числа (в %) за выделенное время минимальными усилиями команды. Качество работы крутится вокруг этого, это и называется Metric Driven Quality Assurance в ASIC и FPGA. Ты получаешь число, это и есть coverage. Теперь нужно понять, какой coverage , как он связан с RTL и каким образом твои новые тулзы и числа могут помочь RTL дизайнерам вылавливать functional bugs, races, glitches etc в своем дизайне
  13. Информации с лихвой. Куча сайтов, книги, IEEE publications и т.д Так что карьеру в цифровом дизайне (софте, науке и т.д ) нужно начинать с американского языка. Если дизайнер не знает язык, то его рост как мечта безногого о беге :crying: Супер, рентабельность ниже плинтуса. Стоимость разработки ASIC достигает $100M, time-to-market - 1-1.5 года. Для FPGA = $1-10M, TTM 3-15 месяцев Таким образом, 3 перезапуска это грубо 3 года работы всей команды, куча $$$ и не факт, что чип будет работать. Кроме того, в Embedded дизайнах <= 65nm разработка софта уже более 50% development cost, в таком подходе embedded software даже не начнут разрабатывать. Итого, 2-3 года, куча бабла и чип можно спустить в туалет (это тоже можно закладывать в бюджет) Это случайно не они делают чипы для российских спутников? Снова Роскосмос утопил ракетку. За 2 года 7 ракет 10 спутников на сумму около $2B :laughing: Программа освоения Марса с 2004 стоила для NASA $2.5B , сравнивайте результаты У нас скоро будет 2-months fellowship opening для Verification Engineer. Шли резюме на jobs@socmicro.com
  14. Наверное, все эти вопросы ко мне, так что я постараюсь быть кратким. На данный момент assertions поддерживают только 3 ASIC симулятора, так что выбор небольшой. Пользуйся тем, который может себе позволить твоя компания. В SOC Microsystems дизайнеры сами пишут assertions. Т.е есть Design Assertions и Verification Assertions. :rolleyes: Design Assertions могут быть даже synthesizable и мэпяться на external pins. Я требую от дизайнеров, чтобы они использовали assertions вместе коментов и у них это уже неплохо получается :a14: Что касается Verification Engineers, они вставляют assertions в Interfaces, в RTL (bind или напрямую - зависит от нескольких факторов), пишут checkers и затем складывают их в Reusable Libraries, которые конечно же по полной используются в следующих проектах. Вообще, в нашей компании верификация и hardware-software co-simulation начинается задолго до самого RTL дизайна, когда checkers пишутся на абстрактном Assertion Language и при помощи их идет Interface Validation между блоками high-level model или BFMs :laughing: gvim + куча скриптов под bash, tcl/tk и emacs Судя по всему, ты один из немногих дизайнеров, который занимается ASIC Design/Verification. Verification and Assertions есть своего рода art, которому учаться у других, по крайней мере на ранних стадиях. Тебе лично нужен тренинг. Тебе и другим инженерам в вашей команде. Такой, где инструктор введет в курс дела, профессионально, последовательно покажет, расскажет, объяснит почему. Тренинг, на котором будет куча примерчиков, theory и labs. Я могу провести для вашей компании такой тренинг для команды до 10 человек. Соответсвенно, могу покрыть SV, OVM, UVM, Assertions, Coverage, Verification Metrics, разные виды тулзов, примеры скриптов и опыт ведущих компаний, дать руководителям оценку по времени и трудозатратам для каждого метода, оценить time-to-market и т.д По вопросам стоимости и условий пиши в приват. Industry Average стоимость и условия можно посмотреть тут: http://www.sutherland-hdl.com/workshop-pricing-terms.php
  15. Написано буквально такое: При каждом положительном фронте клока, исключая время, когда RESET выставлен в высокий уровень, симулятор проверяет первое условие (precondition) в виде skip_double_c. Как только sequence skip_double_c выполняется successfully (конечно же, это происходит на положительном фронте клока в момент Х), на следующем фронте (X+1) симулятор проверяет второе условие (consequent). Второе условие буквально такое: на каждом положительном фронте клока ПОСЛЕ того, как skip_double_c выполнился ХОТЯ БЫ ОДНАЖДЫ, сигнал _с_ должен быть ВСЕ ВРЕМЯ на низком уровне, когда выполняется sequence b_next_to_a. Если провести аналогию с дизайном, этот assertion аналогичен такому: Q || F&&D, только с той разницей, что F&&D будет проверяться ТОЛЬКО после того, как Q выполниться ХОТЯ БЫ РАЗ :laughing: Recommended Readings (в нашей компании - это MUST READ для Verification Engineers) 1. Basic--->Middle: Srikanth_Vijayaraghavan,_Meyyappan_Ramanathan-A_Practical_Guide_for_SystemVerilog_Assertions-Springer 2. Middle --> Advanced: Eduard Cerny, Surrendra Dudani, John Havlicek, Dmitry Korchemny The Power of Assertions in SystemVerilog Наверное, в симуляторе, а не эмуляторе. Последний - это совсем не то, что наверняка подразумевается в топике. Хотя на FPGA Emulation Tools тоже есть возможность имплементировать assertions, даже synthesizable assertions, результаты которых можно наблюдать на определенных pins ASIC или FPGA
  16. Хреновое условие. Наверное, предполагалось A |=> B То, для чего используют ##0, имеет смысл в event queue в симуляторе. На начальном этапе лучше с этим не играть, т.к это источник потенциально трудно выловимых Gotchas :laughing: sequence skip_double_c; (C |=> !C)[*2]; //assuming 1 cycle strobe for C endsequence sequence b_next_to_a; A |=> B; endsequence property pB; @(posedge CLK) disable iff (RESET) skip_double_c |=> !c throughout b_next_to_a; endproperty
  17. Данный IP будет трудиться в новом поколении XStriker: http://socmicro.com/products/datacenter-solutions/xstriker Тебе очень повезло, что эти ребята вообще ответили . Это известная своим снобизмом компания, которая не очень любит продавать свои products за пределами США ))... Они даже нам для дизайн центров самые новые борды продавать не хотят, хотя стоят оные как автомобиль среднего класса и требуют кучу дорогих IP сверху :smile3009: Контора оборонная Если серьезено, мы бы хотели приобрести готовый IP за разумные деньги. Если не сможем, будем разрабатывать сами, наймем девелоперов или отдадим кому-то в outsource :smile3046: Какой у вас получился RX/TX Bandwidth? Я тут надыбал готовый ASIC за пару баксов, но у него как-то 50Mb/s кажется не слишком круто :crying: http://www.wiznet.co.kr/sub_modules/en/pro...25&pid=1012
  18. Здравствуйте Для нашей новой суперскоростной архитектуры нужна аппаратная ипмлементация TCP/IP stack, соответсвующая 2-4 Layers (OSI). Ваш IP Core должен поддерживать Tri-Mode 10/100/1000, SFP (1GbE) , желательно SFP+ (10GbE). Ну или хотя бы просто SFP (1GbE). :laughing: Принимаются OpenSource/Commercial IPs, а также письма от опытных разработчиков, желающих потенциально получить контракт на разработку такого IP. Имплементация - желательно на Verilog 2001/SystemVerilog с Verification IP inside.
  19. У меня та же проблема. Использую ISE 13.4 под Ubuntu 11.10 64 Bit в command line XFLOW. XST, PAR and MAP упорно используют одно ядро, без каких-либо намеков на Multicore. Нужно смотреть Release Notes, т.к в настройках Multicore Usage нигде не видел. Похоже, что Xilinx держит релизы для Linux приоритетом ниже Windows, поэтому может еще просто не добрались туда. :crying: Это сильно зависит от того, сколько у тебя бит OS (32vs64), какие IP Cores ты используешь и ОЧЕНЬ! от Logic Usage. Если у тебя Usage более 75% Map, PAR будут роутить оочень долго. Рекомендуется для HighSpeed дизайнов Usage не превышать 70% :laughing:
  20. Я бы сказал, что lint'er/compiler ругается на Indefinite timing window, который собственно задается конструкцией типа [*1:$]. SVA Checker будет проверять это условие по каждому райзу клока, до конца симуляции, что и может повлечь большое использование памяти. Поэтому "Eventuality Operator", коим является :$ не рекомендуют использовать без особой надобности, а писать хорошо определенные во времени assertions: property p1; @(posedge clk) a |-> ## [1:5] b ## [0: 2] c; endproperty a1: assert property (p1); c1: cover property (p1); //Add to Functional Coverage Scoring
  21. Много чего появляется, только все эти проекты коммерческие и стоят денег. Чтобы делать серьезные дизайны и их верификацию, обычно мало "поковырять" либу. Те инженеры, которые это хорошо умеют делать стоят в Калифорнии $100-130k :laughing: SOC Microsystems тоже продает products на их основе - http://socmicro.com/products/for-chip-designers/ovy-verifier
  22. Ok, спасибо ща посмотрю. Если вы где-то публиковали подобные вещи в своих статьях (некоторые я уже прочел - по STA у вас очень хороший пример :a14: ), пожалуйста, дайте ссылки Нужен высокопроизводительный сортировщик деревьев для коммерческого алгоритма, которому Linux будет по DMA PCIe (2.0 - 3.0) сбрасывать большие массивы такого типа структур и забирать обратно. На борде будет стоять GDDR5 или Rambus DRAM + что-то менее производительное для DMA буффера и хранения промежуточных результатов... Как-то так... Система еще не готова, ведется собственно рассчет архитектуры. Важно не просто реализовать сортировку, а сделать так, чтобы она на больших массивах данных работала быстрее, чем Core i7 и GPU CUDA Прикрепил
  23. Итак задача: Имплементировать на FPGA ( Altera Stratix V ) ALU, который даст max скорость сортировки binary tree простейшего типа (тип структуры ниже). Также рассматриваются стандартные реализации, как Ripple Carry and Carry Look Ahead ALUs. Если кто занимался подобными вещами - делитесь опытом! :beer: struct node { int key_value; node *left; node *right; }; class btree { public: node *root; btree(); ~btree(); void print_item (node* node); void insert(int key); node *search(int key); void destroy_tree(); private: void destroy_tree(node *leaf); void insert(int key, node *leaf); node *search(int key, node *leaf); };
  24. SignalTap II Logic Analyzer - описание inside :beer: В ASIC такая штука называется Co-Emulation Engine (например, Mentor Veloce)