Pull to refresh

Comments 13

После изучения предложений на рынке, я остановился на Microchip IGLOO2. Не самый оптимальный выбор, но второй пункт про интегрированные Flash/RAM сильно ограничивал перечень возможных вариантов.

Почему не MAX-10 от Altera или не MachXO2 от Lattice?

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

Взвешенный подход и хорошая статья :)
Спасибо!

Ещё есть ПЛИС GoWin и платы на их основе в весьма паябельных корпусах QFN/QFP и со скромным ценником. А ресурсы ощутимо погуще, чем у иглу. В том числе высокоскоростные lvds с возможностью напрямую вывести HDMI.

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

Для меня странно что i8080 обошёл 6502/6510, спросил у ИИ (можно перепроверить конечно), но по моим ощущением он ближе к правде:

| Система     | Процессор       | Такт.частота | Dhrystones/s |
|-------------|-----------------|--------------|--------------|
| Apple II    | MOS Tech 6502   | 1 МГц        | 1500         |
| Commodore 64| MOS Tech 6510   | 1 МГц        | 1700         |
| Atari 130XE | MOS Tech 6502C  | 1,79 МГц     | 2000         |
| Intel 8080  | Intel 8080      | 2 МГц        | 400          |

Не знаю, откуда данные у 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 может быть еще больше.

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

37 dhrystones/sec для 65C02 ;)

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

В приведенной Вами таблице указаны результаты тестов на системе, а не "голого" процессора. Известно, что у Apple II видеоподсистема (как и у C64, или у Atari 800) останавливает центральный процессор при обновлении кадра, что занимает почти половину времени. Еще один момент состоит в том, что в Apple II использовалась динамическая память, которая требует циклов регенерации в процессе выполнения которых она недоступна и процессор простаивает в ожидании. Вы же проводите замеры чистого процессора без внешних раздражителей на статической памяти.

Известно, что i8080 в среднем выполняет 0.125 млн операций в секунду на частоте 1 МГц. Для MOS 6502 этот показатель равен 0.45 млн, т.е. в три с половиной раза больше. Однако у i8080 больше регистров, но у 6502 первая страница памяти (256 байт) может использоваться как таблица указателей, что существенно ускоряет вычисления. В итоге выиграет тот бенчмарк, который более тщательно адаптирован под специфику процессора и конкретной вычислительной системы. :-)

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

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

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

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

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

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

Z80 не будет работать в 2.5 раза быстрее чем 6510, это в принципе невозможно.

Можно было и не тестировать, так как 8080 был близок (немного отставал) от Z80, а его мы знаем по многим проектам, но только ZX Spectrum.

я не разбираюсь в Intel 8080A-1, но интересно, были ли попытка запустить его на большей частоте? теже 4МГц, или 5-10? или он в отказ уходит если частота не укладывается в допустимые рамки?

Sign up to leave a comment.

Articles