Просмотр полной версии : z80 и арифметический сопроцессор AM95
все давно придумано и спаяно )
и даже с бэйсиком
http://www.vcfed.org/forum/showthread.php?23141-8BASIC-I-finally-wrote-a-Basic-interpreter-to-my-Z80-AM95-8-bit-NANO-COMPUTER
shurik-ua
18.08.2017, 10:58
при вычислении синусов всё те же тысячи тактов - не, не пойдёть )
Для современных скоростных зеток - угу, не пойдёть почти что (почти - потому что у зеток вычисления более корявые). А вот для 8080, 6502 - самое то, ибо упомянутые процы работают максимум на 2 МГц, а сопроцессор - минимум на 4 МГц. В "те" времена это считалось круто.
у зеток вычисления более корявые). А вот для 8080... - это самое то.
... сопроцессор - минимум на 4 МГц
Извиняюсь за придирку, ничего личного, просто за Z80 обидно. Потому что непонятно, как программа на Z80 - корявая, а программа для КР580 нет. Мне кажется программа вычислений у них почти одинаковая (тем более, что все подпрограммы для арифм.вычислений, что я видел, написаны для КР580).
6502 для многоразрядной арифметики удобнее, чем КР580 (подобные подпрограммы для 6502 изучаются во всех учебниках). Но вот удобнее ли он, чем Z80, если грамотно задействовать все его регистры (особенно индексные), это ещё надо проверить.
Почему "сабж не пойдётъ"? Это разве верная информация, что сопроцессор работает, минимум, на 4 МГц. Что на 2.5 МГЦ уже не сможет? Этого не может быть, т.к "сабж" успешно работал и с 6502 на такте всего 1 МГЦ.
Даже если Z80 на такте 8 МГЦ, то сабж всё-равно имеет смысл, т.к аппаратная поддержка плавающей точки ускоряет не в 2-3 раза, а в сотни раз. А для того, чтобы быстрые CPU могли работать с медленными устройствами, в них предусматривают вход READY. Его не было лишь у микропроцессора 6800 из 1974 (для удлинения цикла доступа для обращений к медленным устройствам рекомендовали "вырезать" один импульс такта 6800. А 6802 и последующие 68xx имеют вход READY).
Для бытового компьютера "сабж" малополезен. С необходимостью считать синус сталкивался только при рисовании кругов в бейсике СПЕЦИАЛИСТА (где нет "Circle). Но оказалось, что из-за скоростных проблем считать синус для этих целей гораздо проще и выгоднее табличным методом. "Сабж" поддерживает единственный ЯВУ Паскаль МТ+, и при желании легко написать программу расчёта полета на Луну, но надо ли это в бытовой ЭВМ?
Что касается NANO, то это просто "конструкция от нечего делать". Стоило ли применять "сабж" ради того, чтобы сократить объём бейсика с плавающей точкой до 3 кб, с'экономив за счёт дорогого и дефицитного сопроцессора пару килобайт в ПЗУ и резко увеличить скорость расчётов. 2 кб объёма ПЗУ (расходуемые на подпрограммы для плавающей точки) в деньгах стОят в 20 раз меньше, чем сопроцессор. Кроме того этот бейсик уровня TINY, а для них вообще не нужна плавающая точка, они всегда целочисленные.
Да и вообще бейсик с плавающей точкой это буржуйское извращение. Первый бейсик в Apple-II был Integer, целочисленный и никто не жаловался. Потом Билл Гейтс сделал в бейсиках плавающую точку, мотивируя это тем, что теперь "Вы можете считать свои деньги с высокой точностью". А если считать проценты от вкладов в банке или траекторию улёта с этой планеты пользователю не требуется, зачем нужен бейсик с плавающей точкой? Бейсик и без того тормозятина, зачем его тормозить дополнительно. Разве, когда мы пишем программы на ассемблере мы ощущаем потребность в вычислениях с плавающей точкой, причём с точность до 38 знаков? Достаточно было на 2 порядка поднять размерность Integer чисел, точности в 6 знаков достаточно.
с'экономив за счёт дорогого и дефицитного сопроцессора
300 - рублей это не дорого и уж точно не дефицит.
И еще, ведь не обязательно процессор должен простаивать когда FPU производит расчеты? А объем бейсика в 3кб для процессора с адресуемой памятью в 64к это весьма неплохо.
TomaTLAB
18.08.2017, 18:05
В целом согласен, но
Да и вообще бейсик с плавающей точкой это буржуйское извращение.
бейсик планировался вроде бы как "учебный" язык. Там наличие плавучки оправдано, она просто есть и все, причем по умолчанию, не нужно голову особо ломать.
Заодно получился эдакий "программируемый калькулятор". И просто калькулятор в командном режиме если. Типа: ? 1254/(138+25*3) :)
Вернее даже так. Для "управляющего контроллера" или игровой машинки плавучка, по большому счету нафиг не нужна. А вот для учебной "школьной" - очень даже.
ничего личного, просто за Z80 обидно
Имел в виду, что современные зетки молотят на гораздо большей частоте, чем 4 МГц по даташиту для АМ'ки, посему "гладкость" кода уже не важна.
Это разве верная информация, что сопроцессор работает, минимум, на 4 МГц. Что на 2.5 МГЦ уже не сможет?
Может, но во всех схемах включения, что мне попадались, такт на сопр имеет частоту в 2-4 раза выше, чем на основной процессор. Можно и на одной, не спорю.
А объем бейсика в 3кб для процессора с адресуемой памятью в 64к это весьма неплохо.
Голосую обеими руками.
300 - рублей это не дорого и уж точно не дефицит.
Ой... где это? Пока минимум 600, если на наши деньги, да и широкого предложения не заметно.
ведь не обязательно процессор должен простаивать когда FPU производит расчеты?
В принципе да, тогда надо отойти от даташита, чтобы распределить вычисления, но у нас-то восьмибитки в большинстве своём не многозадачные. Но в любом случае, время простоя процессора при работе сопра будет значительно меньше, чем те же самые вычисления считал бы сам процессор.
Ой... где это? Пока минимум 600, если на наши деньги, да и широкого предложения не заметно.
Вот специально не буду давать ссылку на ebay (http://www.ebay.com/itm/1PCS-AM9511A-AM9511A-1DC-CDIP-ARITHMETIC-PROCESSOR-GOOD-QUALITY-D34-/291550040935?epid=1646006637&hash=item43e1bc9367:g:8aEAAOSwR0JUMdXO), чтобы рынок не перегреть :)
Вот специально
А, ясно, я обычно на интеловское золочение обращал внимание ;). Кстати, i8231 - единственный (вроде бы) чип, который Интел выпускал по лицензии АМД.
https://pp.userapi.com/c638823/v638823429/7876d/6cIclGkLDGA.jpg мой (пока ещё) экземпляр.
А объём бейсика в 3 кб для процессора с адресуемой памятью в 64К это весьма неплохо
Да неплохо. Для усечённого CPU с 28-ю ногами, который адресует всего 8 кб памяти (таких полно в семействах 6800 или 6500, но почему-то нет в семействе 8080). Или для 1979 года, когда расход в дополнительные 2 кб ПЗУ (для хранения п/п-рамм плавающей точки) имел значение. Но и тогда сопроцессор AM95xx стоил дороже, чем одна 2716 или две 2708.
А для полноценного процессора это вообще не оправдывает затраты в 1 лишнюю копейку или в 1 лишнюю минуту пайки. Не видел программ на бейсике размером более 20 кб, да и те такие разбухшие лишь из-за кучи глупых или смешных текстов. Размер ПЗУ сейчас не играет роли, т.к сложнее найти ПЗУ в 2 кб, чем в 32. Значит получается, что ценится именно адресное пространство. Но расходом одного 555 ТМ2, формирующего 2 адреса для ПЗУ, можно иметь ПЗУ в 8К, занимая при этом всего 2 кб в области памяти.
FPU был нужен в своё время для деловой графики, для пакетов поддержки инженерных разработок (допустим, для разводки печатных плат), а для бейсика или игрового компьютера он не нужен.
300 рублей за AM95xx - это не дорого и уж точно не дефицит
И в конце 70-тых это был редкий чип, тираж мизерный. И сейчас их сохранилось во всём мире всего 3 штуки. А цена низкая (и, якобы, не дефицит), оттого, что он просто никому не нужен.
am9511 на али
https://ru.aliexpress.com/item/Freeshipping-AM9511-AM9511A-1DC/32799495904.html?spm=a2g0v.search0104.3.1.Xt0vGu&ws_ab_test=searchweb0_0,searchweb201602_5_10152_10 065_10151_10068_10209_5400011_5430020_5410020_1030 7_10301_10137_10060_439_10155_10154_5370011_10056_ 10055_10054_10059_100031_10099_10103_10102_10169_1 0052_10053_10142_10107_10050_10051_5380020_10326_5 390020_10084_10083_10080_10082_10081_10110_10111_5 420020_10112_10113_10114_10311_10312_10313_10314_1 0315_10078_10079_10210_10073_10125,searchweb201603 _18,ppcSwitch_5&btsid=3693ff9b-75d8-4278-b499-260ddc463644&algo_expid=db4345ae-c964-4c6d-a49f-58259c5c5197-0&algo_pvid=db4345ae-c964-4c6d-a49f-58259c5c5197
а сопроцессор мне интересен, еслибы кто осмелился в виде платки в гнездо z80 , да с поддержкой в бейсике
Мда, вещи эти сугубо бессмысленные для 8 бит машинки, только с целью прикрутить железку. В чем радость? поясните
а сопроцессор мне интересен, еслибы кто осмелился в виде платки в гнездо z80 , да с поддержкой в бейсике
https://www.youtube.com/watch?v=MfTgvekO9F0
OrionExt
18.08.2017, 21:30
Пользы от мат. процессора точно 8-биткам нет. С другой стороны можно и попробовать практически, так сказать вернуться ненадолго в прошлое. Да и библиотеку прикрутить недолго для Паскаля или Си.
vlad
не будь столь, категоричен, может это будет элита на басике, 3 вектора посчитать раз плюнуть. :)
- - - Добавлено - - -
Пользы от мат. процессора точно 8-биткам нет. С другой стороны можно и попробовать практически, так сказать вернуться ненадолго в прошлое. Да и библиотеку прикрутить недолго для Паскаля или Си.
фигня это полная, такая точность просто не нужна, на GS можно делать ровно так и лучше.
но сам смысл по моему разумению иметь еще несколько страниц в области ПЗУ(CPU0), которые делит аксель и спек, для любой машинки zx совместимой
бла бла , парни
на GS тоже было бы интересно, но ? опять же , только одна статья и больше ничего
бла бла , парни
на GS тоже было бы интересно, но ? опять же , только одна статья и больше ничего
вот сам скажи, что тебе удобней, отдать список векторов, одной командой и получить результат или делать кучу in/out?
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot