|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
09.02.2015, 15:50 | #1 |
Пользователь
Регистрация: 09.02.2015
Сообщений: 31
|
Приглашаю обсудить новую архитектуру
Добрый день. Я создатель новой процессорной архитектуры. Представляю, насколько дико это звучит для неподготовленного пользователя, поэтому решил в первом сообщении ссылку на информацию не давать, а рассказать своими словами.
Прототип процессора существует нв языке Verilog и работает на плате Марсоход2 (с ПЛИС Altera). Кроме прототипа процессора существует и транслятор ассемблера. Процессор использует оригинальную, ни с чем несовместимую систему команд, близкую к CISC архитектуре. На несколько традиционных вопросов попытаюсь ответить сразу. Зачем? Была необходимость расширишить любой из существующих процессоров некоим специализированным блоком (грубо говоря - сопроцессором, но не математическим. Об это позже). После изучения нескольких десятков проектов ("самопальные" x8086, ARM, Sparc, AVR на http://opencores.org) показалось что добавление "своего сопроцессора" в существующий дизайн по трудозатратам соизмеримо с разработкой процессора с нуля. Т.ч. давайте в этой теме больше не касаться вопроса "зачем". В общем, я и мои коллеги, разработали оригинальную систему команд и попытались её воплотить ПЛИС (FPGA). Преимуществами нашей системы команд являются высокая плотность кода и расширяемость. Также мы использовали множество трюков при разработке системы команд, часть из которых скрыли макросами Ассемблера. Интересно? Задавайте вопросы, а я с превеликой радостью на них отвечу. В одном лишь можно быть абсолютно уверенным - этот процессор содержит массу "вкусных" решений и массу спорных решений. Кстати, нам важна не столько реклама нашей разработки (разумеется, для рекламы есть сотня более надёжных способов, чем тема от вновь зарегистрированного пользователя), сколько критика и, возможно, некоторые идеи от специалистов. В подтверждение этих слов я не стал публиковать ссылку на сайт проекта - если интереса (или критики) с вашей стороны не будет, то не будет и ссылок. |
09.02.2015, 16:38 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
У-у-у... Сейчас пИтрасяны набегут. Ну держись )
I'm learning to live...
|
09.02.2015, 17:17 | #3 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Информации недостаточно. Группы команд хоть скажите какие есть. Адресация? Все это совместимо с существующими стандартами? В смысле на аппаратном уровне?
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
09.02.2015, 17:56 | #4 | |||
Пользователь
Регистрация: 09.02.2015
Сообщений: 31
|
Цитата:
16 регистров общего назначения Исполняемый код позиционно-независимый. Возможности адресации по абсюлютным адресам только косвенная через регистр. Управление стеком и некоторыми операциями организовано через макрос. Размерность машинных инструкций от 1 до 5 байт. Для упрощения декодирования инструкции сгруппированы таким образом, что их размер однозначно декодируется по первому байту. Виртуальная память - в разработке. Аппаратная поддержка многозадачности - в разработке. Цитата:
Цитата:
Информацию о системе команд готовлю. Последний раз редактировалось almandrykin; 09.02.2015 в 18:01. |
|||
09.02.2015, 20:16 | #5 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Если мне нужно сделать прыжок я должен буду четко знать в какую ячейку памяти прыгать? Цитата:
Цитата:
Или под него своя матринская нужна?
I'm learning to live...
|
|||
09.02.2015, 20:34 | #6 | ||
Пользователь
Регистрация: 09.02.2015
Сообщений: 31
|
Спасибо за терпение. Я поместил карту системы команд в таблицу. Надо было сделать это раньше, но вот руки доши. Кликабельно для полного размера.
Цитата:
Вот эти инструкции реализованы с помощью макросов - таких инструкций в системе команд нет: Код:
Цитата:
Последний раз редактировалось almandrykin; 09.02.2015 в 20:51. |
||
09.02.2015, 20:50 | #7 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
А для дураков можно сказать в чем преимущества относительно х86, например?
Какой-то тип операций быстрее будет выполняться там или под это дело проще и дешевле процессоры делать,...? |
09.02.2015, 21:14 | #8 | ||
Пользователь
Регистрация: 09.02.2015
Сообщений: 31
|
Цитата:
Извините, но я делю преимущества этого процессора между реализованными и запланированными к реализации. Обратите внимание на жёлтые квадратики - это неопределённые коды операций, зарезервированные для будущих расширений. Думаю, что даже самый заядлый скепктик не возразит, что возможножсти расширения этой системы команд более велики чем у любой из существующих. Хотя и стоит признать, что популярные системы команд на данный момент более универсальны и позволяют выполнять более сложные операции. Что касается популярных RISC архитектур, то наша система команд имеет более высокую плотность кода - в одинаковом объеме памяти мы разместим больше полезного кода за счёт более коротких простых инструкций. Если говорить о перспективе, то обратите внимание на иинструкции IDLE, TASK_ID, SEND, RECV, LOCK, FREE, SET_MR, GET_MR - это и есть наше расширение микропроцессора для поддержки многозадачности и возможности обмена синхронными сообщениями. Некоторые из них уже реализованы, некоторые реализуются, некоторые отлаживаются, а некоторые продумываются. Если мы осилим задуманное и доведём работу до конца, то в результате получим процессор с аппаратным синхронным микроядром внутри. Цитата:
В принципе, сама по себе многозадачность имеет мало смысла, но мы собираемся ввести аппаратную поддержку для взаимодействия задач, а уже эта особенность сулит хорошие перспективы. В общем, благодаря архитектурным решениям, улучшаются следующие характиристики - увеличение скорости переключения задач, уменьшение накладные расходы на дспетчеризацию, уменьшение энергопотребления, уменьшение задержек и времени реакции на событие. |
||
09.02.2015, 21:24 | #9 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,831
|
Чесгря, не понял, в чем новизна. Почему код не трехадресный, например? Сходил по ссылке из профиля -- ба, знакомые всё лица! 3OS еще кто-то помнит?
В разработке: воспроизводственный контур ИТ
|
09.02.2015, 21:32 | #10 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Набежим, никуда не денемся .
В чём "фишка"? В системе команд? Код, всё-раравно - двочный. Подозреваю, что и архитектура та-же, которой мы пользуемся. Ничего нового. Та-же ж**а, только в профиль. Феликс. Делал всё. Просуществовал 30 лет. Никто не жаловался.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 09.02.2015 в 21:38. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разработка программного обеспечения, с кем обсудить? | BioWat | Общие вопросы по программированию, компьютерный форум | 6 | 06.09.2013 01:05 |
Как узнать архитектуру процессора на неттопе? | qewertyns | Компьютерное железо | 8 | 16.04.2013 23:22 |
Желающим обсудить идею создания он-лайн игры | ringu2 | Фриланс | 0 | 03.01.2011 17:06 |
Какую архитектуру выбрать? | k376 | Помощь студентам | 2 | 23.04.2008 23:57 |