Minggu, 29 Maret 2020

Distributed Control System



Distributed Control System atau biasa disingkat dengan DCS adalah sebuah control system yang biasa digunakan oleh sistem manufaktur dimana DCS mampu menghimpun dan mengakuisisi data sehingga dari data tersebut dapat dilakukan pengontrolan berdasarkan informasi yang di terima, dimana kontroller disebar atau didistribusikan ke masing-masing plant yang terhubung ke sistem DCS.

DCS secara umum terdiri dari digital controller terdistribusi yang mampu melakukan pengaturan 1-256 loop atau lebih dalam satu control box. Peralatan I/O dapat diletakan menyatu dengan kontroler atau dapat juga diletakkan secara terpisah kemudian dihubungkan dengan jaringan.

Sistem DCS dirancang dengan prosesor redundant untuk meningkatkan kehandalan sistem. Untuk mempermuudah dalam penggunaan, DCS sudah menyertakan tampilan atau grafis kepada user dan software untuk konfigurasi control. Hal ini akan memudahkan user dalam perancangan aplikasi. DCS dapat bekerja untuk satu atau lebih workstation dan dapat dikonfigurasi di workstation dan/atau PC secara offline. Komunikasi dapat dilakukan melewati jaringan melalui kabel atau fiber optic.

Fungsi DCS

DCS memiliki beberapa fungsi, diantaranya adalah:
  1. Sebagai alat untuk melakukan kontrol suatu loop sistem dimana satu loop dapat mengerjakan beberapa proses control.
  2. Sebagai pengganti alat control manual dan otomatis yang terpisah-pisah menjadi satu kesatuan sehingga lebih mudah untuk pemeliharaan dan penggunaannya.
  3. Sarana pengumpul dan pengolah data agar didapat output proses yang tepat.

Cara Kerja DCS 

DCS digunakan sebagai alat kontrol suatu proses loop. Loop System terdiri dari:
  1. Alat pengukur (Sensor Equipment)
  2. Alat control untuk pengaturan proses (Controller)
  3. Alat untuk aktualisasi (Actuator)
DCS terhubung dengan sensor dan actuator serta menggunakan setpoint untuk mengatur aliran material dalam sebuah plant/proses. Sebagai contoh, pengaturan setpoint control loop yang terdiri dari sensor tekanan, controller dan control valve. Pengukuran tekanan atau aliran ditransmisikan ke kontroler melalui I/O device. Ketika pengukuran variabel tidak sesuai dengan setpoint, maka kontroler memerintahkan actuator untuk membuka atau menutup sampai aliran proses mencapai set point yang diinginkan.

Komponen Pada DCS

Secara garis besar, Distributed Control System memiliki tiga komponen utama, yaitu:

  • Operator Station yaitu tempat dimana operator dapat mengamati proses yang sedang terjadi dan mengolah data proses yang didapat. Berupa komputer biasa yang dapat mengambil data dari control station.
  • Control Module yaitu bagian yang utama pada DCS. Control module berfungsi sebagai pusat kontrol dari seluruh pengendalian proses. Berbentuk blackbox yang terdapat pada lemari atau kabinet dan dapat ditemui di control room.
  • I/O Module merupakan penghubung antara operator station dan control station, selain itu juga dapat dimanfaatkan untuk interface-interface lain. Berfungsi menangani input dan output dari suatu nilai proses, mengubah sinyal dari digital ke analog dan sebaliknya. 
 

DCS Pada Power Plant 

 


Mengenali sistem distribusi control sistem pada power plant, misalnya untuk PLTU. DCS (distributed control system) adalah sebuah sistem yang terintegrasi menggunakan kontroler, protokol komunikasi, dan komputer yang dapat memudahkan user untuk mengontrol peralatan-peralatan yang menggunakan sinyal analog maupun digital dari control room. jadi, ketika ingin mengontrol sebuah valve, tidak hanya kontrol on-off, tetapi juga berapa besar bukaannya semisal dari 0 – 100 persen bisa dilakukan dengan mudah. DCS system, pada power plant, hanya dibagi tiga bagian yaitu bagian boiler, turbin, dan auxiliary sistem (fuel and water).

Programmable Logic Controller (PLC) dan kontroler lainnya terletak di bawah DCS. Adapun panel-panel kontrol yang biasa disebut FCS (Field control station), dan Posisi MCC adalah pada kontrol panel. Jadi MCC sebagai panel kontrol untuk motor, ketika ingin mengontrolnya dari ruang pengontrol, maka memerlukan DCS untuk mengirim sinyal ke MCC.

Adapun proses digunakan PLTU sebagai berikut:

Raw Material Transportation and Processing, pada proses ini disiapkan bahan bakar dan air untuk bahan produksi steam, biasanya disebut auxiliary system. Mulai dari pengaturan rail pengangkut kereta, belt scale conveyor, coal drying, hingga siap masuk ke feeder.

Boiler Combustion (Pulverization of Coal / CFB), di Boiler terjadi pebakaran yang merupakan proses utama pada Thermal Powerplant. Karena proses pembakaran akan mempengaruhi efisiensi pembangkitan, jumlah bahan bakar yang digunakan, jumlah udara pembakaran yang sesuai untuk menghasilkan pembakaran yang cukup. Apabila kekurangan udara pembakaran dapat menyebabkan ledakan karena timbunan fuel, dan kelebihan udara pembakaran juga dapat menyebabkan pembakaran tidak efisien. Hal tersebut akan diatur seberapa besar pembakaran yang diperlukan menurut beban operasionalnya.

Turbine (Steam Turbine and Heat Recovery) Monitoring and Control, turbin juga mempunyai peranan penting. Sebuah sistem Digital Electro Hydraulic (DEH) digunakan sebagai sistem untuk keselamatan turbine ketika terjadi fault condition. Pada kondisi tertentu, kontrol turbin juga digunakan untuk mengatur frekuensi tegangan agar mengikuti tegangan jaringan.

Generator and Plant Electrical System Monitoring and Control, pada proses ini juga harus mengontrol Eksitasi Generator, serta pengamanan elektrikal. Waste and Exhaust Treatment, dilakukan treatment pada hasil pembakaran seperti gas desulphurization dan slag transmission. Hal ini berguna untuk pengurangan emisi nitrogen, yang baik untuk keberlangsungan alam yang sehat. 


Referensi:

Kamis, 26 Desember 2019

PIPELINING RISC

Pipelining yaitu suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan secara kontinu pada unit pemrosesan. Dengan cara ini, maka unit pemrosesan selalu bekerja. Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistemkomputer. Bisa pada level yang tinggi, misalnya program aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh microprocessor. 

Prosesor Pipeline yang berputar adalah prosesor baru untuk arsitektur superscalar komputasi. Ini didasarkan pada cara yang mudah dan pipeline yang biasa, struktur yang dapat mendukung beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh dependensi data lokal. Selama operasi normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya dibatasi oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide utama dari Pipeline Prosesor yang berputar adalah circular uni-arah mengalir dari memori register oleh pusat waktu logika dan proses secara parallel dari operasi ALU. 

Prosesor Pipeline yang berputar adalah prosesor baru untuk arsitektur superscalar
komputasi. Ini didasarkan pada cara yang mudah dan pipeline yang biasa, struktur yang
dapat mendukung beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa
instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh dependensi data lokal.
Selama operasi normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya
dibatasi oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide utama dari
Pipeline Prosesor yang berputar adalah circular uni-arah mengalir dari memori register oleh
pusat waktu logika dan proses secara parallel dari operasi ALU.

Instruksi Pipeline

Tahapan pipeline adalah sebagai berikut:
  • Mengambil instruksi dan membuffferkannya 
  • Ketika tahapan kedua bebas tahapan pertama mengirimkan instruksi yang
    dibufferkan tersebut.
  •  Pada saat tahapan kedua sedang mengeksekusi instruksi, tahapan pertama
    memanfaatkan siklus memori yang tidak dipakai untuk mengambil dan
    membuffferkan instruksi berikutnya.
Karena untuk setiap tahap pengerjaan instruksi, komponen yang bekerja berbeda, maka dimungkinkan untuk mengisi kekosongan kerja di komponen tersebut. Sebagai contoh:
Instruksi 1: ADD AX, AX
Instruksi 2: ADD EX, CX

Setelah CU menjemput instruksi 1 dari memori (IF), CU akan menerjemahkan instruksi tersebut(ID). Pada menerjemahkan instruksi 1 tersebut, komponen IF tidak bekerja. Adanya teknologi pipeline menyebabkan IF akan menjemput instruksi 2 pada saat ID menerjemahkan instruksi 1. Demikian seterusnya pada saat CU menjalankan instruksi 1 (EX), instruksi 2 diterjemahkan (ID).

Jenis Pipeline

  1. Pipeline Arithmetic, berguna untuk operasi vektor. Pengembangan pipeline arithmetic dapat dilihat dari perkalian biner unsigned.  Operasi shift dan penambahan menjadi tahapan pemrosesan dalam pengali pipelined. Pengalian bilangan biner dengan 2n adalah sama dengan menggesernya ke kiri sebesar n bit dan menyisipkan nol pada sebelah kanannya.
  2. Pipeline Unit Instruction, berguna untuk komputer yang mempunyai set instruksi yang sederhana. Tujuannya adalah untuk memaksimalkan kecepatan mengalirnya instruksi.
Reduced Instruction Set Computer (RISC)

RISC merupakan bagian dari arsitetur mikroprosessor, berbentuk kecil dan berfungsi untuk set instruksi dalam komunikasi diantara arsitektur yang lainnya. RISC memiliki fitur utama, yaitu:
  • General purpose register dalam jumlah yang sangat banyak.
  • Menggunakan teknologi compiler untuk mengoptimalisasikab penggunaan register.
  • Instruction set yang sedikit dan sederhana.
  • Pendekatan umum dalam instruksi pipeline.
  • Set eksekusi yang besar dan lebih banyak mode pengalamatan.
RISC memiliki ciri-ciri tersendiri, yaitu:
  • Instruksi berukuran tunggal (satu instruksi per siklus).
  • Mode pengalamatan yang sederhana dan sedikit (biasanya kurang dari 5 buah). 
  • Tidak ada pengalamatan tidak langsung yang mengharuskan mengakses memori agar memperoleh alamat operand lainnya di dalam memori.
  • Format instruksi yang sederhana.
  • Format instruksi yang fix.
  • Proses compile yang cepat.
 Pipelining Pada RISC

Pada pipelining RISC terdapat berbagai macam instruksi register to register. Siklus instruksinya memiliki 2 fase:
  1. I: Instruction Fetch (Pengambilan Instruksi).
  2. E: Execute (Melakukan operasi ALU dengan register input dan output).
Sementara operasi load dan store memiliki 3 fase:
  1. I: Instruction Fetch.
  2. E: Execute (Menghitung alamat memori).
  3. D: Memori (Operasi register ke memori atau memori ke register). 
 
Prosesor Superscalar

Superscalar adalah arsitektur prosessor yang memungkinkan eksekusi yang bersamaan (parallel) dari instruksi yang banyak pada tahap pipeline yang sama sebaik tahap pipeline yang lain. Superscalar mampu menjalankan Instruction Level Parallelism dengan satu prosesor. Superscalar dapat diaplikasikan di RISC dan CISC, tapi pada umumnya RISC.

Pipeline Adalah meningkatkan kinerja komputer dengan cara saling overlap tahapan dari instruksi yang berbeda. Pada pipeline untuk melakukan proses (stages) overlapping dibutuhkan paling tidak setengah clock. Sedangkan superscalar mengijinkan proses untuk bekerja secara bersamaan pada saat clock yang sama.

Proses superscalar adalah sebagai berikut:
  • Memproses lebih dari satu instruksi per clock cycle .
  • Sangat dimungkinkan untuk memisahkan siklus fetch and execute.
  •  Memiliki Buffers pada fase antara proses fetch and decode.
  •  Memiliki unit eksekusi yang Parallel

Sumber:

Rabu, 25 Desember 2019

ARSITEKTUR FAMILY COMPUTER IBM PC

IBM (International Business Machines) merupakan perusahaan hardware yang mengembangkan software-software yang telah ada seperti UNIX dan WINDOWS. IBM PC 5150 adalah komputer pribadi generasi pertama yang diluncurkan pada 12 Agustus 1981. Komputer pribadi tersebut diperkuat dengan memakai prosesor 16-bit Intel 8088 berkecepatan 4.77 MHz, power supply 63.5 Watt dan memori yang hanya 64 KB. Media penyimpanan yang digunakannya hanya floppy disk drive 5.25 inci 320 KB atau 360 KB (double-side floppy disk).

IBM PC datang dengan ROM yang dilengkapi dengan interpreter bahasa Microsoft Cassette BASIC, sehingga pengguna mampu melaksanakan pemrograman (jika tidak kehadiran sistem operasi yang dimuat). ROM juga dilengkapi dengan fungsi diagnosa Power-on Self Test (POST) yang akan melaksanakan pengecekan terhadap perangkat keras sebelum mampu bekerja (meski proses pengecekan yang dilakukannya sangat lambat, lebih dari 10 detik).

Sejak diluncurkan oleh IBM, IBM PC memiliki beberapa keluarga, yaitu:
  • IBM 4860 PCjr
  • IBM 5140 Convertible Personal Computer (laptop)
  • IBM 5150 Personal Computer (PC yang asli)
  • IBM 5155 Portable PC (sebenarnya merupakan PC XT yang portabel)
  • IBM 5160 Personal Computer/eXtended Technology
  • IBM 5162 Personal Computer/eXtended Technology Model 286
  • IBM 5170 Personal Computer/Advanced Technology
Konfigurasi 
 
Komputer adalah sistem elektronik untuk memanipulasi data yang cepat dan tepat serta dirancang dan diorganisasikan supaya secara otomatis menerima dan menyimpan data input. Memprosesnya, dan menghasilkan ouput dibawah pengawasan suatu langkah-langkah instruksi-instruksi program yng tersimpan di memori (stored program).

Menurut buku komputer organization (V.C Hamacher Z.G. Vranesic S.G. Zaky). Komputer adalah mesin penghitung elektronik yang cepat dapat menerima informasi input digital, memprosesnya sesuai dengan suatu program yang tersimpan di memorinya (stored program) dan menghasilkan output informasi.

Menurut buku Introduction to Computers ( gordon B. Davis), komputer adalah tipe khusus alat penghitung yang mempunyai sifat tertentu yang pasti. Dari beberapa definisi tersebut, dapat disimpukan bahwa komputer adalah:
  1. Alat elektronik
  2. Dapat menerima input data
  3. Dapat mengolah data
  4. Dapat memberikan informasi
  5. Menggunakan suatu program di memori komputer (stored program)
  6. Dapat menyimpan program dan hasil pengolahan
  7. Bekerja secara otomatis
Micro Computer  disebut juga dengan nama personal computer. Ukuran main memory komputer mikro sekarang berkisar dari 16MB sampai lebih dari 128 MB, dengan konfigurasi operand register 8 bit, 16 bit atau 32 bit. Kecepatan komputer mikro pada saat ini 200Mhz sampai 500 Mhz.
Chipset adalah set dari chip yang mendukung kompatibel yang mengimplementasikan berbagai fungsi tertentu, seperti pengontrol interupt, pengontrol bus dan timer.

Komponen

Komputer IBM memiliki beberapa komponen yang saling bekerja sesuai fungsinya masing-masing, berikut ini adalah komponen yang ada pada komputer IBM:
  • Sistem kontrol BUS: Pengontrol BUS, Buffer Data, dan Latches Alamat
  • Sistem kontrol interuppt: Pengontrol Interuppt
  • Sistem kontrol RAM & ROM: Chip RAM & ROM, Decoder Alamat, dan Buffer
  • Sistem kontrol DMA: Pengontrol DMA
  • Timer: Timer Interval Programmable
  • Sistem kontrol I/O: Interface Paralel Programmable 
Sistem Software

Agar pengguna dapat memasukkan dan menjalankan program aplikasi pada komputer, maka dibutuhkan beberapa software sistem dalam memori komputer tersebut. Software sistem adalah kumpulan dari berbagai program yang dieksekusi seperlunya untuk menjalankan fungsi sebagai berikut:
  1. Menerima dan menginterpretasikan perintah user.
  2. Memasukkan dan mengedit program aplikasi dan menyimpannya sebagai file dalam peralatan penyimpan sekunder.
  3. Mengatur penyimpanan dan pengambilan file dalam peralatan penyimpanan sekunder.
  4. Menjalankan program aplikasi standar seperti word processor, spreadsheet, atau game dengan data yang disediakan oleh user.
  5. Mengontrol unit I/O untuk menerima informasi input dan menghasilkan output.
  6. Mentranslasikan program dari bentuk source yang disediakan oleh user menjadi bentuk objek yang berisi instruksi mesin.
  7. Menghubungkan dan menjalankan program aplikasi user-written dengan rutin library standar yang ada.

Sumber:

UNIT INPUT/OUTPUT

Komputer memiliki perangkat input dan perangkat output untuk menjalankan proses kerja dan fungsinya masing-masing. Input dan Output dilambangkan dengan I/O, yang merupakan sistem mikroprosesor yang dipakai untuk menghubungkan perangkat luar dengan komputer. Perangkat I/O terdiri dari piranti I/O, pengendali I/O, dan perangkat lunak.

Perangkat Input

Input memiliki pengertian masukan. Jadi, perangkat input pada komputer adalah suatu perangkat atau alat yang berfungsi untuk memasukan informasi secara langsung ke komputer sebelum nantinya diproses oleh komputer. Contoh perangkat yang termasuk perangkat input adalah sebagai berikut:
  • Keyboard
  • Mouse
  • Touchpad
  • Scanner
  • Trackball
  • Joystick
  • Webcam 
  • Graphics Pad
  • Barcode Reader 

Perangkat Output

Perangkat output adalah perangkat pada komputer yang memiliki fungsi untuk menampilkan hasil pengolahan data. Data yang dihasilkan perangkat output dapat berupa gambar, video, audio. Berikut ini adalah beberapa contoh perangkat yang termasuk perangkat output komputer:
  • Printer
  • Monitor
  • Speaker
  • Plotter
  • Headphone
  • Proyektor

Pengaksesan I/O

Pengaksesan I/O terdiri dari 2 cara, yaitu:
  
1. Memory mapped I/O
Piranti I/O dihubungkan sebagai lokasi memori virtual dimana port I/O tergantung memori utama.
Karakteristik:
  • Port I/O dihubungkan ke bus alamat. 
  • Piranti input sebagai bagian memori yang memberikan data ke bus data. Piranti output sebagai bagian memori yang memiliki data yang tersimpan di dalamnya. 
  • Port I/O menempati lokasi tertentu pada ruang alamat dan diakses seolah-olah adalah lokasi memori.
2. I/O mapped I/O (I/O isolated)
 Piranti I/O dihubungkan sebagai lokasi terpisah dengan lokasi memori, dimana port I/O tidak tergantung pada memori utama. I/O mapped I/O Iebih cepat dan efisien, karena lokasi I/O terpisah dengan lokasi memori. I/O mapped I/O mempunyai keterbatasan jumlah instruksi yang dapat digunakan untuk operasi I/O
Karakteristik: 
  • Port I/O tidak tergantung memori utama. 
  • Transfer informasi dilakukan di bawah kendali sinyal kontrol yang mengguna­kan instruksi INPUT dan OUTPUT. 
  • Operasi I/O tergantung sinyal kendali dari CPU. 
  • lnstruksi I/O mengaktifkan baris kendali read/write pada port I/O, sedangkan instruksi memori akan mengaktifkan baris kendali read/write pada memori. 
  • Ruang memori dan ruang alamat I/O menyatu, sehingga dapat memiliki alamat yang sama.

Operasi I/O  

Operasi I/O terbagi menjadi 3 metode, yaitu:

1. I/O terprogram
Metode di mana CPU mengendalikan operasi I/O secara keseluruhan dengan menjalankan serangkaian instruksi I/O dengan sebuah program.
Karakteristik:
  • Program tersebut digunakan untuk memulai, mengarahkan dan menghenti­kan operasi-operasi I/O.
  • Membutuhkan sejumlah perangkat keras (register) yaitu register status, register buffer, pointer buffer dan counter data. 
  • Membutuhan waktu proses yang lama dan tidak efesien dalarn pemanfaatan CPU.
2. I/O interupsi
Metode di mana CPU akan bereaksi ketika suatu piranti mengeluarkan permintaan untuk pelayanan.
Karakteristik: 
  • Lebih efisien dalam pemanfaatan CPU, karena tidak harus menguji status dari piranti.
  • Interupsi dapat berasal dari piranti I/O, interupsi perangkat keras misalnya : timer, memori, power supply, dan interupsi perangkat lunak misalnya : over­flow, opcode/data yang ilegal, pembagian dengan nol.
3.  Direct Memory Access (DMA)
Metode transfer data secara langsung antara memori dengan piranti tanpa pengawasan dan pengendalian CPU.
  • Skema transfer blok DMA dual port, CPU dan DMA controller mengakses memori utama melalui MAR dan MBR dengan menggunakan sebuah memori utama dual port (2 port). Port I melayani CPU sedangkan Port II melayani DMA controller 
  • Skema transfer blok DMA cycle stealing (pencurian siklus), Hanya memerlukan sebuah memori port tunggal di mana CPU dan piranti I/O beradu cepat pada basis asinkron, prioritas utama akan diberikan pada piranti I/O. 
 
 
Sumber:

Selasa, 24 Desember 2019

Central Processing Unit (CPU)

Pengertian

CPU atau Central Processing Unit merupakan pusat pengolahan data dalam sebuah komputer atau sering juga disebut sebagai processor. CPU termasuk perangkat keras komputer yang bertugas untuk menerima dan melaksanakan perintah dan data dari perangkat lunak. Cepat atau lambatnya kinerja dari sebuah computer cukup ditentukan oleh kualitas dan teknologi dari CPU yang digunakan.

Program akan disimpan dalam unit memori utama yang berhadapan dengan piranti I/O melalui CPU. CPU membaca dari atau menulis ke memori, dengan mengirimkan alamat word ke unit memori melalui bus address kemudian menerima atau mengirimkan data melalui bus data. Data dipertukarkan antara CPU dan Unit I/O juga dengan menggunakan bus data. Operasi disinkronisasikan oleh dua bus control dengan sinyal kendali yang dikirimkan oleh CPU dan sinyal acknowledgment serta sinyal interupsi yang diterima oleh CPU.

Komponen yang terdapat pada CPU adalah sebagai berikut:

1. Unit Kontrol

Komponen ini terdapat dalam semua CPU dan merupakan bagian dari prosesor yang mengatur jalannya program. Salah satu tugas dari unit kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan jenis instruksi tersebut. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output. Dengan demikian unit kontrol dapat mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsinya.

Tugas dari unit kendali ini adalah:
  • Mengatur dan mengendalikan alat-alat input dan output.
  • Mengambil instruksi-instruksi dari memori utama.
  • Mengambil data dari memori utama (jika diperlukan) untuk diproses.
  • Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja dari ALU.
  • Menyimpan hasil proses ke memori utama. 
2. Register

Register merupakan alat penyimpanan berukuran relatif kecil namun memiliki kecepatan akses cukup tinggi yang memiliki fungsi untuk menyimpan data atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat sedang di olah ataupun data untuk pengolahan selanjutnya. Secara analogi, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.

3. Arithmatic Logic Unit (ALU)

Aritmathic Logic Unit (ALU) merupakan bagian dari CPU yang memiliki tugas untuk melakukan operasi aritmatika dan operasi logika berdasarkan instruksi yang ditentukan. ALU sering disebut juga sebagai mesin bahasa karena ALU terdiri dari dua bagian, yaitu unit aritmatika dan unit logika boolean yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder. Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (¹ ), kurang dari (<), kurang atau sama dengan (£ ), lebih besar dari (>), dan lebih besar atau sama dengan (³ ).

4. Memory

Memori atau yang disebut sebagai memori fisik ataupun memori internal adalah media yang menyimpan data atau informasi sementara pada komputer. Memori merupakan komponen yang penting didalam suatu komputer yang berada didalam CPU (Central Processing Unit). Memori ini akan menyimpan setiap program dan data yang diproses oleh prosesor.

Adapun data atau informasi yang disimpan didalam memori ini bersifat sementara karena data hanya akan tersimpan selama komputer menyala atau hidup. Jadi, ketika komputer dimatikan maka data yang disimpan di memori akan hilang. Oleh karena itulah, sebelum Anda mematikan komputer, simpanlah semua data Anda kedalam media penyimpanan permanen (tetap) di media penyimpanan berbasis disk seperti hard disk dan floopy disk.

Memori internal berfungsi sebagai pengingat sebagai media penyimpanan data ataupun program yang bersifat sementara. Dengan kata lain, jika komputer mati maka data pun akan hilang. Dalam penggunaannya, memori internal diakses secara langsung oleh prosesor. Adapun fungsi utama dari memori internal adalah
  • Menyimpan data dari peranti masukan sampai data dikirimkan ke ALU (Arithmetic and Logic Unit) untuk diproses lebih lanjut.
  • Menyimpan daya hasil pemrosesan ALU (Arithmetic and Logic Unit) sebelum dikirim ke peranti keluaran.
  • Menampung instruksi ataupun program dari peranti masukan ataupun dari peranti pengingat sekunder
5. Bus

Tiap bus merupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM, Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggi yang lebih dikenal dengan nama FSB (Front Side Bus). Sementara perangkat lain yang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yang terhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untuk komunikasi antar bus ini digunakan sebuah bridge.

Fungsi Utama CPU

Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang diberikan melalui beberapa perangkat keras. CPU hampir sama seperti kalkulator, hanya saja CPU jauh lebih kompleks dalam melakukan pemrosesan dari intruksi-intruksi yang diberikan. Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada RAM, setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat mengakses data-data pada RAM dengan menentukan alamat data yang dipilih.

 Cara Kerja

Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di RAM (melalui Input-storage). Apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage). Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (dalam hal ini di Operand-register).

Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Accumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices.


Sumber:




Jumat, 08 November 2019

ARSITEKTUR SET INSTRUKSI

Set instruksi (instruction set) adalah sekumpulan lengkap instruksi yang dapat di mengerti oleh sebuah CPU, set instruksi sering juga disebut sebagai bahasa mesin (machine code), karna aslinya juga berbentuk biner kemudian dimengerti sebagai bahasa assembly, untuk konsumsi manusia (programmer), biasanya digunakan representasi yang lebih mudah dimengerti oleh manusia.

Sebuah instruksi terdiri dari sebuah opcode, biasanya bersama dengan beberapa informasi tambahan seperti darimana asal operand-operand dan kemana hasil-hasil akan ditempatkan. Subyek umum untuk menspesifikasikan di mana operand-operand berada (yaitu, alamat-alamatnya) disebut pengalamatan.

Pada beberapa mesin, semua instruksi memiliki panjang yang sama, pada mesin-mesin yang lain mungkin terdapat banyak panjang berbeda. Instruksi-instruksi mungkin lebih pendek dari, memiliki panjang yang sama seperti, atau lebih panjang dari panjang word.  Membuat semua instruksi memiliki panjang yang sama lebih muda dilakukan dan membuat pengkodean lebih mudah tetapi sering memboroskan ruang, karena semua instruksi dengan demikian harus sama panjang seperti instruksi yang paling panjang.

Di dalam sebuah instruksi terdapat beberapa elemen-elemen instruksi:
1. Operation code (op code)
2. Source operand reference
3. Result operand reference
4. Xext instruction preference

Format instruksi (biner): Misal instruksi dengan 2 alamat operand : ADD A,B A dan B adalah suatu alamat register. Beberapa simbolik instruksi:
1. ADD : Add (jumlahkan)
2. SUB : Subtract (Kurangkan)
3. MPY/MUL : Multiply (Kalikan)
4. DIV : Divide (Bagi)
5. LOAD : Load data dari register/memory
6. STOR : Simpan data ke register/memory
7. MOVE : Pindahkan data dari satu tempat ke tempat lain
8. SHR : Shift kanan data
9. SHL : Shift kiri data .dan lain-lain

A. Jenis Instruksi 

 

Terdapat empat cakupan jenis instruksi, yaitu:

1. Data Processing : Arithmetic & Logic Instructions

Data processing adalah jenis pemrosesan yang dapat mengubah data menjadi informasi atau pengetahuan.Setelah diolah, data ini biasanya mempunyai nilai yang informative, maka istilah pemrosesan data sering dikatakan sebagai sistem informasi.

2. Data Storage : Memory Instruction

Sering disebut sebagai memori komputer, merujuk kepada komponen komputer, perangkat komputer, dan media perekaman yang mempertahankan data digital yang digunakan untuk beberapa interval waktu. Dalam penggunaan kontemporer, memori komputer merujuk kepada bentuk media penyimpanan berbahan semikonduktor, yang dikenal dengan sebutan Random Access Memory (RAM).Akan tetapi, istilah "computer storage" sekarang secara umum merujuk kepada media penyimpanan massal seperti halnya hard disk

3. Data Movement : Input/Output Instructions 

Proses data movement ini adalah memindahkan (dapat dikatakan membackup juga) data-data dari database yang berupa data, indeks, grand, schema, dan lain-lain ketempat baru. Data movement terdiri dari 2 bagian besar yaitu: Load & Upload dan Export & Import. Load berfungsi untuk memasukan data/transaksi ke sebuah table. Sedangkan upload berfungsi untuk membuat dari data table ke fisik/file.

Data movement terdiri dari 2 bagian besar yaitu :
• Load & Upload (difokuskan untuk memindahkan data yang berupa indeks atau data itu sendiri alias isi dari database tersebut)
• Export & Import (memindahkan data secara lengkap, mulai dari grand, schema, dan seluruhnya)

4. Control : Test and Branch Instructions

Control Unit (CU) diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store).CU adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut.

B. Teknik Pengalamatan 


Untuk menyimpan data ke dalam memori komputer, tentu memori tersebut diberi identitas (yang disebut dengan alamat/address) agar ketika data tersebut diperlukan kembali, komputer bisa mendapatkannya sesuai dengan data yang pernah diletakkan di sana, itulah yang disebut pengalamatan.

Ada 3 macam teknik pengalamatan, yaitu:

1. Pemetaan Langsung (Direct Mapping) 

(-) Pengalamatan Mutlak (Absolute Addressing)

Teknik ini dapat dijuluki dengan device dependent (tergantung pada peralatan rekamnya), artinya, kita tidak dapat begitu saja meng-copy data berkas ini ke komputer lainnya, karena mungkin saja di komputer lainnya itu menggunakan alat rekam yang berbeda spesifikasinya. 

Teknik ini juga dapat dijuluki dengan address space dependent (tergantung pada alamat-alamat yang masih kosong), artinya, kita tidak dapat begitu saja meng-copy data berkas ini ke komputer lainnya, karena mungkin saja di komputer lainnya itu alamat-alamat yang dibutuhkan sudah tidak tersedia lagi.

(-) Pengalamatan Relatif (Relative Addressing)

Teknik ini menjadikan atribut kunci sebagai alamat memorinya, jadi, data dari NIM dijadikan bertipe numeric (integer) dan dijadikan alamat dari record yang bersangkutan. Cara ini memang sangat efektif untuk menemukan kembali record yang sudah disimpan, tetapi sangat boros penggunaan memorinya. Tentu alamat memori mulai dari 1 hingga alamat ke sekian juta tidak digunakan karena nilai dari NIM tidak ada yang kecil. Pelajari keuntungan dan kerugian lainnya.Teknik ini termasuk dalam katagori address space dependent.
 

2. Teknik Pencarian Tabel

Teknik ini dilakukan dengan cara, mengambil seluruh kunci atribut dan alamat memori yang ada dan dimasukkan ke dalam tabel tersendiri. Jadi tabel itu (misal disebut dengan tabel INDEX) hanya berisi kunci atribut (misalkan NIM) yang telah disorting (diurut) dan alamat memorinya.

Jadi, sewaktu dilakukan pencarian data, tabel yang pertama dibaca adalah tabel INDEX itu, setelah ditemukan atribut kuncinya, maka data alamat yang ada di sana digunakan untuk meraih alamat record dari data (berkas/ file/ tabel) yang sebenarnya. Pencarian yang dilakukan di tabel INDEX akan lebih cepat dilakukan dengan teknik pencarian melalui binary search (dibagi dua-dua, ada di mata kuliah Struktur dan Organisasi Data 2 kelak) ketimbang dilakukan secara sequential.
 

Nilai key field (kunci atribut) bersifat address space independent (tidak terpengaruh terhadap perubahan organisasi file-nya), yang berubah hanyalah alamat yang ada di INDEX-nya.
 

3. Teknik Kalkulasi Alamat

Kalau pada teknik pencarian tabel kita harus menyediakan ruang memori untuk menyimpan tabel INDEX-nya, maka pada teknik ini tidak diperlukan hal itu. Yang dilakukan di sini adalah membuat hitungan sedemikian rupa sehingga dengan memasukkan kunci atribut record-nya, alamatnya sudah dapat diketahui. Tinggal masalahnya, bagaimana membuat hitungan dari kunci atribut itu sehingga hasilnya bisa efisien (dalam penggunaan memori) dan tidak berbenturan nilainya (menggunakan alamat yang sama).

Perhitungan (kalkulasi) terhadap nilai kunci atribut untuk mendapatkan nilai suatu alamat disebut dengan fungsi hash. Bisa juga fungsi hash digabungkan dengan teknik pencarian seperti tabel di atas, tetapi akan menjadi lebih lama pengerjaannya dibanding hanya dengan satu jenis saja (fungsi hash saja atau pencarian tabel saja). Fungsi hash dikatakan baik bila memiliki kalkulasi yang sederhana dan memiliki kelas ekivalen (synonim) yang kecil, atau sederhananya, memiliki kalkulasi yang mudah tetapi memiliki benturan alamat yang sedikit.

C. Desain Set Instruksi 

Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
1. Kelengkapan set instruksi.
2. Ortogonalitas (sifat independensi instruksi).
3. Kompatibilitas: source code compatibility dan object code compatibility.

Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:

1. Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya.
2. Data Types: tipe/jenis data yang dapat diolah.
3. Instruction Format: panjangnya, banyaknya alamat, dan sebagainya.
4. Register: Banyaknya register yang dapat digunakan.
5. Addressing: Mode pengalamatan untuk operand.



Referensi: