Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 19:08

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Минимальная процессорная система с EQUINOX
СообщениеДобавлено: Сб июн 23, 2012 09:02 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Здесь буду собирать информацию по системе на процессоре EQUINOX

Собрано >> на этом устройстве <<

1. Процессор EQUINOX в одноядерном 16-битном варианте (остальные ядра просто отключены, но могут включиться в любой момент).

2. Память.
2.1. Память встроенная в ПЛИС - 32 килобайт (16K 16-битных слов) (остальное занято по другому делу). Память подключена в адресное пространство процессора с 0000h по 3FFFh.

2.2. Внешняя SD-RAM - 64 мегабайта - будет маппиться страницами по 32K(16К?) в старшую часть адресного пространства процессора. Возможна задержка доступа. На данный момент недоделано, т.е. не работает.

2.3. Внешняя NAND-Flash - от 64 до 512 мегабайт - будет читаться/писаться поблочно (2048 байт/ блок) утилитой. Прямой доступ через порты будет доступен только избранным. На данный момент в железе есть, но подключение не сделано.


3. По сбросу управление передается на нулевой адрес.

4. Сброс поступает по каждому фронту импульса кадровой синхронизации VGA монитора (отключаемо).

5. Память для VGA располагается в адресах 2000h..3FFFh. Содержит знакогенератор, символы с атрибутами и утилиту по выводу текста на экран, т.е. EMIT и TYPE на фортовом языке. Плюс несколько дополнений - установка позиции печати, чтение позиции печати, установка цвета, чтение установленного цвета. Вызов утилит по неким адресам командой call с возвратом по ret.

Код:
EMIT (symbol --> ) вывод на экран символа
EMITC (color&symbol --> ) вывод на экран символа с цветом
TYPE (addr-z --> ) вывод строки, заканчивающейся нулем
SET_PLACE (Y&X --> ) установка позиции в знакоместах
GET_PLACE ( --> Y&X) чтение текущей позиции в знакоместах
SET_COLOR (color --> ) установка позиции в знакоместах
GET_COLOR ( --> color ) чтение текущей позиции в знакоместах


6. Ввод с клавиатуры осуществляется утилитой, которая читает данные из адреса порта, отмапленного в память в адреса более 4000h.
Читать напрямую из порта кому попало - не разрешается.
Запрет пока только на совести программера. Вызов как и для вывода - командой call с возвратом по ret.

Код:
INKEY ( --> key-code)


Кодировка - сканкоды PS/2 клавиатуры. Отработка управляющих кодов минимальна (т.е. пока отсутствует)


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

--- пост не закончен ---

...вопросы прошу задавать только по теме...

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

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


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

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


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

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