реклама на сайте
подробности

 
 
> Внешний контроллер прерываний
prottoss
сообщение Mar 5 2007, 17:11
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Hi All!

Есть ли в природе внешние контроллеры прерываний типа 8259, только, может, более современные. Есть необходимость использовать таковой с ATmega128, т.к. практически все внешние линии INTx прерываний задействованны под другие функции


--------------------
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Mar 5 2007, 20:10
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(prottoss @ Mar 5 2007, 16:11) *
Есть ли в природе внешние контроллеры прерываний типа 8259, только, может, более современные. Есть необходимость использовать таковой с ATmega128, т.к. практически все внешние линии INTx прерываний задействованны под другие функции

Мил человек, ну почитайте PDF хоть по диагонали на 8259 и почие внешние контролеры. Это КОНТРОЛЛЕРЫ, которые ЗАХВАТЫВАЮТ ШИНУ ПРОЦЕССОРА и выставляют на нее команду чтения области векторов прерывания. Ну и причем здесь ATmegа???


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
prottoss
сообщение Mar 5 2007, 20:58
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(zltigo @ Mar 6 2007, 00:10) *
Цитата(prottoss @ Mar 5 2007, 16:11) *

Есть ли в природе внешние контроллеры прерываний типа 8259, только, может, более современные. Есть необходимость использовать таковой с ATmega128, т.к. практически все внешние линии INTx прерываний задействованны под другие функции

Мил человек, ну почитайте PDF хоть по диагонали на 8259 и почие внешние контролеры. Это КОНТРОЛЛЕРЫ, которые ЗАХВАТЫВАЮТ ШИНУ ПРОЦЕССОРА и выставляют на нее команду чтения области векторов прерывания. Ну и причем здесь ATmegа???
На сколько я знаю, ни какого захвата шины они не производят, (я про 8259), имеют 8-бит шину данных, сигналы RD/WR/CS/A0 для общения выход прерывания INT. Для считывания вектора существует вход INTA. По отрицательным стробам от МК по этой линии, с линий данных 8253 считывается вектор и код команды для 8080. Какой захват шины то???


--------------------
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 5 2007, 23:58
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(prottoss @ Mar 5 2007, 21:58) *
Цитата(zltigo @ Mar 6 2007, 00:10) *
Цитата(prottoss @ Mar 5 2007, 16:11) *

Есть ли в природе внешние контроллеры прерываний типа 8259, только, может, более современные. Есть необходимость использовать таковой с ATmega128, т.к. практически все внешние линии INTx прерываний задействованны под другие функции

Мил человек, ну почитайте PDF хоть по диагонали на 8259 и почие внешние контролеры. Это КОНТРОЛЛЕРЫ, которые ЗАХВАТЫВАЮТ ШИНУ ПРОЦЕССОРА и выставляют на нее команду чтения области векторов прерывания. Ну и причем здесь ATmegа???
На сколько я знаю, ни какого захвата шины они не производят, (я про 8259), имеют 8-бит шину данных, сигналы RD/WR/CS/A0 для общения выход прерывания INT. Для считывания вектора существует вход INTA. По отрицательным стробам от МК по этой линии, с линий данных 8253 считывается вектор и код команды для 8080. Какой захват шины то???


По-моему zltigo прав. На сколько я помню 8259(кр580вн59) и 8259А (кр1810вн59а) банально отключают озу программы и выставляют код команды перехода по прерыванию. А именно RSTx её код был до 0fh. Или код входа в п/п типа 0cdh xxh xxh. Начальный адрес задавался. А вектора шли с определённым шагом. Кстати похоже работал и ПДП типа 8257. Да и ещё один не очень приятный момент для Вас. 8259 не имел приоритетов.

Теперь по сути вопроса. Такую структуру контроллера прерываний в принципе не сложно создать самому. Достаточно поставить элемент ИЛИ ну и регистр защёлкивающий состояние в момент его вызова. Регистр читается с порта либо по шине. Таким образом Вы можете расширить базу векторов прерываний.
Как сделать контроль приоритетов прерываний я в принципе описывал кратко в статье на http://nix-06.nm.ru/ и где-то здесь мы спорили с defunct.

Кстати в этой теме вообще нет ничего невозможного. Так я к примеру создавал систему с тремя МП работающими на общей памяти. Реализовывал работу 8515 с динамической памятью. Странично расширял ОЗУ для 8051 до 1Мб. Вполне представляю как включить внешний сопроцессор. Возможно и использование ПДП. (Видел в инете схему, сварганенную японцем для прямого доступа к графическому контроллеру)

А вообще если разобраться все идеи - банальны. (я о 8259, 8257, 8087). Когда смотришь на принципы обращения к полному ОЗУ из-под i8086, то сразу становится понятной схема контроллера память в самом CPU к примеру. Боже! До чего банально. Принцип реализуется одной микросхемой сумматора. smile.gif
Go to the top of the page
 
+Quote Post
prottoss
сообщение Mar 6 2007, 11:27
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(SasaVitebsk @ Mar 6 2007, 03:58) *
По-моему zltigo прав. На сколько я помню 8259(кр580вн59) и 8259А (кр1810вн59а) банально отключают озу программы и выставляют код команды перехода по прерыванию.
Возможно прав, но судя по временным диаграмам из даташита на i8259 Intel нет. Сам я с этим контроллером не сталкивался, только читал про него smile.gif Конечно, не лучший вариант... Но я спрашивал не именно про него а про аналогичные современные. Возможно, я не совсем ясно и правильно поставил вопрос. Хотелось бы иметь девайс, который бы генерил прерывание и хранил бы в своих регистрах номер прерывания etc. Обработчик прерывания в МК обращался бы к контроллеру, считывал бы спокойно что ему надо из внутренних регистров и решал бы, что делать дальше.

Цитата(Alex_Pol @ Mar 6 2007, 08:43) *
Цитата(Nanobyte @ Mar 5 2007, 23:01) *

Да приладить то как раз можно.

Не спорю. Всё можно приладить. smile.gif Но выйдет не кузяво. На ПЛИСене, наверное, будет совсем красиво, но я с ними дело не имел. Посему, решал бы проблему с помощью ещё одного контроллера.
Да, если реализовать на МК, будет быстро по времени реализации и не быстро по времени работы такого контроллера smile.gif . На ПЛИС заманчиво, к тому же в нее можно до кучи запихать все остальные мелкосхемы относящиеся к шине (у меня это регистр младшего байта адреса и дешифратор выборки чипов, висящих на шине), но я тоже, пока, с ПЛИСами не общался плотно


--------------------
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- prottoss   Внешний контроллер прерываний   Mar 5 2007, 17:11
- - Alex_Pol   Цитата(prottoss @ Mar 5 2007, 16:11) Hi A...   Mar 5 2007, 17:36
|- - prottoss   Цитата(Alex_Pol @ Mar 5 2007, 21:36) Цита...   Mar 5 2007, 17:39
- - GDI   Новые меги имеют прерывания на ВСЕХ ногах, наприме...   Mar 5 2007, 19:08
|- - Dopler   Цитата(GDI @ Mar 5 2007, 19:08) Новые мег...   Mar 5 2007, 19:15
|- - prottoss   Цитата(GDI @ Mar 5 2007, 23:08) Новые мег...   Mar 5 2007, 19:16
|- - prottoss   Цитата(zltigo @ Mar 6 2007, 00:10) Цитата...   Mar 5 2007, 20:43
|- - tag   Цитата(zltigo @ Mar 5 2007, 20:10) Цитата...   Mar 7 2007, 13:26
- - bomick   Цитата(prottoss @ Mar 5 2007, 17:11) Hi A...   Mar 5 2007, 21:46
- - Alex_Pol   Вот описания работы программируемого контроллера п...   Mar 5 2007, 22:41
|- - Nanobyte   Цитата(Alex_Pol @ Mar 5 2007, 22:41) ... ...   Mar 6 2007, 00:01
|- - SasaVitebsk   Цитата(Nanobyte @ Mar 6 2007, 01:01) Да п...   Mar 6 2007, 00:14
|- - Alex_Pol   Цитата(Nanobyte @ Mar 5 2007, 23:01) Да п...   Mar 6 2007, 04:43
- - SasaVitebsk   Цитата(prottoss @ Mar 6 2007, 12:27) Хоте...   Mar 6 2007, 12:28
|- - prottoss   Цитата(SasaVitebsk @ Mar 6 2007, 16:28) П...   Mar 6 2007, 12:49
|- - Dog Pawlowa   Про захват шины загнули, конечно... Сигнал INTA ра...   Mar 6 2007, 13:15
|- - prottoss   Цитата(Dog Pawlowa @ Mar 6 2007, 17:15) П...   Mar 6 2007, 14:01
|- - muravei   Цитата(Dog Pawlowa @ Mar 6 2007, 13:15) И...   Mar 6 2007, 15:06
||- - m16   Цитата(muravei @ Mar 6 2007, 15:06) А бер...   Mar 6 2007, 15:15
|||- - Dog Pawlowa   Цитата(m16 @ Mar 6 2007, 16:15) Цитата(mu...   Mar 6 2007, 15:59
|||- - Nanobyte   Цитата(Dog Pawlowa @ Mar 6 2007, 15:59) ....   Mar 6 2007, 17:00
||- - prottoss   Цитата(muravei @ Mar 6 2007, 19:06) Цитат...   Mar 6 2007, 15:30
||- - Alex_Pol   Цитата(prottoss @ Mar 6 2007, 14:30) Пода...   Mar 6 2007, 16:22
|- - SasaVitebsk   Цитата(Dog Pawlowa @ Mar 6 2007, 14:15) П...   Mar 6 2007, 20:42
||- - Dog Pawlowa   Цитата(SasaVitebsk @ Mar 6 2007, 21:42) Ц...   Mar 7 2007, 11:40
||- - SasaVitebsk   Цитата(Dog Pawlowa @ Mar 7 2007, 12:40) Ц...   Mar 7 2007, 13:21
||- - Dog Pawlowa   Цитата(SasaVitebsk @ Mar 7 2007, 14:21) 1...   Mar 7 2007, 16:51
|||- - Alex_Pol   Цитата(Dog Pawlowa @ Mar 7 2007, 15:51) Б...   Mar 7 2007, 17:22
|||- - m16   Цитата(Alex_Pol @ Mar 7 2007, 17:22) А эт...   Mar 7 2007, 17:31
|||- - _Bill   Цитата(Alex_Pol @ Mar 7 2007, 17:22) А эт...   Mar 7 2007, 17:52
||- - prottoss   Цитата(SasaVitebsk @ Mar 7 2007, 17:21) 2...   Mar 8 2007, 15:58
||- - SasaVitebsk   Цитата(prottoss @ Mar 8 2007, 16:58) Цита...   Mar 8 2007, 16:37
|- - _Bill   Цитата(Dog Pawlowa @ Mar 6 2007, 13:15) П...   Mar 7 2007, 17:12
|- - SasaVitebsk   Последним постом вы сами себя и опровергаете. Кома...   Mar 7 2007, 21:49
|- - _Bill   Цитата(SasaVitebsk @ Mar 7 2007, 21:49) П...   Mar 9 2007, 17:03
|- - SasaVitebsk   Цитата(_Bill @ Mar 9 2007, 18:03) Цитата(...   Mar 9 2007, 22:59
|- - mse   Цитата(SasaVitebsk @ Mar 9 2007, 22:59) Т...   Mar 10 2007, 13:15
|- - _Bill   Цитата(SasaVitebsk @ Mar 9 2007, 22:59) В...   Mar 10 2007, 14:48
- - kv_addr   Если существует определенная детерминированность и...   Mar 6 2007, 16:59
|- - prottoss   Цитата(kv_addr @ Mar 6 2007, 20:59) Если ...   Mar 6 2007, 17:22
|- - kv_addr   Цитата(prottoss @ Mar 6 2007, 18:22) Прер...   Mar 6 2007, 18:21
|- - prottoss   Цитата(kv_addr @ Mar 6 2007, 22:21) Цитат...   Mar 6 2007, 18:39
- - GDI   Так а чем тогда мега 1280/1281/... не катит?   Mar 6 2007, 18:52
|- - prottoss   Цитата(GDI @ Mar 6 2007, 22:52) Так а чем...   Mar 6 2007, 19:01
- - aesok   Цитата(prottoss @ Mar 5 2007, 17:11) Hi A...   Mar 6 2007, 18:54
- - kamedi_clab   Цитата(prottoss @ Mar 5 2007, 17:11) Hi A...   Mar 6 2007, 19:19
|- - prottoss   Цитата(kamedi_clab @ Mar 6 2007, 23:19) м...   Mar 6 2007, 19:33
- - SasaVitebsk   Критикуйте.   Mar 6 2007, 21:49
|- - =GM=   Цитата(SasaVitebsk @ Mar 6 2007, 18:49) К...   Mar 7 2007, 02:10
|- - upc2   Цитата(SasaVitebsk @ Mar 6 2007, 21:49) К...   Mar 7 2007, 12:33
- - Alex_Pol   Дык, ног свободных у prottossа, в смысле, у его ме...   Mar 7 2007, 00:20
|- - aesok   Чего-то я prottossа не понимаю. Вместо 128 меги по...   Mar 7 2007, 00:31
||- - Dopler   Цитата(aesok @ Mar 7 2007, 00:31) Чего-то...   Mar 7 2007, 08:22
||- - prottoss   Цитата(aesok @ Mar 7 2007, 04:31) Чего-то...   Mar 7 2007, 14:53
||- - klop   Цитата(prottoss @ Mar 7 2007, 14:49) Я во...   Mar 7 2007, 15:01
||- - Dopler   Цитата(prottoss @ Mar 7 2007, 14:53) Во п...   Mar 7 2007, 16:09
||- - tag   [quote name='tag' post='220658' da...   Mar 9 2007, 10:20
|- - SasaVitebsk   Цитата(Alex_Pol @ Mar 7 2007, 01:20) Дык,...   Mar 7 2007, 00:33
- - beer_warrior   ЦитатаСамая дешевая (и маленькая) плис Altera буде...   Mar 7 2007, 10:28
- - beer_warrior   ЦитатаВсе это можно заменить 8 диодами и 1 конденс...   Mar 7 2007, 12:55
|- - upc2   Цитата(beer_warrior @ Mar 7 2007, 12:55) ...   Mar 9 2007, 08:49
- - Alex_Pol   Я бы решал так. Тинька 2313. В цикле опрашиваю пор...   Mar 7 2007, 15:03
|- - klop   Цитата(Alex_Pol @ Mar 7 2007, 15:03) Я бы...   Mar 7 2007, 15:05
|- - Alex_Pol   Цитата(klop @ Mar 7 2007, 14:05) Довольно...   Mar 7 2007, 15:21
- - SasaVitebsk   Так об этом и был спор. Дело в том, что уже в 8259...   Mar 10 2007, 19:44


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 12:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01607 секунд с 7
ELECTRONIX ©2004-2016