| Автор |
Съобщение |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
 Процесори с външна памет
Понеже, както знаете, съм доста слаб с хардуера, непрекъснато ме мъчат разни въпроси.  Гледам, че предлагат за стотинки (дори на места подаряват) разни процесорчета тип 486 и Пентиум-1, та ми се ще по някое време (като остана без работа  ) да си направя някакво експериментче. Понеже при микроконтролерите процесора, паметта и контролера за нея са на един кристал, не се налага да се замислям особено как са устроени нещата. Особено като пиша на Ц.
При CPU-тата, обаче, всичко е отделно, та молбата ми е как точно CPU-то комуникира с паметта, какво точно представлява контролера на паметта и такива разни.
Между другото, ако старите кучета се дразнят от подобни лаишки въпроси (при програмистите го има този момент), мога да добавя още един форум с въпроси от начинаещи. 
|
| Пон Сеп 27, 2004 9:38 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
PIC използва Харвардска архитектура, при която програмата и данните се намират в отделна памет и достъпът до тях е по различни магистрали. Отделянето на програмата от данните за разлика от традиционната фон Нойманова архитектура, подобрява ширината на лентата. Това отделяне позволява инструкциите да имат дължина различна от 8-бита. Кодовете на инструкциите са с дължина 14 бита. По 14-битова магистрала на програмната памет се извлича 14-битова инструкция за един цикъл. Двустепенен конвейр наслагва извличането и изпълнението на инструкциите. Следователно всички инструкции се изпълняват за един цикъл (200ns при 20MHz), освен преходите.
_________________ Adios
Mozfet
|
| Пон Сеп 27, 2004 10:04 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Това го знам.  Почти всички МК са Харвард. Мен ми е интересно какво е контролера на паметта и как един CPU си "говори" с паметта.
|
| Пон Сеп 27, 2004 10:16 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
Е да де. Според цитата от дейташита, междинен контролер няма. Самият процесор дирижира всичко и си говори с паметта.
Абе мнго задълба. Да питаме някой разработчик на процесори от Intel 
_________________ Adios
Mozfet
|
| Пон Сеп 27, 2004 10:35 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
 Re: Процесори с външна памет
А е то специално за големите процесори си е цяла наука. Едно време при 6800 беше относително лесно. Шина данни, адресна шина R/W, clock и нещата ставаха. Ама при тия говеда сега, то само памети като видиш колко типа има - EDO, SDRAM, RDRAM, DDR, двуканални и пр. А и всичко е динамично (на кондензаторна основа) та трябва и рефреш. Дивотия. Абе то май всичко си иде от чипсета, който по последни данни по брой на транзистори конкурира успешно процесора.
А определно не всички микроконтролери са на харвардска архитектура. Тя по принцип е по-лесна за работа, по изчистена, но има едно голямо НО. Не може да стартираш код от RAM-a. Което автоматично ти сваля пройзоводителността. Повечето съвременни Флашове издухват на 20MHz. Затова и по ячките контролери работят по Нюманския принцип или някаква смесица от двата. На хардварска работят по простите (8 битови RISC). Много са удобни за работа де.
|
| Вто Сеп 28, 2004 9:10 am |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Значи никакви шансове да си сглобя нещо сам?
Като заговорихме за мощни МК, някой бачкал ли е с АРМ ядро?
|
| Вто Сеп 28, 2004 1:51 pm |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Май няма да е много трудно (освен с изработката на платката и всичките кабели дето ще цвърчат от CPU-то  ). Тая работа с DDRAM-a звучи доста объркващо, като за начало е по-интересно с SDRAM. Какво точно по хардуера те интересува ?
Абе не ми обръщайте особено внимание, не съм специалист... 
|
| Чет Окт 07, 2004 1:38 pm |
|
 |
|
forest_gump
Ранг: Професионалист
Регистриран на: Сря Окт 13, 2004 11:24 pm Мнения: 500 Местоположение: Стара Загора
|
Някой ако иска да научи как бачкат тия джаджи, да веземе да пусни един i8051 или i8031 , дори само да мига един диод на порта, гарантирам му че ще му светне ламбата та чак ще заблести, това е истината а пика си е направо лигавене дори и за начинаещи 
|
| Чет Окт 14, 2004 12:47 am |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
Е 8051 не е чак толкова умрял контролер, сравнително прилично се бачка с него. Виж 31 -то докато му навържеш паметите, може и да сгавиш. Но 51 заедно с HC11 си е класика в жанра. Умиря вече де, в тоя сегмент борбата е жестока - пикове, авери, японците и те бълват.
Апропо ARM7 - TDMI го водят 8051 за след 2000 година. Много пройзводители са купили лицензи за ядрото и го слагат във всичко. Точно както стана с 8051 преди години.
|
| Чет Окт 14, 2004 9:48 am |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
 Генерално решение ( предложено от подполковник )
А бе, Реконструкторе, като ще ти подаряват i486 аз вече си представям и откъде ще го вземат - от някое SH дъно. Ами що не го вземеш направо с дъното, BIOS-а и периферните контролери по него? Щото ша ти заема много място и няма промишлен дизайн? Айде, бе! Че ти по-подредено ли ще го направиш? Съмнявам се ( въпреки, че е възможно ).
Вземи си направи една ISA платка да ти boot-ва от нея ( ако нямаш, мага да потърся, без майтап ). Tам слагаш само един EPROM с валидно начало ( 0x55 0xAA или нещо подобно, трябва да видя. Ама как ще го дебъгваш - не знам. Освен на някоя друга машина с истонска (D)OS.
Гадното на тези процесори е, че трудно се дебъгват - нямат JTAG, ICD или некаква друга подобна простотия. ама като си мераклия ...
|
| Чет Окт 14, 2004 11:33 am |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
Сложно е. И то не защото не може да е просто, ами защото тези процесори са оптимизирани за работа с паметта - само виж колко мода имат всеки един от безкрайно многото видове цикли на шината на 486 ( за ядрото P6 например - не ми се говори ). Да му направиш интерфейса навън без специализирани чипове : забрави!. Отделно "малко" усложнение е фактът, че тези чипове имат 200++ пина и са в BGA корпус. ( всъщност, за 486 са Flat ).
За да не ставам досаден - не се занимавай в процесори, ползвай контролери.
|
| Чет Окт 14, 2004 12:10 pm |
|
 |
|
arcopal
Ранг: Минаващ
Регистриран на: Чет Сеп 08, 2005 9:19 pm Мнения: 17
|
Ще си позволя да възродя една старичка тема, и по-конкретно имам въпрос свързан с:
А има ли микроконтролери, които да позволяват адресиране на външна памет над 16бита(64килоадреса)... примерно 24бита(16мегаадреса) или дори повече?
|
| Нед Окт 23, 2005 4:45 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
|
| Нед Окт 23, 2005 5:56 pm |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
бе чудя се, дали мощен процесор не може да тръгне само на кеш? мисля че трябва да може. обаче май при всички случаи ще трябва някаква зареждаща програма във външна памет.
|
| Нед Окт 23, 2005 7:22 pm |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
може, така са BlackFin на AD
|
| Нед Окт 23, 2005 7:32 pm |
|
|