Да, достаточно.
Вид для печати
В 570 не влазит, эээх...
http://savepic.ru/5530428.png
Посмотрел результат в RTL Viewer, это байтораздирающее зрелище. Просто печально.
а бывает можно с параметрами оптимизации поиграть - может и влезет.
Если чего-то не используется - прерывания, HOLD, READY - то эти цепи можно наружу не выводить, а внутри подать неактивные сигналы, тогда возможно оно пооптимизируется, кое-что синтезатор выкинет и может влезть в 570-ую.
Update: в приложении 580-ое ядро, проект для DE0, исходники адаптированного (и ускоренного) execiser-а.
Супер! Такую работу не стыдно и на OpenCores положить. Вон они заявляют:
Это ничто, по сравнению с данным вариантом. При условиее абсолютной совместимости.Цитата:
The super compact core
Chris Strahm has been working on a "super compact" 8080 core. The idea is to strip out
features that are not absolutely required for most designs.
He's been reporting cell counts (LUTS) of below 1500.
Угу, у меня там есть аккаунт, весьма вероятно что выложу.
Что-то многовато у них ячеек вышло, где-то есть неудачный синтез, видимо. Или это указаны ресурсы на всю систему.
А по нашему 580-му есть пара идеек по оптимизации. Например, регистр инструкций грузится в противофазе F2 только с входных пинов шины данных, поэтому можно сделать отдельный входной path на него и упростить мультиплексор d. Также совсем необязательно флагам подаваться на схему проверки условий тоже через шину данных, это опять упрощение мультиплексора (а их там 8 штук - по ширине шины данных). На растактовку такие оптимизации никак не повлияют, надо попробовать, хорошо бы все-таки в 570-ую MAX V втиснуться.
Годнота! Я сначала прогоню в окружении Специалиста данный вариант процессора: благо у меня есть девборды, которые это позволят. Если модель себя полностью оправдает, то можно будет заняться неразрушающей оптимизацией. А еще вот у меня какой вопрос: а почему нельзя было отказаться от основной частоты и сделать F1/F2 как тактовые? Невозможность полностью разделить сферы влияния (есть такие регистры, которые должны меняться по обоим тактовым сигналам)? И еще, я бы все же хотел преобразовать транзисторную схему в эквивалентную логическую. Быть может, что не увидел ты увижу я? Какие узлы могут свернуться а какие упростятся. Соответственно, есть окончательный и исправленный вариант транзисторной схемы?
Работа с прерываниями в целом и команда HLT в частности проверялись?
Попытался заменить на этот проц в v06cc - кое-что делает, но на HLT стопорится
Не та утилита. Если это с моего сайта, то:
img.exe для дисков формата FAT12/FAT16 (.img, .dsk, .bkd)
cmp.exe для дисков формата CP/M Башкирии, 2 отдельных раздела на каждой стороне (.cpm)
kdi.exe для дисков формата CP/M (.kdi, .odi, .fdd)
Проще было после загрузки CP/M открыть окно отладчика и загрузить файл с адреса 0x100, а потом запустить его с того-же адреса (установить PC=0100).
Отлично, дополнительное тщательное тестирование никогда не помешает.
Была задача как можно точнее эмулировать latch и сначала было неясно сколько же тактов при активных уровнях F1/F2 ему понадобилось бы для прихода в стабильное состояние. Такое место, где ему понадобилось 2 клока при F2 действительно выявилось одно и оно легко откорректировалось. Так что можно попробовать переделать на прямое тактирование F1/F2, но я уже смысла не вижу и сомневаюсь что синтез лучше пройдет. Да и проекты с несколькими тактовыми доменами сложнее.
Да, конечно есть. Закончу тесты и выложу все материалы. Ну если "горит" - то отпиши в личку свой email, сброшу тебе корректную последнюю схему (около 3 МБ pdf). Разумеется, она не "секретная", просто лень искать хостинг для большого файла, а тут такое не выложить.
И, безусловно, было бы также интересно иметь "альтернативный перевод" транзисторной схемы.
Нет, еще проверить HLT и прерывания не успел, постараюсь сегодня. Теперь (благодаря камраду, бегущему перед паровозом :)), мы точно знаем что там еще остались "мины".
Пока сделал оптимизации по отдельным path для регистра инструкций и схемы проверки флагов (сделал комменты про небольшие отличия от оригинального дизайна, впрочем, я в финальной статье про эти все особенности рассказать собираюсь). На CycloneIII cэкономилось порядка 20 LUT, хорошо - но маловато, маловато :). Потестирую все в комплексе и вечерком выложу.
---------- Post added at 10:35 ---------- Previous post was at 10:25 ----------
Хм, cmp.exe я на сайте не нашел, пришлось пробовать img.exe, ну и нехорошо как-то молча завершаться, сказала бы уже что формат не тот или хотя бы что FAT не смогла найти.