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

 
 
> Связка ISA + FIFO
8301
сообщение May 3 2005, 10:51
Сообщение #1





Группа: Новичок
Сообщений: 12
Регистрация: 17-02-05
Пользователь №: 2 697



Здравствуйте, уважаемые!

Занимаюсь одной интересной разработкой (я студент 3-го курса), и столкнулся с задачей приема/передачи данных между 8-разрядной шиной ISA и микроконтроллером DS80C400 (семейство 8051). Никаких зацепок, как реализовать аппаратно нет, опыта тоже sad.gif единственно что известно, точно нужно FIFO, как буфер. посоветуйте, пожалуйста, подкиньте идей, поделитесь опытом, как можно проще и надежней это реализовать.

Заранее благодарю, отвечу на любые вопросы по теме.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
8301
сообщение May 12 2005, 11:34
Сообщение #2





Группа: Новичок
Сообщений: 12
Регистрация: 17-02-05
Пользователь №: 2 697



Уважаемые, посмотрите пожалуйста на прикрепленное изображение. Задача в следующем: необходимо по шине ISA от мастер-устройства передавать для обработки данные подчиненному (в нашем случае МК 51-й) [на шине кроме нашего МК висят и другие устройства]. данные передаются через FIFO-память. мне непонятно, каким образом, схемотехнически можно определить, что данные на шине ISA предназначены для нашего устройства, иными словами, как можно обработать адрес, выставленный на шину ISA и определить, что обращаемся именно к нему.

буду благодарен за совет. и особенно благодарен, если ответ продублируете на ttl@mail2000.ru. спасибо.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Genn
сообщение May 14 2005, 18:11
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 48
Регистрация: 14-04-05
Пользователь №: 4 146



Цитата(8301 @ May 12 2005, 14:34)
Уважаемые, посмотрите пожалуйста на прикрепленное изображение. Задача в следующем: необходимо по шине ISA от мастер-устройства передавать для обработки данные подчиненному (в нашем случае МК 51-й) [на шине кроме нашего МК висят и другие устройства]. данные передаются через FIFO-память. мне непонятно, каким образом, схемотехнически можно определить, что данные на шине ISA предназначены для нашего устройства, иными словами, как можно обработать адрес, выставленный на шину ISA и определить, что обращаемся именно к нему.
*


Прилагаю функциональную схему для решения вашей задачи. Эта схема может быть реализована как на ПЛИС (достаточно простых и не быстрых с поддержкой уровней ТТЛ 5В и выходным током 12mA), так и
на дискретной логике семейств 1533 (74ALSxxx), 1531 (74Fxxx). Из ПЛИС фирмы Хilinx подойдут семейства 4000E, Spartan, 9500.
По алгоритму работы хотелось бы добавить следующее:
1. Схема реализует алгоритм программного ввода-вывода, т.е. чтение даных производится по команде.
2. Для управления процессами записи-чтения в один из портов чтения следует вывести статусную информацию FIFO (флаги).
3. Если есть желание избежать постоянный цикл опроса статуса FIFO, можно воспользоваться установкой прерывания по заполнении FIFO чтения (например на 1/2 или 3/4) и по освобождению FIFO записи (например более, чем на 1/2).
Естественно в обработчике прерывания следует производить чтение порта, отображающего статус FIFO для определения дальнейших действий (запись или чтение).
4. В качестве адресов можно испольовать диапазон 300\h...320\h (или же другой, но его надо предварительно проверить хотя бы по справочным данным стандартного распределения адресов).
5. Использовать пространство памяти можно, но это усложнит задачу, т.к. потребует настройку системы (в DOS мы это делали, но это было очень давно), а использовать DMA на ISA тоже не рекомендую - потеряете много времени на программирование контроллера DMA (этим сейчас почти никто не занимается).
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 22:33
Рейтинг@Mail.ru


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