DATA TRANSFER WITH A DMA CONTROLLER



DATA TRANSFER WITH A DMA CONROLLER

 
1.        DMA(Direct Memory Acces)
Direct memory access (DMA) adalah suatu alat pengendali khusus disediakan untuk memungkinkan transfes blok data langsung antar perangkat eksternal dan memori utama, tanpa intervensi terus menerus dari prosesor.. Kontroler DMA melakukan fungsi yang biasanya dilakukan oleh prosesor pada saat mengakses memori utama (yang sering disebut RAM.



 Cara Kerja DMA
1.  CPU mengirimkan CPU data-data berikut ini ke DMA controller:
a.       Perintah read/write
b.      Alamat device yang akan diakses
c.       Alamat awal blok memori yang akan dibaca atau ditulis.
d.      Jumlah blok yang akan ditransfer.
      2.     CPU klien mengeksekusi program lain.
3.      DMA controller mengirimkan seluruh blok data (per satu word) langsung ke memori tanpa
melibatkan CPU)
4.      DMA controler mengirimkan interupt ke CPU jika telah selesai.
5.      DMA controler mengambil alih sistem bus sebanyak 1 siklus.
6.      DMA men-transfer satu word data
7.      Pengambil alihan bus oleh DMA bukan interrupt CPU tidak perlu menyimpan context
8.      CPU hanya tertunda sessaat satu siklus sebelum mengakses bus yaitu sebelum operan atau data diambil atau data ditulis diagram modul DMA


 Jalur Transfer DMA
Ada 3 langkah dalam transfer DMA
1.      Prosesor menyiapkan DMA prosesor Transfer dengan menyediakan data-data dari perangkat, operasi yang akan ditampilkan, alamat memori yang akan menjadi sumber, tujuan data, dan banyaknya byte yang akan ditransfer.
2.      Pengendali DMA memulai operasi dengan menyiapkan bus,menyediakan alamat, menulis, dan membaca data sampai seluruh blok sudah ditransfer.
3.      Pengendali DMA menginterupsi prosesor, dimana selanjutnya akan ditentukan tindakan berikutnya.
 DMA mempunyai  metode untuk transfer data.
     HALT atau Burst Mode DMA ialah DMA yang memegang kontroldari sistem bus dan menstransfer semua blok data dari memori ke single burst atau sebaliknya,
b.      CYCLE STEALING DMA pada metode ini mengikutsertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosesor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus.

REFERENSI:




 CARA KERJA HOLD DAN HLDA


Akses Memori Langsung
Interupsi menjamin tanggapan yang paling cepat dari proses pengendalian data pada I/O. Akan tetapi pelayanan pada alat masih diselenggarakan oleh perangkat lunak. Kecepatan digantikan oleh prosesor perangkat keras khusus yang disebut dengan Direct Memory Access Controller (DMAC). Sebuah DMAC adalah prosesor khusus yang dirancang untuk menyelenggarakan alih data berkecepatan tinggi antara memori dengan alat luar. Dalam akses memori langsung digunakan dua teknik untuk berhubungan dengan memori :
•Prosesor dihentikan atau ditangguhkan oleh DMAC. DMAC memegang pengendalian bus dan membiarkan alat I/O berhubungan langsung dengan memori.
•DMAC mencuri satu siklus memori dari mikroprosesor, memberinya kepada pengiriman data antara memori dan alat I/O.
DMAC adalah prosesor khusus yang memutuskan hubungan atau mengisolasi MPU dari bus-bus dan mengatur pengiriman yang diperlukan antara memori dan alat I/O. Gambar 22. menunjukkan diagram blok kerja DMAC.
Pada saat sistem bekerja, saklar pada posisi atas sehingga saluran terhubung dari mikroprosesor ke sistem memori dan peripheral. Untuk membaca file ke disk diperlukan sejumlah perintah ke disk controller, memerintahkan untuk mencari dan membaca blok data yang dari disk. Jika disk controller telah menemukan byte pertama dari blok data, disk controller mengirim sinyal DMA request (DREQ) ke DMAC. Jika DMAC tidak dalam terhalang maka DMAC mengirim sinyal hold request (HRQ) ke mikroprosesor melalui pin HOLD. Mikroprosesor menanggapi masukan ini dengan mengambangkan saluran/bus dan mengirim sinyal hold acknowledge (HLDA) ke DMAC. Jika DMAC menerima sinyal HLDA, akan mengirim sinyal untuk menghubungkan bus/saluran ke posisi DMAC.
Pada saat DMAC mengontrol saluran, ia mengirim alamat memori dimana byte pertama dari disk controller di tulis. Selanjutnya DMAC mengirim sinyal DMA acknowledge (DACK) ke disk controller untuk memberitahukan kesiapan mengeluarkan byte. Akhirnya DMAC mengaktifkan saluran MEMW* dan IOR* pada saluran kontrol.

REFERENSI:
http://revolusi-arman.blogspot.com/2008/10/mikroprosesor-input-output-unit.html


CARA KERJA CPU, I/O, S/IDAN MAIN MEMORY
CPU(Central Processing Unit)
CPU merupakan otak system computer . CPU terdiri dari dua bagian utama yaituunit kendali (control unit) dan yang kedua adalah unit aritmatika dan logika(Arithmetic and logic unit) serta beberapa simpanan (memory) beruku ran kecil yangdisebut register.
Kinerja / proses kerja:Saat data dan/atau instruksi dimasukkan ke processing-devices,pertama sekali diletakkan di RAM (melalui Input-storage). Apabilaberbentuk instruksi ditampung oleh Control Unit di Program-storage,namun apabila berbentuk data ditampung di Working-storage. Jika registersiap untuk menerima pengerjaan eksekusi, maka Apabila hasil pengolahan telah selesai, maka Control Unitakan mengambil hasil pengolahan di Accumulator untuk ditampungkembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai,maka Control Unit akan menjemput hasil pengolahan dari Working-storageuntuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage,hasil pengolahan akan ditampilkan ke output-devices.
 2.I/O (input dan Output)
Input Device (Alat Masukan)Adalah perangkat keras komputer yang berfungsi sebagai alat untuk memasukan data atau perintah ke dalam computer.Kinerja unit input : memasukkandatadari luar ke dalam mikroprosesor ,contohnya data yang berasal darikeyboardataumouse. 
Output Device (Alat Keluaran)Adalah perangkat keras komputer yang berfungsi untuk menampilkankeluaran sebagai hasil pengolahan data. Keluaran dapat berupa hard-copy (kekertas), soft-copy (ke monitor), ataupun berupa suara.
Kinerja  input dan output : menampilkan data, atau dengan kata lain untuk menangkap data yang dikirimkan oleh mikroprosesor, contohnya data yang akanditampilkan pada layarmonitoratauprinter. 
3.S/I (system Interconnection)
Fungsi : untuk menghubungan diantara ketiga elemen CPU - Main Memory -Input Output untuk disinkronisasikan dan dijalankan oleh komputer.Interkoneksi yang banyak digunakan sampai saat ini adalah system bus.Dalam arsitektur komputer, sebuah
adalah sebuah subsistem yangmentransfer data antar komponen komputer pada sebuah komputer atauantar komputer.Secara umum fungsi saluran bus dikategorikan dalam tigabagian : Address Bus, data bus, dan Control bus.
Berikut kinerja masing-masing bus : 1)
 Data busKinerja :memindahkan data antar modul dalam sistem computer yangbersifat bldirectional, artinya CPU dapat membaca dan menerima datamelalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 paralel.2)
Address Bus
 Kinerja : menandakan lokasi sumber ataupun tujuan pada prosestransfer data. Pada jalur ini, CPU akan mengirimkan alamat memori yangakan ditulis atau dibaca. Address bus biasanya terdiri atas 16, 20, 24, atau32 jalur paralel.3)
 Control BusKinerja : mengontrol penggunaan serta akses ke Data Bus danAddress Bus. terdiri dari 4 sampai 10 jalur parallel
4.Main memory
adalah memori yang memiliki kapasitas yang cukup besar yangmenampung semua instruksi dan data sebelum diproses CPU.Memori ini dibutuhkan karena CPU hanya dapat me-nyimpan instruksi dandata di
register 
yang ukurannya kecil.Main memory terdiri dari RAM dan ROM.RAM : memori yang berfungsi untuk menyimpan program yang kita olahuntuk sementara waktuROM : memori yang hanya bisa dibaca dan berguna sebagai penyediainformasi pada saat komputer pada saat dinyalakan.
Fungsi : media penyimpanan data yang berkaitan dengan CPU atau perangkatI/O.
Kinerja  cpu : menyimpan data dalam bentuk array yang disusun word atau byte.Setiap word atau byte mempunyai alamat tersendiri. Data yang disimpan padamemori utama ini bersifat volatile, artinya data yang disimpan bersifat sementaradan dipertahankan oleh sumber-sumber listrik, apabila sumber listrik dimatikanmaka datanya akan hilang

 

SISTEM  BUS

1.      PENGERTIAN BUS SYSTEM 
system bus atau bus system dalam arsitektur komputer merujuk pada bus yang digunakan oleh sistem komputer untuk menghubungkan semua komponennya dalam menjalankan tugasnya. Sebuah bus adalah sebutan untuk jalur di mana data dapat mengalir dalam komputer. Jalur –jalur ini digunakan untuk komunikasi dan dapat dibuat antara dua elemen atau lebih. Data atau program yang tersimpan dalam memori dapat diakses dan dieksekusi oleh CPU melalui perantara sistem bus. 

Pengertian bus adalah bagian dari sistem komputer yang berfungsi untuk memindahkan data antar bagian- bagian d lam sistem komputer. Data dipindahkan dari piranti masukan ke CPU, CPU ke memori, atau dari memori ke piranti keluaran. Bus meruppakan jalur komunikasi yang dibagi pemakai suatu set kabel tunggal yang digunakan untuk menghubungkan berbagai subsistem. Sistem bus adalah sebuah bus yang menghubungkan komponen-komponen utama komputer (CPU, Memori, I/O). Sistem bus adalah penghubung bagi keseluruhan komponen komputer dalam menjalankan tugasnya.
        Bus System dapat dibedakan atas :
1.      Data Bus ( Saluran Data )
2.      Address Bus ( Saluran Alamat )
3.      Control Bus ( Saluran Kendali )

JENIS –JENIS SISTEM BUS
Saluran bus dapat dipisahkan menjadi dua tipe umum, yaitu dedicated dan multiplexed. Suatu saluran bus dedicated secara permanen diberi sebuah fungsi atau subset fisik komponen- komponen komputer.
Sebagai contoh dedikasi fungsi adalah penggunaan alamat dedicated terpisah dan saluran data yang merupakan suatu hal yang umum bagi bus. Namun, hal ini bukanlah hal yang penting. Misalnya, alamat dan informasi data dapat ditransmisikan melalui sejumlah saluran yang sama dengan mengggunakan saluran address valid control.
Struktur sistem bus
a)      Data bus ( Saluran Data )
Saluran data memberikan lintasan bagi perpindahan data antara dua modul sistem. Saluran ini secara kolektif disebut bus data. Umunya bus data terdiri dari 8, 16, 32 saluran.
b)      Address Bus ( Saluran Alamat ) 
1.      Saluran alamat digunakan untuk menandakan sumber atau tujuan data pada bus data. Misalnya ,          bila CPU akan membaca sebuah word dat adari memroi, maka CPU akan menaruh alamt word            yang dimaksud pada saluran alamat.
2.      Digunakan untuk mengirinkan alamat word pada memori yang akan diakses CPU.
3.      Digunakan untuk saluran alamat perangkat modul komputer saat CPU mengakses suatu modul.
4.      Semua peralatan yang terhubung dengan sistem komputer, agar dapat diakses harus memiliki alamat.
Contoh : mengakses port I/O, maka port I/O harus memiliki alamat hardwarenya.
c)      Control Bus ( Saluran Control )
Saluran kontrol digunakan untuk mengontrol akses ke saluran alamat dan penggunaan data. Karena data dan saluran alamat dipakai bersama oleh seluruh komponen, maka harus ada alat unruk mengintrol penggunaanya.
A.      Berikut ini dalah fingsi-fungsi yang terdapat pada control bus ( saluran control ):
1.      Digunkan untuk menspesifikasi sumber dan tujuan data pada bus data.
2.      Digunakan untuk mengirim alamat word pada memori yang akan diakses CPU.
3.      Digunakan untuk saluran almat perangkat modul komputer saat CPU mengakses suatu modul.
4.      Semua peralatan yang terhubung dengan sistem komputer, agak dapat diakses harus memiliki alamat. Contoh : mengakses port I/O, maka port I/O harus memiliki alamt hardware-nya.
Di sistem komputer berbasis mikroprosesor, terdapat 3 jalur yang menjadi tempat mengalirnya proses.
1.      Bus Data yang berfungsi mengalirkan data dari/ke mikroprosesor
2.      Bus Alamat/ Address yang berfungsi mengalamati suatu proses dari/ke memori atau I/O
3.      Bus Kontrol yang berfungsi mengatur intruksi yang terjadi dari/ ke mikroprosesor.



Sumber:










Komentar

Postingan populer dari blog ini

DMA (Direct Access Memory)

Pengertian dan Contoh dari Batch System,Critical Section,Process Control Blok,Distributed Processing,HandHeld,dan Thread.