Pull to refresh
272
54.3
Send message

В моей задаче даже Igloo2 уже оверкилл. Использовал меньше 1k LUT'ов. Так как сложно было оценить сложность системы, то взял с запасом.

В итоге выиграет тот бенчмарк, который более тщательно адаптирован под специфику процессора и конкретной вычислительной системы. :-)

Скорее дело в компиляторе. Не зря CoreMark требует указывать компилятор и его флаги, если захочешь запостить результаты.

Вы же проводите замеры чистого процессора без внешних раздражителей на статической памяти.

Ага, указал на этот момент в родительском моменте. На i8080 системах проц тоже обычно ждёт память, что съедает такты.

Не верно ты, дядь Фёдор, бутерброд ешь! :)

Та понятно что это не совсем правильный подход к бенчмаркам (тема сама по себе весьма сложная). Цель не в сравнении попугаями, а больше в том, чтоб собрать систему и иметь запускать возможность код.

Не знаю, откуда данные у ChatGPT, но вот данные, или можно даже глянуть в сами исходники Dhrystone: https://github.com/ARM-software/workload-automation/blob/master/wa/workloads/dhrystone/src/dhrystone.c

 * MACHINE	MICROPROCESSOR	OPERATING	COMPILER	DHRYSTONES/SEC.
 * TYPE				SYSTEM				NO REG	REGS
 * --------------------------	------------	-----------	---------------
 * Apple IIe	65C02-1.02Mhz	DOS 3.3		Aztec CII v1.05i  37	  37
 * -		Z80-2.5Mhz	CPM-80 v2.2	Aztec CII v1.05g  91	  91
 * -		8086-8Mhz	RMX86 V6	Intel C-86 V2.0	 197	 203LM??

37 dhrystones/sec для 65C02 ;)

Нюанс может быть в том, что информация по 6502/6510 представлен для Dhrystone v1.1, а я запускал v2.1, но обычно очки в v2.1 ниже, то есть разрыв с 8080 может быть еще больше.

Скорее всего дело в быстрой памяти. Я отдаю данные в тот же такт, а обычно в системах проц ждёт память.

У MachXO2 слишком мало памяти (нужно 64Кб, а не 64 кбит). MAX-10 тоже смотрел - вполне укладывался в критерии, но не заметил особой разницы с Microsemi/Microchip, поэтому взял подошевле (подходящий вариант MAX10 что-то порядка 50 баксов, вместо 15 за Igloo2).

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

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

PS: если не нравится скрипт на питоне, то можно использовать avrdude - он поддерживает пачку переходников, на ft232 в том числе.

Тем что на стороне компа нужна будет софтина.

А какая разница где будет лежать кастомный код - на хосте или в flash микроконтроллера? ft232 универсальнее, чем специфичный "usb2spi".

А код для хоста - это 5 строк на Python'е, которые вполне легко портируются.

А чем обычный usb2uart не подошёл? Тот же ft232. Там хоть SPI, хоть JTAG, хоть ногами дрыгай вручную.

Популяризацию программирования FPGA одобряю, но заголовок очевидный кликбейт ;)

Мне в большинстве цифровых микроскопах не нравятся штанги. Зачастую они слишком массивные или не позволяют достичь нужной гибкости - иногда нужно что-то рассмотреть под углом: те же внешние BGA шары посмотреть или у QFN микросхем оценить пайку. Всё планирую что-то на базе gooseneck штанги сварганить.

Для больших (тысячи разрядов) чисел алгоритм а-ля "разделяй и властвуй" быстрее.

Термодатчик типа измеряет температуру с точностью до градуса

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

С нижним подогревом несколько проще - только топология платы влияет на реальную температуру припоя и можно откалибровать профиль. Но для верхнего подогрева точность в градусы недостижима.

Насколько я знаю, важно соблюдать скорость нагрева/охлаждения (скажем, не более 1гр/сек) для различных фаз, время в reflow зоне (секунд 10-15) и максимальную температуру (выше 230гр не желательно). Конкретные цифры могут гулять в весьма широких пределах.

память контроллера и во флеш минуя аппаратную защиту флеш памяти

Вычислительное ядро esp32 может делать то же самое.

Пожил в Будапешете год по этой же программе: всё круто, но основной стоппер - язык. Если задерживаться в стране, то национальный язык учить крайне желательно, а венгерский явно не для меня :)

По C23 есть такая страничка со списком поддерживаемых фич в компиляторах - https://en.cppreference.com/w/c/compiler_support/23

Еще бы поддержку Logicport'a от Intronix запилили бы, а то уже 5 лет жду :)

Perfetto UI выглядит интересно, но как-то слишком сложно. Я иногда через graphviz графы по трассам строю чтоб зависимости глянуть.

тогда уж risc-v (базовый, без расширений), хоть какая-то польза будет :)

Можно и так, есть реализации где в сдвиговый регистр загоняют [старт бит, данные, стоп бит]. Но лично я привык пихать всё в FSM :)

Первая атака неактуальна. Espressif как раз и усложнили такой примитивный глитчинг добавлением дублирующих чтений.

1
23 ...

Information

Rating
172-nd
Location
Красноярск, Красноярский край, Россия
Registered
Activity