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

yes

Свой
  • Постов

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

  • Посещение

  • Победитель дней

    3

yes стал победителем дня 15 апреля

yes имел наиболее популярный контент!

Репутация

6 Обычный

2 Подписчика

Информация о yes

  • Звание
    Гуру
    Гуру

Контакты

  • ICQ
    Array

Посетители профиля

17 786 просмотров профиля
  1. не смотрел параметры, но принцип работы таких устройств позволяет не особо напрягаться с долговременными ошибками инерциалки: там же ЖПС двухантенный, то есть RTK он считает раз 10 в секунду (меньше как-то стыдно в настоящее время), а инерциалка с МЕМСами чтобы между ЖПСных отсчетов как-то интерполировать
  2. UVM это ещё, и может даже больше чем библиотека, это методология, то есть набор правил. У меня впечатление, что все книжки и туториалы долбят - вот описывать только так драйвер, агент, окружение, тест, вот только такие колбэки/тлм ... это позволяет кучу взаимозаменяемых верификаторов быстро подготовить, чтобы заполнить множество верификаторских вакансий создать рынок VIP, то есть кусков кода (производные от базовых uvm классов), которые вкладываются на место этих "базовых кирпичиков" и позволяют симулировать стандартные протоколы. По-моему, когда есть эти либо купленные vip, либо самонаписанные, то тогда это похоже на софтверную библиотеку и позволяет решить какую-то задачу. А в самом/й uvm готового к использованию ничего нет и если пожертвовать возможностью применения third-party VIP и наймом дополнительных верификаторов, то проще жить без uvm. Я сам профессионально (то есть за деньги) uvm тестбенчи не писал, но очень много их читал 🙂 , ну и какие-то самодельные проекты для собственного любопытства. Поэтому не могу настаивать, что мое понимание 100% верное.
  3. Может я опоздал, но tcl это командный язык, что вобщемто отображено в его названии и исторически это был самый простой путь добавить интерфейс командной строки к своему инструменту. То есть "вкомпилированный" в тул тикль кроме самого языка - процедур, иф-элс, базовых типов поддерживает какието специфические команды, типа get_clocks, но это нестандартизировано и порой может быть достаточно странным - например, на мой взгляд, filter в синопсисовских и формальных тулах (наверно, похоже на map() или чтото такое, но синтаксис странный). В симуляторах на тикле можно делать то же, что и кнопками из гуи: старт, стоп, посмотреть значение, пофорсить сигнал и т.п. как правило, этот же тикль управляет и окошками. Конкретно в квесте возможности тикля, имхо, слабые по сравнению с нцсимом. Может не умею готовить, но в нцсиме почистить на тикле регистры от Х можно было, а в квесте не нашёл как. Также можно взять общечеловеческий tclsh и в нем писать командные скрипты как в bash, csh, python, Perl и т.д. Не считаю это удобным, но гуру тикля может быть удобнее, чем на баше (и я тиклевские скрипты встречал) По поводу UVM - тикль можно использовать для "регрессии" менять что-то в файлах запускать разные тесты с разными параметрами (uvm вобщемта имеет механизм взаимодействия с командной строкой и профи этим пользуются. Профи верификатору все эти вэйформы и отладка в симуляторе даром не нужны и только мешают). но, имхо, преимущества перед тем же башем в таком юзкейсе я вообще не вижу. Про какойто механизм типа DPI, VPI для тикля я не знаю, если такое есть, то нестандартное, несовместимое. Рантайм взаимодействие придется либо через файловую систему, либо через прокладку на С - DPI Резюмируя - так как тикль медленный и достаточно неудобный язык, не предоставляющий дополнительных возможностей для верификации, использование его както специально вместе с uvm кажется мне странным желанием и я не встречал такого использования
  4. Есть некий дурной вендор, который использует одно и то же имя для разных подмодулей. Verilog, не SV. Приходится компилить каждый модуль в отдельную библиотеку, то есть имеется некий verilog конфиг / файл мапирования. причем иерархия имеет VHDL прослойки, то есть в пути встречается разделитель иерархии :, а не все через . я не смог использовать "instance" в этом конфиге - либо ругается на синтаксис, либо не находит. config tb_me158_chip; design worklib.tb_me158_chip; default liblist worklib memlib mrxlib ambalib techcells me158lib baremem bus_safety canlib cmsdklib comsyslib cortexlib dmalib flinlib gcells gtm me158lib memlib memutils sentlib techcells coresightlib deblib flashlib; cell pfm_340gf34kx278_v1a3 liblist pfm_340gf34kx278; cell pfm_340gf16kx76_v1a4 liblist pfm_340gf16kx76; endconfig Смотрю xmls - все хорошо - в каждой библиотеке "правильный" субмодуль, лишнего нет. Но получаю ИНОГДА Resolved design unit 'main_sel' at 'tb_me158_chip.I_th@th_me158_chip<module>.I_me158_chip@me158_chip<module>.I_me158_dig_top@me158_dig_top<module>.I_sst_340gf_macros_wr@sst_340gf_macros_wr<module>.sst_340gf_macros_i@sst_340gf_macros(rtl):cflash_nvm_container_i1@nvm_container_me158_dataflash<module>.U_pfm_340gf16kx76_v1a4_0@pfm_340gf16kx76_v1a4<module>' to 'pfm_340gf34kx278.main_sel:v'. main_sel (main_sel,chpers,lck_cfg,nvr_cfg_en,nvr_en,arrdn_sel,cfgary_en); А иногда снапшот собирается и симуляция проходит. Этот main_sel - UDP. Что я делаю не так? Может есть какойто способ указать xrun как правильно линковать?
  5. Не могу сказать 100%, но близко к 90, что ограничений по возрасту в Европе нет, это же эйджизм. То есть за образование надо платить независимо от возраста, но сума несколько сотен в год и компенсируется работой на кафедре, которой всегда много. Например, ETH (это где Эйнштейн и половина нобелевских лауреатов учились) чтото типа 600 евро/год. Больше требуется на еду и оплату общаги или апартментов, но я спрашивал у студентов из РФ - говорят, что можно несколько работ на кафедре исполнять... ещё наверно, нужно на первый год предьявить какие-то сбережения, чтоб визу и ВНЖ дали - эта сумма от страны зависит. То есть европа, это не США, и образование там недорого, получать какую-то стипендию на обучение не надо, я не слышал про такие стипендии И ещё раз влезу, если уж наткнулся на тему - трудоустроиться верификатором гораздо проще, их на кубометр кремния раз в 10 больше надо. Если не смущает профессиональное призвание "сами не летаем, но и другим не даем", то есть поиск ошибок в чужом коде дизайне, а не написание своего...
  6. Не решал такую задачу, просто интересно, правильно ли понимаю Звук 340 м/с, отсчеты 44к (наверно можно и больше), то есть если 10см между микрофонами, то больше 10ти отсчетов разница, переотражений на такой длине нет, по крайней мере вначале выборки, то есть корреляционный пик должен быть виден четко. Можно потом хитро пересчитать, если свертка в соседних отсчетах или тупо интерполировать сэмплы и свернуть ещё раз для увеличения разрешения по задержке. Получим какие-то псевдодальности, на том микрофоне, который брали за референс 0, на остальных + или - сколько-то мм. Решаем геометрическую задачу (например, последовательными приближениями тем же рунге-кутом), скорость звука тоже можно взять переменной, если микрофонов хватает, тогда избегается проблема высоты над плоскостью и 2Д, но если не лень, то больше 3х микрофонов можно расставить не в одной плоскости и решать 3Д по взрослому. Ну и если координаты есть, то углы тоже... А для бимформинга никакие координаты не нужны - берем задержки с шага 1 (причем и интерполяция никакая не нужна) и складываем соответственно ???
  7. Сильно подозреваю, что совершенно без разницы, процессор делать или LDO - нет в РФ такого рынка (потребления) комплектухи, чтоб окупить разработку для розницы. А когда работа на "заказчика", то заказчику и тендеровыигрывателям проще освоить деньги "на аналоговнетный процессор", чем на разработку замены ldo. Да и с технической точки зрения - процессор сделать - есть инструменты/методологии и люди умеющие этим пользоваться, есть ворованое/опенсорсное/иногда самописное ИП - бери складывай как лего, а тот же лдо это уже арт оф дезигн, тем более если работающего прототипа нет и неизвестно, сколько кремния и времени понадобится, чтобы прототип хоть каким-то параметрам соответствовал.
  8. Если нет каких-то принципиальных сдерживающих факторов, то совет - подтяните разговорный английский чтобы сдать IELTS на 5.5 (имхо, не сложно) и поступите в европейский (германский например) вуз на бакалавра магистра. Средства на жизнь получите работая над всякими нир-ами в этом же вузе, а к концу обучения и в коммерческой фирме можно. Всяко пользы будет больше, чем от домашнего обучения или просиживания штанов в фгуп-е. Да, есть пока еще отечественные конторы, которые переняли и используют прогрессивные буржуйские практики, но я считаю, это все скоро о-фгуп-ится и средняя температура по больнице стабилизируется (извиняюсь за язык изопа)
  9. не уверен, что можно обсуждать тут, но хочу спросить: А кроме Valor-а, какая либо еще утилита с этим форматом работает?
  10. Насколько я знаю, все сторонние импортеры типа альтиума, экспедишина и т. д. хотят текстовый формат pads То есть, по-моему, никак (если отбросить варианты "написать на питоне самому")
  11. Cortex-M4 и М7 , которые я видел, имели AXI. Но навалять/купить/скачать опенсорсный AXI<->AHB задача не сложная. Я так понимаю, что это та же тема Там используется AHB-Lite она же AHB5. Так как там мастер всегда один и старую-добрую AHB 2.0 нет смысла. --–------- Я не видел сорсов стм-овских чипов для массмаркета, но полагаю, что всякое пропиентарное делается теми же людьми и из того же силикона тех же IP. Для этих ахб-шных бас матриксов полно генераторов, и народ их вовсю пользует, хотя казалось бы, что в мире, где существует AXI4 (более модные в контроллер нет смысла совать), использовать AHB это все равно что автомобиль с паровым двигателем.
  12. Так как поток гораздо больше, чем пропускная способность отладочного канала, то надо ставить специальную память, к ней прилагать какие-то апаратные фильтры, которые записывают только часть потока, собирают статистику и т.п. JTAG используется как интерфейс, чтобы выкачать эту память для анализа (но если есть, например, pcie, то можно и без JTAGа обойтись) В общечеловеческих задачах подобное, например, запись операций по шине. У АРМа это называется ETM ETB (embedded trace macrocel, embedded trace bufer), в опенсорсной GRLIB Gaisler называется AHB_TRACE (если не путаю). В совсем запущеных случаях, можно вставить внутрь чипа логический анализатор типа альтеровского signaltap или ксайлинского chipscope, у гейслера есть и такое в опенсорсе (не помню как называется, поискать logic analyzer). Картинки можно в gtkwave смотреть. Я сам так не делал. https://baical.net/up7.html это софтверный проект, можно наверно, какие-то идеи, куски кода взять. Я когда-то над этим думал, но применить - не было проекта
  13. Да, спасибо, пускал раньше под визуалайзер, наверно, не все вычистил из мейкфайла.
  14. ** Error (suppressible): (vsim-12130) WLF logging is not supported with QIS. что за фигня? GUI не добавляет сигналы в waveform-ы questa 2021.1
  15. LEON с троированием и обнаружением/коррекцией ошибок в свободном доступе мне не попадался. Да, в коде и доках есть какие-то огрызки или общие куски, типа, странного crt0 с tmr-щиной, но не думаю, что это поможет понять. Для освоения "процессоростроения" LEON/NOEL слишком непросто написан, лучше брать какойнибудь простой RiscV, например открытое ядро от синтакора И небольшой совет автору топика - обратите внимание на бесплатные средства проектирования icarus verilog, verilator - если (что может быть и маловероятно) понадобится статью буржуям написать или какое-то сотрудничество, то они спросят, откуда моделсим взялся. Verilator вообще монструозная вещь, но чтоб заработал надо постараться
×
×
  • Создать...