Puji syukur atas berkat dari Tuhan yang Maha Esa, karena kami dapat menyelesaikan tugas ini, Data Path merupakan kombinasi dari beberapa unit Register dan sebuah ALU yang saling terhubung satu dengan lainnya, didalam datapath terdapat beberapa unit logika yang dapat melakukan berbagai proses operasi. Berikut Resume/Laporan dari Data Path yang berhasil kami buat. 1. Schematic Lengkap Data Path Karena ukuran lembar kerja yang tidak mencukupi, kami membuat untai-untai logika penyusun komponen tersebut menjadi sebuah IC (symbol) dengan menggunakan tool symbol wizard. Untuk penamaan pin Data path diatas sama seperti yang diinstruksikan, tetapi ada banyak pin atau wire tambahan, karena hal tersebut diperlukan dalam proses pengerjaan. Untai dasar penyusun Register File kami lampirkan dalam gambar 1, unti dasar penyusun Function Unit kami lampirkan dalam gambar 2 Sistem Mikroprosesor | Data Path Function Unit
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Puji syukur atas berkat dari Tuhan yang Maha Esa, karena kami dapat menyelesaikan tugas ini,
Data Path merupakan kombinasi dari beberapa unit Register dan sebuah ALU yang saling terhubung satu dengan lainnya, didalam datapath terdapat beberapa unit logika yang dapat melakukan berbagaiproses operasi.
Berikut Resume/Laporan dari Data Path yang berhasil kami buat.1. Schematic Lengkap Data Path
Karena ukuran lembar kerja yang tidak mencukupi, kami membuat untai-untai logika penyusun komponen tersebut menjadi sebuah IC (symbol) dengan menggunakan tool symbol wizard.Untuk penamaan pin Data path diatas sama seperti yang diinstruksikan, tetapi ada banyak pin atau wire tambahan, karena hal tersebut diperlukan dalam proses pengerjaan.
Untai dasar penyusun Register File kami lampirkan dalam gambar 1, unti dasar penyusun Function Unit kami lampirkan dalam gambar 2
Sistem Mikroprosesor| Data Path
Function Unit
Gambar 1. Register File
Sistem Mikroprosesor| Data Path
Gambar 2 Function Unit
Sistem Mikroprosesor| Data Path
2. Simulasi dan pembahasan Register File
Untuk gambar Untai dasar penyusun Register File dapat dilihat dilampiran Gambar 1. Register File ini tersusun atas 8 unit register-4 bit dan menggunakan Sebuah Decoder-3-8 sebagai selectordata masuk (DA). Dan untuk mengalirkan data keluar menuju Bus A dan Bus B kami menggunakan 8 buah Mux-8-1. Yaitu 4 unit untuk Bus A dan 4 unit untuk Bus B. adapun disetiap 4 unit tersebut memilikiselector, yang berfungsi untuk menentukan data yang akan dikeluarkan menuju Function Unit. Selector tersebut adalah AA dan BA.AA berfungsi untuk memilih data yang keluar menuju Bus A, dan BA untuk memilih data yang keluar menuju Bus B.
A. Testbench wafe form/VHDL Testbench
-- *** Test Bench - User Defined Section *** tb : PROCESS BEGIN
WAIT; -- will wait forever END PROCESS;-- *** End Test Bench- User Defined Section ***
B. Hasil simulasi
Sistem Mikroprosesor| Data Path
Gambar diatas merupakan hasil Simulasi dari data yang dimasukkan pada VHDL Test Branch.
Pembahasan
Pada clock pertama (UP Edge) kami memasukkan data 1(Desimal Value), kemudian DA bernilai 000 yang artinya data ditujukan pada register ke 1. Kemudian AA dan BA kami beri nilai 000, yang berarti bus A danbus B mengeluarkan hasil yang berada didalam register ke-1. Berarti A out (bus A) dan B out (bus B) bernilai 1(desimal) sama dengan nilai yang tersimpan pada register ke-1.
Pada clock kedua, kami memasukkan data 3 (desimal value), kemudia DAbernilai 001 yang artinya data ditujukan pada register ke-2. Kemudian AA kami beri nilai 000 (yang berarti Bus A mengeluarkan hasil yang berada didalam register ke -1) dan BA diberi nilai 001 (yang berarti Bus B mengeluarkan hasil yang berada didalam register ke -2).sehingga A out (bus A) bernilai 1 *tidak berubah nilainya, karena register ke-1 no change. B out (Bus B bernilai 3, yaitu nilai yang ada pada register ke-2)
Out A dan B untuk clock selanjutnya akan bekerja sesuai dengan Instruksi yang diberikan.
3. Simulasi dan Pembahasan untuk setiap code Function Unit.
Code Datapath
Sistem Mikroprosesor| Data Path
* ada sebuah perbedaan control yang kamibuat denganyang
seharusnya. Yaitu pada FS 0100 dengan 0101. Yaitu fungsinya terbalik.
Seharusnya F=A-B+1
Seharusnya F=A-B
A. Testbench wafe form/VHDL Testbench
BEGIN
B1<='1'; B2<='1'; B3<='0'; B4<='0';
CLEAR2<='0'; A1<='1'; A2<='1'; A3<='1'; A4<='0';
HARUS_1<='1';CI<='0'; S0<='0'; S1<='0';S2<='0';
ENABLE2<='1'; MF<='0'; CLOCK3<='0'; WAIT FOR 100ns; B1<='1';
Agar memudahkan kita memahami hasil dari operasi, kami mengganti radix input dan output menjadi desimal.
Catatan : Seperti yang kita lihat dari gambar diatas, Bus A kami beri nilai 7 (desimal); 0111(biner) dan Bus B kami beri nilai3 (Desimal); 0011 (Biner). Nilai Bus A dan Bus B tidak berubah untuk simulasi ini sampai clock-13
Pembahasan1. Untuk clock ke-1 FS=0000, operasi Output=A=7 (sesuai dengan simulasi)
2 Untuk clock ke-2 FS=0001, operasi Output=A+1=8 (sesuai dengan simulasi)
3. Untuk clock ke-3 FS=0010, operasi Output=A+B=10 (sesuai dengan simulasi)
4. Untuk clock ke-4 FS=0011, operasi Output=A+B+1=11 (sesuai dengan simulasi)
5. Untuk clock ke-5 FS=0100, operasi Output=A-B-1=3 (sesuai dengan simulasi)
6. Untuk clock ke-6 FS=0101, operasi Output=A-B =4 (sesuai dengan simulasi)
Sistem Mikroprosesor| Data Path
7. Untuk clock ke-7 FS=0110, operasi Output=A-1=6 (sesuai dengan simulasi)
8. Untuk clock ke-8 FS=0111, operasi Output=A=7(sesuai dengan simulasi)
Continueto next page
Untuk operasi selanjutnya, akan sulit melihat output jika radiksnya desimal, untuk itu kita menggunakan gambar simulasi dengan radiks biner.
9. Untuk clock ke-9 FS=1000, operasi Output=A and B = 0011(sesuai dengan simulasi)
10. Untuk clock ke-10 FS=1001, operasi Output=A or B = 0111(sesuai dengan simulasi)
11. Untuk clock ke-11 FS=1010, operasi Output=A xor B = 0100(sesuai dengan simulasi)
12. Untuk clock ke-12 FS=1011, operasi Output=not A=1000(sesuai dengan simulasi)
Sistem Mikroprosesor| Data Path
Untuk Clock 13 sampai 15 kami mengganti input B(data Bus B) dengan 0110, yang bertujuan untuk memudahkan kita mengamati penggeseran bit(shifter)
13. Untuk clock ke-13 FS=1100, operasi Output=B=0110 (sesuai dengan simulasi)
14. Untuk clock ke-14 FS=1101, operasi Output=SL B=1100(sesuai dengan simulasi) terlihat bahwa bit keluaran output tergeser ke kiri. (0110 menjadi 1100)
15. Untuk clock ke-15 FS=1110, operasi Output=SR B=0011(sesuai dengan simulasi) terlihat bahwa bit keluaran output tergeser ke kanan. ( 0110menjadi 0011)
4. Gabungan Register File dengan Function Unit.
Pada point ini register file akan digabung dengan function unit yang membentuk Data Path utuh.untuk gambar Data Path tersebut dapat dilihat dilembar sebelumnya.
Operand yang kami ambil adalah dari 000 (reg 1) dan 001 (reg 2).
Gambar diatas merupakan hasil dari simulasi dari Data Path untuk operasi penjumlahan dan pengurangan seperti yang diinstruksikan.
pada clock pertama, data yang dimasukkan bernilai 4 (desimal) dan ditujukan pada register ke-1 (DA=000)pada clock pertama ini operasi belum berlangsung, masih melakukan load data ke register.
Pada clock kedua juga belum terjadi operasi, masih melakukan load data kedua yang bernilai 2 (desimal) kedalam register ke-2 (DA=001)
Pada clock ketiga, RW diatur 0 agar tidak berlangsung proses Load data lagi.disini terjadi proses penjumlahan (kita lihat FS=0010) yang dijumlahkan adalah register 1 dan register 2.(AA=000 dan BA=001), dan kita perhatikan bahwa output benilai 6 (desimal) sesuai dengan penjumlahan isi register 1 dan 2.
Pada clock keempat, terjadi proses pengurangan (FS=0101). Yangdikurangkan adalah register 1 (BUS A) dengan register 2 (bus B). dan terbukti dari output yang bernilai 2.