Есть такое странное хобби: компьютеры конструировать. Но не так, чтобы купил по частям, воткнул и готово. Не-ет, сделать надо всё с самого начала. Нашёлся умелец, который спроектировал и собрал компьютер, используя только простейшие микросхемы базовой логики. И еще Си-компилятор написал, а теперь Minix переносит. Проект называется "Homebrew CPU", по аналогии с домашним пивоварением. :)



А я вот придумал другую концепцию радиолюбительского компьютера: http://vak.ru/doku.php/proj/samputer/intro
Причем на отечественном процессоре, MIPS32, да с плавающей точкой.

А я вот придумал другую концепцию радиолюбительского компьютера: http://vak.ru/doku.php/proj/samputer/intro
Причем на отечественном процессоре, MIPS32, да с плавающей точкой.

no subject
Date: 2007-05-19 15:02 (UTC)http://www.analog.com/processors/blackfin/technicalLibrary/applicationNotes/index.html
http://www.analog.com/UploadedFiles/Application_Notes/74670263ee256Rev2March706.pdf
http://www.analog.com/UploadedFiles/Associated_Docs/377016527EE256v02_March06.zip
Смотреть в последнем архиве, кажется, код для второго ядра.
Аппаратно - думаю, можно взять за основу схему от Cirrus EP9315
http://www.cirrus.com/en/pubs/manual/EDB9315A_Tech_Ref_Manual.pdf
http://arm.cirrus.com/files/schematics/edb9307/8_SCHEMATICS/pdf/9307_schematics_v_2.pdf
Кстати, рылся у себя в свалке, еще одного QFP с VGA нашел:
Winbond W90P710
http://www.winbond.com.tw/NR/rdonlyres/B8339DC2-3563-48A2-A048-66F57FE87CFB/0/W90N710CD_W90P710CDG.pdf
И, повторяю, если плату заказывать, можно заказать и монтаж BGA.
А распространять через Мастер-Кит, например.
no subject
Date: 2007-05-19 19:33 (UTC)Winbond W90P710 трудно купить, efind.ru даже цену не дает. И потом, приходилось работать с их чипами... Не верю я им больше.
BGA неспортивно, хочется всё же удержаться в рамках более доступной технологии.
Цена
Date: 2007-05-20 12:32 (UTC)Использование FPGA и российского (военного) CPU - прямая туда дорога.
К тому же для рабочего компьютера они не нужны, максимум GAL или дешевый CPLD.
Я бы даже VGA DAC попробовал сделать на R-2R (учитывая импеданс выходов, возможно, поставив защелки) - у нас ведь скорее всего 5-6 бит, а не 8.
А для расширения надо оставить ISA в формате PC/104.
Забуферировать 245-ми, отгородив от CPU+SDRAM.
Кстати, IDE (параллельный ATA) тоже надо предусмотреть, шагом 2,54.
Может, поставить стандартный ISA MIO (FDC + 2COM + LPT + IDE ~CS).
Основные применения ящика:
- терминал RDP, возможно, X11;
(по опыту, 24-битному RDP хватает 10Мбит на 5 человек)
- "однорукий бандит";
- FreePascal.
Ящик должен допускать пересборку ядра и компиляторов (самые тяжелые вещи) на нем самом и запуск минимального менеджера окон без свопа. Кстати, может поставить слабенький FPGA ради внешнего TLB и сделать, как в MIPS (TLB miss -> exception)?
Назначение
Date: 2007-05-20 12:38 (UTC)И винчестер ему ни к чему, и ЦАП в VGA...
Тогда все слова забираю обратно.
no subject
Date: 2007-05-22 20:59 (UTC)R-2R - хорошая идея. Я думал про это, но не решился. Но еще не поздно. :)
Не вижу большого смысла в ISA, IDE, FDC. В качестве жесткого и/или сменного диска сейчас удобнее flash-карточки. Самый простой интерфейс имеют карты SD.
Для пересборки ядра и компиляторов 64 мегабайт памяти должно хватить без всякого пейджинга. А для свопинга TLB, строго говоря, не нужен.
SpaceWire - и правда интересная шина. Например, можно было бы сварганить на FPGA видеоадаптер с таким интерфейсом.
Спецификация
Date: 2007-05-23 10:12 (UTC)Однако для комнатного применения, по-моему, лучше оставить IDE - ведь он ничего не стоит (дешифровать его ~CS-ы), заодно можно подключить CompactFlash, а винчестер все-таки имеет большую емкость и допускает большее число записей сектора.
ISA, с другой стороны, и особенно в формате PC/104 - стандарт для таких систем, и единственная шина, для которой привык вести разработку типичный радиолюбитель - без FPGA и специализированных микроконтроллеров с поддержкой синхронных последовательных шин.
Так что разводить эти разъемы, по-моему, надо, а вот запаивать ли их - личное дело сборщика.
По-моему, следует также сразу предусмотреть JAMMA, даже, может, сдублировав на него VGA. Хотя, может, его лучше сделать на дочерней PC/104 плате.
Место для запайки на ISA NAND flash надо предусмотреть - для несменного твердотельного носителя это стандарт.
Другие вопросы, на которые нужны ответы:
- необходимая тактовая частота:
высокая (около 1ГГц и выше) - XScale + дискретный VGA (у внутреннего недостаточное разрешение), например, бывший C&T,
средняя (175 - 400 МГц) - что и выбрано, надеюсь,
низкая;
- объем ОЗУ:
большой (512 МБ и выше),
средний (64 - 256 МБ), что и выбрано,
малый (4 - 16 МБ);
- тип полевой шины (по-моему, наиболее популярны CAN и RS-485);
- _необходимые_ шины расширения;
- USB ? (нехватка компенсируется прямой поддержкой всех флэш-карт?)
- Ethernet (нужен, хоть место под RTL8019 или CS8900), хотя, опять-таки, возможно на дополнительной плате.
Насчет свопинга без диспетчера памяти - это оверлеи, я собирал unarj под RT-11, об оверлеях должен заботится прикладной программист. (Даже когда системная поддержка самая прозрачная). Голый TLB, как в MIPS, по-моему, - самая простая аппаратная реализация диспетчера памяти, полная аппаратная реализация таблицы страниц по спецификациям IBM S/370, сделанная в i386, намного дороже (т.е. с микрокодовой отработкой TLB miss). А в MIPS этого микрокода нет, все делается обычным кодом режима супервизора.
Кстати, по-моему, 1МГц ARM = 2МГц MIPS (= 0,5Мгц AVR32), поскольку у ARM набор команд намного хитрее - как в микроЭВМ 60-х годов ;-) , а все они полный конвеер без суперскаляра, т.е. почти всегда 1 команда за такт. Т.е. при одной и той же частоте ARM намного быстрее MIPS. Для примера почитайте Вашу хэш-функцию (правда, не знаю, может у российского процессора есть все расширения набора команд, сам ничего не читал, прикидывал когда-то по S-boxes, кто из $50 роутеров быстрее в этом деле...)?
Заодно огромное Вам спасибо за оригиналы стандартов! :-)
Re: Спецификация
Date: 2007-05-24 21:51 (UTC)Ваша гипотеза о значительном превосходстве ARM не подтвердилась.
А также выяснилось, что Blackfin не сильно хуже чем Thumb.
SDRAM DIMM
Date: 2007-05-23 10:46 (UTC)Таким образом, установив слот SDRAM DIMM вместо планарных корпусов, мы можем обеспечить значительную экономию средств и легкость приобретения комплектующих.
На плате, по-моему, нужно все же развести оба варианта - запаянная память на материнской плате нужна при:
- запайке ее в Китае вместе с процессором,
- изготовлении компьютера повышенной надежности,
- установке малого объема ОЗУ в целевые изделия.
Re: SDRAM DIMM
Date: 2007-05-23 19:56 (UTC)Частота определяется выбранным микроконтроллером. Ethernet с моей точки зрения, нужен обязательно, а без USB можно и обойтись. DIMM, все-таки, слишком громоздко.
Своппинг в Юниксе изначально был реализован в ядре, пользователю про это думать не надо. А вот пейджинг появился только в 1984-м году, с выходом System V Release 2. Так что справимся.
Стандарты - пользуйтесь на здоровье. :) Оно ж всехнее, общественное.
JAMMA
Date: 2007-05-23 20:58 (UTC)http://pinouts.ru/Slots/jamma_pinout.shtml
http://www.larwe.com/coinop/jamma.html
Лампочки, видимо, не из оригинальной версии, а от болгарского Casino Technology. Сейчас не нахожу :-(
no subject
Date: 2007-05-24 10:51 (UTC)