Страници: 1 ... 15 16 [17] 18 19 ... 25   Надолу

Автор Тема: Проект - Q4  (Прочетена 148557 пъти)

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #240 -: Jul 03, 2013, 14:48 »
След дълго забавяне най-сетне успях да отделя малко свободно време и да работя по процесора. Снабдих се от магазините с няколко бутона - високи и ниски, дип ключета, резистори и още светодиоди. След някой друг ден ще кача и снимки.
Поздрави
Георги
Активен

bot

  • Гост
Re: Проект - Q4
« Отговор #241 -: Jul 03, 2013, 23:47 »
 Тъкмо забравихме за този проект и ти хоп... ни го навираш в очите отново. Не се притеснявай, не си длъжен да даваш отчет какво правиш и как си харчиш парите. Хората, които ти направиха подаръка са го направили не конкретно заради този проект, а заради амбицията и ентусиазмът ти, което е много рядко срещано сред младото затъпяващо поколение. Прави каквото си правиш там и се опитай да допринесеш малко за редуцирането на спама у форума.
Активен

Naka

  • Напреднали
  • *****
  • Публикации: 3402
    • Профил
Re: Проект - Q4
« Отговор #242 -: Jul 04, 2013, 11:33 »
Е все пак като е почнато нещо трябва да се доведе до някакъв край - поне до работещ прототип.
Иначе е много несериозно. Почва се нещо... кара се кара до някъде....минава мерака и се заебава.

Мисля си, че тук има много казанджии  ::)(такива като мене), дето чакат и наблюдават с интерес какво ли ще излезе. ???

« Последна редакция: Jul 04, 2013, 11:36 от Naka »
Активен

Perl - the only language that looks the same before and after encryption.

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #243 -: Jul 04, 2013, 13:22 »
Работата е там, че не се занимавам само с това. Заради това се бавя така иначе като става въпрос мога да го направя и за един ден, но не е там въпроса.Просто след като видях че работи на симулацията и си казах - а то добре съм го измислил по-нататък ще го правя. И така .. заради това не обичам да го правя на симулация - като го направя то тръгва работи и после ти "минава мерака" да го направиш и реално. Ще го довърша, спокойно. По-точно го влача, защото след като го направя и няма да има с какво да се занимавам.
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #244 -: Jul 11, 2013, 22:53 »
Искам да ви попитам едно нещо. Как при истинските процесори, не като моя ;D как процесорът разбира дали дадена иструкция е команда или опция към нея ? При тях има две шини - адрес и данни . Как процесора разбира от тия данни кое е команда и кое не ?
Активен

jet

  • Напреднали
  • *****
  • Публикации: 3473
  • Distribution: debian
  • Window Manager: kde
    • Профил
Re: Проект - Q4
« Отговор #245 -: Jul 12, 2013, 03:10 »
Искам да ви попитам едно нещо. Как при истинските процесори, не като моя ;D как процесорът разбира дали дадена иструкция е команда или опция към нея ? При тях има две шини - адрес и данни . Как процесора разбира от тия данни кое е команда и кое не ?
По кода на операцията. Когато се извлече кода на инструкцията за всяка една се знае колко операнда има при което се инкрементира програмния брояч съответния брой пъти и се зареждат съответните регистри.

Например:
знае се че операцията INC A (увеличаване на акумулатора с 1) няма операнди, след зареждане на кода, се инкрементира програмния брояч с 1 и там ще се намира следващата инструкция

LDA #$C1 (зареди акумулатора с 'A'), операцията им един операнд, т.е. след зареждане на кода, се увеличава програмния брояч, на този адрес се намира $С1, който се зарежда в акумулатора.
Активен

..⢀⣴⠾⠻⢶⣦⠀
  ⣾⠁⢠⠒⠀⣿⡁
  ⢿⡄⠘⠷⠚⠋
  ⠈⠳⣄⠀⠀⠀⠀  Debian, the universal operating system.

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #246 -: Jul 12, 2013, 10:21 »
Може да преработя сегашната версия. При мен програмния брояч винаги ще брои до 1, защото нямам инструкция с повече от един операнд или с по-малко. Качил съм една графика може да я погледнете. Само не ми е ясно как точно програмния брояч ще изчака един импулс на клока, и тогава ще се включи. Единственото за което се сещам са тригери.
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #247 -: Aug 09, 2013, 11:57 »
За сега успях да подкарам само 3 команди - някаквя псведо фунция на която задавам при комада ретърн, къде да отиде брояча - нека да я наречем ADR, командата за връщане - RET, командата за извеждане на стойност  - OUT. Батериите на фотоапарата паднаха, но ще се опитам да обясня кое кар работи.
Първово въвеждаме програмата която примерно ще е :
брояч  команда  параметри
0000 - ADR            -
0001 - OUT         0001
0010 - OUT         0010
0011 - RET            -
Сега нека я изпълним на процесора. Първо процесора запаметява стойноста на брояча в един тригер или - клетка с памет с големина 4 бита. После извежда на изхода 1, след това извежда 2 и накрая изпълнява командата ретърн, която казва на програмния брояч да зареди от клетката с памет. След това всичко се повтаря. Интересно става, когато адреса на който трябва да се върне е по-голям от този на който трябва да отиде - прескача команди. Още малко ми остава да направя командата GOTO - само трябва да свържа изхода на паметта с един буфер до програмния брояч. Това е за сега .
Поздрави,
Георги
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #248 -: Aug 19, 2013, 13:08 »
Ето го и видеото : http://www.youtube.com/watch?v=Ahd1sq3a6Yo&feature=youtu.be
Приятно гледане  ;).
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #249 -: Aug 24, 2013, 09:32 »
Успях да оправя клока. Решението бе много просто - сложих един резистор към клок и +5в, понеже се сетих че логическата 0 и 0в нямат нищо общо.
┌──────┐
│БРОЯЧ  │
└┬─────┘
  │<-Клок   
  │          + 5V
  │ 330Ohm│ 
  ├─/\/\/\---┘
  │
  │
  │
  └ <- вход импулси

5V──────────────
      ┌─┐      ┌─┐      ─ 1 логическа
      │  │      │  │      _ 0 логическа
0V─┴─┴───┴─┴────
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #250 -: Oct 08, 2013, 19:22 »
Съвсем го занимарих този проект. Сега покрай това училище нямам никакво време. Иначе купувам части от време на време, ама само това. Много ме кехят червените сегментни индикатори. Мисля да ги свържа със брояча да изглежда по-гъзарско. Свързването става директно през клок-а, не ползвам 4-битовата шина, руснаците са измислили една схема, може и да са я копирали :D, дето само боцваш дисплея интегралката и подаваш импулси. Ето я и нея :

ПП Това е американската версия - СД4033, руската е малко модната, има повече опции.
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #251 -: Oct 13, 2013, 19:26 »
Май ще променям архитектурата на процесора... отново.  ;D
Идеята ми е следната. Имаме една обща шина която всъщност са 4 кабела. Към общата шина са вклъчени различни устройства посредством буфери, за да се откачат и закачат. Тези буфери ги контролира един ром или по-точно програмната памет. Така ще се опрости значително и ще мога да добявям компоненти, без да променям цялостната схема. Примерно добавям модул АЛУ. То ще се свързва към шината и кър ром-а. И примерно искаме да съберем 2 числа и да ги изведем. Програмата в ром-а ще е следната :
0 - Свържи буфера на ключетата с шината и вземи стойноста от шината. Запиши в стойност А на акумулатора
1 - същотото като горното само че записва в Б
2 - Изведи резултата в шината и го изведи като свържеш диодите с нея.

Отначало ще ви прозвучи малко странно, защото всъщност правя няколко неща наведнъж - това е така. Ето я идеята. Десеттичен декодер в ром-а няма да има. Изхода на ром-а ще се свързва директно с буферите на модулите или пък със тригерите на алу-то. Ето по-малко нагледно. Да кажем че ром-а е 8бит-а . Размерът на паметта не е от значение.
имаме 8 бита :
0 0 0 0 0 0 0 0
Всеки бит е свързан с определена част от модулите, т.е отговаря за нещо. Примерно първият бит отговаря за буфера на входа, а втория за буфера на изхода. Ако напишем примерно
1 0 0 0 0 0 0 0
Ще свържем входа с шината, но няма да я изведем. Ако добавим и една 1 - за изхода това, което въвеждаме ще се извежда на изхода. Тоест така :
1 1 0 0 0 0 0 0
 Това е идеята като цяло. Едиственият проблем е, че трябва предварително паметта да е с повече битове, за да мога да слагам повече устройства. Какво мислите, добра ли е идеята ?
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #252 -: Oct 17, 2013, 21:56 »
Върнах се към старият дизайн, но доста променен. Ще видите схемата на блока който извършва операциите. На симулациите работи. Блока с паметта обаче... нещо не мога да го измисля. Мога да чета от паметта, но не мога да измисля как ще стане записването, понеже ще ползвам една и съща памет за програма и данни. Командите може да минат през някакъв ром.. и тогава да отидат в блока за операция, за сега няма да има.
https://docs.google.com/file/d/0ByCs3cXQpIZQM25tY0VOcVE2Xzg/edit?usp=sharing
Там където са ключетата - те са само за тест на Б.О . После ще са свързани с РАМ паметта. Въртят ми се някакви идеи за запомняне, но още нищо не съм направил. Едната е да запиша текущия адрес, след това да отида на някакъв адрес, да запиша стойност и да се върна на записаният адрес, за да продължи изпълнението на програмата.
Активен

zxz

  • Напреднали
  • *****
  • Публикации: 615
  • Distribution: Linux Mint 18.2
  • Window Manager: XFCE
    • Профил
Re: Проект - Q4
« Отговор #253 -: Nov 11, 2013, 22:00 »
Утре най-вероятно ще доставят една заръчана памет 256х8. Надявам се всичко да работи както трябва. Това, което ми е по-интересно обаче е още ли ме подкрепяте в проекта, защото от няколко месеца насам, след като бота напусна форума, никой не е писал нищо. Утре ще снимам схемата, която вече завърших, за да видим дали има някакви неточности, заради това питам, сам ли си пиша или има все пак хора, които четат и разбират ?
Знам, че съм доста несериозен с проекта, но това е защото постоянно ми излизат нови и нови задачи. Утре ако успея ще снимам това, което съм изпълнил до сега от новата схема и самата схема.
Поздрави,
Георги
Активен

arda_kj

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian Sid/Unstable; Ubuntu 12.04
  • Window Manager: Gnome/KDE
    • Профил
Re: Проект - Q4
« Отговор #254 -: Nov 11, 2013, 22:47 »
Аз следя темата от любопитство и я чета, обаче не очаквай помощ от мен - тези неща съм ги позабравил и следя доколкото електрониката ми беше хоби едно време (освен това съм учил в техникум по електроника) и ми е интересно, така си припомням разни неща.

Поздрави и успех с проекта :)
Активен

Debian Sid/Unstable; Ubuntu 12.04
"За да открием истината, е нужно поне веднъж в живота си да подложим всичко на съмнение" - Р. Декарт
Страници: 1 ... 15 16 [17] 18 19 ... 25   Нагоре
« назад напред »