Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Ср апр 24, 2024 10:27

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 99 ]  На страницу 1, 2, 3, 4, 5 ... 7  След.
Автор Сообщение
 Заголовок сообщения: какую архитектуру процессора стоит выбрать
СообщениеДобавлено: Сб май 10, 2008 17:43 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
По ряду следующих обсуждений:
4х битный процессор
вопросы о ТТА
и некоторых других

какую архитектуру процессора стоит выбрать, чтобы получить наиболее простой, но при этом применимый для реальных задач процессор
Имеется ввиду реализация на FPGA.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 17:44 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
да, для начала, какие варианты есть, и чем они хороши?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 17:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Сначала определяемся - имеется в виду Instruction Set Architecture (т.е. состав регистров и имеющиеся инструкции с точки зрения программиста), или особенности аппаратной реализации ядра? Например, add может быть как в CISC, так и в RISC архитектурах, вдобавок RISC тоже бывают разные. (TTA - это еще одно почти перпендикулярное измерение относительно RISC/CISC).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 17:52 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
нет, подход с другой стороны:
хочется процессор, на котором сравнительно удобно реализуется форт-машина (то есть не обязательно форт-процессор).
хочется очень простой процессор, который можно лекго вместить в 10к вентилей (чтобы влазил в EPF10K10, например).
требования к скорости вторичны.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:04 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Ну тогда я уже об этом писал. Делаем RISC с двумя тактами.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:05 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Делаем RISC с двумя тактами.

почему?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:08 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Эээ... а почему нет? :) Размер небольшой, отдельные модули слабо зависят друг от друга. Можно достаточно сильно отойти от первоначального замысла в процессе работы.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:18 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вот тут Forexample такую штуку еще предлагал Изображение
то есть временное мультиплексирование сети. Вроде просто получается, если исполнительных устройств немного...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:20 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вообще, интересно, какие могут быть еще варианты? Ну RISС, а еще?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:29 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Нет, квадратики и стрелочки сейчас уже не катят :) В схеме есть огромный недостаток - не отражен временнОй характер взаимодействия узлов. Процессор конвейеризован? Если да, то как решаются конфликты по доступу к ресурсам, нарушения линейного исполнения, Read After Write? Кто проверяет, что из регистров только что было "выдернуто" их предыдущее состояние, и ушло в АЛУ, а в этот же время исполняющаяся команда уже в них перезаписала? Мультиплексоры на сегодня - терпимая проблема в ПЛИС, а все так называемые ФУ в действительности выльются во фрагмент:

case cmd is
when 1 => result <= a + b;
when 2 => result <= a - b;

и так далее. И о правильном размещении и коммутации будет думать САПР.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:33 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Нет, квадратики и стрелочки сейчас уже не катят

катят, если речь идет о блок-схемах.

Хищник писал(а):
В схеме есть огромный недостаток - не отражен временнОй характер взаимодействия узлов.

это понятно, причем, чем больше функциональных устройств, тем медленнее получается.
но, вопрос был не в том, как реализовать быстрый процессор, а в том, какой получится наиболее простым, с точки зрения затрат LE.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:36 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
кстати, есть вариант с широковещательным каналом, то есть общая щина, на которую устройство выкладывает данные с указанием адресата. Интересно тем, что может быть очень сильно масштабирован такой проц. Но, как его программировать? Как определять, кто из готовых к передаче ФУ должен занять канал?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:45 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
mOleg писал(а):
катят, если речь идет о блок-схемах.

Блок-схема не дает развертку во времени, поэтому сама по себе не является исчерпывающим документом.
mOleg писал(а):
это понятно, причем, чем больше функциональных устройств, тем медленнее получается.

Кстати, до определенного предела это не так. В зависимости от возможностей ячеек ПЛИС возможно безболезненное добавление функциональности.
mOleg писал(а):
но, вопрос был не в том, как реализовать быстрый процессор, а в том, какой получится наиболее простым, с точки зрения затрат LE.

Простой -> маленький -> быстрый. Тут уже надо хоть как-то определяться, потому что ближайшая аналогия - бегун на старте. Это правда, что от принятия правильной стартовой позиции можно выиграть пару десятых секунды, но какой смысл продолжать устраиваться, если все уже побежали?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 18:48 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Блок-схема не дает развертку во времени, поэтому сама по себе не является исчерпывающим документом.
согласен, но идею проиллюстрировать рисунком лучше.

Хищник писал(а):
Простой -> маленький -> быстрый. Тут уже надо хоть как-то определяться, потому что ближайшая аналогия - бегун на старте. Это правда, что от принятия правильной стартовой позиции можно выиграть пару десятых секунды, но какой смысл продолжать устраиваться, если все уже побежали?

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

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб май 10, 2008 19:49 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Двухтактная схема нужна хотя бы потому, что в ПЛИСах внутренняя память синхронная, и данные на выходе появляются через два такта после появления адреса на входе.
А о том, какая схема простейшая - говорить сложно. Я как-то делал схему 8-битного процессора, которая в 150LE уложилась, но ее вряд ли можно было назвать простой, потому что на одну команду уходило от 4-х до 8 тактов.
И с дешифрацией команд я тогда сильно запутался, отчего тот процессор остался недоделаным.
А несколько идей могу подсказать.
1. Стек возвратов и данных делать на одном внутреннем блоке памяти.
2. АЛУ один на стек данных и стек возвратов. Он используется и для операций и для изменения счетчика команд.
3. Указатель адреса команды находится непосредственно на вершине стека возвратов. ( >R выполняется через R-PUSH R-SWAP)
4. во время исполнения команды два такта используется для исполнения команды на стеке данных, следующие два - на
стеке возвратов.
5. Чтобы были "видны" сразу два верхних элемента стека, адрес стека постоянно скачет на +1 и -1, в результате в первом
такте имеем верхний элемент, во втором - нижний. В третьем - пишем в один стек а читаем уже из другого...

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 99 ]  На страницу 1, 2, 3, 4, 5 ... 7  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 27


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB