Перейти к содержанию
    

Архитектрура системы команд 8-разрядного МК

Передо мной поставлена задача - дать предложения по архитектуре

системы команд 8-разрядного процессорного ядра,

совместимой с ЯВУ, удобной для программирования на ассемблере, простой в реализации

и обеспечивающей компактный программный код и малое число тактов на его выполнение.

Я дал предложения по концепции такой архитектуры с оценкой и обоснованием

http://moko.ru/mc/

 

Из него (концепта) торчат уши PICа - страничная организация памяти, что не позволяет обеспечить линейный доступ к данным,

AVRровские регистры косвенной адресации, а не механизм адресации данных по ссылкам и и осталось не решенными много других проблем.

 

Люди добрые, помогите "бедному" разработчику, кто чем может по делу,

без ля-ля-ля, смайликов и спама, - советом, предложением, позитивной критикой и замечаниями. Не дайте загинуть концепту.

Я стою на форуме с протянутой рукой уже второй день.

 

Подают фантики. Спасибо mikesm и vetal за позитивную критику и уточнение. Не дали умереть с голоду вчера.

Но сегодня мне снились процессоры с CISьСами и RISьCами и программист.

 

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

 

Вторые имели фиксированную длину команды, обрабатывали данные на регистрах за один такт, сопрягались с трансл

Изменено пользователем vitja

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а у Вас голая наука,

 

 

Скажу, извините, грубее - это не наука. Как многочисленные студенты появляющиеся на этом форуме с вопросами на самом деле не занимаются "проектированием", так гораздо много менее многочисленные аспиранты не занимаются "наукой" :(.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

RISC - отстой :) Грядёт эпоха сверхдлинных CISC по подобию Эльбруса E2K.

Зачем спрашивается процессору в рилтайме анализировать возможность выполнения нескольких инструкций за такт, если компилятор один раз сам может это сделать и сформировать инструкцию, исполняющуюся за 1 такт и производящую множество разных действий?!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

RISC - отстой :) Грядёт эпоха сверхдлинных CISC

Да чё уж там, сразу надо JAVA-процессор делать, чтоб прямо исходники глотал. Слыхал, что уже есть такие.

 

По существу вопроса - непонятна цель данной разработки. Нет цели, соответственно, нельзя поставить задачи и тем более найти пути их решения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как студенты ... так и ... аспиранты не занимаются "наукой" :(.

 

Практикам.

Вы используете продукты известных фирм от Intel до Атмел, и уверен, что грамотно.

Почему используете. Потому что доступно на каждом углу, стоит дешево и решает ваши задачи.

Как в Макдональдсе - гамбургер, фри и пепси (схема, компилятор, отладчик).

Нравится. Кушайте на здоровье.

Мне хочется другого.

Не 51-го с его многоформатной и переусложненной системой команд,

не PICа с его аккумулятором и ограниченным регистровым файлом,

и даже не AVR с его регистрами (об Эльбрусе не говорим - это не процессор для 8-разрядного микроконтроллера)

Чего хочу, попытался изложить вышше (там). Если недопонятно изложил. Виноват, поправьте.

 

Доцент

 

надо JAVA-процессор делать ... уже есть такие.

 

По существу вопроса - непонятна цель данной разработки. Нет цели, соответственно, нельзя поставить задачи и тем более найти пути их решения.

 

JAVA байт-код сложен для прямой интерпретации (реализации) в ограниченной аппаратуре МК.

А вот его его подмножество ....

 

О цели см. http://moko.ru/mc/ но там много цифирек и текста, поэтому надо вчитываться.

В 3-х словах о цели темы - эффективная система команд (МК)

 

Для чего - что бы ее сделать.

Изменено пользователем vitja

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне хочется другого.

Не 51-го с его многоформатной и переусложненной системой команд,

не PICа с его аккумулятором и ограниченным регистровым файлом,

и даже не AVR с его регистрами.

 

При этом, Вы якобы претендуя на реализацию

8-разрядного процессорного ядра для управления работой аппаратуры SOC

Совсем не поминаете именно реализации ядер по жизни заточенных под SoC.

Ведете разговоры о "..если сравнивать с 8051, PIC, AVR и даже ARM Thumb,". Даже "ARM Thumb" - а какого, черта якобы говоря о SoC поминать все это а не ARM Cortex-M1, NIOS... ? В бумажных переводных книжках такие буквы не встретились? "Наука", понимаш :(. Посмотрите на тот-же NIOS начала этого века и подумайте насколько и почему он отличается (и разрядностью, и системой команд, и количеством регистров) от поминаемых Вами "конкурентов" и бумажных проектов восьмидесятых годов прошлого века рождененных в 10мегагерцовые времена с ограничениями и на степень интеграции, и на количество ножек у DIP корпусов.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ведете разговоры о "..если сравнивать с 8051, PIC, AVR и даже ARM Thumb,"...

Посмотрите на тот-же NIOS ....

Посмотрел NIOS. Это не гамбургер 8-разрядный - это биг-мак 32-разрядный.

16-битная 2-адресная регистровая система команд. Оченнь простая, 16 форматов, более полусотни команд, нет условных переходов, зато есть пропуски.

Чуть-чуть румянец навести и от системы команд ARM Thumb отличить невозможно. Но все равно от этой пищи....

Минус три балла.

И вообще. Я предложил конкретно специалистам -

обсудить только вопрос эффективности системы команд 8-разрядного процессора. Предложил методику, привел оценки, как смог, дал предложения по повышению этой самой эффективности.

Все. О RISC говорить перестали, о критериях эффективности МК тоже, теперь не будем говорить о 32-разрядных процессорах.

А если Вам не нравятся 8-разрядные МК, то ..... это Ваше дело.

Однако большую часть рынка микроконтроллеров занимают именно они и это место другим уступят не скоро.

Изменено пользователем vitja

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну все верно, Вы говорите, что рынок занимают, что место не уступят. Вот только смысл этой эффективности теряется среди других вещей.

Вы пишете, давайте обсуждать эффективность ядра процессора. Смысл обсуждать эффективность ядра, если другие компоненты микропроцессора

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

его в 9.15 утра, или 17.15 вечера, и все это в приложении к алкашу. Нет смысла, для его здоровья гораздо эффективнее бросить пить.

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

Какой смысл обсуждать эффективность структуры команд, если повышение тактовой с 8 МГц до 16МГц, на любой платформе дает прирост в 200%,

против эффективности структуры команд, которая в предельном случае даст прирост 23%.

Поэтому с практической точки зрения, обоснуйте, хотя бы теоретически, какой выигрыш даст Ваша тема, хотя бы виртуально, чего не достичь

другими методами, там повышением частоты, переходом на другую технологию чипов или еще как то. Тогда хоть будет интересно обсуждать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если Вам не нравятся 8-разрядные МК, то ..... это Ваше дело. Однако большую часть рынка микроконтроллеров занимают именно они

и это место другим уступят не скоро.

Данные фирмы Atmel :

http://www.atmel.com/dyn/resources/prod_do...nts/doc3323.pdf

 

Я предложил конкретно специалистам -

обсудить только вопрос эффективности системы команд 8-разрядного процессора.

Я думаю так - длина команды д.б. в районе 11-12 бит. Туда вы сможете запихать наиболее востребованные операции. Для выполнения длинных переходов добавить несколько команд из 2х слов. Больше ничего не сказать, т.к. это будет зависеть от выбранной вами архитектуры(микроархитектуры)!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... Ну все верно, Какой смысл обсуждать эффективность структуры команд, если повышение тактовой с 8 МГц до 16МГц, на любой платформе дает прирост в 200%, ......

против эффективности структуры команд, которая в предельном случае даст прирост 23%.

"Обсуждать эффективность структуры команд" стоит хотя бы по по трем причинам ... о чем я говорил ранее давно и не буду повторяться.

 

А вот вера в прогресс техники - удвоить тактовую частоту или перейти на технологию 0ю13 мк - это другое.

Почему. Удвоение частоты приведет к удвоению потребления. Переход с 0.18 мк на 0.13 занял много лет и еще больше денег, хорошо что не наших.

Так или нет.

Я утверждаю в http://moko.ru/mc/ (таблица) 32, что система команд оказывает существенное влияние на эффективность МК (в попугаях).

И эта эффективность отличается не на 23%, а в два и даже три раза.

 

:

http://www.atmel.com/dyn/resources/prod_do...nts/doc3323.pdf

 

Я думаю так - длина команды д.б. в районе 11-12 бит.

1. Первый абзац это самое правильное, что я здесь видел.

Пример для всех.

Будьте кратки, при возможности давайте ссылки на первоисточник.

 

Ответ.

Из указанного материала я понял, что кроме двух известных древних проффессий, есть третья - аналитики (прогнозисты).

Из ссылки - "аналитическая компания Semico в 200ю году предсказала для фирмы Atmel, что к 2007(8) году

32-разрядные МК будут преобладать на рынке"

 

Из PC Week от 5 декабря 2008

доля рынка МК

"14% 8051

12% PIC

3% AVR

1% ARM . Остальные места занимают другие фирмы со своими проприентарными процессорами (Motorola, Zilog, Holtek, Sani...)

По прогнозу аналитической компании Semico к 2010 году дC

Изменено пользователем vitja

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрел NIOS. Это не ...

 

 

Вопрос не Вашей оценки чего-либо а в том, что взявшись наукобразно судить о ядрах для SoC, и даже уже родив некий "трактат" Вы до сего момента не удосужились ознакомится с реальными игроками на рынке SoC. Про подумать про то, почему они такие я уже и не говорю :(. Вместо этого наукообразный обзор и цитирование бумажных изданий с 80x годов и "улучшение" ядер прошлого века. Про "критерии" оценок SoC ядер по той-же занимаемой площади (к тому-же высосанные из пальца еще в том-же прошлом веке) - это вообще дурдом.

 

Из PC Week от 5 декабря 2008

 

Есть еще масса интересных журналов :) типа Хакер и иже с ним.

 

доля рынка МК

 

 

14% 8051

12% PIC

3% AVR

1% ARM . Остальные места занимают другие фирмы со своими проприентарными процессорами (Motorola, Zilog, Holtek, Sani...)

Врут. На первом месте микроконтроллеры, котрые уже и те-же москвичи выбрасывают в мусорник после каждой поездки на метро и прочая "электроная пыль" на ценниках в магазинах, карточках, картриджах.... Так о чем лично Вы пытаетесь вещать? Если не забыли, то Вы собирались просветить на счет SoC ядер.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из PC Week от 5 декабря 2008

доля рынка МК

"14% 8051

12% PIC

3% AVR

1% ARM . Остальные места занимают другие фирмы со своими проприентарными процессорами (Motorola, Zilog, Holtek, Sani...)

По прогнозу аналитической компании Semico к 2010 году доля рынка 32-разрядных МК удвоится

за счет сокращения доли 16-разрядных МК (для ARM до 2%),

а рынок 8-разрядных МК сохранит свой объем".

Даже если это так (хотя я сильно сомневаюсь), то большая доля 8-битных контроллеров обусловлена привязанностью к уже написанному ПО. Из этого совершенно не следует, что будет востребована новая архитектура 8-битных контроллеров. 8-битники - прошлый век. Давайте ещё АВМ реанимируем :biggrin:

Я просмотрел PDF не очень подробно и заметил только совершенно непонятные (неадекватные) цифры в таблицах. Особенно удивила таблица со стоимостью МК (архитектуры). Сравнивите к примеру AVR и ARM со флэшем хотя бы 64К и удивитесь сколько необъективности в вашем PDF. Буквально по каждой таблице можно долго спорить, но не буду. Жалко своё время.

 

Кроме этого, есть много способов поднятия быстродействия микроконтроллера. Те же AVR при желании Atmel-a можно было бы ускорить в 4-6 раз не переделывая систему команд. Но почему-то это не делается. Может для 8-битников такая скорость и не требуется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

......это вообще дурдом.

 

Врут. На первом месте микроконтроллеры, котрые уже и те-же москвичи выбрасывают в мусорник

...Если не забыли, то Вы собирались просветить ...

 

1. Без комментариев.

Про SoCи тоже больше говорить не будем. ОК!

Только о системе команд и какая из них лучшее и объясняя почему.

 

2. Они выбрасывают не 32-разрядный NIOS (ARM, MIPS, R....), а простенький 4-8 разрядный процессор.

Возможно это UNC80 (усовершенствованная архитектура МК 1878ВЕ1 з-да Ангстрем), они там карточками занимаются.

Возможно это что-то другое.

 

3. Просвещения ждут верующие, просветления - ждут буддисты, нормальные специалисты не ждут - они самообучаются.

 

Давайте ближе к теме уважаемые. А то выходные кончаются.

Изменено пользователем vitja

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

совершенно непонятные (неадекватные) цифры в таблицах.

Я думал, что это только мне так показалось :)

 

2vitja:

Создайте симулятор системы команд и оцените на нем все перечисленные вами тезисы. Для чистоты эксперимента любая команда должна будет исполняться за 1 такт - это даст возможность исключить нюансы реализации.

Если вам так хочется сравнить 8 и 32 бита - сравните стоимость вычисления постоянной составляющей синусоиды(кол-во отсчетов 32, кол-во элементов - 32, разрядность данных -16) , FIR 32 порядка, поиск числа в массиве, поиск подстроки в массиве строк и како-го нибудь алгоритма шифрования. После реализации этого всего можно будет сделать вывод о том, какие инструкции наиболее употребимы на типовых задачах микроконтроллера и их вес.

 

PS: http://mcu.caxapa.ru/benchmarks/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...