# Program MBKM Riset: Perancangan Prosesor Reinforcement Learning dalam System on Chip ## Tentang Program Program ini adalah Program Penelitian di Industri yang melibatkan mahasiswa dalam rangka memberikan pengalaman magang di luar kampus yang merupakan bagian dari Program Merdeka Belajar-Kampus Merdeka (MBKM). Peserta akan dibimbing langsung oleh tim dosen dari ITB dan engineer dari industri (PT. Xirka Silicon Technology). Dalam program ini, mahasiswa akan dilibatkan dalam seluruh tahapan perancangan sebuah prosesor untuk Reinforcement Learning (RL) berbasis System on Chip (SoC), mulai dari eskplorasi dan pengembangan algoritma RL, perancangan arsitektur VLSI, pemodelan perangkat keras, hingga tahap implementasi rancangan hardware dalam sytem on chip. Dalam penelitian ini akan dilakukan juga pengembangan software aplikasi yang dapat dijalankan dengan menggunakan rancangan prosesor yang dihasilkan untuk sebuah aplikasi khusus, misalnya autonomous driving, smart manufacturing/smart factory, diagnosa penyakit, dsb. ## Topik 1. Merancang prosesor khusus untuk aplikasi Artificial Intelligence berbasis algoritma Reinforcement Learning(RL). 1. Merancang arsitektur prosesor yang efisien dan optimum dalam hal kinerja komputasi, kompleksitas dan konsumsi daya. 1. Membuat aplikasi khusus (use case) dengan menggunakan rancangan prosesor Reinforcement Learning. ## Tim Dosen 1. Nana Sutisna, S.T., M.T., Ph.D. 1. Prof. Trio Adiono, S.T., M.T., Ph.D. 1. Dr. Eng Infall Syafalni, S.T., M.Sc. 1. Rahmat Mulyawan, S.T., M.T., M.Sc. 1. Nur Ahmadi, S.T., M.Eng., Ph.D. ## Peserta Kegiatan MBKM | Nama | NIM | Topik | | --------------------------------------------------------------------| -------- | --------------------------- | | [Muhammad Adnan](https://hackmd.io/xhonTeMEQgyiOPLKPYd_XQ?view) | 13218019 | Smart navigation | | [Mohamad Imam Firdaus](https://hackmd.io/@imamfirdaus/rJNQlzjZY) | 13218025 | Smart navigation | | [Cahya Yugansyah](https://hackmd.io/@Sy6AOG-yR725PMUQ3BU4yg/HyChlwobF)| 13218054 | Smart navigation | | [Daffa Haritsa](https://hackmd.io/@uoa8Z5b3Q8CoVGIrrnmMyA/rJ8vrzj-t)| 13218047 | Intelligent Traffic Control | | [Zulfikar Nima Arifuzzaki](https://hackmd.io/@zulfikarna/B1B-pKcWK) | 13218029 | Intelligent Traffic Control | | [Dismas Widyanto](https://hackmd.io/@dismaswidyanto/rkwswSqZF) | 13218065 | Intelligent Traffic Control | | [Andi Muhammad Riyadhus Ilmy](https://hackmd.io/@rydshlmy/Skhunh3WF)| 13217053 | Intelligent Traffic Control | | [Satrio Puji Laksono](https://hackmd.io/@satriopuji/By7QK-jZF) | 13218084 | Autonomous Cleaning Agent | <!--- | Nama | NIM | Topik | | ---------------------------| -------- | --------------------------- | | Muhammad Adnan | 13218019 | Smart navigation | | Mohamad Imam Firdaus | 13218025 | Smart navigation | | Cahya Yugansyah | 13218054 | Smart navigation | | Daffa Haritsa | 13218047 | Intelligent Traffic Control | | Zulfikar Nima Arifuzzaki | 13218029 | Intelligent Traffic Control | | Dismas Widyanto | 13218065 | Intelligent Traffic Control | | Andi Muhammad Riyadhus Ilmy| 13217053 | Intelligent Traffic Control | | Satrio Puji Laksono | 13218084 | Autonomous Cleaning Agent | ---> ## Tanggal Penting - 5 Juli 2021 : Pembukaan registrasi - 13 Agustus 2021 : Batas aplikasi - 16 Agustus 2021 : Pengumuman penerimaan - 30 Agustus 2021 : Hari pertama program ## Identitas Kegiatan MBKM - Magang Industri - Lokasi Kegiatan : PT. Xirka ## Mitra 1. Nama Mitra : PT Xirka Silicon Technology 2. Kontak person Mitra : Sunly Timotheous 3. Email : sunly.timotius@xirkachipset.com ## Daftar Mata Kuliah Penampung * EL4138/Perancangan sistem VLSI (3 SKS) * EL4235/Arsitektur Komputer II (3 SKS) * EL4230/Analisis dan Perancangan IC Digital (3 SKS) * EL4094/Magang di Industri (9 SKS) * EL4092/Kerja Praktek (2 SKS) ### Durasi Kegiatan : 16 Minggu (40 Jam/Minggu) 40 jam kegiatan mencakup bimbingan (lecture/tutorial/diskusi), riset mandiri, mengerjakan tugas terstruktur (log book harian, presentasi rutin, tugas per tahap kegiatan) ## Muatan Akademik ### Rincian Muatan Akademik | No | Topik | Materi | Jumlah Jam | Capaian MK | | -------- | -------- | -------- |---- |----------------------------| | 1 | Pengembangan algoritma Reinforcement Learning (RL) | Studi literatur, eksplorasi model RL, komparasi kinerja algoritma | 20 Jam | Mampu mengidentifikasi dan mendeskripsikan berbagai algoritma RL dan membandingkan kinerjanya (akurasi, kompleksitas komputasi, dll ) | | | | Penentuan use case dan spesifikasi |20 jam| Mampu menganalisis constraint dan dapat menentukan uses case (contoh aplikasi) dengan mempertimbangkan berbagai constraint yang ditentukan| | | | Pemodelan dan implementasi algoritma RL|30 jam| Dapat memodelkan algoritma RL dalam high level language (C/C++, phyton, matlab/octave, dll) | | | Simulasi model RL | 20 jam |Dapat menunjukan simulasi model RL untuk use case yang telah dipilih| | | | Evaluasi dan Pengukuran kinerja algoritma |20 jam| dapat memformulasikan kinerja sistem, mengukur kinerja dan mengevaluasi kineja yang dicapai (faktor-faktor yang mempengaruhi kinerja). | 2 | Perancangan Arsitektur VLSI Hardware Accelerator RL | Studi literatur | 20 Jam| dapat mengidentifikasi dan menjelaskan state of the art arsitektur VLSI dari referensi yang valid (peer review paper/jurnal, text boox, dll) | | | | Peracancangan datapath |30 jam| dapat melakukan perancangan arsitektur datapath berdasarkan model yang dibuat, yang mencakup unit arithmetic, processing element, memory, dll | | | | Perancangan control unit dan timing diagram |30 jam| mampu merancang FSM, timing diagram, dan interface untuk contrl unit | | | | Eksplorasi dan optimasi arsitektur |30 jam| Memahami berbagai teknik optimasi arsitektur VLSI (pipeline, re-timing, parallel processing, resource sharing, dll) dan dapat menerapkannya untuk meningkatkan kinerja sistem | | | | Implementasi rancangan HW pada RTL (verilog atau HLS) |20 jam| dapat melakukan implementasi rancangan arsitektur dalam deskripsi bahasa pemrograman perangkat keras (VHDL/verilog/HLS) | | | Simulasi timing rancangan RTL |20 jam| Dapat membuat rancangan testbench, melakukan simulasi dan menunjukan fungsionalitas sistem menggunakan RTL simulator| | | | Pengukuran kinerja rancangan hardware : throughput, latency, etc.| 20 jam | Dapat mengkarakterisasi kinerja rancangan hardware |3 |Implementasi hardware accelerator pada system on Chip|Tutorial penggunaan FPGA board dan Xilink VIVADO |10 jam (Dibimbing)| Memahami metodologi perancangan SoC dan mampu menggunakan EDA tool dalam perancangan SoC | | | |Perancangan SoC berbasis Xilinx VIVADO| 50 jam| Memahami arsitektur SoC, memahami dan dapat mengaplikasikan metodologi perancangan SoC| | | | Integrasi HW accelerator pada SoC |30 jam| Merancang sebuah sistem digital secara lengkap dalam struktur SoC | | | | Simulasi timing SoC |20 jam| Menunjukkan fungsionalitas rancangan SoC | | | | Implementasi rancangan pada FPGA (Design Synthesis, P&R)|30 jam| Mengimplementasikan rancangan dalam perangkat keras (FPGA) | | | | Perancangan embedded SW |40 jam| Memahami metodologi perancangan sistem embedded, mampu membuat software real-time embedded | | | | Integrasi HW-SW | 20 jam | Memahami HW/SW interface | | | | Verifikasi rancangan pada FPGA |30 jam| Dapat menguji fungsionlitas rancangan secara real time baik hardware dan software | | | | Pengukuran kinerja rancangan | 20 jam | Memahami berbagai macam ukuran kinerja rancangan SoC (performance metric), dapat memformulasikan kinerja dan dapat melakukan pengukuran kinerja. | | | Evaluasi dan komparasi kinerja | 20 jam | Memahami faktor-faktor yang mempengaruhi kinerja SoC dan dapat membandingkan kinerja dengan ancangan lain yang sejenis| |4 |Pengembangan *soft skill sebagai peneliti* <br /> Selain kemampuan kognitif yang sangat baik, peneliti diharapkan memiliki soft skill yang bisa membantu dirinya mengerjakan tugas penelitian. Ada beberapa soft skill yang wajib dimiliki oleh peneliti, yaitu: <br /> (1) komunikasi yang baik, (2) kreatif dan keingintahuan yang tinggi, (3) penyelesaian masalah, (4) kepemimpinan dan motivasi diri, (5) fokus dan tekun, (6) bekerja mandiri dan bersama kelompok, (7) cepat beradaptasi |Presentasi kemajuan pekerjaan mingguan. |Durasi: 1 jam/minggu atau total 20 jam.(Dibimbing) | |5 | Peningkatan knowledge management dan kemampuan penulisan artikel ilmiah | Dibimbing oleh profesor dan supervisor riset | Durasi: 1 jam/minggu atau total 20 jam | |6 | Diskusi keberjalanan riset bersama supervisor riset | Dibimbing oleh supervisor riset atas inisiatif mandiri | Durasi: 1 jam/minggu atau total 20 jam | |7 | Manajemen proyek untuk memutuskan keberjalanan proyek mandiri | Kegiatan mandiri | Durasi: 2 jam/minggu atau total 20 jam| | | | | **Total: 640 jam** | ## Rencana Credit Earning / Credit Transfer Mata Kuliah (MK) yang diusulkan untuk Credit Earning/Credit Transfer dengan total 20 SKS: | No | No MK | Nama MK | SKS | Capaian MK | | -- | ----- | ------- |----- |---------- | | 1 | EL4138 | Perancangan Sistem VLSI | 3 | Mengerti state of the art teknologi VLSI | | | | | | Memahami faktor-faktor yang mempengaruhi kinerja sistem VLSI| | | | | | Memahami dan dapat menerapkan metodologi perancangan sistem VLSI | | | | | | Memahai dan dapat merancang unit aritmetik sebagai processing unit | | | | | | Dapat melakukan perancangan sebuah sistem VLSI | | | | | | Dapat mengimplementasikan rancangan VLSI dalam FPGA | | 2 |EL4121 | Arsitektur Sistem Komputer II | 3 | Mengerti konsep perancangan prosesor modern | | | | | | Mampu membuat software real-time embedded | | | | | | Dapat melakukan prosess desain dan implementasi prosesor dengan menggunakan bahasa pemrograman perangkat keras (VHDL/verilog) | |3 | EL4093 | Analisis dan Perancangan IC Digital| 3 | Memahami metodologi perancangan IC digital | | | | | | Memahami faktor yang mempengaruhi kinerja IC digital| | | | | | Mamapu merancang standar block IC: rangkaian kombinasional dan sekuensial| | | | | | Mampu merancang sebuah sistem digital| |4|EL4094 | Magang di Industri |9| Mahasiswa mengapresiasi keragaman masalah dan kendala di bidang rekayasa nyata | | | | | | Mahasiswa belajar beradaptasi dengan keragaman budaya dan organisasi di industri nyata | | | | | | Mahasiswa belajar beradaptasi dalam atmosfir multidisiplin dengan target terjadwal | | | | | | Mahasiswa memiliki pengalaman bekerja dalam lingkungan industri secara nyata | |5| EL4242 | Kapita Selekta Teknik Elektro| 2 | Memahami perkembangan riset/penelitian| | | | | | Memahami perkembangan suatu teknologi | | | | | | Memahami proses pengembangan di industri dan manufaktur| | | | | | Memahami pendidikan dalam kerekayasaan (engineering) | | | | | | Memahami aspek sosial dan dampak dari suatu teknologi | **Catatan** : Apabila mahasiswa ingin menyesuaikan dengan mata kuliah yang belum diambil dan tidak mengikuti list diatas, mohon berkonsultasi dengan salah satu dosen diatas. ## Pendaftaran 1. Mengisi formulir pendaftaran pada link berikut : [https://s.id/MBKM_RL-SoC](https://s.id/MBKM_RL-SoC) 2. Melampirkan formulir Pendaftaran MBKM Prodi STEI yang telah disetujui oleh dosen wali dan Kaprodi Tekik Elektro. Contoh pengisian form MBKM Prodi Teknik Elektro dapat diunduh pada link berikut: [https://bit.ly/form-MBKM-EL](https://bit.ly/form-MBKM-EL) ## Kontak Nana Sutisna, Ph.D. Email : nana.sutisna@stei.itb.ac.id Phone : 08112442713 ## Resource ### Paper Reference 1. [Journal #1 : *An Efficient Hardware Implementation of Reinforcement Learning: The Q-Learning Algorithm*, IEEE Access](https://drive.google.com/file/d/1Hr5uZk00GAPDHYU4hFD1HI-lgl4w8sEs/view?usp=sharing) 2. [Journal #2 : *Parallel Implementation of Reinforcement Learning Q-Learning Technique for FPGA*, IEEE Access](https://drive.google.com/file/d/1OQE2TmpqdQ5TkqFAjaje2w37sgR1_AwX/view?usp=sharing) ### Lecture and Tutorial 1. [Tutorial LSI Design Contest Okinawa](http://www.lsi-contest.com/2021/shiyou_3-1e.html) 5. [Tutorial Singkat tentang Reinforcement Learning](https://youtu.be/KHOKV4YsHSU) 6. [Tutorial Arsitektur Chip RL](https://www.youtube.com/watch?v=Kj4J-MdmCZo&list=PLkYjWBQDCTmD-4Vj12jzzDpi0i7pKHGHZ&index=16) 7. [Pengantar Reinforcement Learning](https://www.youtube.com/watch?v=ClJgvgUS_xw) 8. [Tutorial VIVADO HLS](https://drive.google.com/drive/folders/1ZgQ7w-WVJF_Rx3SzOPpMEYJiYxsiosax?usp=sharing) ### Tugas Akhir Reinforcement Learning 1. Robot Disinfektan * [Dokumen B-Series dan Project Files](https://bit.ly/TA-RL-Robot-Disinfektan) * [Video Demo](https://youtu.be/L6h3huXUTj4) 2. Smart Navigation * [Dokumen B-Series dan Project Files](https://bit.ly/TA-RL-Smart-Navigation) * [VIdeo Demo](https://youtu.be/JZhtRVaHWpQ) 3. Traffic Light Controller * [Dokumen B-Series dan Project Files](https://bit.ly/TA-RL-Traffic-Light) * [Video Demo](https://youtu.be/SPV58Er2JTk)