3 responses

  1. Ami
    August 8, 2015

    It’s very helpful to me..but i need one answer why programmed io is
    simple to programmed. If you know this then replay me as soon as possible..

    Reply

  2. Hane
    July 18, 2018

    Very educative
    But now!!how does the DMA work??

    Reply

  3. Paul
    November 22, 2018

    DMA is actually about as old as PIO. Back in the late 1970’s when I was working on minicomputers, DMA was the preferred method for moving large amounts of data. However early PC’s were pretty feature-poor and may not even have had any DMA logic, I don’t know.

    In PIO, the CPU has to supply the address of the device or memory location it is writing to, and then the data that it is writing. If reading instead, it just supplies the address to read. It can only write or read one byte or word at a time.

    In DMA, the CPU first uses PIO to write some registers that set up the DMA, such as the memory (source or destination) address register, the byte count register, and a control register. Then it (typically) starts the DMA by turning on a bit in the control register. The transfer then completes without any more attention from the CPU. The byte count register decrements every time a byte comes through, and the address register increments. When the byte count reaches zero, the DMA automatically stops, and an interrupt is generated to inform the CPU that the transfer is complete.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top
mobile desktop