Жeлезный век!

Тема в разделе "WASM.BEGINNERS", создана пользователем Shadovv13, 27 июл 2008.

  1. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Shadovv13
    Статья ужастная она совсем не описывает контроллер. Возьми IO.PRT или из современного Кулаков В. Программирование на аппоратном уровне.

    http://homepage0.icehard.net/files/hardware_specs/CONTROLLERS/pic8259.pdf


    Первый контроллер прерываний 8259А использует порты 20h-21h второй 8259А использует 0A0h-0A1h
    Второй контроллер сидит на второй линии(считая от 0) первого контроллера.
     
  2. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Там все верно. Правда нет описания новых устройств.
     
  3. Shadovv13

    Shadovv13 Андрей

    Публикаций:
    0
    Регистрация:
    27 июл 2008
    Сообщения:
    65
    Адрес:
    Украина
    Прочитал IO.PRT ище раз. Вобщем все понятно, но, во время прерывания на шыну даных выдаетса команда CALL и младшый-старшый байты адреса.

    Все ето хорошо, но как изменить ответ. Например на байт содиржащий номер линии вызова.
     
  4. Shadovv13

    Shadovv13 Андрей

    Публикаций:
    0
    Регистрация:
    27 июл 2008
    Сообщения:
    65
    Адрес:
    Украина
    Внекоторых схемах, например в сочитании с Z80 (Z80 в режыме прерывания IM2) нашину даних устанавливаетса 8-бит мбайт адреса который составляетса с регистром I сбайт адреса и указывает на програму обработки прерывания.
     
  5. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Shadovv13
    Команда CALL выдается в режиме совместимости с 80/85. В режиме 86/88 выставляется номер прерывания Int. Т.е Номер записанный в контроллер плюс номер входа с которого пришло прерывание. А процессор ужа сам решает что делать с этим номером. он вызывает прерывание по адрессу из таблице прерываний.
    Когда мы получаем управления разумеется инициирован уже 86/88 режим и каскадный

    Код (Text):
    1.         MOV    DX, 20h     // Ведущий
    2.         MOV    AH, 08h    //Номер начального прерывания для видущего контроллера 08 стандартное
    3.  
    4.         MOV     AL,11h     //ICW1 бит 0=1 сигнализирунт, что будет послон ICW4
    5.         OUT     DX,AL
    6.         MOV     AL,AH      //ICW2  - начальный номера прерываний биты 2-0=0.
    7.         INC      DX
    8.         OUT     DX,AL
    9.         MOV     AL,4       //ICW3 ведущий 00000100 -  ведомы подключен ко второй линии
    10.         OUT     DX,AL
    11.         MOV     AL,1       //ICW4 режим 86/88  
    12.         OUT     DX,AL
    13.  
    14.         MOV    DX, 0A0h     // Ведомый
    15.         MOV    AH, 70h    //Номер начального прерывания для ведомого контроллера 70h стандартное
    16.  
    17.         MOV     AL,11h     //ICW1 бит 0=1 сигнализирунт, что будет послон ICW4
    18.         OUT     DX,AL
    19.         MOV     AL,AH      //ICW2  - начальный номера прерываний биты 2-0=0.
    20.         INC     DX
    21.         OUT     DX,AL
    22.         MOV     AL,2       //ICW3 ведомый,  ведомы подключен ко второй линии
    23.         OUT     DX,AL
    24.         MOV     AL,1       //ICW4 режим 86/88  
    25.         OUT     DX,AL
    Писал прямо сдесь решил подкоректировать. Так-то контроллер не прехотливый.

    PS. Думаю пришло время написать стать про систему прерываний.
     
  6. Shadovv13

    Shadovv13 Андрей

    Публикаций:
    0
    Регистрация:
    27 июл 2008
    Сообщения:
    65
    Адрес:
    Украина
    Огромное спасибо за разиснение!!! :lol:

    Ну а стартовая инициализацыя - дело БИОСа, и пока мне не интересна!!!



    P.S. Нус пришло время хард-теста!!!
     
  7. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Shadovv13

    Используетя только реализуется через захват шины. Другими словами тот DMA что описан класически ничего общего с IDE DMA не имеет.

    Каменный век. Сейчас APIC всем рулит.
     
  8. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Вообще возьми http://miscellaneous.newmail.ru/ сорцы и никого не слушай. Собственно можешь поверить на слово - изучив сорцы в данном случае ты будешь на голову выше тех кто читает описания :) Описание это хорошо, но столько неточностей что ..
     
  9. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    PROFi
    Это смотря с каким IDE если со старым ISA, то и DMA старый.
    Если с PCI IDE то там есть PCI DMA - а он от ISA DMA отличается координально. Конечно можно задействовать ISA DMA для PCI IDE, но это только для совместимости. и так никто не делает так как неудобно и медленнее.

    APIC лучше стоит только с ним разобраться.
    ну да, недаром же процессор кирпичом называют.
     
  10. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Pavia

    (см. название темы) Жeлезный век != Каменнный век. Можно обложиться кучей литературы вокруг себя, и пытаться прочитать ее, но львиная доля времени будет потрачена на "своеобразие и неординарность" автора написавшего бук. Можно спорить и доказывать свою правоту, только в споре никогда не рождается истина - это лишь трата времени. Раньше выходили 1-2 книжки по компьютерной тематике - сейчас тысячи и самое интересное во всем этом только одно - АВТОР КНИГИ САМ РАЗОБРАЛСЯ В ТОМ ИЛИ ИНОМ ВОПРОСЕ ПРОАНАЛИЗИРОВАВ (ЧАЩЕ ОДИН РАЗ) СОРЦЫ КОДА ИЛИ СТАНДАРТ И РЕШИВ ЗАКРЕПИТЬ МАТЕРИАЛ ОПИСЫВАЕТ СВОИ "ПЕРЕЖИВАНИЯ" В КНИГЕ. Другими словами - читая такие книги никогда не подымишься по уровню над автором книги, стать профессионалом можно только РАБОТАЯ над собой, а не читая "художественные" книжки. Да не спорю - есть единичные книги типа Д.Кнута ... В целом выделить принципы алгоритма работы, определить значение технологии дано не каждому, а описать в сотый раз контроллер APIC или комманды (S)ATA HDD прочитав спецификацию - стоит ли игра свеч :dntknw:
     
  11. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.792
    PROFi
    Д.Кнут пишет свой трехтомник на протяжении тридцати лет и читать его без специфической подготовки не рекомендуется:) во все времена будет потребность и в книгах для начинающих по типу мурзилки - ксекапа и в книгах узконаправленных типа спецификаций
    вспоминаешь другого автора
    Бум компьютерной литературы - это не повод к призыву "не читать ничего!"
     
  12. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    PROFi
    А где он сотый? Тут и первого раза нет. А пишу я для своего закрепления, это верно.