Advertisement
loading...

 

 

Advertisement

MATERI PELATIHAN BERBASIS KOMPETENSI

SEKTOR TEKNOLOGI INFORMASI DAN KOMUNIKASI

 

 

 

 

 

 

 

MENERAPKAN PEMROGRAMAN REAL TIME

TIK.PR06.001.01

 

 

 

 

 

 

 

 

BUKU INFORMASI

 

 

 

 

 

 

DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.

DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS

Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan

 

DAFTAR ISI

 

Daftar Isi                                                                                                 1

 

BAB I. 4

PENGANTAR. 4

1.1 Konsep Dasar Pelatihan Berbasis Kompetensi 4

1.2 Penjelasan Modul 4

1.2.1 Desain Modul 5

1.2.2 Isi Modul 5

1.2.3 Pelaksanaan Modul 6

1.3 Pengakuan Kompetensi Terkini 6

1.4 Pengertian Istilah-Istilah. 6

 

BAB II. 9

STANDAR KOMPETENSI. 9

2.1 Peta Paket Pelatihan. 9

2.2 Pengertian Unit Standar 9

2.3 Unit Kompetensi Yang Dipelajari 10

2.3.1 Judul Unit Kompetensi 10

2.3.3 Deskripsi Unit 10

2.3.4 Elemen Kompetensi 10

2.3.5 Batasan Variabel 12

2.3.6 Panduan Penilaian. 12

2.3.7 Kompetensi Kunci 13

 

BAB III. 14

STRATEGI DAN METODE PELATIHAN. 14

3.1 Strategi Pelatihan. 14

3.2 Metode Pelatihan. 15

 

BAB IV. 16

MATERI UNIT KOMPETENSI. 16

4.1 Tujuan Instruksional Umum.. 16

4.2 Tujuan Instruksional Khusus 16

4.3 Uraian Singkat Materi 16

4.4 Beberapa Pengertian dalam Unit Kompetensi Ini 19

4.5 Informasi masing-masing elemen kompetensi 21

4.5.1  Memilih Karakteristik Mikroprosesor 21

4.5.2  Memilih Karakteristik peripheral 39

4.5.3  Memanfaatkan Sistem Operasi Real Time. 43

4.5.4  Memanfaatkan pemrograman paralel 48

 

BAB V. 54

SUMBER – SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN. 54

KOMPETENSI. 54

5.1 Sumber Daya Manusia. 54

5.2 Literatur 55

5.3 Daftar Peralatan dan Bahan yang digunakan. 56

 

DAFTAR PUSTAKA. 57

 

 

BAB I

PENGANTAR

 

 

1.1 Konsep Dasar Pelatihan Berbasis Kompetensi

 

  • Apakah pelatihan berdasarkan kompetensi?

Pelatihan berbasis kompetensi adalah pelatihan yang memperhatikan pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat melakukan pekerjaan secara kompeten. Lalu, apa arti kompeten di tempat kerja?

 

  • Apakah artinya menjadi kompeten ditempat kerja?

Jika Anda kompeten dalam pekerjaan tertentu, berarti Anda memiliki seluruh keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara efektif di tempat dimana Anda bekerja, sesuai dengan standar yang telah disetujui dan ditetapkan.

 

 

1.2 Penjelasan Modul

Modul ini dikonsep agar dapat digunakan pada proses Pelatihan Konvensional/Klasikal dan Pelatihan Individual/Mandiri. Yang dimaksud dengan Pelatihan Konvensional/Klasikal, yaitu pelatihan yang dilakukan dengan melibatkan bantuan seorang pembimbing atau guru seperti proses belajar mengajar sebagaimana biasanya dimana materi hampir sepenuhnya dijelaskan dan disampaikan pelatih/pembimbing yang bersangkutan.

 

Sedangkan yang dimaksud dengan Pelatihan Mandiri/Individual adalah pelatihan yang dilakukan secara mandiri oleh peserta sendiri berdasarkan materi dan sumber-sumber informasi dan pengetahuan yang bersangkutan. Pelatihan mandiri cenderung lebih menekankan pada kemauan belajar peserta itu sendiri. Singkatnya pelatihan ini dilaksanakan pseserta dengan menambahkan unsur-unsur atau sumber-sumber yang diperlukan baik dengan usahanya sendiri maupun melalui bantuan dari pelatih.

 

1.2.1 Desain Modul

Modul ini dirancang untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan Individual/mandiri:

  • Pelatihan klasikal adalah pelatihan yang disampaikan oleh seorang pelatih.
  • Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan bantuan dari pelatih.

 

1.2.2 Isi Modul

Buku Informasi

Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta pelatihan.

 

Buku Kerja

Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun Pelatihan Individual / mandiri.

 

Buku ini diberikan kepada peserta pelatihan dan berisi:

  • Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk mempelajari dan memahami informasi.
  • Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian keterampilan peserta pelatihan.
  • Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam melaksanakan praktik kerja.

 

Buku Penilaian

Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan tanggapan peserta pelatihan pada Buku Kerja dan berisi:

  • Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai pernyataan keterampilan.
  • Metode-metode yang disarankan dalam proses penilaian keterampilan peserta pelatihan.
  • Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai keterampilan.
  • Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
  • Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
  • Catatan pencapaian keterampilan peserta pelatihan.

 

1.2.3 Pelaksanaan Modul

Pada pelatihan klasikal, pelatih akan:

-    Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan sebagai sumber pelatihan.

-    Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.

-    Menggunakan Buku Informasi sebagai sumber utama dalam penyelenggaraan pelatihan.

-    Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan dan menuliskan hasil tugas praktiknya pada Buku Kerja.

 

Pada Pelatihan individual / mandiri, peserta pelatihan akan:

- Menggunakan Buku Informasi sebagai sumber utama pelatihan.

- Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.

- Memberikan jawaban pada Buku Kerja.

- Mengisikan hasil tugas praktik pada Buku Kerja.

-  Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.

 

1.3 Pengakuan Kompetensi Terkini

 

  • Apakah Pengakuan Kompetensi Terkini (Recognition of Current Competency).

Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan untuk elemen unit kompetensi tertentu, Anda dapat mengajukan pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan dipersyaratkan untuk belajar kembali.

 

  • Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena Anda telah:
  1. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan keterampilan yang sama atau
  2. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama atau
  3. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan keterampilan yang sama.

 

 

1.4 Pengertian Istilah-Istilah

 

Profesi

Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.

 

Standardisasi

Standardisasi adalah proses merumuskan, menetapkan serta menerapkan suatu standar tertentu.

 

Penilaian / Uji Kompetensi

Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta keputusan mengenai apakah kompetensi sudah tercapai dengan membandingkan bukti-bukti yang dikumpulkan terhadap standar yang dipersyaratkan.

 

Pelatihan

Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja pada kompetensi yang dipelajari.

 

Kompetensi Kerja

Kompetensi  Kerja adalah kemampuan kerja setiap individu  yang mencakup aspek  pengetahuan ,  keterampilan dan sikap kerja  yang sesuai dengan standar yang ditetapkan

 

Pelatihan Berbasis Kompetensi Kerja.

Pelatihan Berbasisi Kompetensi Kerja adalah  pelatihan kerja yang menitikberatkan pada penguasaan kemampuan kerja yang mencakup pengetahuan, keterampilan dan sikap sesuai dengan standar yang ditetapkan dan persyaratan di tempat kerja.

 

Standar Kompetensi Kerja Nasional Indonesia

Standar Kompetensi Kerja Nasional Indonesia adalah rumusan kemampuan kerja yang mencakup aspek pengetahuan, keterampilan dan / atau keahlian serta sikap kerja yang relevan dengan pelksanaan tugas dan syarat jabatan yang ditetapkan sesuai dengan ketentuan peraturan perundang-undangan yang berlaku.

 

Sertifikasi Kompetensi Kerja.

Sertifikasi kompetensi Kerja adalah proses pemberian sertifikat kompetensi yang

dilakukan secara sitematis dan obyektif melalui uji kompetensi sesuai standar kompetensi kerja nasional Indonesia, standar internasional dan /atau standar khusus.

 

Sertifikat Kompetensi Kerja

Sertifikat Kompetensi Kerja adalah bukti tertulis yang diterbitkan oleh lembaga sertifikasi profesi terakreditasi yang menerangkan bahwa seseorang telah menguasai kompetensi kerja tertentu sesuai dengan SKKNI.

 

 

 

 

BAB II

STANDAR KOMPETENSI

 

2.1 Peta Paket Pelatihan

Modul yang sedang Anda pelajari ini bertujuan untuk mencapai satu unit kompetensi. Unit ini didukung oleh pengetahuan dan  keterampilan dalam unit-unit kompetensi yang berkaitan dengan :

  1. TIK.PR02.003.01 Membuat Struktur Data
  2. TIK.PR02.009.01 Mengoperasikan Bahasa Pemrograman   Berorientasi Objek
  3. TIK.PR02.030.01 Menjelaskan sistem mikroprosesor.
  4. TIK.PR06.003,01 Menjelaskan sistem peripheral.
  5. TIK.PR02.031.01 Mengoperasikan bahasa pemrograman level mesin

 

Unit ini mendukung kinerja dalam unit-unit kompetensi yang berkaitan dengan pengembangan aplikasi real time.

2.2 Pengertian Unit Standar

Apakah Standar Kompetensi?

Setiap Standar Kompetensi menentukan :

  1. Pengetahuan dan keterampilan yang diperlukan untuk mencapai kompetensi.
  2. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
  3. Kondisi dimana kompetensi dicapai.

 

Apakah yang akan anda pelajari dari Unit Kompetensi ini ?

Di dalam unit kompetensi ini, Anda akan mempelajari pemrograman data deskripsi lanjut untuk melengkapi pengetahuan yang telah Anda kuasai pada pelatihan mengenai pemrograman data deskripsi dasar sebelumnya.

 

Berapa lama unit kompetensi ini dapat diselesaikan ?

Sistem pelatihan berbasis kompetensi terfokus pada pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan pelatihan ini dapat dilaksanakan dan dicapai dalam jangka waktu tidak lebih dari seminggu, tiga sampai lima hari. Pelatihan ini dijutukan bagi semua user terutama yang tugasnya berkaitan dengan programming, seperti operator, programmer, staff support, dan staff admin

 

Berapa banyak/kesempatan yang anda miliki untuk mencapai kompetensi ?

Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama, Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini akan memberikan Anda kesempatan kembali untuk meningkatkan level kompetensi Anda sesuai dengan level yang diperlukan. Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.

 

2.3 Unit Kompetensi Yang Dipelajari

Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan bagi peserta pelatihan untuk dapat :

  1. Mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
  2. Memeriksa kemajuan peserta pelatihan.
  3. Menyakinkan bahwa semua elemen (sub-kompetensi) dan criteria unjuk   kerja telah dimasukkan dalam pelatihan dan penilaian.

2.3.1 Judul Unit Kompetensi

Menerapkan Pemrograman Real Time

 

2.3.2 Kode Unit Kompetensi :

TIK.PR06.001.01

2.3.3 Deskripsi Unit :

Unit ini menentukan kompetensi yang diperlukan untuk memahami teknik dan metode pemrograman real time. Pemrograman real time adalah membuat sebuah program yang mampu memberikan respon waktu sesuai dengan keadaan sebenarnya.

2.3.4 Elemen Kompetensi

 

ELEMEN KOMPETENSI

KRITERIA UNJUK KERJA

01 Memilih Karakteristik Prosesor 1.1      Arsitektur Mikroprosesor dijelaskan. Metode pengolahan data dan instruksi pada CPU, kecepatan pewaktuan CPU (CPU Clock Speed) , kecepatan Register dan Control Unit dalam mengatur transfer data dipahami.

 

1.2      Kebutuhan memori dan peralatan input output dijelaskan.

 

1.3      Spesifikasi dan karakteristik jalur internal pada mikroprosesor dipahami

 

1.4      Teknik interupsi dijelaskan

 

02 Memilih Karakteristik Peripheral 2.1  Peripheral yang terpasang pada mikroprosesor dijelaskan.

 

2.2  Jalur pertukaran data pada peripheral dijelaskan. Kecepatan transfer data pada jalur eksternal sangat mempengaruhi kecepatan menerima dan mengirim data pada peripheral.

 

03  Memanfaatkan Sistem   Operasi Real Time  3.1  Sistem operasi yang mendukung proses real time ditentukan dan dipilih.

 

3.2  Fasilitas untuk  akses langsung ke resource mikroprosesor disediakan dan digunakan. Fasilitas/library untuk mengakses langsung memori, peripheral dan sebaiknya telah tersedia pada sistem operasi.

 

04  Memanfaatkan pemrograman paralel  4.1  Bahasa yang dekat dengan bahasa mikroprosesor dipilih. Bahasa ini dapat berupa Mnemonics mikroprosesor atau bahasa tingkat tinggi yang memiliki kecepatan proses dan akses pada mikroprosesor.

 

4.2   Bahasa yang memiliki fasilitas untuk membuat task atau membuat program paralel yang dipilih. Task merupakan sebuah program kecil yang dapat dijalankan secara terpisah. Task dapat digunakan untuk mengalokasikan proses sesuai dengan kebutuhan.

 

 

 

2.3.5  Batasan Variabel

  1. Unit ini berlaku untuk sektor Teknologi Informasi dan Komunikasi.
  2. Pemrograman real time  bersifat internal dan terbatas pada bidang teknologi informasi dan komunikasi .
  3. Aspek yang diperhatikan dalam kompetensi ini adalah masalah pewaktuan (timing) dan teknik pemrogramannya.

 

2.3.6 Panduan Penilaian

Panduan penilaian terdiri dari :

  1. 1.   Pengetahuan dan Ketrampilan Penunjang

Untuk mendemonstrasikan kompetensi, diperlukan bukti keterampilan dan pengetahuan di bidang berikut ini  :

 

1.1 Pengetahuan dasar

1.1.1  Memahami pemrograman berorientasi objek.

1.1.2  Arsitektur sistem mikroprosesor.

1.1.3  Memahami peripheral.

1.1.4  Memahami sistem operasi.

 

2.  Konteks Penilaian :

Unit ini dapat dinilai di dalam tempat kerja atau tempat lain secara praktek komputer dengan kondisi kerja sesuai dengan keadaan normal.

 

 

3.  Aspek Penting Penilaian :

Aspek yang harus diperhatikan :

3.1     Kemampuan untuk memilih karakteristik mikroprosesor dan peripheralnya.

3.2     Kemampuan untuk memanfaatkan atau menggunakan bahasa pemrograman mikroprosesor.

 

 

4.  Kaitan Dengan Unit-Unit Lain :

4.1   Unit ini didukung oleh pengetahuan dan  keterampilan dalam unit-unit kompetensi yang berkaitan dengan :

4.1.1                   TIK.PR02.003.01     Membuat struktur data.

4.1.2         TIK.PR02.009.01 Mengoperasikan bahasa pemrograman berorientasi objek.

4.2   Unit ini mendukung kinerja dalam unit-unit kompetensi yang berkaitan dengan pengembangan aplikasi real time.

4.3   Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini perlu dilakukan dengan hati-hati. Untuk pelatihan pra kejuruan umum, institusi harus menyediakan pelatihan yang mempertimbangkan serangkaian konteks industri seutuhnya tanpa bias terhadap sektor tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi kebutuhan sektor tersebut.

 

2.3.7 Kompetensi Kunci

No Kompetensi Kunci Dalam Unit ini Tingkat
1 Mengumpulkan, mengorganisir dan menganalisa informasi 3
2 Mengkomunikasikan ide-ide dan informasi 2
3 Merencanakan dan mengorganisir aktivitas-aktivitas 3
4 Bekerja dengan orang lain dan kelompok 2
5 Menggunakan ide-ide dan tehnik matematika 3
6 Memecahkan masalah 2
7 Menggunakan teknologi 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BAB III

STRATEGI DAN METODE PELATIHAN

 

 

3.1 Strategi Pelatihan

Belajar dalam suatu Sistem Berbasis Kompetensi berbeda dengan yang sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai dengan rencana yang telah dibuat.

 

Persiapan/perencanaan

  1. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
  2. Membuat catatan terhadap apa yang telah dibaca.
  3. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan pengetahuan dan pengalaman yang telah Anda miliki.
  4. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.

 

Permulaan dari proses pembelajaran

  1. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada tahap belajar.
  2. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan Anda.

 

Pengamatan terhadap tugas praktik

  1. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang yang telah berpengalaman lainnya.
  2. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda temukan.

 

Implementasi

  1. Menerapkan pelatihan kerja yang aman.
  2. Mengamati indikator kemajuan personal melalui kegiatan praktik.
  3. Mempraktikkan keterampilan baru yang telah Anda peroleh.

 

Penilaian

Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.

 

3.2 Metode Pelatihan

Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa kasus, kombinasi metode belajar mungkin dapat digunakan.

 

Belajar secara mandiri

Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.

 

Belajar Berkelompok

Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.

 

Belajar terstruktur

Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topik tertentu.

 

 

BAB IV

MATERI UNIT KOMPETENSI

MENERAPKAN PEMROGRAMAN REAL TIME

 

 

4.1 Tujuan Instruksional Umum

  • Siswa mengetahui pengertian dari Pemrograman Real Time
  • Siswa mengenal Jenis-Jenis Arsitektur Mikroprosesor
  • Siswa mengerti tentang bahasa assembly yang akan digunakan untuk membuat kode program.

 

4.2 Tujuan Instruksional Khusus

  • Siswa mengerti dan mampu Menerapkan Pemrograman Real Time secara baik dan benar.
  • Siswa mampu memilih mikroprosesor yang sesuai dengan kebutuhan
  • Siswa mengerti dan dapat memasang sekaligus menggunakan peripheral yang dibutuhkan
  • Siswa mengerti dan mampu memilih Real Time Operating System yang sesuai

 

4.3 Uraian Singkat Materi

Real Time System yang disebut juga dengan Sistem waktu nyata adalah Sistem yang harus menghasilkan respon yang tepat dalam batas waktu yang telah ditentukan. Jika respon komputer melewati batas waktu tersebut, maka terjadi degradasi performansi atau kegagalan sistem. Sebuah Real time system adalah sistem yang kebenarannya secara logis didasarkan pada kebenaran hasil-hasil keluaran sistem dan ketepatan waktu hasil-hasil tersebut dikeluarkan. Aplikasi penggunaan sistem seperti ini adalah untuk memantau dan mengontrol peralatan seperti motor, assembly line, teleskop, atau instrumen lainnya. Peralatan telekomunikasi dan jaringan komputer biasanya juga membutuhkan pengendalian secara Real time.

 

Berdasarkan batasan waktu yang dimilikinya, Real time system dibagi :
1. Hard Real time
2. Soft Real time
3. Firm Real time

 

Komponen dari Real time system ini adalah:
1. Perangkat keras,
2. Sistem Operasi Real time,
3. Bahasa Pemrograman Real time,
4. Sistem Komunikasi.

 

Suatu sistem komputasi dinamakan real-time jika sistem tersebut dapat mendukung eksekusi program/aplikasi dengan waktu yang memiliki batasan. Dengan kata lain, sistem real-time harus memenuhi kondisi berikut:

  • Batasan waktu: memenuhi deadline, artinya bahwa aplikasi harus menyelesaikan tugasnya dalam waktu yang telah dibatasi.
  • Dapat diprediksi: artinya bahwa sistem harus bereaksi terhadap semua kemungkinan kejadian selama kejadian tersebut dapat diprediksi.
  • Proses bersamaan: artinya jika ada beberapa proses yang terjadi bersamaan, maka semua deadline nya harus terpenuhi.

 

Perbedaan Sistem Hard Real-Time dan Soft Real-Time

 

Sistem hard real-time dibutuhkan untuk menyelesaikan critical task dengan jaminan waktu tertentu. Jika kebutuhan waktu tidak terpenuhi, maka aplikasi akan gagal. Dalam definisi lain disebutkan bahwa kontrol sistem hard real-time dapat mentoleransi keterlambatan tidak lebih dari 100 mikro detik. Secara umum, sebuah proses di kirim dengan sebuah pernyataan jumlah waktu dimana dibutuhkan untuk menyelesaikan atau menjalankan I/O. Kemudian penjadual dapat menjamin proses untuk selesai atau menolak permintaan karena tidak mungkin dilakukan. Mekanisme ini dikenal dengan resource reservation. Oleh karena itu setiap operasi harus dijamin dengan waktu maksimum. Pemberian jaminan seperti ini tidak dapat dilakukan dalam sistem dengan secondary storage atau virtual memory, karena sistem seperti ini tidak dapat meramalkan waktu yang dibutuhkan untuk mengeksekusi suatu proses.

 

Contoh dalam kehidupan sehari-hari adalah pada sistem pengontrol pesawat terbang. Dalam hal ini, keterlambatan sama sekali tidak boleh terjadi, karena dapat berakibat tidak terkontrolnya pesawat terbang. Nyawa penumpang yang ada dalam pesawat tergantung dari sistem ini, karena jika sistem pengontrol tidak dapat merespon tepat waktu, maka dapat menyebabkan kecelakaan yang merenggut korban jiwa.

 

Komputasi soft real-time memiliki sedikit kelonggaran. Dalam sistem ini, proses yang kritis menerima prioritas lebih daripada yang lain. Walaupun menambah fungsi soft real-time ke sistem time sharing mungkin akan mengakibatkan ketidakadilan pembagian sumber daya dan mengakibatkan delay yang lebih lama, atau mungkin menyebabkan starvation, hasilnya adalah tujuan secara umum sistem yang dapat mendukung multimedia, grafik berkecepatan tinggi, dan variasi tugas yang tidak dapat diterima di lingkungan yang tidak mendukunng komputasi soft real-time.

 

Contoh penerapan sistem ini dalam kehidupan sehari-hari adalah pada alat penjual/pelayan otomatis. Jika mesin yang menggunakan sistem ini telah lama digunakan, maka mesin tersebut dapat mengalami penurunan kualitas, misalnya waktu pelayanannya menjadi lebih lambat dibandingkan ketika masih baru. Keterlambatan pada sistem ini tidak menyebabkan kecelakaan atau akibat fatal lainnya, melainkan hanya menyebabkan kerugian keuangan saja. Jika pelayanan mesin menjadi lambat, maka para pengguna dapat saja merasa tidak puas dan akhirnya dapat menurunkan pendapatan pemilik mesin.

 

Setelah batas waktu yang diberikan telah habis, pada sistem hard real-time, aplikasi yang dijalankan langsung dihentikan. Akan tetapi, pada sistem soft real-time, aplikasi yang telah habis masa waktu pengerjaan tugasnya, dihentikan secara bertahap atau dengan kata lain masih diberikan toleransi waktu.

 

Mengimplementasikan fungsi soft real time membutuhkan design yang hati-hati dan aspek yang berkaitan dengan sistem operasi. Pertama, sistem harus punya prioritas penjadualan, dan proses real-time harus memiliki prioritas tertinggi, tidak melampaui waktu, walaupun prioritas non real time dapat terjadi. Kedua, dispatch latency harus lebih kecil. Semakin kecil latency, semakin cepat real time proses mengeksekusi.

 

Untuk menjaga dispatch tetap rendah, kita butuh agar system call untuk preemptible. Ada beberapa cara untuk mencapai tujuan ini. Pertama adalah dengan memasukkan preemption points di durasi system call yang lama, yang memeriksa apakah prioritas utama butuh untuk dieksekusi. Jika sudah, maka contex switch mengambil alih, ketika high priority proses selesai, proses yang diinterupsi meneruskan dengan system call. Points premption dapat diganti hanya di lokasi yang aman di kernel dimana kernel struktur tidak dapat dimodifikasi

 

 

 

4.4 Beberapa Pengertian dalam Unit Kompetensi Ini :

Menerapkan Pemrograman Real Time

 

4.4.1 Miroprosesor

          Mikroprosesor adalah suatu chip (IC=integrated circuits) yang didalamnya terkandung rangkaian ALU (arithmetic-logic unit), rangkaian CU (control unit), dan register-register. Mkroprosesor disebut juga dengan CPU (Central Processing Unit). Sebuah mikroprosesor (disingkat µP atau uP) adalah sebuah central processing unit (CPU) elektronik komputer yang terbuat dari transistor mini dan sirkuit lainnya di atas sebuah sirkuit terintegrasi semikonduktor.

Mikrokomputer adalah interkoneksi antara mikroprosesor (CPU) dengan memori utama (main memory)  dan antarmuka input-output (I/O interface) yang dilakukan dengan menggunakan system interkoneksi bus.

Mikrokontroler adalah chip yang ddalamnya terkandung system interkoneksi antara Mikroprosesor, RAM, ROM, I/O interface, dan beberapa peripheral. Mikrokontroler disebut juga On-chip-Peripheral.

 

4.4.2 Register

Register adalah media penyimpan internal CPU yang digunakan saat proses pengolahan data. Memori ini bersifat sementara, biasanya digunakan untuk menyimpan data saat diolah ataupun data untuk pengolahan selanjutnya.

 

Register terbagi menjadi beberapa kelas:

  • Register data, yang digunakan untuk menyimpan angka-angka dalam bilangan bulat (integer).
  • Register alamat, yang digunakan untuk menyimpan alamat-alamat memori dan juga untuk mengakses memori.
  • Register general purpose, yang dapat digunakan untuk menyimpan angka dan alamat secara sekaligus.
  • Register floating-point, yang digunakan untuk menyimpan angka-angka bilangan titik mengambang (floating-point).
  • Register konstanta (constant register), yang digunakan untuk menyimpan angka-angka tetap yang hanya dapat dibaca (bersifat read-only), semacam phi, null, true, false dan lainnya.
  • Register vektor, yang digunakan untuk menyimpan hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD.
  • Register special purpose yang dapat digunakan untuk menyimpan data Internal prosesor, seperti halnya instruction pointer, stack pointer, dan status register.
  • Register yang spesifik terhadap model mesin (machine-specific register), dalam beberapa arsitektur tertentu, digunakan untuk menyimpan data atau pengaturan yang berkaitan dengan prosesor itu sendiri. Karena arti dari setiap register langsung dimasukkan ke dalam desain prosesor tertentu saja, mungkin register jenis ini tidak menjadi standar antara generasi prosesor.

 

Tabel berikut berisi ukuran register dan padanan prosesornya

Register Prosesor
4-bit Intel 4004
8-bit Intel 8080
16-bit Intel 8086, Intel 8088, Intel 80286
32-bit Intel 80386DX, Intel 80486, Intel Pentium, Intel Pentium Pro, Intel Pentium II, Intel Pentium III, Intel Pentium 4, Intel Celeron, Intel Xeon, AMD K5, AMD K6, AMD Athlon, AMD Athlon MP, AMD Athlon XP, AMD Athlon 4, AMD Duron, AMD Sempron
64-bit Intel Itanium, Intel Itanium 2, Intel Xeon, Intel Core, Intel Core 2, AMD Athlon 64, AMD Athlon X2, AMD Athlon FX, AMD Turion 64, AMD Turion X2, AMD Sempron

 

Register dibagi menjadi lima bagian besar yaitu :

 

1. Segment Register (16 bit)

Register untuk menunjukkan alamat dari suatu segment. Yang termasuk register segment :

  • CS (Code Segment)

Menunjukkan alamat segment dari program yang sedang aktif.

  • DS (Data Segment)

Menunjukkan alamat segment dari data program (variabel).

  • SS (Stack Segment)

Menunjukkan alamat segment dari stack yang digunakan program.

  • ES (Extra Segment)

Merupakan register segment cadangan.

 

2. Pointer dan Index Register (16 bit)

Register untuk menunjukkan alamat dari suatu offset. Yang termasuk register pointer dan index :

  • SP (Stack Pointer)

Berpasangan dengan SS (SS : SP).

  • BP (Base Pointer)

Berpasangan dengan SS (SS : BP).

  • DI (Destination Index)

Berpasangan dengan ES (ES : DI). Dipakai untuk operasi string.

  • SI (Source Index)

Berpasangna dengan DS (DS : SI). Dipakai untuk operasi string.

 

3. General Purpose Register (16 bit)

Register ini dapat digunakan untuk berbagai keperluan, tetapi masing – masing juga memiliki fungsi khusus. Jenis register ini memiliki ciri khas, yaitu dapat dibagi lagi menjadi register 8 bit, register tinggi/high, dan register rendah/low. Yang termasuk register general purpose :

  • AX –> AH|AL (Accumulator)

Untuk menangani operasi arithmatika.

  • BX –> BH|BL (Base)

Untuk menunjukkan alamat offset.

  • CX –> CH|CL (Counter)

Untuk looping, menunjukkan berapa kali looping terjadi.

  • DX –> DH|DL (Data)

Untuk menampung sisa pembagian bilangan 16 bit.

 

4. Index Pointer Register (16 bit)

Hanya terdiri dari 1 register yaitu IP yang berpasangan dengan reguster CS (CS : IP) untuk menunjukkan alamat instruksi selanjutnya yang akan dieksekusi.

 

5. Flags Register (1 bit)

Register ini berfungsi untuk menunjukkan suatu kondisi (ya atau tidak).

Register ini hanya bernilai 0 dan 1. Yang termasuk register flags :

  • OF (Overflow Flag) 1 jika terjadi overflow
  • SF (Sign Flag) 1 jika digunakan bilangan bertanda
  • ZF (Zero Flag) 1 jika hasil operasi bernilai 0
  • CF (Carry Flag) 1 jika operasi menghasilkan carry
  • PF (Parity Flag) 1 jika hasil operasi bilangan genap
  • DF (Direction Flag) 1 jika alur proses alur proses menurun pada string
  • IF (Interrupt Flag) 1 jika proses dapat diinterupsi
  • TF (Trap Flag) 1 jika dapat ditrace / debug
  • AF (Auxiliary Flag) digunakan pada operasi bilangan BCD
  • NT (Nested Task) digunakan untuk menangani interupsi beruntun
  • IOPL (I/O Protection Level) digunakan untuk mode proteksi (2 bit)

4.5 Informasi masing-masing elemen kompetensi

4.5.1 Memilih Karakteristik Mikroprosesor

 

1) Pengetahuan Kerja

 

Jenis Arsitektur Mikroprosesor

Sejak Intel mengeluarkan seri 4004 sekitar tahun 1970 dikenal ada dua jenis arsitektur mikroprosesor dilihat dari cara penggunaan memorinya. Sebagai pionir era komputer digital, nama Harvard dan Von Neumann diadopsi untuk menggambarkan dua tipe arsitektur mikroprosesor. Kedua arsitektur itu berbeda pada cara penempatan memorinya dan dikenal dengan sebutan arsitektur Harvard dan arsitektur Von Neumann.

 

Perbedaan arsitektur Harvard dengan Von Neumann

Arsitektur Von Neumann adalah arsitektur komputer yang menempatkan program (ROM=Read Only Memory) dan data (RAM=Random Access Memory) dalam peta memori yang sama. Arsitektur ini memiliki address dan data bus tunggal untuk mengalamati program (instruksi) dan data. Contoh dari mikrokontroler yang memakai arsitektur Von Neumann adalah keluarga 68HC05 dan 68HC11 dari Motorola.  Sebaliknya, arsitektur Harvard memiliki dua memori yang terpisah satu untuk program (ROM) dan satu untuk data (RAM). Intel 80C51, keluarga Microchip PIC16XX, Philips P87CLXX dan Atmel AT89LSXX adalah contoh dari mikroprosesor yang mengadopsi arsitektur Harvard. Kedua jenis arsitektur ini masing-masing memiliki keungulan tetapi juga ada kelemahannya.

 

Kelebihan dan kekurangan arsitektur Von Neumann

Dengan arsitektur Von Neuman prosesor  tidak perlu membedakan program dan data. Prosesor tipe ini tidak memerlukan control bus tambahan berupa pin I/O khusus untuk membedakan program dan data. Karena kemudahan ini, tidak terlalu sulit bagi prosesor yang berarsitektur Von Neumann untuk menambahan peripheral eksternal seperti A/D converter, LCD, EEPROM dan devais I/O lainnya. Biasanya devais eksternal ini sudah ada di dalam satu chips, sehingga prosesor seperti ini sering disebut dengan nama mikrokontroler (microcontroller).

Gambar 1 Arsitektur Von Neumann (Elemen Kompetensi 1)

Keuntungan lain dengan arsitektur Von Neumann adalah pada fleksibilitas pengalamatan program dan data. Biasanya program selalu ada di ROM dan data selalu ada di RAM. Arsitektur Von Neumann memungkinkan prosesor untuk menjalankan program yang ada didalam memori data (RAM). Misalnya pada saat power on, dibuat program inisialisasi yang mengisi byte di dalam RAM. Data di dalam RAM ini pada gilirannya nanti akan dijalankan sebagai program. Sebaliknya data juga dapat disimpan di dalam memori program (ROM). Contohnya adalah data look-up-table yang ditaruh di ROM. Data ini ditempatkan di ROM agar tidak hilang pada saat catu daya mati. Pada mikroprosesor  Von Neumann, instruksi yang membaca data look-up-table atau program pengambilan data di ROM,  adalah instruksi pengalamatan biasa. Sebagai contoh, pada mikrokontroler 8bit Motorola 68HC11 program itu ditulis dengan :

LDAA $4000  ; A <– $4000

Program ini adalah instruksi untuk mengisi accumulator A dengan data yang ada di alamat 4000 (ROM).

Instruksi tersebut singkat hanya perlu satu baris saja. Pada prinsipnya, kode biner yang ada di ROM atau di RAM bisa berupa program dan bisa juga berupa data.

Arsitektur Von Neumann bukan tidak punya kelemahan, diantaranya adalah bus tunggalnya itu sendiri. Sehingga instruksi untuk mengakses program dan data harus dijalankan secara sekuensial dan  tidak bisa dilakukan overlaping untuk menjalankan dua isntruksi yang berurutan. Selain itu bandwidth program harus sama dengan banwitdh data. Jika memori data adalah 8 bits maka program juga harus 8 bits. Satu instruksi biasanya terdiri dari opcode (instruksinya sendiri) dan diikuti dengan operand (alamat atau data). Karena memori program terbatas hanya 8 bits, maka instruksi yang panjang harus dilakukan dengan 2 atau 3 bytes. Misalnya byte pertama adalah opcode dan byte berikutnya adalah operand. Secara umum  prosesor Von Neumann membutuhkan jumlah clock CPI (Clock per Instruction) yang relatif lebih banyak dan walhasil eksekusi instruksi dapat menjadi relatif lebih lama.

Kelebihan dan kekurangan arsitektur Harvard

Gambar 2 Arsitektur Harvard (Elem Kompetensi 1)

Pada mikroprosesor yang berarsitektur Harvard, overlaping pada saat menjalankan instruksi bisa terjadi. Satu instruksi biasanya dieksekusi dengan urutan fetch (membaca instruksi ), decode (pengalamatan), read (membaca data), execute (eksekusi) dan write (penulisan data) jika perlu. Secara garis besar ada dua hal yang dilakukan prosesor yaitu fetching atau membaca perintah yang ada di memori program (ROM) dan kemudian diikuti oleh executing berupa read/write dari/ke memori data (RAM).  Karena pengalamatan ROM dan RAM yang terpisah, ini memungkinkan CPU untuk melakukan overlaping pada saat  menjalankan instruksi. Dengan cara ini dua instruksi yang beurutan dapat dijalankan pada saat yang hampir bersamaan. Yaitu, pada saat CPU melakukan tahap executing instruksi yang pertama, CPU sudah dapat menjalankan fetching instruksi yang ke-dua dan seterusnya. Ini yang disebut dengan sistem pipeline, sehingga program keseluruhan dapat dijalankan relatif lebih cepat.

Gambar 3 Prinsip Pipeline

Pada arsitektur Harvard, lebar bit memori program tidak mesti sama dengan lebar memori data. Misalnya pada keluarga PICXX dari Microchip,  ada yang memiliki memori program dengan lebar 12,14 atau 16 bits, sedangkan lebar data-nya tetap 8 bits.  Karena bandwith memori program yang besar (16 bits), opcode dan operand dapat dijadikan satu dalam satu word instruksi saja. Tujuannya adalah supaya instruksi dapat dilakukan dengan lebih singkat dan cepat.

Kedua hal di atas inilah yang membuat prosesor ber-arsitektur Harvard bisa memiliki CPI yang kecil. PICXX dari Microchip dikenal sebagai mikroprosesor yang memiliki 1 siklus mesin (machine cycle) untuk tiap instruksinya, kecuali instruksi percabangan.

Dari segi kapasitas memori, tentu arsitektur Harvard memberi keuntungan. Karena memori program dan data yang terpisah, maka kavling total memori program dan data dapat menjadi lebih banyak. Mikrokontroler 8bit Motorola 68HC05 memiliki peta memori 64K yang dipakai bersama oleh RAM dan ROM. Oleh sebab itu pengalamatan ROM dan RAM hanya dapat mencapai 64K dan tidak lebih. Sedangkan pada mikrokontroler  Intel keluarga 80C51 misalnya, memori program (ROM) dan memori data (RAM) masing-masing bisa mencapai 64K.

Tetapi ada juga kekurangannya, arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM. Kedengarannya aneh, tetapi arsitektur ini memang tidak memungkinkan untuk mengakses data yang ada di ROM. Namun hal ini bisa diatasi dengan cara membuat instruksi dan mekanisme khusus untuk pengalamatan data di ROM. Mikroprosesor yang memiliki instruksi seperti ini biasanya disebut ber-arsitektur Modified Harvard.  Instruksi yang seperti ini dapat ditemukan pada keluarga MCS-51 termasuk Intel 80C51, P87CLXX dari Philips dan Atmel AT89LSXX. Tetapi instruksi itu keseluruhannya menjadi program yang lebih panjang seperti contoh program dengan 80C51 berikut ini.

MOV DPTR,#4000    ;DPTR = $4000

CLR A                     ;@A = 0

MOVC A,@A+DPTR   ;A <– (DPTR+@A)

Urutan program di atas adalah :

1. load/isi data pointer dengan #4000

2. set accumulator A = 0 sebagai offset

3. load/isi accumulator A dengan data di alamat 4000+offset

Bandingkan dengan instruksi 68HC11 yang cukup dengan satu instruksi LDAA $4000.Seperti yang dikemukan pada tulisan ini, Arsitektur Harvard dan Von Neuman keduanya memiliki kelebihan sekaligus juga kekurangan. Dalam memilih prosesor tentu saja tidak hanya dengan mempertimbangkan arsitekturnya. Motorola dengan varian singlechip-nya  ada yang dilengkapi dengan konventer A/D dan D/A, PWM control, port I/O, EEPROM dan sebagainya. Tetapi tidak ketinggalan juga keluarga Intel 80C51 dan klonnya, memperkenalkan bus serial I2C yang sangat praktis untuk penambahan devais eksternal. Intel based MCS-51 adalah arsitektur yang paling banyak diadopsi misalnya oleh Philips  dan Atmel, sehingga kompatibilitas diantaranya semakin besar.

Karena desain arsitektur yang demikian, jumlah siklus mesin (machine cycle) per instruksi keluarga 68HC05/11 relatif lebih banyak dari keluarga 80C31/51. Misalnya instruksi 68HC05 Motorola untuk program percabangan, seperti contoh dibawah ini diselesaikan dengan 6 siklus mesin.

 

Motorola 68HC05/11 :

DECX

BNE LOOP

 

Intel 80C31/51 :

DJNZ R0,LOOP

 

Dibandingkan dengan 80C51 Intel, instruksi yang sama dapat diselesaikan dengan 2 siklus mesin saja.

Namun demikian satu siklus instruksi, kecepatannya ditentukan juga oleh peran kristal/osilator. Satu siklus mesin  mikrokontroler Motorola adalah frekuensi kristal dibagi 4 sedangkan untuk Intel dibagi 12. Sehingga jika menggunakan kristal yang sesuai, program percabangan itu dapat diselesaikan oleh kedua contoh mikrokontroler di atas dalam waktu yang relatif sama.

 

 

Kegiatan dan komponen-komponen penunjang CPU

Berikut adalah aksi yang dilakukan CPU terhadap peripheral lainnya dalam memproses data :

  • CPU – Memori, perpindahan data dari CPU ke memori dan sebaliknya.
  • CPU – I/O, perpindahan data dari CPU ke modul I/O dan sebaliknya.
  • Pengolahan Data, CPU membentuk sejumlah operasi aritmatika dan logika terhadap data.
  • Kontrol, merupakan instruksi untuk pengontrolan fungsi atau kerja. Misalnya instruksi pengubahan urusan eksekusi.

 

CPU adalah jantungnya komputer, karena dalam CPU ini semua data dan informasi diolah agar nantinya kita dapat mendapatkan keluaran seperti yang kita inginkan. Di dalam CPU terdapat 3 bagian utama yang akan mengontrol kegiatan-kegiatan sistem komputer yaitu Control Unit, Arithmatic Logic Unit (ALU) dan Internal Storage/Memory.

• Control Unit

Control Unit adalah bagian CPU yang bertugas mengatur dan mengendalikan semua proses yang dilakukan oleh komputer sesuai dengan program atau instruksi yang diberikan kepadanya

 

• Aritmatic Logic Unit (ALU)

ALU bertugas melakukan perhitungan-perhitungan dan perbandingan-perbandingan, baik logika maupun aritmarika yang dibutuhkan dalam suatu proses kerja di dalam komputer.

 

• Internal Memory

Internal memory adalah tempat penyimpanan data atau program yang sedang diproses oleh komputer. Penyimpanan data di internal memory ini bersifat sementara, artinya bila komputer dimatikan maka data tersebut akan hilang.

 

Selain CPU, perangkat keras (Hardware) lain yang dibutuhkan untuk pengolahan data adalah :

  • Input Device (Peralatan Masukan)

keyboard, mouse, track-ball, joystick, scanner, light pen, microphone, dll.

  • Output Device (Peralatan Keluaran)

monitor, printer, plotter, speaker, dan lain-lain.

  • Storage Device (Peralatan Penyimpan Data)

Floppy Disk Hard Disk / Fixed Disk CD-ROM, Tape Magnetic, Drum Magnetic, Zip Disk, dll.

 

Perangkat Lunak (Software) dibutuhkan dalam pengolahan data dan memecahkan suatu masalah dengan jalan perhitungan-perhitungan yang dilakukan di dalam sebuah sistem komputer. Jenis perangkat lunak sangat banyak dan beraneka ragam, beberapa yang penting untuk diketahui antara lain adalah :

 

  • Sistem Operasi (Operating System) : MS-DOS (Disk Operating System), MS-Windows, IBM OS/2, Unix Family (Unix, Xenix, Aix, Linux), dll.
  • Language : BASIC, Pascal, Bahasa C, Assembly, COBOL, Fortran, PL/1, Prolog, dll.
  • Word Processor: Word Star, Word Perfect, Amipro, MS Word, dll.
  • Spreadsheet : Lotus 123, Quattro, MS Excell, Shymponi. dll.
  • Database : Dbase III+, Foxbase, Clipper, Foxpro, Oracle, dll.

 

Brainware atau sumber daya manusia yang mempunyai keahlian yang berhubungan dengan komputer. Beberapa profesi yang berhubungan dengan komputer antara lain :

 

1.  System Analyst : adalah seseorang yang merancang sistem komputer dalam suatu perusahaan.

2. Programmer : adalah seseorang yang merancang dan membuat program-program yang dibutuhkan oleh suatu perusahaan. Seorang programmer akan membuat program berdasarkan spesifikasi / desain yang dibuat oleh sistem analyst.

3. Operator : orang yang bertugas untuk mengoperasikan komputer serta melaksanakan proses pengolahan data dengan mempergunakan komputer.

 

 

2) Keterampilan Kerja

 

Instruksi pada CPU :

Empat langkah CPU menjalankan instruksi

  1. CU mengambil instruksi dari RAM
  2. CU mengartikan instruksi tersebut
  3. ALU melakukan perhitungan
  4. ALU menyimpan hasilnya di RAM

 

Waktu pengerjaan:

  • Instruction time (I-time)    : langkah-1 dan langkah-2
  • Execution time (E-time)     : langkah-3 dan langkah-4
  • Machine cycle                   : I-Time + E-Time

 

Fungsi dasar komputer adalah memproses (execute) program, yang berisi gugus instruksi yang disimpan dalam memori.

Dua tahap utama:

  • FETCH : processor membaca instruksi dari memori pada satu waktu.
  • EXECUTE : processor memproses setiap instruksi yang ada.

 

 

 

 

Gambar 4 Siklus Instruksi  - Elemen Kompetensi 1

( tentang memilih karakteristik prosesor)

 

Instruksi Komputer

 

Gambar 5 Instruksi CPU –Elemen Kompetensi 1

(tentang memilih karakteristik mikroprosesor)

Proses Instruksi

1. Ambil instruksi dari memori ke IR.

2. Ubah PC ke instruksi berikutnya.

3. Menentukan jenis instruksi.

4. Jalankan instruksi.

5. Kembali ke langkah (1).

Contoh Instruksi

C := A + B;

• LOAD A

• ADD B

• STORE C

 

Tahap Pengerjaan Instruksi pada memori :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Gambar 5 Tahap-tahap pengerjaan Contoh Instruksi (Elemen kompetensi 1)

 

CPU Clock Speed

Kecepatan clock speed CPU diukur dalam MHz (Mega Hertz). Makin besar ukuran clock speed CPU semakin cepat RAM . Berikut ini tabel yang menggambarkan hubungan clock speed dalam system bus dengan kecepatan RAM yang diperlukan.

 

Clock speed

Time per clock tick

20 MHz

50 ns

25 MHz

40 ns

33 MHz

30 ns

50 MHz

20 ns

66 MHz

15 ns

100 MHz

10 ns

133 MHz

6 ns

Tabel  Kecepatan Clock Speed

(tentang memilih karakteristik mikroprosesor)

 

Berikut adalah daftar kecepatan Front Side Bus, Jenis Processor dan CPU Clock Speednya

 

66MHz (Various Celeron and older): 66MHz clock
100MHz (Pentium II / Pentium III / K6): 100MHz clock
133MHz (Pentium II / Pentium III / K6): 133MHz clock
200MHz (Athlon, Duron, Thunderbird): 100MHz clock
266MHz (Thunderbird, XP): 133MHz clock
333MHz (XP): 166MHz clock
400MHz (Pentium 4): 100MHz clock
400MHz (AMD XP): 200MHz clock
533MHz (Pentium 4): 133MHz clock
800MHz (Pentium 4): 200MHz clock
800MHz (AMD64): 200MHz clock
1066MHz (Pentium 4/LGA775): 266MHz clock
1333MHz (Pentium 4/LGA775): 333MHz clock

 

 

 

 

Memori

Memori dengan komputer memiliki hubungan yang tak dapat dipisahkan, karena setiap komputer memerlukan memori sebagai tempat kerjanya. Memori ini dapat berfungsi untuk memuat program dan juga sebagai tempat untuk menampung hasil proses.

Yang perlu kita perhatikan bahwa memori untuk menyimpan program maupun hasil dari pekerjaan bersifat volatile yang berarti bahwa data yang disimpan cuma sebatas adanya aliran listrik. Jadi bila listrik mati maka hilang pulalah semua data yang ada di dalamnya. Hal ini mengakibatkan diperlukannya media penyimpan kedua yang biasanya berupa disket maupun hard disk.

 

Organisasi Memori Pada PC

Memori yang ada pada komputer perlu diatur sedemikian rupa sehingga mudah dalam pengaksesannya. Oleh sebab itu dikembangkanlah suatu metode yang efektif dalam pengorganisasiannya. Pada bagian ini akan dibahas mengenai pengorganisasian memori ini.

 

Pembagian Memori

Memori komputer terbagi atas 16 blok dengan fungsi-fungsi khusus yang sebagian besar adalah sebagai RAM (Random Access Memory) yang berfungsi sebagai penyimpan bagi hasil pengolahan pada komputer itu sendiri.

 

 

Gambar 7 Jalur Internal Mikroprosesor dengan System Bus – Elemen Kompetensi 1

(tentang memilih arsitektur mikroprosesor)

 

System Bus berfungsi untuk melakukan transfer data antara mikroprosesor dengan memori (ROM dan RAM) dan I/O interface.

Ada 3 Bus utama yang sering terdapat pada kebanyakan mikroprosesor

  1. PCI Bus
  2. AGP Bus
  3. Front Side Bus (FSB)

Bus adalah kumpulan konduktor, yang membawa sinyal-sinyal : alamat, data, dan kontrol.

Bus alamat adalah kumpulan konduktor, yang membawa kode-kode alamat dari mikroprosesor ke unit-unitnya, dan memiliki sifat aliran satu arah.

Bus control adalah kumpulan konduktor, yang membawa sinyal-sinyal kontrol.

Bus data adalah kumpulan konduktor, yang membawa kode-kode instruksi atau data dari mikroprosesor ke unit-unitnya atau sebaliknya, dan memiliki sifat aliran dua arah.

 

Peralatan Input Output

Dua jenis peralatan IO:

  1. Block Devices

Data dikirim atau diterima dalam bentuk blok (disk, pita magnetik). Informasi disimpan dalam blok berukuran tetap; setiap blok memiliki alamat sendiri

  1. Character devices

Data dikirim atau diterima dalam bentuk karakter (line printer, pita kertas, punched card, mouse, network interface). Tidak memiliki alamat ataupun operasi seek

 

 

 

Tabel Layer pada Sistem Software I/O (Elemen Kompetensi 1)

 

 

 

Gambar  8 Komponen Register pada CPU – Elemen Kompetensi 1

(tentang memilih karakteristik mikroprosesor)

 

 

  • MAR, menentukan alamat memori untuk baca atau tulis berikutnya.
  • MBR, berisi data untuk ditulis kedalam memori atau menerima data yang dibaca dari memori.
  • I/O AR, menentukan peralatan I/O khusus.
  • I/O BR, untuk pertukaran data antara modul I/O dengan CPU.

Teknik Interupsi

Interupsi adalah suatu permintaan khusus kepada mikroposesor untuk melakukan sesuatu. Bila terjadi interupsi, maka komputer akan menghentikan dahulu apa yang sedang dikerjakannya dan melakukan apa yang diminta oleh yang menginterupsi.

Pada IBM PC dan kompatibelnya disediakan 256 buah interupsi yang diberi nomor 0 sampai 255. Nomor interupsi 0 sampai 1Fh disediakan oleh ROM BIOS, yaitu suatu IC didalam komputer yang mengatur operasi dasar komputer. Jadi bila terjadi interupsi dengan nomor 0-1Fh, maka secara default komputer akan beralih menuju ROM BIOS dan melaksanakan program yang terdapat disana. Program yang melayani suatu interupsi dinamakan Interrupt Handler.

 

Vektor Interupsi

Setiap interrupt akan mengeksekusi interrupt handlernya masing-masing berdasarkan nomornya. Sedangkan alamat dari masing- masing interupt handler tercatat di memori dalam bentuk array yang besar elemennya masing-masing 4 byte. Keempat byte ini dibagi lagi yaitu 2 byte pertama berisi kode offset sedangkan 2 byte berikutnya berisi kode segmen dari alamat interupt handler yang bersangkutan. Jadi besarnya array itu adalah 256 elemen dengan ukuran elemen masing-masing 4 byte. Total keseluruhan memori yang dipakai adalah sebesar 1024 byte (256 x 4 = 1024) atau 1 KB dan disimpan dalam lokasi memori absolut 0000h sampai 3FFh. Array sebesar 1 KB ini disebut Interupt Vector Table (Table Vektor Interupsi). Nilai-nilai yang terkandung pada Interupt Vector Table ini tidak akan sama di satu komputer dengan yang lainnya.

Interupt yang berjumlah 256 buah ini dibagi lagi ke dalam 2 macam yaitu:

  • Interupt 00h – 1Fh (0 – 31) adalah interrupt BIOS dan standar di semua komputer baik yang menggunakan sistem operasi DOS atau bukan. Lokasi Interupt Vector Table-nya ada di alamat absolut 0000h-007Fh.
  • Interupt 20h – FFh (32 – 255) adalah interrupt DOS. Interrupt ini hanya ada pada komputer yang menggunakan sistem operasi DOS dan Interupt Handler-nya di-load ke memori oleh DOS pada saat DOS digunakan. Lokasi Interupt Vector Table-nya ada di alamat absolut 07Fh-3FFh.

 

 

Tabel BIOS Interrupt (Elemen Kompetensi 1)

 

Interrupt berikut telah dipastikan kegunaannya oleh sistem untuk keperluan yang khusus , tidak boleh dirubah oleh pemrogram seperti yang lainnya.

  • DEVIDE BY ZERO : Jika terjadi pembagian dengan nol maka proses akan segera dihentikan.
  • SINGLE STEP : Untuk melaksanakan / mengeksekusi intruksi satu persatu.
  • NMI : Pelayanan terhadap NMI (Non Maskable Interrupt) yaitu interupsi yang tak dapat dicegah.
  • BREAK POINT : Jika suatu program menyebabkan overflow flag menjadi 1 maka interrupt ini akan melayani pencegahannya dan memberi tanda error.

 

 

 

Tabel DOS Interrupt (Elemen Kompetensi 1)

 

Didalam pemrograman dengan bahasa assembler kita akan banyak sekali menggunakan interupsi untuk menyelesaikan suatu tugas.

 

3) Sikap Kerja

Beberapa hal yang yang harus diperhatikan di lingkungan kerja yaitu :

1. Memahami arsitektur mikroprosesor

2. Mempelajari spesifikasi dan jalur internal dalam mikroprosesor

3. Memahami teknik interupsi

4.5.2  Memilih Karakteristik peripheral

1) Pengetahuan Kerja

 

Contoh Peripherhal yang terpasang pada mikroprosesor yaitu I2C Peripheral

I2C Peripheral merupakan suatu modul yang tersusun atas Real Time Clock (RTC) sebagai penghitung waktu, dan EEPROM yang kesemuanya menggunakan antarmuka I2C. Modul ini dapat ditambah dengan PCF8591 (opsional) sebagai Analog to Digital Converter (ADC) untuk mengubah tegangan analog ke data digital dan Digital to Analog Converter (DAC) untuk mengubah data digital ke tegangan analog. Selain itu juga terdapat 2 soket 8 pin tambahan sebagai tempat jika ingin menambahkan EEPROM seri AT24CXXX. Modul ini dapat difungsikan sebagai input dan output dalam aplikasi seperti pengukur suhu, kendali kecepatan motor, absensi, datalogger, tampilan waktu, robotik, dan sebagainya.

 

Spesifikasi Hardware

1.  Menggunakan antarmuka I2C dengan 2 jalur (Clock dan Data).

2.  PCF8591 (opsional) dengan 1 channel 8-bit DAC dan 4 channel

8-bit ADC dalam berbagai mode input (single-ended dandifferential).

ADC :

Input range : 0 – 2,5 volt (single ended)

+1,25V (differential)

Output Serial I2C-bus

Conversion time : 90 ns (max)

DAC:

Input Serial I2C-bus

Output range : 0 – 2,5 volt

Settling time : 90 ns (max)

3.  DS1307 sebagai penghitung waktu (hari, tanggal, bulan, tahun,jam, menit, dan detik) dalam mode 12-jam atau 24-jam hingga tahun 2100 dengan kompensasi tahun kabisat. Tersedia 56 byte (NV/Non-Volatile) SRAM serta baterai back-up.

4. AT24C01A dengan kapasitas 128 byte yang dapat ditulis hingga 1 juta kali.

5. Alamat masing-masing IC:

6. Membutuhkan tegangan + 5VDC sebagai catu daya.

7. Tersedia contoh program untuk DT-51™ Low Cost Series dan DT-AVR Low Cost Series dalam bahasa BASIC dan C untuk MCS-51® (BASCOM-8051© dan Vision2©) maupun AVR® (BASCOM-AVR© dan CodeVisionAVR©).

8. Kompatibel penuh dengan DT-51™ Low Cost Series, DT-AVR Low Cost Series, DT-51™ Minimum System (MinSys) ver 3.0,

 

Prosedur Testing

1. Hubungkan I2C Peripheral dengan DT-51™ Low Cost Series atau DT-AVR Low Cost Series dengan cara menghubungkan SCL ke Port 1.6 atau Port B.6 dan SDA ke Port 1.7 atau Port B.7.

2. Hubungkan semua A/I dengan A/O (jika ada PCF8591).

3. Hubungkan semua sumber catu daya dari modul mikrokontroler ke I2C Peripheral. Hubungkan juga kabel serial dari modul mikrokontroler ke komputer.

4. Programlah file HEX atau BIN yang sesuai dengan keluarga mikrokontroler (dengan DT-51™ ProgPAL, AT89S In System Programmer, AVR In System Programmer, atau parallel programmer). Setelah proses pemrograman selesai, jalankan I2Cstest.EXE dan lakukan langkah berikut:

1. Pilih COM port yang terhubung ke modul mikrokontroler.

2. Ubah nilai V Reference bila diperlukan.

3. Tekan “Start” sebelum menekan tombol lain.

4. Geser Slider di bawah tulisan Digital to Analog Converter

untuk mengeluarkan tegangan analog pada A/O (jika ada PCF8591).

5. Pilih Channel di pojok kiri bawah untuk membaca tegangan analog dari A/I yang dipilih. Nilai A/I akan berbeda sedikit dengan A/O (jika ada PCF8591).

6. Tekan “Set RTC” untuk menyesuaikan waktu pada I2C Peripheral dengan waktu pada komputer. Keduanya akan berbeda beberapa detik.

7. Pilih Frekuensi Square Wave yang diinginkan dan tekan “Generate” untuk menghasilkan gelombang kotak di SQWOUT. Frekuensi ini dapat dideteksi dengan osiloskop atau Multimeter dengan pengukur Hz.

8. Pilih Alamat Byte dan tekan “Tulis ke RAM” untuk menulis RAM DS1307 atau tekan “Baca dari RAM” untuk membaca isi RAM.

9. Pilih Alamat EEPROM untuk memilih EEPROM yang akan diakses (sesuai nilai BCD A2-A1-A0).

10. Pilih Alamat Byte dan tekan “Tulis ke EEPROM” untuk menulis ke EEPROM atau tekan “Baca dari EEPROM” untuk membaca isi EEPROM.

11. Tekan “Engage!” untuk melakukan pengujian yang lebih teliti. Sebuah jendela baru akan muncul dengan petunjuk yang tertera dalam teks berwarna kuning. Ikuti masingmasing petunjuk sebelum menekan “Start”. Tekan Close untuk kembali ke program utama.

 

Peripheral Internal Mikroprosesor lain yang umum dimiliki semua jenis CPU adalah PCI dan AGP

 

PCI (Peripheral Component Interconnect)

Setelah munculnya bus ISA yang mempunyai keterbatasan kecepatan dan jumlah bit, dikenalkan lagi bus EISA (Extended ISA), VESA (Video Electronics Standard Association) dan PCI, karena hadirnya mikroprosesor kecepatan tinggi seperti 486 dan Pentium dibutuhkan bus dengan bandwith  kecepatan tinggi. PCI berbasis pada local bus yang cepat. Pada perkembangannya, PCI diadopsi menjadi standar industri di bawah administrasi dari PCI Special Interest Group (PCI-SIG) yang kemudian definisi dari PCI diperluas menjadi konektor standa interface bus (slot) ekspansi.

PCI mempunyai interface sebesar 64 bit dan mengimpelentasikan lebar jalur  32 bit untuk bus data dan alamat (AD[31:0]) (bandingkan dengan  ISA ,16 bit). PCI ialah bus dengan arsitektur sinkronous, yakni bus dimana semua transfer data dijalankan secara relatif bersamaan terhadap pulsa detak sistem. PCI yang sekarang, spesifikasinya diperluas untuk mendukung operasi pada 133 MHz, namun yang banyak digunakan komputer sekarang tetap 33 MHz.

PCI mendukung mekanisme auto-configuration dimana setiap piranti PCI terdapat sekelompok register konfigurasi yang memungkinkan identifikasi/pengenalan akan jenis piranti seperti SCSI , Video, Ethernet dan lainnya. PCI mendukung pemakaian tegangan 5 V dan 3.3 Volt. Namun pin tegangan 3.3 Volt baru dihubungkan ke slot PCI pada komputer keluaran terakhir. PCI local bus adalah independen, dapat digunakan pada berbagai mikroprosesor, bukan hanya pada prosesor INTEL.

 

AGP (Accelerated Graphics Port)

AGP didesain untuk motherboard Pentium II ke atas, AGP dianggap mampu bekerja 4 kali lebih cepat dibandingkan bus PCI yang menggunakan pipelining. Bus ini dibuat oleh intel sebagai bus yang didisain khusus untuk aplikasi video dan grafis.

 

Tabel Perbedaan AGP dengan PCI


 

AGP PCI
Permintaan Pipelined Tidak pipelined
Address/data de-multiplexed Address/data multiplexed
Peak pada 533MB/s dalam 32 bits Peak pada 133MB dalam 32 bits
Single target, single master Multi-target, multi-master
Hanya Memory read/write Link ke seluruh sistem
Antrian prioritas High/low Tidak ada  Antrian prioritas

 

Karena kelebihan inilah AGP mampu membuat frame rate lebih bagus dan menampilkan grafik 3D yang lebih realistis. AGP berbasis pada PCI dengan beberapa tambahan dan peningkatan, namun secara elektris maupun logis tidak bergantung pada PCI. Namun memiliki tambahan sinyal , letaknya juga dibedakan dengan slot PCI. Dalam sebuah motherboard hanya bisa terdapat 1 slot AGP.

AGP 1.0 dirilis juli 1996 dengan ketentuan clock rate  66MHz dengan pensinyalan 1x atau 2x dengan menggunakan tegangan kerja sebesar 3.3Volt. AGP versi 2.0 dirilis Mei 1998 dengan tambahan kemampuan pensinyalan 4x dan tegagan kerja 1.5Volt. slot untuk AGP 1x/2x berbeda dengan slot AGP 4x, dimana pada AGP 4x tidak terdapat pembagi di tengah slot ( sebagai key notch ). Penting : beberapa motherboard yang menyediakan AGP 4x hanya mendukung AGP 4x dan tegangan 1.5 Volt artinya tidak kopatibel dengan versi sebelumnya.

Pertukaran data (transfer data) pada peripheral

Bus  PCI saat ini mendukung transfer data hingga 132 MB/s, dimana AGP (pada 66MHz) mendukung hingga 533 MB/s. AGP  dapat melakukan ini karena kemampuannya untuk mentransfer data pada ujung naik dan turun detak 66MHz.          DIME (Direct Memory Execute) ialah fitur yang paling penting dari AGP. Chip grafik AGP mempunyai kemampuan untuk mengakses memori utama secara langsung untuk operasi complex dari pemetaan bentuk.

2) Ketrampilan Kerja

Beberapa ketrampilan kerja telah dibahas pada bagian Pengetahuan Kerja.

 

3) Sikap Kerja

Beberapa sikap kerja yang perlu diperhatikan yaitu :

1. Menentukan proses real time yang cocok

2. Sistem operasi harus disesuaikan dengan pemrograman real time

4.5.3  Memanfaatkan Sistem Operasi Real Time

1) Pengetahuan Kerja

 

Real Time Operating System

 

Pada Real Time Operating System, waktu (time) adalah Key parameternya. Real Time System yang disebut juga dengan Sistem waktu nyata adalah Sistem yang harus menghasilkan respon yang tepat dalam batas waktu yang telah ditentukan. Jika respon komputer melewati batas waktu tersebut, maka terjadi degradasi performansi atau kegagalan sistem. Sebuah Real time system adalah sistem yang kebenarannya secara logis didasarkan pada kebenaran hasil-hasil keluaran sistem dan ketepatan waktu hasil-hasil tersebut dikeluarkan. Aplikasi penggunaan sistem seperti ini adalah untuk memantau dan mengontrol peralatan seperti motor, assembly line, teleskop, atau instrumen lainnya. Peralatan telekomunikasi dan jaringan komputer biasanya juga membutuhkan pengendalian secara Real time.

 

Berdasarkan batasan waktu yang dimilikinya, Real time system dibagi :
1. Hard Real time
2. Soft Real time
3. Firm Real time

 

Komponen dari Real time system ini adalah:
1. Perangkat keras,
2. Sistem Operasi Real time,
3. Bahasa Pemrograman Real time,
4. Sistem Komunikasi.

 

Sistem Operasi yang mendukung proses Real Time adalah VxWorks dan QNX.

 

VxWorks

VxWorks adalah real-time operating system yang masuk dalam keluarga Unix, dibuat dan dipasarkan oleh Wind River Systems of Alameda, California, USA.

Seperti kebanyakan Sistem Operasi Real Time lainnya, VxWorks mengandung sebuah multitasking kernel dengan pre-emptive scheduling dan respon interupsi yang cepat, extensive inter-process communications dan fasilitas sunkronisasi dan sebuah sistem file.

Fitur-fitur utama pada VxWorks yang membedakannya dengan Sistem Operasi lainnya yaitu POSIX-compliant memory management yang efisien, fasilitas multiprocessor, sebuah shell untuk user interface, kemampuan symbolic dan source level debugging, dan performance monitoring.

VxWorks pada umumnya digunakan dalam embedded systems. Tidak seperti “native” systems seperti Unix dan Forth, pengembangan VxWorks sudah selesai pada sebuah mesin “host” yang dijalankan pada Unix atau Windows, cross-compiling target software untuk dijalankan baik pada “target” CPU architectures yang bervariasi maupun pada “host” yang dituju dalam VxSim.

VxWorks sudah ditanamkan pada sejumlah platforms dan sekarang secara praktis dapat dijalankan pada semua jenis CPU modern yang digunakan pada pasar embedded. Termasuk di dalamnya  x86 family, MIPS, PowerPC, SH-4 dan realsi terdekat dari keluarga ARM, StrongARM dan xScale CPUs.

Tornado (v5) atau Workbench (v6)

Tornado adalah integrated development environment (IDE) untuk software cross-development. Tornado mengandung elemen-elemen sebagai berikut:

  • VxWorks target operating system
  • Application-building tools (cross-compiler and associated programs)
  • An integrated development environment (IDE) that facilitates managing and building projects, establishing host-target communication, and running, debugging, and monitoring VxWorks applications
  • VxSim simulator

Workbench menggantikan Tornado IDE pada versi 6 dan versi terbaru lainnya. Wind River Workbench sekarang sedang dibangun pada Eclipse technology.

Gambar 9 Produk yang menggunakan VxWorks (Elemen Kompetensi 3)

(tentang memanfaatkan Sistem Operasi Real Time)

 

 

 

 

 

The Mars Reconnaissance Orbiter uses VxWorks

 

Berikut adalah sejumlah aplikasi yang menggunakan sistem operasi VxWorks :

  • The Spirit and Opportunity Mars Exploration Rovers
  • The Mars Reconnaissance Orbiter
  • The Deep Impact space probe
  • Stardust (spacecraft)
  • The Boeing 787 airliner (in development)
  • The BMW iDrive system
  • Linksys WRT54G wireless routers (versions 5.0 and later)
  • Xerox Phaser and other Adobe PostScript-based computer printers
  • The Experimental Physics and Industrial Control System (EPICS)
  • DIGIC II image-processors by Canon
  • Thuraya SO-2510 Satellite phone and ThurayaModule
  • The Apache Longbow attack helicopter
  • The ALR-67(V)3 Radar Warning Receiver used in the A/F-18
  • Hughesnet HN7000 series satellite internet receivers (VSAT)
  • Mitel ICP 3000 IP PBX
  • Nortel Succession 1000
  • KUKA Robot Controlers
  • BGAN Explorer 110 satellite router
  • AREVA T&D Micom C264 and C264C

 

Fasilitas  untuk  akses langsung ke resource mikroprosesor yang disediakan pada computer pada umumnya dan dapat digunakan yaitu :

  • Arithmetic and Logic Unit (ALU)
  • Control Unit
  • Registers
  • CPU Interconnections
  • Memory Management Unit (MMU)

 

 

Arithmetic and Logic Unit (ALU)

Bertugas membentuk fungsi – fungsi pengolahan data komputer. ALU sering disebut mesin bahasa (machine language) karena bagian ini mengerjakan instruksi – instruksi bahasa mesin yang diberikan padanya. Seperti istilahnya ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean, yang masing – masing memiliki spesifikasi tugas tersendiri.

 

Control Unit

Bertugas mengontrol operasi CPU dan secara keselurahan mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi – fungsi operasinya. Termasuk dalam tanggung jawab unit control adalah mengambil instruksi – instruksi dari memori utama dan menentukan jenis instruksi tersebut.

 

Registers

Media penyimpan internal CPU yang digunakan saat proses pengolahan data. Memori ini bersifat sementara, biasanya digunakan untuk menyimpan data saat diolah ataupun data untuk pengolahan selanjutnya.

 

CPU Interconnections

Sistem koneksi dan bus yang menghubungkan komponen internal dan bus – bus eksternal CPU. Komponen internal CPU yaitu ALU, unit control dan register – register. Komponen eksternal CPU : sistem lainnya, seperti memori utama, piranti masukan/keluaran.

 

 

 

Gambar 10 Struktur Detail Internal Mikroprosesor – Elemen Kompetensi 3

(tentang memanfaatkan sistem operasi Real Time)

 

          Fasilitas  untuk/library untuk  mengakses langsung memory yang tersedia pada peripheral system operasi yaitu :

 

Memory Management Unit (MMU)

Perangkat keras yang memetakan address logic ke address fisik. Dalam skema MMU nilai dalam register base/relokasi ditambahkan ke setiap address proses user pada saat run di memori & program user hanya berurusan dengan address logic-nya saja; tidak melihat address fisik secara real.

 

 

 

 

Gambar 11 Cara Kerja MMU – Elemen Kompetensi 3

(tentang memanfaatkan sistem operasi Real Time)

2) Ketrampilan Kerja

Ketrampilan kerja yang diperlukan telah dibahas pada bagian Pengetahuan Kerja

 

3) Sikap Kerja

Sikap kerja harus diperhatikan dan diamati, yaitu :

1. Menggunakan sistem operasi real time yang sesuai

2. Menyediakan fasilitas atau library untuk mengakses langsung ke memori

4.5.4  Memanfaatkan pemrograman paralel

1) Pengetahuan Kerja

 

Bahasa Pemrograman

Bahasa pemrograman berfungsi sebagai media untuk menyusun dan memahami suatu program komputer serta sebagai alat komunikasi antar programmer dengan komputer. Bahasa pemrograman digolongkan menjadi beberapa tingkatan yaitu :

  1. a.   Bahasa tingkat rendah (Low Level Language)

Bahasa tingkat rendah merupakan bahasa pemrograman yang berorientasi pada mesin. Disebut tingkat rendah karena bahasa ini lebih dekat ke bahasa mesin daripada bahasa manusia. Yang tergolong dalam bahasa tingkat rendah adalah bahasa assembly.

Kelemahan bahasa tingkat rendah antara lain :

  • sulit dipelajari karena programmer harus mengetahui seluk beluk perangkat keras yang digunakan
  • bahasa assembly untuk satu jenis mikroprosesor satu dengan yang lain sangat jauh berbeda karena belum ada standardisasi. Contoh : bahasa assembly untuk mikroprosesor Intel 8088 dengan bahasa assembly untuk mikroprosesor Z-80 sangat jauh berbeda
  • fungsi-fungsi yang tersedia sangat terbatas, misalnya tidak ada fasilitas untuk pemrograman grafik, fungsi-fungsi numerik & string, dan lain-lain.

Selain memiliki kelemahan seperti tersebut di atas, bahasa assembly memiliki beberapa kelebihan yang tidak dimiliki oleh bahasa lain yaitu :

  • kecepatan eksekusi dari program yang ditulis dengan bahasa assembly sangat tinggi, paling cepat dibanding dengan program-program yang dibuat menggunakan bahasa yang lain
  • executable file yang dihasilkan oleh bahasa assembly ukurannya paling kecil. Buktinya : hampir semua program virus yang banyak beredar adalah dibuat dengan menggunakan bahasa assembly karena ukurannya paling kecil, sehingga kehadiran virus tersebut menjadi lebih sulit terdeteksi.

 

  1. b.   Bahasa tingkat tinggi (High Level Language)

Bahasa tingkat tinggi lebih dekat ke bahasa manusia dari pada bahasa mesin. Bahasa tingkat tinggi merupakan bahasa pemrograman yang memiliki aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar yang mudah dipahami oleh manusia. Yang tergolong bahasa tingkat tinggi antara lain : BASIC, Fortran, COBOL, Pascal, Prolog, C, dll.

Ada sebagian para pakar yang menyebut bahasa C sebagai bahasa tingkat menengah (middle level language), karena dianggap bahasa C adalah bahasa tingkat tinggi yang mempunyai kelebihan hampir menyamai bahasa assembly karena kelengkapan fungsinya dalam mengakses perangkat keras.

 

Kelebihan bahasa tingkat tinggi antara lain :

  • mudah dipelajari
  • mempunyai fasilitas trace & debug untuk mendeteksi adanya kesalahan (error)
  • mempunyai fungsi/library yang lengkap sehingga dapat mempermudah dan mempercepat pembuatan program

 

Bahasa yang dekat dengan bahasa mikroprosesor adalah bahasa assembly (bahasa rakitan) yang merupakan bahasa tingkat rendah (low level language). Bahasa rakitan berupa Mnemonics mikroprosesor yang memiliki kecepatan proses dan akses pada mikroprosesor. Berikut beberapa mnemonics pada bahasa assembly beserta syntax pemakaian dan fungsinya :

  1. AAA (ASCII Adjust For Addition)

Syntax          : AAA

Fungsi          : Mengatur format bilangan biner/hexa ke bentuk BCD setelah dilakukan operasi penjumlahan dua bilangan BCD.

 

  1. AAD (ASCII Adjust For Division)

Syntax : AAD

Fungsi : Mengkonversi bilangan BCD ke biner atau hexa.

 

  1. AAM (ASCII Adjust For Multiplication)

 

Syntax : AAM

Fungsi : Mengkonversi bilangan biner atau hexa ke BCD.

 

  1. AAS (ASCII Adjust For Subtraction)

Syntax : AAS

Fungsi : Mengatur format bilangan biner/hexa hasil pengurangan ke bentuk BCD.

 

  1. ADC (Add With Carry)

Syntax : ADC Tujuan,Sumber

Fungsi : Menambahkan “Sumber”, “Tujuan” dan Carry Flag (1=on,0=off), hasilnya diletakkan pada “Tujuan”.

 

  1. ADD

Syntax : ADD Tujuan,Sumber

Fungsi : Menambahkan “Sumber” dan “Tujuan” kemudian hasilnya disimpan pada “Tujuan”.

 

  1. AND

Syntax : AND Tujuan,Sumber

Fungsi : Melakukan logika AND antara “Tujuan” dan “Sumber”. Hasil dari operasi AND diletakkan pada “Tujuan”.

 

  1. BOUND (Check Bounds Of Array Index)

Syntax : BOUND Tujuan,Sumber

Fungsi : Untuk memastikan bahwa index array bertanda negatif atau

positif masih masuk dalam batas limit yang didefinisikan oleh Double Word blok memory.

 

  1. CALL

Syntax : CALL nama-procedure

Fungsi : Melompat dan mengerjakan intruksi pada procedure program.

 

10. CBW (Convert Byte To Word)

Syntax : CBW

Fungsi : Mengubah isi register AL menjadi AX dengan mengubah isi

register AH menjadi 0 bila AL benilai positif atau AH akan bernilai FF bila AL negatif.

 

11. CLC (Clear Carry Flag)

Syntax : CLC

Fungsi : Membuat carry flag menjadi 0.

 

12. CLD (Clear Direction Flag)

Syntax : CLD

Fungsi : Membuat direction flag berisi 0. Bila direction flag berisi 0 maka pembacaan string akan berlangsung dari memory rendah ke tinggi.

 

13. CLI (Clear Interrupt Flag)

Syntax : CLI

Fungsi : Membuat interrupt flag menjadi 0. Bila IF berisi 0 maka semua interupsi akan diabaikan oleh komputer, kecuali Nonmaskable Interrupt(NMI).

 

14. CMC (Complement Carry Flag)

Syntax : CMC

Fungsi : Mengubah Carry flag menjadi kebalikan dari isi semulanya, seperti dari 0 menjadi 1 dan sebaliknya.

 

15. CMP (Compare)

Syntax : CMP operand1,operand2

Fungsi : Membandingkan “operand1″ dengan “operand2″. Adapun cara yang dilakukan adalah dengan mengurangkan “operand1″ dengan “operand2″ (operand1 – operand2).

 

16. CMPSB (Compare Strings Byte)

Syntax : CMPSB

Fungsi : Untuk membandingkan satu word pada alamat DS:SI dengan ES:DI.

 

17. CWD (Convert Word To Doubleword)

Syntax : CWD

Fungsi : Mengubah tipe word(AX) menjadi double word(DX).

 

18. DAA (Decimal Adjust After Addition)

Syntax : DAA

Fungsi : Mengubah hasil penjumlahan 2 bilangan bukan BCD pada register AL menjadi bentuk BCD.

 

19. DAS (Decimal Adjust After Substraction)

Syntax : DAS

Fungsi : Mengubah hasil pengurangan 2 bilangan pada AL menjadi bentuk BCD.

 

20. DEC (Decrement)

Syntax : DEC Tujuan

Fungsi : Untuk mengurangi “Tujuan” dengan 1.

 

21. DIV (Divide)

Syntax : DIV Sumber

Fungsi : Bila “sumber” bertipe 8 bit maka dilakukan pembagian AX dengan “Sumber” (AX / Sumber).

 

22. ENTER (Make Stack Frame)

Syntax : Enter Operand1,operand2

Fungsi : Untuk memesan tempat pada stack yang dibutuhkan oleh bahasa tingkat tinggi.

 

23. ESC (Escape)

Syntax : ESC Operand1,Operand2

Fungsi : Perintah ini digunakan terutama pada komputer yang mempunyai procesor lebih dari satu dan dirangkai secara paralel.

 

24. HLT (Halt)

Syntax : HLT

Fungsi : Untuk menghentikan program atau membuat procesor dalam

keadaan tidak aktif.

 

25. INC (Increment)

Syntax : INC Tujuan

Fungsi : Untuk menambah “Tujuan” dengan 1.

 

26. INS (Input From Port To String)

Syntax : INS Operand,NoPort

Fungsi : Untuk mengambil data dari “NoPort” yang dicatat oleh register DX sebanyak 1 byte atau 1 word, sesuai dengan tipe “operand”.

 

27. INT (Interrupt)

Syntax : INT NoInt

Fungsi : Untuk membangkitkan software interrupt yang bernomor 0 sampai 255.

 

28. IRET (Interrupt Return)

Syntax : IRET

Fungsi : Digunakan untuk mengakhiri suatu interrupt handler.

 

29. JMP (Jump)

Syntax : JMP Tujuan

Fungsi : Melakukan lompatan menuju “Tujuan” yang dapat berupa suatu label maupun alamat memory.

 

30. JNA (Jump If Not Above)

Syntax : JNA Tujuan

Fungsi : Identik dengan JBE.

 

31. JNAE (Jump If Not Above or Equal)

Syntax : JNAE Tujuan

Fungsi : Identik dengan JB.

 

32. OUTS (Output String To Port)

Syntax : OUTS NoPort,Operand

Fungsi : Untuk mengirimkan data dari “operand” ke “NoPort” yang

dicatat oleh register DX sebanyak 1 byte atau 1 word, sesuai dengan tipe “operand”.

 

33. POP (Pop A Word From Stack)

Syntax : POP Tujuan

Fungsi : Untuk mengambil data 1 word dari stack(SS:SP) dan disimpan pada “Tujuan”.

 

34. PUSH (Push Operand Onto Stack)

Syntax : PUSH Sumber

Fungsi : Untuk menyimpan data 1 word dari “Sumber” ke stack(SS:SP).

 

Task merupakan sebuah program kecil yang dapat dijalankan secara terpisah. Task dapat digunakan untuk mengalokasikan proses sesuai dengan kebutuhan. Contoh bahasa yang memiliki fasilitas untuk membuat task atau membuat program paralel adalah bahasa assembly karena memiliki teknik interupsi yang jelas dan cukup lengkap, sehingga dapat dijalankan sebuah program client-server, yaitu program kecil yang dapat dijalankan secara terpisah dari sudut pandang client dan sudut pandang server.

 

2) Ketrampilan Kerja

Beberapa Ketrampilan Kerja telah dibahas pada Pengetahuan Kerja.

 

3) Sikap Kerja

Sikap Kerja harus diperhatikan di dalam lingkungan kerja, yaitu :

1. Memahami bahasa yang dekat dengan bahasa pemrograman

2. Mempelajari bahasa pemrograman yang paralel

 

BAB V

SUMBER – SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN

KOMPETENSI

 

5.1 Sumber Daya Manusia

Dalam proses pencapaian kompetensi sumber yang dapat diandalkan adalah sumber daya manusia. Sumber daya manusia yang dimaksud disiini adalah orang-orang yang dapat mendukung proses pencapaian kompetensi yang dimaksud, antara lain:

 

  • Pembimbing

Pembimbing Anda merupakan orang yang dapat diandalkan karena beliau memiliki pengalaman. Peran Pembimbing adalah untuk:

  1. Membantu Anda untuk merencanakan proses belajar.
  2. Membimbing Anda melalui tugas-tugas pelatihan yang dijelaskan dalam tahap belajar.
  3. Membantu Anda untuk memahami konsep dan praktik baru dan untuk menjawab pertanyaan Anda mengenai proses belajar Anda.
  4. Membantu Anda untuk menentukan dan mengakses sumber tambahan lain yang Anda perlukan untuk belajar Anda.
  5. Mengorganisir kegiatan belajar kelompok jika diperlukan.
  6. Merencanakan seorang ahli dari tempat kerja untuk membantu jika diperlukan.

 

  • Penilai

Penilai Anda melaksanakan program pelatihan terstruktur untuk penilaian di tempat kerja. Penilai akan:

  1. Melaksanakan penilaian apabila Anda telah siap dan merencanakan proses belajar dan penilaian selanjutnya dengan Anda.
  2. Menjelaskan kepada Anda mengenai bagian yang perlu untuk diperbaiki dan merundingkan rencana pelatihan selanjutnya dengan Anda.
  3. Mencatat pencapaian / perolehan Anda.

 

  • Teman kerja/sesama peserta pelatihan

Teman kerja Anda/sesama peserta pelatihan juga merupakan sumber dukungan dan bantuan. Anda juga dapat mendiskusikan proses belajar dengan mereka. Pendekatan ini akan menjadi suatu yang berharga dalam membangun semangat tim dalam lingkungan belajar/kerja Anda dan dapat meningkatkan pengalaman belajar Anda.

 

 

5.2 Literatur

Disamping dengan belajar dengan orang-orang seperti yang disebutkan diatas, Anda tentu perlu juga terus menambah wawasan dan pengetahuan Anda dari sumber-sumber bacaan seperti buku-buku yang berkaitan dengan kompetensi yang Anda pilih, jurnal-jurnal, majalah, dan sebagainya.

 

Literatur dalam hal ini tentu bukan saja material berupa bacaan atau buku melainkan termasuk pula material-material lainnya yang menjadi pendukung proses pembelajaran ketika peserta pelatihan sedang menggunakan Pedoman Belajar ini. Misalnya rekaman dalam bentuk kaset, videp, dan sebagainya.

 

Buku referensi, lembar kerja, tugas-tugas kerja juga dapat digunakan dalam proses pencapaian kompetensi. Peserta boleh mencari dan menggunakan sumber-sumber alternatif lain yang lebih baik atau sebagai pendukung tambahan atau jika ternyata sumber-sumber yang direkomendasikan dalam pedoman belajar ini tidak tersedia/tidak ada.

 

Untuk referensi mengenai materi-materi yang dapat digunakan, Anda dapat melihat dari Daftar Pustaka yang terlampir dihalaman terakhir modul ini.

5.3 Daftar Peralatan dan Bahan yang digunakan

 

  1. Judul/Nama Pelatihan        :    Menerapkan Pemrograman Real Time
  2. Kode Program Pelatihan    :    TIK.PR06.001.01

 

NO

UNIT

KOMPETENSI

KODE UNIT

DAFTAR PERALATAN

DAFTAR BAHAN

KETERANGAN

1.

Menerapkan Pemrograman Real Time

TIK.PR06.001.01

  • CPU (Arithmetic Logic Unit, Control Unit, dan Register)
  • Primary Storage (Random Acces Memory, Cache Memory, Read Only Memory)
  • Motherboard (Bus System)
  • Computer Peripheral (Input & Output peripheral, seperti mouse keyboard, monitor, dsb)
  • Peralatan pendukung : UPS (Uninterruptable Power Supply, Voltage Stabilizer)
  • Software Sistem Operasi Real Time : VxWorks
  • Installer bahasa assembly
  • Referensi dari Daftar Pustaka
 

 

Peralatan (hardware) sebaiknya sudah terpasang dan dapat berfungsi dengan baik dan kompatibel dengan bahan (software)

 

 

 

 

 

 

 

DAFTAR PUSTAKA

 

 

Website

 

 

Testimoni

Advertisement
  1. Toko Kain Batik Cap Terbaik di Solo
  2. Toko Baju Batik Terbaik di Solo
  3. Aneka Kain Batik dengan Harga Murah
  4. Baju Batik Sarimbit Terbaik
  5. Dapatkan Kain Batik Berkualitas dengan Diskon 25%
  6. Aneka Baju Batik Seragam Kantor
  7. Pembuatan Seragam Batik Berlogo
slideseragambatik
Filed under : blog, tags: