|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 2:34 pm
"Персонален компютър" с PIC12
| Автор |
Съобщение |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
 "Персонален компютър" с PIC12
Това е тема по-скоро за чесане на професионална краста
Чудя се дали е възможно да се спретне някакво условно да се нарече работещо компютърче на базата на някой ПИК от 10 или 12 серия (не по голям!). В началото ме глождеше към едни 4-битови контролери на атмел ама това май би било прекалено. Естествено нужна е външна памет - мисля за един серийни FRAM на RAMTRON и някакъв сериен флаш. Периферията би могла да бъде на същата или втора серийна шина с още един такъв ПИК и софтуерен сериен порт за конзола или нещо подобно.
Вътре във флаша на главния "процесор" може да има нещо като микроинтерпретатор който да изпълнява 5-10 най-базови операции в П-код. останалото е въпрос на библиотека във флаша с тия инструкции за да може да се стигне до някакъв елементарен бейсик или нещо такова.
Как мислите? 
|
| Пет Апр 06, 2007 2:29 am |
|
 |
|
bobyk
Ранг: Ориентиран
Регистриран на: Пон Яну 09, 2006 11:32 am Мнения: 276 Местоположение: Kozloduy
|
Правилно си избрал раздела
Ама не ми е ясен стремежа ти към минималистичност (пик10,12), то ако ще има толкоз външни памети по добре да е с нещо по сериозно като МЦУ. Така де пик10,12 сеизполва там където има да се върши нещо елементарно и без нищо друго около него (памети и т.н.), абе не ми споменавай за контролер без прекъсвания.
|
| Пет Апр 06, 2007 8:34 am |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
Ами стремежа ми е ясен
В днешно време не е интересно да направиш нещо супермощно дето може да прави всичко. Интересното в да направиш нещо суперслабо дето да може да прави поне 1/10 от всичко
Целта ми е да видя дали може да се направи пълноценен компютър от възможно най-слабия и непригоден процесор (ако го наречем условно така). Вероятно би било най-бавния кмппютър в днешно време, което пак си е нещо изключително
Прекъсвания не мисля, че са необходими, дори ресет не е нужен. В края на краищата винаги може да се спре захранването...
Абе както вече казах въпрос на професионална краста...
|
| Пет Апр 06, 2007 9:18 am |
|
 |
|
¶
Ранг: Форумен бог
Регистриран на: Пет Фев 25, 2005 1:58 pm Мнения: 4585 Местоположение: US
|
Аз съм за идеята  Какъв БИОС може да се спретне ... Терминал и клавиатурка ще има ли ? Все пак ще трябва софт да се пише и тества 
_________________ Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....
|
| Пон Май 14, 2007 7:48 am |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Значи преди време в СССР бяха разработили един процесор (ЕС2704), сега гледам, че и IBM подхващат идеята. Идеята е следната - имаш един n-разреден проц, примерно 16 бита. И той си работи като такъв. Бучваш до него още един чип от същия вид и вече имаш 1 (един) процесор с 32 битова разрядност. И така до безкрай (до колкото е проектиран да поддържа).
Интересното е, дали такава архитектура може да се постигне изцяло със софтуерни средства?
|
| Пон Май 14, 2007 10:30 am |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
бе то (теоретически:)) с 8-битов процесор можеш да емулираш (софтуерно) и 32-битов процесор (386) ... а недостига на памет с виртуална памет (HDD,Flash, ...) .. ама представи си какво бавнодействие ще докараш
|
| Пон Май 14, 2007 11:25 am |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
То теоретично и с 2-битов процесор и достатъчно памет може да направиш всичко - въпроса е с какво бързодействие ще бъде. Но то PIC12 не е чак толкова бавен. Мисля ,че тоя комп ще се харчи добре при охлювите и костенурките
Обаче нали знаете... колелото на историята се въртиии  Възможно е първите оптични компютри да са 2 или 4 битови и тогава ще видите виеее 
|
| Вто Май 15, 2007 12:35 am |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
Ами аз от началото на тая идея малко поработих по въпроса и разработих хардуера. Малко е по-различен от самото начало, но всичко е за добро
Платката е 3.5 на 3.7 сантиметра и няма чип с повече от 8 крака на нея , което само по себе си е уникално  Според първоначалните ми оценки общата скорост на системата е приблизително колкото на 8-битовите правци
Тия дни мисля да поръчам малко бройки от нея така че на приелите идеята скоро ще мога да изпратя безплатен екземпляр за разработка. Мисля, че мога да помогна и доста от елементите ако се налага на някой
Ако някой има конкретна концепция за софта нека сподели, аз още мисля по този въпрос
|
| Вто Май 15, 2007 2:54 am |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
Ще има скоростта на Правец8, ама разделена на 100. Трудно ще конкурираш паралелна 16бит адресация с тия серийни интерфейси. А и процесора 6502 на Правеца хич не е за подценяване - дори и сега ще бие повечето от масовите контролери просто защото си е мислен като пълноценен процесор. И въобще, проблема при контролерите е, че нямат достъп до външна памет (повечето) и ще се налага да правиш интерпретатор на иснтрукциите и разни други "фокуси".
Освен това за да е "Персонален" компютъра трябва да има поне клавиатура и дисплей, а аз нещо не ги виждам.
Иначе разработката на компютърна архитектура си е интересна задачка, но никак не е лесно ако се тръгва от нулата.
|
| Вто Май 15, 2007 11:11 pm |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
Скоростта на 6502 в най-добрия случай при честота 1MHz както беше в 8-битовите правци е 500000 операции в секунда тъй като най-бързите операции се изпълняват минимум за два такта (най-бавните бяха 6 ако не се лъжа). Средностатистически е показвано многократно, че 6502 на 1MHz дава производителност около 350-400000 оп/с, тъй като не можеш да напишеш програма само от двутактови инструкции.
В моята система SPI ще работи на 12MHz което прави около 650ns при трансфер на байт. Тъй като трябва и адресиране, но фърмуера може да се оптимизира за пакетен режим, това би забавило около 10-20% (ако средно се работи с блокове от 8-10 байта). Това означава около 800 ns на байт средно. Микрото е ясно специфицирано като 4MIPS (на 24Mhz вътрешен клок), което прави около 8 инструкции срещу една на 6502. Така, че ако допуснем, че поне 60% от времето отива да обслужва серийния интерфейс за ония 800 ns това прави поне 3 инструкции (или около 1.5MIPS) свободен ресурс, което пак е около 3 пъти повече от скоростта на 6502. Дори при много лошо написан фърмуер, мисля, че общата скорост би трябвало да е някъде в границите на правец-8x
Това микро има 4К флаш, така че не виждам проблем да се вкара някакъв много приличен интерпретатор вътре с което да се оптимизира допълнително натовареността на външната шина. Навремето имаше бейсици и разни други даже в по-малко от 4К по разни любителски системи
Не виждаш клавиатура и дисплей, просто защото не ги търсиш добре  Има сериен порт, който е предназнаен да се закачи ANSI терминал на него (или нещо подобно). Може да се сложи още едно такова MCU с малко RAM вързан директно към него, не на същата серийна шина, за да се търкаля емулирано видео, обаче това прави поне още 2 8-кракови чипа плюс няколко дискрета. Не знам дали си струва а и освен това в момента може да се храни направо от терминала.
Абе ако не ти харесва предложи нещо по-добро и по-интересно. Това не е цел да се прави мощна система, а симпатична система ако долавяш разликата
Все-пак аз съм изкарал нещо конкретно 
|
| Сря Май 16, 2007 2:23 am |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
Е извинявай kiiid, ама без клавиши и дисплей може да стане компютър, но няма да е ПЕРСОНАЛЕН. Обикновено КЪМ компютъра се включва нещо, а не обратното. То по тая логика може и цял лаптоп да му вържеш на порта, по-лесно ще го намериш от АНСИ терминал  .
Тъй като гледам, проекта ти трябва да се нарича "Сериен Компютър", в смисъл със сериен интерфейс и компоненти, което пак си е интересна идея де.
За Правеца не споря, че може да се достигне бързодействието му, но за да конкурираш правец на 1Мхц по твоята схема ще ти трябва контролер на 100МХц-а (примерно),което означава че архитектурата ти е по-бавна принципно. А и гледам, че си се отказал от PIC12 (виж си заглавието на темата).
 Като идея мога да ти кажа ,че LCD буквен дисплей може да се управлява само с два пина, през един преместващ регистер. А ако успееш да вържеш и една стандартна ПЦ клавиатура тогава ще стане зверче компютърчето  .
|
| Пет Май 18, 2007 12:01 am |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
Отказах се от ПИК-а, защото с него нещата стават почти невъзможни предвид на това, че няма такъв с осем крака и UART и SPI едновременно, а да се симулират по софтуерен начин си е огромно разхищение на мощност.
Обещавам да помисля сериозно върху предложението ти за LCD и клавиатурка. Мерси!
Значи в този случай ще задържа поръчката на платките за някой и друг ден за доработка. Скоро ще публукувам новия вариант. Ти по принцип интересуваш ли се сериозно или само коментираш въпроса?
|
| Пет Май 18, 2007 2:21 am |
|
 |
|
Syrius-B
Ранг: Форумен бог
Регистриран на: Пон Яну 30, 2006 2:48 am Мнения: 1248 Местоположение: София
|
На Правец 8 (AppleII), гениалното е мониторната система - формирането на изображението в тактовете за опресняване на динамичната памет.
Гениален е и BIOS-а т.нар. програма Monitor
|
| Пет Май 18, 2007 12:42 pm |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
Преди време и аз имах подобна идея - да направя клонинг на Правец8 със съвременен и достъпен микрокнтролер и нови елементи. Целта е да може на 100% да изпълнява програмите за Правеца. Та оттам и интереса ми към "lowend PC". А защо копие на Правеца - ами за да се ползва на готово софтуера за него какъвто има с тонове и все още се пази. Така за разработка остава само хардуера и някой и друг драйвер. Е, не го направих, но поне придобих представа що е това ПЦ. Основните трудности са:
1. Контролерите не могат да изпълняват директно външен код - ще трябва микроинтерпретатор. Имат и по-бавен достъп до външна памет.
2. Видеоконтролера - в Правеца е синтезиран с логически схеми и ползва едновременно една и съща памет с процесора само че времево разделени (дефазирани) и е доста тясно обвързан с процесора - няма как да се изкопира лесно. Трябва да се търси може би някакъв готов TVout контролер.
|
| Съб Май 19, 2007 9:24 am |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
хахаха... виж темата тука: http://www.mcu-bg.com/mcu_site/viewtopic.php?t=1525
и аз имах такава идея и бях сериозно се заел с нея, обаче ме запъна проблема с дисплея - не намерих такъв, който да е достатъчно евтин и разпространен и едновременно с това да е подходящ. Все пак това си стои на дневен ред (може би със следващия проект). Затова реших, че като за начало може нещо по-обикновено ей така за загрявка
иначе в днешно време няма проблем целия правец да се набута в един-единствен контролер като видео да се търкаля софтуерно. За пример ще ти кажа, че има доста софтуерни реализации на Apple II, повечето дори с отворен код, а някои дори и на C, така че това не е проблем. А за скоростта - след като един 286/16 процесор можеше да се справя с емулацията, предполагам, че и един ARM7/60 например също би могъл без проблем при това.
а сега - споменаваше ми за някакъв LCD дето се управлявал по 2 пина. аз не намерих такъв. Или поне не разоряващо скъп. дай пример ако имаш предвид. все пак TV изхода май си остава по-достъпния вариант... TV-та колкото искаш по света 
|
| Съб Май 19, 2007 11:45 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 0 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|