Într-un computer, controlerul de disc este un circuit care permite unității centrale de procesare (CPU) să comunice cu alte discuri de computer, cum ar fi o dischetă, un hard disk sau un alt tip de unitate de disc. Controlerele de disc utilizează interfețe precum Advanced Technology Attachment (ATA) și Integrated Drive Electronic (IDE), care sunt utilizate cel mai frecvent în computerele personale (PC) și Small Computer System Interface (SCSI), care este folosit cel mai frecvent în computerele din „ clasa întreprindere”. Operațiunile de bază ale controlerelor de disc includ variații ale operațiunilor de citire și scriere. Sistemul de operare (OS) al controlerului folosește blocuri numerotate, în timp ce discul utilizează alți factori, inclusiv cilindrul fizic, numerele de sector și pista pentru a funcționa. Un driver de dispozitiv efectuează maparea.
Interfețele obișnuite ATA și IDE pe care le folosesc controlerele de disc funcționează prin seturi de registre, care sunt situate în diferite puncte ale adresei de intrare/ieșire (I/O). Aceste registre sunt utilizate pentru specificarea informațiilor despre cererile I/O separate. La scrierea „registrului de comandă” al dispozitivului, controlerul de disc începe efectuarea unei operațiuni solicitate. Anumite transferuri de date au loc între memoria unui computer și discul acestuia atunci când bitul desemnat „cererea de date” se setează într-un registru de stare. Acest lucru se întâmplă în operațiunile de scriere ale unui controler de disc la scurt timp după trimiterea unei comenzi, iar în operațiunile de citire, o comandă de întrerupere indică disponibilitatea datelor.
Controlerele de disc au anumite registre de controler care îndeplinesc diferite funcții. Într-un registru, octeții de date sunt citiți și scrieți, dar comenzile sunt setate să fie citite sau scrise într-un registru complet diferit. Un alt registru este „registrul de erori” care produce erori de cod. Două registre funcționează împreună și indică numărul cilindrului unui controler de disc, în timp ce un alt registru indică un număr de unitate sau cap. Ultimele două registre sunt folosite pentru a indica numărul de sectoare de citit/scris și numărul de sector.
Există diferite tipuri de controler de disc care pot fi o componentă a unui computer. Un tip de controler de disc este controlerul de matrice de discuri, care gestionează componenta unității de disc fizice și o prezintă unui computer în termeni de unități logice. Implementează hardware-ul Redundant Array of Independent Disks (RAID) și adesea poartă numele de controller RAID. Hard Disk Controller (HDC) standard este o interfață care permite computerelor să citească/scrie informații pe un hard disk (HD). Un controler de disc criminalistic este un HDC care este specializat pentru a obține acces numai pentru citire de la unitățile HD ale computerelor fără a deteriora conținutul unității sale.