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

bsp

Свой
  • Постов

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

  • Посещение

Весь контент bsp


  1. Интересо получается. Разное железо, разные видеоплаты, от моей встроенной графики HD2000 до GTS450 у Torex, а результаты в общем-то отличаются мало. Только Celeron выпал из общей картины, но это наверное объяснимо. Как-то это все надо осмыслить. PS. А кстати, у gts 450 память GDDR5 или DDR3, это вроде в 2 раза меняет скорость заполнения видеоОЗУ.
  2. Запустил на новом компьютере директиву Tools - Polygon Pours - Repour All Poligons для проекта VideoMultiplexer. Общее время выполнения 52 - 53 секунды примерно. На старом ноутбуке Pentium M 1,6 ГГц одно ядро, ОЗУ 1,25 Гбайт без включенного DirectX ( правда наверное и без многих прибамбасов, если без DirectX ) тоже самое идет секунд 160 - 170. Разница всего в три раза. И это в сравнении с i5-2500 3,3 ГГц, RAM 4 GB и прочее? При этом ОЗУ занимается мало, с нагрузкой на винчестер тоже не заметно разницы - помигивает себе раз в секунду, что запущена директива, что нет. Из четырех ядер процессора одно загружено более-менее, остальные 3 так себе, временами есть пики, но в общем мало. Когда директива выполняется, там разные действия производятся в разное время ( судя по надписям на экране ). Похоже, некоторые распараллеливаются, а некоторые не очень. Ну вот некий результат для сравнения. Если кому не в тягость запустить тоже самое на своем компьютере, было-бы интересно узнать результаты и конфигурацию железа, на котором они получены, особенно какая используется видеокарта :rolleyes: .
  3. Vokchap Советы вообще дело скользкое. В данном случае даже мне самому не очень просто понять, какие проекты будут в работе через три года. Но предположим, что не не во много раз сложнее, чем теперь ( это определяется моими реалиями и другой человек за меня это не просчитает ). Теперь, если уж я прошу совета, то как передать окружающим уровень сложности выполняемых мною проектов ( сложности для АД + компьютерного железа ). Я попробовал поработать с образцовыми проектами, входящими в состав АД. Попался один такой - папка VideoMultiplexer, который надолго занимает старый компьютер при запуске команды Tools - Polygon Pours - Repour All Poligons ( при открытом PCB естественно ). Приеду домой, измерю на новом компе это время и обнародую. Может, окажется полезный "testbench" для сравнения аппаратных конфигураций и выбора оптимальной. Думаю, далеко не все имеют неограниченный бюджет и приходится подбирать железо под задачи очень экономно, а так можно хоть как-то сравнивать.
  4. Я, наверное, сам всех немного запутал. Речь о постоянной работе со встроенной видеоплатой не идет. Будет покупатся что-то из среднего ценового диапазона, только надо найти баланс между финансовыми возможностями и производительностью . А вопрос о заливке полигонов в данной конфигурации возник вот почему: все операции на проектах моего размера идут довольно шустро, и только заливка притормаживает. Правда режимы 3D не использовались и вот еще моделирование не освоил в AD, эти вещи могут потребовать ресурсов. И снова встает вопрос выбора видеоплаты. Asus GTX 570 не потяну никоим разом. И поверить в то, что какой-нибудь GTS450 будет хуже справляться выводом графики AD на экран непросто. Другое дело, если ресурсы видеоплаты используются и для других целей и эта видеоплата является в каком-то смысле сопроцессором, тогда может быть. Но тут вообще трудно разыскать внятные данные. А что касается рекомендуемых параматров от Альтиума, так ведь постоянно идет работа над продуктом, помаленьку добавляют всякие мелочи, количество может перейти в качестово. Да и сами рекомендации не совсем свежие. Вдруг через год окажется, что требования подросли. Я через год не смогу не самую дешевую видеоплату выкинуть и купить другую, буду задушен жабой . Цикл жизни своего компа оцениваю ( конечно очень приблизительно ) в 3-4 года. Значит и видеоплата должна меня ( и AD ) устраивать все это время.
  5. Поэксперементировал еще с заливкой полигонов. Время заливки измерил - около 10 сек. Это слишком много! Ядра процессора на самом деле загружаются все, ну иногда 3 из 4-х. Просто одно ядро загружено гораздо сильнее. Но! При этом даже это одно ядро не загружается на 100%, а остальные и совсем немного. Версия АД10, кстати, из последних. Вопрос остается - узким местом является видеоплата? HD2000, при всей своей новизне, все-таки встроенное решение и ничего особенно мощного из себя не представляет. И снова, какую-же видеоплату покупать? Asus GTX 570, как тут было рекомендовано, стоит 2/3 от моего компьютера и деньги не казенные. В игрушки не играю совсем. Как-то мне казалось, что GTS450 с GDDR5 уже будет явным перебором, ну просто лучше перебор, чем потом все время тормоза. Как-бы с этим разобраться поточнее.
  6. Что-то последний пост Rodavion меня напугал. Как раз думаю, какая видеоплата понадобится. На днях собрал комп - i5-2500, ОЗУ 4 ГБ, W7 64 бит. Пока пробую на встроенной графике. Альтиум 10 вроде ничего так идет, но пока мало времени с ним на этом компе работал. Про предпочтение Альтиума к nvidia видеоплатам слышал, правда без внятных объяснений почему. Тем более, вроде за последние пару лет обновились их поколения у обоих лидеров рынка, может и ситуация поменялась? К покупке рассматривал диапазон от GT430 до GTS450 ( рассказы про nvidia подействовали :rolleyes: ). Из замеченного на этой конфигурации - при перерисовке всех полигонов в некоем проекте, занимающей очень приблизительно секунд 5 ( что не нравится, зачем тогда новый комп покупал ) загружает только одно ядро, и то не совсем на 100%. Это озадачило. Частота вроде все-таки подпрыгнула в какой-то момент с 3,3 ГГц до 3,6 ГГц ( смотрел утилитой CPU-Z ). Это как понимать, видеоплата слабое звено?
  7. Altium 10

    Качнул из закромов последнюю версию AD. Там множество файлов в формате 7z. Скачал этот архиватор на сайте авторов этого архиватора ( версия 9.20 кажется ). Начинаю распаковывать - получаю один файл с расширением 7z и объемом около 1,9 гигабайт. Распаковываю его - получаю пару папок и несколько файлов ничтожного объема. Кто-то пробовал это распаковывать, получается нормально?
  8. Вроде нашел то, что мне нужно. Называется Releases. Позволяет зафиксировать текущее состояние проекта, его документы в некотором месте, в папке например. Дальше можно его изменять, но требуемое промежуточное состояние уже не пропадет.
  9. Так ведь и схема чуть-чуть поменялась. Ее тоже копировать? И несколько элементов добавилось. Что там выйдет потом при компиляции и прочих делах. Похоже, придется копировать проект целиком и добавить ему индекс (1), что-бы отличать от старого.
  10. Есть готовый проект в АД9. Нужно внести в него небольшие изменения ( в трассировку, состав элементов, размеры печатных плат ), получив таким образом чуть-чуть модернизированный вариант. Исходный проект должен остаться в неприкосновенности. Опция АД типа Variants явно не годится. Как поступают в таких случаях, в каком направлении искать? Делать копию проекта со всеми прибамбасами и уже в нем резвиться? Или есть возможность в одном проекте это реализовать?
  11. Разница в желаемом удобстве представления при создании проекта. То, что внутри FPGA без мультиплексоров не обойтись, от языка не зависит.
  12. Делаю первые шаги в изучении Systemverilog. Раньше использовал Verilog. Обзавелся литературой, в частности, SystemVerilog For Design (Springer-2nd_Ed-2006). В главе 10, посвященной Interfaces, рассматривается пример явно двунаправленной шины. Как это понимать - как пример несинтезируемых вещей, используемых только для написания testbench ? Ведь внутри FPGA приходится делать что-то типа переключателя что-бы объединять выходы нескольких модулей. А если-бы не это, понравилось, сделал крохотный учебный проектик, на первый взгяд удобно. Может, я просто не увидел, как изящно можно использовать Interfaces, что-бы сделать двунаправленную шину внутри FPGA ?
  13. Так и делал раньше - в xls формат, потом в ехселе доводил. Что не нравится - если снова вывести БОМ из Альтиума, то переписанный xls файл заново надо доводить. Чувствую, надо изучать внимательно использование Template file для ехселя. Сделал template для БОМ в excell. По крайней мере, каждый раз, когда вывожу БОМ, xls файл теперь не надо доводить. Буду в таком виде и прикладывать.
  14. Поторопился я, если делать отдельный pdf файл, там еще меньше возможностей что-либо настроить, не нащел даже, как заставить не на один лист все втискивать, а разбивать на страницы. Когда делал в xls, то потом доводил в самом ехселе, а тут совсем неудобно.
  15. Ясно, спасибо. Когда делаешь отдельный файл в xls, можно выбрать pdf. Так и буду делать, если это работает. Будет два pdf файла - один, где все, кроме перечня и другой с перечнем.
  16. В пределах ширины страницы помещается. Но страниц несколько, например четыре. И вот при переходе от страницы к странице строчка разрывается по вертикали. Верхняя часть буквы еще на этой странице, нижняя - на следующей, и так вся строчка.
  17. Добрый день. Использую Bill of Materials для вывода перечня элементов и он вполне меня устраивал. Его можно делать в xls формате, а можно в Output Job Files. Хочется использовать Output Job Files, что-бы сгрузить в pdf-формат схемы, сборочные и пр и сам перечень. Но если в перечне получается несколько страниц, то Альтиум между страницами рвет строчки по вертикали прямо внутри строчки. Если делать перечень отдельно в xls, то этих проблем нет, но отдельно делать в другом формате и пристраивать в виде отдельного файла не хочется. Это можно как-то решить по-простому?
  18. Много лет назад активно работал с этой микросхемой, но ведь устарела безнадежно. Можно узнать, для чего нужна документация, может есть другое решение проблемы ?
  19. des00, спасибо за помощь! Похожий вариант я делал, только на группы разбивал так: set_clock_groups -exclusive -group [get_clocks {cl_in_a fr_out_a}] -group [get_clocks {cl_in_b fr_out_b}] ( но разве cl_in_a и fr_out_a не относятся к одному и тому-же clock domain ? ) и не еще сообразил, что надо вставить set_false_path -from [get_ports {cl_a_select}] Ну и так надо понимать, что тактовую частоту на входе fr[1:0] описывать в sdc-файле не надо?
  20. Вот и код - специально для изучения вопроса сделал микропроект, на нем и тренируюсь. module timequest_learning ( input reset, input cl_in_a, input cl_in_b, input cl_a_select, input data_in, output reg quest_fast, output reg quest_slow ); reg[1:0] fr; wire cl_internal; /////////////////////////////////////////////////////////////////////////////////// assign cl_internal = ( cl_a_select ) ? cl_in_a : cl_in_b; /////////////////////////////////////////////////////////////////////////////////// always @( posedge cl_internal or posedge reset ) // Создание сетки частот. if ( reset ) // fr[1:0] <= 2'b00; // else // fr[1:0] <= fr[1:0] + 2'b01; // /////////////////////////////////////////////////////////////////////////////////// always @( posedge cl_internal or posedge reset ) // if ( reset ) // quest_fast <= 1'b0; // else // quest_fast <= data_in; // /////////////////////////////////////////////////////////////////////////////////// always @( posedge fr[1] or posedge reset ) // if ( reset ) // quest_slow <= 1'b0; // else // quest_slow <= data_in; // endmodule А кстати, часто встречается текст в посте как-бы в окошке да еще и с прокруткой. Как это сделать? :bb-offtopic:
  21. Формулирую. Два входа ПЛИС с разными частотами. Внутри ПЛИС мультиплексор. На выходе мультиплексора тактовая частота, используемая в разных узлах. Один из таких узлов - счетчик fr[1:0], создающий еще одну тактовую частоту. Описываю в sdc-файле частоту на выходе мультиплексора, то есть на входе счетчика: create_generated_clock -name {fr_2m} -source [get_ports {cl_in_a}] [get_registers {fr[0]}] create_generated_clock -name {fr_2p5m} -source [get_ports {cl_in_b}] [get_registers {fr[0]}] -add Теперь хочу дополнительно описать в sdc-файле тактовую частоту на выходе счетчика. Как это правильно сделать? Описывать весь путь от cl_in_a до fr[1] или от fr_2m до fr[1]? Была ошибка в посте - убрал -divide_by 4 из create_generated_clock, это попало из другого варианта описания
  22. Задал в sdc-файле тактовый сигнал на входе счетчика, на выходе убрал. Вроде все нормально, единственно варнинги от Квартуса ( точнее от встроенного в него TimeQuest ) что мол имеются частоты ( те, которые на выходе счетчика ), не описанные в sdc-файле. Но хочу все-таки задать частоты на выходе счетчика ( в частности, по упомянутым SM соображениям да и лишние варнинги ни к чему ). И вот эта попытка позорно провалилась. Причем делал по разному, сначала определял частоты счетчика от входных частот ПЛИС, потом попробовал от частоты на входе счетчика. И вот для начала вопрос, если надо определить частоту на выходе счетчика, можно для этого воспользоваться ранее определенной частотой на входе счетчика или надо расписываь определения от частот на входе ПЛИС? А дальше буду думать, где я еще ошибся.
  23. Спасибо участникам обсуждения, начал немного продвигаться вперед. Сделал учебный микропроект, отрабатываю на нем непонятности. Пока один вопрос. Задал в sdc-файле частоту, пути прохождения которой выглядит так: два входа для разных входных частот - мультиплексор - счетчик - выход старшего разряда счетчика. Выход старшего разряда счетчика и есть описываемая тактовая частота. Вроде все получается. Но захотел описать в sdc-файле как тактовую частоту сигнал, подаваемый на вход упомянутого счетчика, так как он является тактом для другого узла. Возникло страшное подозрение, что этого делать не надо, TimeQuest не жалуется на не определенные тактовые частоты. То есть, если в sdc-файле определена некоторая тактовая частота, все промежуточные сигналы от входа до этой частоты в явном виде определять не надо?
  24. Тяжело дается TimeQuest! В литературе всюду показано, как описать переключение двух частот на входе ПЛИС внутри этой самой ПЛИС с помощью двух команд create_clock и одной set_clock_group -exclusive. При этом в итоге получается две частоты с разными именами. Но у меня в проекте на выходе такого мультиплексора выбранная частота имеет свое единственное имя, под которым далее широко используется. В том числе поступает на счетчик, частота на выходе которого тоже используется как тактовая и должна быть соответственно описана в TimeQuest. В общем, хочется в TimeQuest оперировать выходным названием частоты. А иначе и непонятно, как описывать дальнейшую цепочку тактовых частот, неужели в каждом случае идти от самого входа? Подтолкните мои мысли в нужную сторону, сложного тут вроде ничего не должно быть, просто взглянуть на проблему надо под правильным углом.
  25. Проблема в осознании задачи. Если пропала внешняя частота, как при простой реализации ( без ФАПЧ ) определить меньше, чем за ее период, что она пропала и успеть переключиться на внутреннюю частоту? Если разбираться дольше периода, будет пропуск тактов на выходе.
×
×
  • Создать...