| Автор |
Съобщение |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
И това как се вписва в memory map на MYXATA и Ки4о?
|
| Вто Апр 17, 2007 6:21 pm |
|
 |
|
Ки4о
Ранг: Форумен бог
Регистриран на: Съб Юли 22, 2006 9:50 pm Мнения: 1638
|
Знаейки адресното разположение на ISA картата,т.е на кой адрес какво има какъв ти е проблема да се обърнеш към конкретен адрес от който да прочетеш/запишеш данни ?Примерно:Адресното пространство на ISA картата в паметта на PC-то е от $0000:$9FFF Разпределението на устройствата на ISA картата е
$0000: $1FFF - RAM
$E000: $FFFF - EPROM
$C000: $DFFF - паралелен адаптер
$A000: $BFFF - паралелен адаптер
$8000: $9FFF - сериен адаптер
Достъпа до тях се дава от дешифратора.Задаваш си адрес $035F и казваш че искаш да пишеш там и си пишеш в рам-а на картата.
MOV al, 03
MOV 035Fh, al
Сега ми кажи кое не ти е ясно ?
|
| Вто Апр 17, 2007 6:56 pm |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
никак
I/O пространството затова си и има отделни команди IN/OUT за да може периферията да знае какъв адрес има изведен на адр. шината
при I/O адрес - рама си трае ... а периферните у-ва си казват: опа я да видя тоя адрес за мен (дешифратора) ли е ... ако да - извежда/записва данни на данновата (според R/W)
това си важи не само за ISA, но и за всеки друг бъс !
|
| Вто Апр 17, 2007 6:59 pm |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
не бъркай I/O адр. с RAM адр.
това че има епрром на определен адрес означава че там просто няма рам - и съответно няма конфликт
иначе ако си сигурен че на определен адрес няма нищо - спокойно можеш да си го дешифрираш и да работи като I/O адрес
просто с I/O адресите дешифрацията е по-проста и ... са точно затова - за периферия
|
| Вто Апр 17, 2007 7:03 pm |
|
 |
|
syscop
Ранг: Форумен бог
Регистриран на: Пет Юни 03, 2005 9:39 pm Мнения: 2277
|
@ike
Има си IOR, IOW - четене/запис от/в I/O, MEMR,MEMW - четене/запис от/в памет - т.е. като ги дешифрираш както ти изнася може да пишеш дето си искаш.
http://www.techfest.com/hardware/bus/isa.htm
|
| Вто Апр 17, 2007 9:22 pm |
|
 |
|
MYXATA
Ранг: Форумен бог
Регистриран на: Пон Юни 05, 2006 1:48 pm Мнения: 4906 Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
|
абе ике.....
значи за последно 1999 година съм разработвал за ИСА - шина устройство и съм писал системен софт за него. за ДМА за исата си казах мнението - не си струва хабенето ако не правиш например аудиокарта или лан карта(ма говорим за технологии 1999г.)
Представи си , че процесора има адресно поле, което условно е разделено на памет, системни устройства(таймер, пио, паралелен порт, серийни портове),друга периферия, има свободни(незаети ) адреси->на иса шината е изведено това адресно поле така, че като си боднал устройство на шината и то си отговаря на даден адрес... а за мемори мап или входно/изходно пространство -> в случая е въпрос на терминология.... аз казах ако устройството е правилно направено и човека дето го ползва знае кво върши... за него дали се нарича област от паметта в която пише/чете на зададен адрес или е периферия, от която пише и чете на зададен адрес... си е до нивото на абстракция което ползваш....
и все пак даже и да е форум да ми говориш "....за шибани филми за вампири"  не е редно
щото аз мога също да кажа дали си правил/писал нещо реално или си фантазираш че си писал....
си е като да си завреш метла в задника и да твърдиш, че си паун:!: -> по твое мнение си паун и даже може да си доволен от това ама за останалите дали е така?
И ако може да напомня, че файл се пише с "Й":!:
П.С.Реконструктор, съжалявам, че се разводни темата,ако искаш може да измислим нещо за иса...драсни някой ред ако още ти е актуално проблемчето
_________________ ... ако трети ден не ти се работи... това означава, че е сряда !
|
| Вто Апр 17, 2007 11:54 pm |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
@Реконструктор
понеже не можеш да вържиш директно данновите шини на PC и MCU - можеш да сложиш буфери на данновата шина (PC):
74HCT374 за PC->MCU
74HCT244 за MCU->PC
примерно порт А (вход) и В(изход) на MCU-то ги вързваш на 374 и 244
за избор на 374 & 244 от към писито ти трябва адресен дешифратор (може на 1 адрес .,. според R/W ) ...
ако добавиш още 374 и 244 - можеш да имаш и строб/статус регистри ...
можеш да закачиш и прекъсвания ...
как работи:
PC-то пише в 374 - на изходите му се извеждат данните и си стоят до следвация запис в него ... т.е MCU-то през порт A може да ги прочете когато си иска
MCU-то пише в 244 - PC-то може да си ги прочете само когато го адресира
ако имаш още един 374/244 можеш да набедиш по 1 бит за сигнализация ... има данни/реди/ ...
с прекъсвания естественно ще епо-добре вместо да спулираш ...
всъщност .. това (пак повтярям) си е ъъъъъ... същинско LPT
важно: когато 244 не е избран - си е в 3-то състояние (все едно го няма)
|
| Сря Апр 18, 2007 8:40 am |
|
 |
|
sthx
Ранг: Форумен бог
Регистриран на: Съб Юни 24, 2006 8:25 pm Мнения: 2292
|
В момент на вдъхновение и аз веднъж се напънах и направих една принципна схема за връзка на mcu и ISA. Добре все пак, че eбтусиазмът ми секна и не я реализирах. Действително се налага буфериране с 244 и 574, хубаво е да има и тригерчета, които да известяват процесора, че има нови данни (например чрез прекъсване). Сложнотии - хадуерни и софтуерни. За целта имаше на времето специализирани схеми, които вършеха тази работа - PIA. Не зная какво е предназначението на конкретното устройство и какви са изискванията за бързодействие, но идеята с в връзка по паралелен порт или даже по сериен е по-добра. По-лесна е за реализация и пускане, по- универсална и независима.
_________________ Две плюс две е приблизително равно на четири. Факт!
|
| Сря Апр 18, 2007 10:24 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
от софтуерна гледна точка връзка през мейлбокс е най-лесна за реализация (прост поинтер към масив).
единия вариант е дуал-порт памет, адресиране нейде в описания интервал
другия е с нормална памет и изчкаване, стига можеш да спираш "подчинения" процесор
по този начин, може и да му качваш програмата на процесора, ако е с рам
@рек, айде доразвий си идеята, да може и ние да повампирясаме малко  (DMA и приятели)
ПС: платките от цецо с какъв процесор са?
хубаво си говорим за DMA и интеръпт контролери, ама дали са интел-съвместими?
че има и една шибана концепция с A20, дето минава през клавиатурния контролер
ППС: винаги съм твърдял, че болния мозък, навързал чиповете на интел по този начин, е трябвало да го удушат още при раждането
|
| Сря Апр 18, 2007 10:54 pm |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
е айди сЯ - ако не беше интел да ви даде 4004 (първото MPU) - сега щяхме да си говорим за транзистори (... по списания и научни конф.) 
|
| Сря Апр 18, 2007 11:15 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Добре, в крайна сметка как да го накарам да изкара нещо на шината на данните. Пробвах това:
но няма ефект
|
| Чет Апр 19, 2007 11:05 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
В природата празно няма колега. Ако не беше Интел, щеше да е някой друг. 
|
| Чет Апр 19, 2007 11:14 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
0х220? ESS музика?
трябва да излиза, освен ако някой не го ограничава.
поне трябва да се клати IOW.
дай малко инфо за платка/процесор
|
| Чет Апр 19, 2007 11:14 pm |
|
 |
|
syscop
Ранг: Форумен бог
Регистриран на: Пет Юни 03, 2005 9:39 pm Мнения: 2277
|
Може да е 0x544 - 1348d, зависи как е настроено asm-то.
|
| Пет Апр 20, 2007 10:56 am |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Абе порта в случая няма особено значение, стига да не е закачено нещо на тоя адрес. Платката си има само един PC/104 конектор и реално всичко, което блъскаш в out трябва да излиза там, стига да не отива в COM или LPT. Ето това е нещото: http://www.emacinc.com/sbc_pc_compatible/sbc_456e.htm
|
| Пет Апр 20, 2007 11:19 am |
|
|