add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n;
|
|
- Ἄννας Κοσμόπουλος
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Άσκηση 1 η Μέρος Α Ζητούμενο: Δίνεται το παρακάτω πρόγραμμα σε C καθώς και μια μετάφραση του σε assembly MIPS. Συμπληρώστε τα κενά. Σας υπενθυμίζουμε ότι ο καταχωρητής $0 (ή $zero) είναι πάντα μηδέν. int i, j, tmp; int *arr, n; for (i=0; i < n; i++){ for (j=0; j < n-i-1; j++){ if (arr[j] > arr[j+1]) { tmp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = tmp; } } } add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 addi $t2, $t2, -1 beq $t2, $t1, NEXT_I sll $t2, $t1, 2 add $t2, $t2, $s1 lw $t3, 0 ($t2) lw $t4, 4 ($t2) slt $t5, $t4, $t3 beq $t5, $zero, NEXT_J sw $t4, 0 ($t2) sw $t3, 4 ($t2) NEXT_J: addi $t1, $t1, 1 jmp J_LOOP NEXT_I: addi $t0, $t0, 1 jmp I_LOOP END: 1
2 Ζητούμενο: Υλοποιήστε τις παρακάτω ρουτίνες σε assembly του MIPS υποθέτοντας πως οι μεταβλητές x,y,z,w αποθηκεύονται σε συνεχόμενες θέσεις της μνήμης ξεκινώντας από την 0x uint32_t x, y, z, w; Άσκηση 1 η Μέρος Β void xorshift_init(int _x, int _y, int _z, int _w) { x = _x; y = _y; z = _z; w = _x; } uint32_t xorshift() { uint32_t t = x; t ^= t << 11; t ^= t >> 8; x = y; y = z; z = w; w ^= w >> 19; w ^= t; return w; } xorshift_init: lui $t0, 0x1000 sw $a0, 0($t0) sw $a1, 4($t0) sw $a2, 8($t0) sw $a3, 12($t0) jr $ra xorshift: lui $t9, 0x1000 lw $t0, 0($t9) # x lw $t1, 4($t9) # y lw $t2, 8($t9) # z lw $t3, 12($t9) # w sll $t4, $t0, 11 xor $t0, $t0, $t4 srl $t4, $t0, 8 xor $t0, $t0, $t4 sw $t1, 0($t9) sw $t2, 4($t9) sw $t3, 8($t9) srl $t4, $t3, 19 xor $t3, $t3, $t4 xor $t3, $t3, $t0 sw $t3, 12($t9) add $v0, $t3, $zero jr $ra
3 Άσκηση 1 η Μέρος Γ Ζητούμενο: Οι παρακάτω C ρουτίνες υλοποιούν τον αλγόριθμο ταξινόμησης quicksort για ακέραιους αριθμούς 32-bit. Η quicksort χρησιμοποιεί την xorshift() για την παραγωγή ενός τυχαίου αριθμού μεταξύ left και right τον οποίο χρησιμοποιεί σαν pivot. Υλοποιήστε τις ρουτίνες σε assembly του MIPS. void swap(int *m1, int *m2) { int tmp = *m1; *m1 = *m2; *m2 = tmp; } int partition(int *A, int left, int right) { int pivot, i, j; pivot = A[left]; i = left - 1; j = right + 1; while (1) { while (A[++i] < pivot); while (A[--j] > pivot); void quicksort(int *A, int left, int right) { if (left >= right) return; } int pivot = xorshift128() % (right - left) + left; swap(&a[pivot], &A[left]); int q = partition(a, left, right); quicksort(a, left, q); quicksort(a, q+1, right); } } if (i < j) swap(&a[i], &A[j]); else return j;
4 Άσκηση 1 η Μέρος Γ void swap(int *m1, int *m2) { int tmp = *m1; *m1 = *m2; *m2 = tmp; } swap: lw $t0, 0($a0) lw $t1, 0($a1) sw $t1, 0($a0) sw $t0, 0($a1) jr $ra
5 Άσκηση 1 η Μέρος Γ int partition(int *A, int left, int right) { int pivot, i, j; } pivot = A[left]; i = left - 1; j = right + 1; while (1) { while (A[++i] < pivot); while (A[--j] > pivot); } if (i < j) swap(&a[i], &A[j]); else return j; partition: addi $sp, $sp, -16 sw $ra, 0($sp) sw $s0, 4($sp) sw $s1, 8($sp) sw $s2, 12($sp) sll $t0, $a1, 2 add $t9, $t0, $a0 lw $s0, 0($t9) addi $s1, $a1, -1 addi $s2, $a2, 1 OUTER_LOOP: I_LOOP: addi $s1, $s1, 1 sll $t0, $s1, 2 add $t1, $a0, $t0 lw $t2, 0($t1) slt $t0, $t2, $s0 bne $t0, $zero, I_LOOP J_LOOP: addi $s2, $s2, -1 sll $t0, $s2, 2 add $t1, $a0, $t0 lw $t2, 0($t1) slt $t0, $s0, $t2 bne $t0, $zero, J_LOOP save registers to stack
6 Άσκηση 1 η Μέρος Γ int partition(int *A, int left, int right) { int pivot, i, j; } pivot = A[left]; i = left - 1; j = right + 1; while (1) { while (A[++i] < pivot); while (A[--j] > pivot); } if (i < j) swap(&a[i], &A[j]); else return j; slt $t0, $s1, $s2 beq $t0, $zero, PARTITION_RETURN addi $sp, $sp, -8 sw $a0, 0($sp) sw $a1, 4($sp) sll $t0, $s2, 2 add $a1, $a0, $t0 sll $t0, $s1, 2 add $a0, $a0, $t0 jal swap lw $a1, 4($sp) lw $a0, 0($sp) addi $sp, $sp, 8 j OUTER_LOOP PARTITION_RETURN: add $v0, $s2, $zero lw $ra, 0($sp) lw $s0, 4($sp) lw $s1, 8($sp) lw $s2, 12($sp) addi $sp, $sp, 16 jr $ra restore saved registers from stack
7 Άσκηση 1 η Μέρος Γ quicksort: addi $sp, $sp, -8 sw $ra, 0($sp) sw $s0, 4($sp) void quicksort(int *A, int left, int right) { if (left >= right) return; } int pivot = xorshift128() % (right - left) + left; swap(&a[pivot], &A[left]); int q = partition(a, left, right); quicksort(a, left, q); quicksort(a, q+1, right); slt $t0, $a1, $a2 beq $t0, $zero, QUICKSORT_RETURN jal xorshift sub $s0, $a2, $a1 divu $v0, $s0 mfhi $s0 add $s0, $s0, $a1 addi $sp, $sp, -8 sw $a0, 0($sp) sw $a1, 4($sp) sll $a1, $a1, 2 add $a1, $a0, $a1 sll $t0, $s0, 2 add $a0, $a0, $t0 jal swap lw $a1, 4($sp) lw $a0, 0($sp) addi $sp, $sp, 8 jal partition
8 Άσκηση 1 η Μέρος Γ void quicksort(int *A, int left, int right) { if (left >= right) return; } int pivot = xorshift128() % (right - left) + left; swap(&a[pivot], &A[left]); int q = partition(a, left, right); quicksort(a, left, q); quicksort(a, q+1, right); addi $sp, $sp, -8 sw $a2, 0($sp) sw $v0, 4($sp) add $a2, $zero, $v0 jal quicksort lw $a2, 0($sp) lw $v0, 4($sp) addi $sp, $sp, 8 add $a1, $zero, $v0 addi $a1, $a1, 1 jal quicksort QUICKSORT_RETURN: lw $ra, 0($sp) lw $s0, 4($sp) addi $sp, $sp, 8 jr $ra
9 Έχουμε ένα loop... LOOP: LW $t0, 0($t3) LW $t1, 0($t0) LW $t2, 8($t0) ADD $t2, $t2, $t1 ADD $t2, $t2, $t0 SW $t2, 0($t3) ADDI $t3, $t3, -4 BNE $t9, $t3, LOOP 2 η Άσκηση Δεδομένα
10 2 η Άσκηση Δεδομένα Έχουμε ένα loop... LOOP: LW $t0, 0($t3) LW $t1, 0($t0) LW $t2, 8($t0) ADD $t2, $t2, $t1 ADD $t2, $t2, $t0 SW $t2, 0($t3) ADDI $t3, $t3, -4 BNE $t9, $t3, LOOP και αυτή την αρχική κατάσταση $t3 = 0x1000 = 4096 $t9 = 0x800 = 2048 Δεν υπάρχει cache miss Cache σε 1cc branches γίνονται resolve στο EX stage
11 2 η Άσκηση LOOP: LW $t0, 0($t3) LW $t1, 0($t0) LW $t2, 8($t0) ADD $t2, $t2, $t1 ADD $t2, $t2, $t0 SW $t2, 0($t3) ADDI $t3, $t3, -4 BNE $t9, $t3, LOOP $t3 = 4096 $t9 = 2048 $t3 = 4096, 4092,, 2048 Ο βρόχος θα εκτελεστεί 2048 / 4 = 512 φορές.
12 2 η Άσκηση 1 ο ζητούμενο 1 ο Ζητούμενο : Για το 1 ο LOOP (μέχρι και το lw του 2 ου LOOP) Να δείξετε τα διάφορα στάδια του pipeline (διάγραμμα χρονισμού) που περνάνε οι εντολές. Υποθέστε ότι η αρχιτεκτονική δε διαθέτει σχήμα προώθησης. Κύκλος Εντολή 1 Εντολή 2 Εντολή IF ID EX MEM WB IF ID EX MEM WB
13 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F LW $t1, 0($t0) LW $t2, 8($t0) ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
14 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D LW $t1, 0($t0) F LW $t2, 8($t0) ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
15 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X LW $t1, 0($t0) F D LW $t2, 8($t0) F ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
16 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M LW $t1, 0($t0) F D - LW $t2, 8($t0) F - ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
17 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - LW $t2, 8($t0) F - - ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
18 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X LW $t2, 8($t0) F - - D ADD $t2,$t2,$t1 F ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
19 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M LW $t2, 8($t0) F - - D X ADD $t2,$t2,$t1 F D ADD $t2,$t2,$t0 F SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
20 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M ADD $t2,$t2,$t1 F D - ADD $t2,$t2,$t0 F - SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
21 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - ADD $t2,$t2,$t0 F - - SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
22 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X ADD $t2,$t2,$t0 F - - D SW $t2,0($t3) F ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
23 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M ADD $t2,$t2,$t0 F - - D - SW $t2,0($t3) F - ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
24 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - SW $t2,0($t3) F - - ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
25 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X SW $t2,0($t3) F - - D ADDI $t3,$t3,-4 F BNE $t9,$t3,loop LW $t0, 0($t3)
26 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M SW $t2,0($t3) F - - D - ADDI $t3,$t3,-4 F - BNE $t9,$t3,loop LW $t0, 0($t3)
27 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - ADDI $t3,$t3,-4 F - - BNE $t9,$t3,loop LW $t0, 0($t3)
28 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - X ADDI $t3,$t3,-4 F - - D BNE $t9,$t3,loop F LW $t0, 0($t3)
29 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - X M ADDI $t3,$t3,-4 F - - D X BNE $t9,$t3,loop F D LW $t0, 0($t3)
30 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - X M W ADDI $t3,$t3,-4 F - - D X M BNE $t9,$t3,loop F D - LW $t0, 0($t3)
31 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - X M W ADDI $t3,$t3,-4 F - - D X M W BNE $t9,$t3,loop F D - - LW $t0, 0($t3)
32 2 η Άσκηση 1 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - - X M W LW $t2, 8($t0) F - - D X M W ADD $t2,$t2,$t1 F D - - X M W ADD $t2,$t2,$t0 F - - D - - X M W SW $t2,0($t3) F - - D - - X M W ADDI $t3,$t3,-4 F - - D X M W BNE $t9,$t3,loop F D - - X M W LW $t0, 0($t3) F D Σύνολο κύκλων: 20* = 10242
33 2 η Άσκηση 2 ο ζητούμενο 2 ο Ζητούμενο : Για το 1 ο LOOP (μέχρι και το lw του 2 ου LOOP) Να δείξετε τα διάφορα στάδια του pipeline (διάγραμμα χρονισμού) που περνάνε οι εντολές. Υποθέστε τώρα ότι η αρχιτεκτονική διαθέτει σχήμα προώθησης. Κύκλος Εντολή 1 Εντολή 2 Εντολή IF ID EX MEM WB IF ID EX MEM WB
34 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M LW $t1, 0($t0) F D - LW $t2, 8($t0) F - ADD $t2,$t2,$t1 ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
35 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X LW $t2, 8($t0) F - D ADD $t2,$t2,$t1 F ADD $t2,$t2,$t0 SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
36 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M ADD $t2,$t2,$t1 F D - ADD $t2,$t2,$t0 F - SW $t2,0($t3) ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
37 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W ADD $t2,$t2,$t1 F D - X ADD $t2,$t2,$t0 F - D SW $t2,0($t3) F ADDI $t3,$t3,-4 BNE $t9,$t3,loop LW $t0, 0($t3)
38 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W ADD $t2,$t2,$t1 F D - X M ADD $t2,$t2,$t0 F - D X SW $t2,0($t3) F D ADDI $t3,$t3,-4 F BNE $t9,$t3,loop LW $t0, 0($t3)
39 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W ADD $t2,$t2,$t1 F D - X M W ADD $t2,$t2,$t0 F - D X M SW $t2,0($t3) F D X ADDI $t3,$t3,-4 F D BNE $t9,$t3,loop F LW $t0, 0($t3)
40 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W ADD $t2,$t2,$t1 F D - X M W ADD $t2,$t2,$t0 F - D X M W SW $t2,0($t3) F D X M W ADDI $t3,$t3,-4 F D X M BNE $t9,$t3,loop F D X LW $t0, 0($t3)
41 2 η Άσκηση 2 ο ζητούμενο LW $t0, 0($t3) F D X M W LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W ADD $t2,$t2,$t1 F D - X M W ADD $t2,$t2,$t0 F - D X M W SW $t2,0($t3) F D X M W ADDI $t3,$t3,-4 F D X M W BNE $t9,$t3,loop F D X M W LW $t0, 0($t3) F D Σύνολο κύκλων: 12* = 6146
42 2 η Άσκηση 3 ο ζητούμενο 3 ο Ζητούμενο : Για το 1 ο LOOP (μέχρι και το lw του 2 ου LOOP) Προσπαθήστε να πετύχετε καλύτερη απόδοση τροποποιώντας τον κώδικα, χωρίς όμως να αλλάξετε τη σημασιολογία του προγράμματος. Κύκλος Εντολή 1 Εντολή 2 Εντολή IF ID EX MEM WB IF ID EX MEM WB
43 2 η Άσκηση 2 ο ζητούμενο (επανάληψη) Αναδιατάσσονται LW $t0, 0($t3) F D X M W εδώ LW $t1, 0($t0) F D - X M W LW $t2, 8($t0) F - D X M W Θέλουμε να τα αποφύγουμε! ADD $t2,$t2,$t1 F D - X M W ADD $t2,$t2,$t0 F - D X M W SW $t2,0($t3) F D X M W ADDI $t3,$t3,-4 F D X M W Μπορεί να μετακινηθεί BNE $t9,$t3,loop F D X M W LW $t0, 0($t3) F D Σύνολο κύκλων: 12* = 6146
44 2 η Άσκηση 3 ο ζητούμενο LW $t0, 0($t3) F D X M W ADDI $t3,$t3,-4 F D X M W LW $t2, 8($t0) F D X M W LW $t1, 0($t0) F D X M W ADD $t2,$t2,$t0 F D X M W ADD $t2,$t2,$t1 F D X M W SW $t2,4($t3) F D X M W BNE $t9,$t3,loop F D X M W LW $t0, 0($t3) F D Σύνολο κύκλων: 10* = 5122
45 Άσκηση 3 η Μέρος A Δίνεται η παρακάτω ακολουθία προσπελάσεων Διεύθυνση (hex) 0x044 0x042 0x048 0x1AF 0x04A Αποτέλεσμα Miss Hit Miss Miss Miss Direct-mapped cache Ελάχιστη μονάδα δεδομένων που μπορεί να διευθυνσιοδοτηθεί το 1 byte Μήκος διεύθυνσης 9 bits Αρχικά η cache είναι άδεια Υπολογίστε το συνολικό μέγεθος της cache καθώς και το μέγεθος του tag array. 45
46 Άσκηση 3 η Μέρος A Υπολογίστε το συνολικό μέγεθος της cache καθώς και το μέγεθος του tag array. Διεύθυνση (hex) Διεύθυνση (bin) Αποτέλεσμα 0x Miss 0x Hit 0x Miss 0x1AF Miss 0x04A Miss Στο ίδιο block block offset 3 Σε διαφορετικό block 1 block offset 3 block offset = 3 bits block size = 8 bytes Για block size = 8 bytes είναι στο ίδιο block άρα το 0x04A θα έπρεπε να είναι το 0x1AF πρέπει να έχει ίδιο index index = 1 ή 2 bits cache size = 2 * 8 = 16 bytes και tag array = 2 * 5 = 10 bits ή cache size = 4 * 8 = 32 bytes και tag array = 4 * 4 = 16 bits 46
47 Δίνεται το ακόλουθο κομμάτι κώδικα: int i,j; double A[8][8], B[8][8], C[64]; Άσκηση 3 η Μέρος B for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) A[i][j] = A[i][j] + B[i][j] + C[8*i +j]; else A[i][j] = A[i][j] + B[i][j]; Κάθε στοιχείο του πίνακα είναι 8 bytes 1 επίπεδο κρυφής μνήμης, direct-mapped, write-allocate, 32B block, μεγέθους 512 bytes Αρχικά η cache είναι άδεια Όλες οι μεταβλητές αποθηκεύονται σε καταχωρητές εκτός από τα στοιχεία των πινάκων Οι πίνακες αποθηκεύονται στη μνήμη κατά γραμμές και είναι ευθυγραμμισμένοι ο Α στη θέση μνήμης 0x Η σείρά με την οποία γίνονται οι αναφορές στην μνήμη είναι A, B, {C,} A
48 Άσκηση 3 η Μέρος B (i) 1 ο Ζητούμενο: Βρείτε το συνολικό αριθμό s και misses για όλη την εκτέλεση του παραπάνω κώδικα. Υποδείξτε τον τύπο των misses. 1 block = 32 bytes 1 στοιχείο = 8 bytes πίνακας αποθηκευμένος κατά γραμμές 32 bytes block size = bits offset 512B cache / 32B block 16 blocks 16 blocks 16 sets = bits index σε 1 block της cache θα απεικονίζονται 4 διαδοχικά στοιχεία του πίνακα, π.χ. A[i][j],A[i][j+1], A[i][j+2], A[i][j+3] όλα στο set 0 0x = B[0][0] 0x = C[0][0] 0x = , B[0][0] και C[0] γίνονται mapped στο ίδιο block
49 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 0 A[0][1] A[0][2] A[0][3]
50 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] 0 B[0][0] B[0][1] B[0][2] B[0][3]
51 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] C[2] C[3]
52 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3]
53 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1]
54 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] B[0][2] B[0][3] 1 2 i=0, j=1 A[0][1] B[0][1]
55 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1]
56 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2]
57 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] B[0][2] B[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2]
58 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] C[2] C[3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2] C[2]
59 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2] C[2] A[0][2]
60 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2] C[2] A[0][2] i=0, j=3 A[0][3] 10
61 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] B[0][2] B[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2] C[2] A[0][2] i=0, j=3 A[0][3] B[0][3] 10
62 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 A[0][1] A[0][2] A[0][3] 1 2 i=0, j=1 A[0][1] B[0][1] A[0][1] i=0, j=2 A[0][2] B[0][2] C[2] A[0][2] i=0, j=3 A[0][3] B[0][3] 10 A[0][3]
63 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7]
64 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] 0 A[0][1] A[0][2] A[0][3] 1 B[0][4] B[0][5] B[0][6] B[0][7]
65 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] 0 A[0][1] A[0][2] A[0][3] 1 C[4] C[5] C[6] C[7]
66 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7]
67 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5]
68 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 B[0][4] B[0][5] B[0][6] B[0][7] 2 i=0, j=5 A[0][5] B[0][5]
69 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5]
70 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6]
71 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 B[0][4] B[0][5] B[0][6] B[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6]
72 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 C[4] C[5] C[6] C[7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6] C[6]
73 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6] C[6] A[0][6]
74 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6] C[6] A[0][6] i=0, j=7 A[0][7] 10
75 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 B[0][4] B[0][5] B[0][6] B[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6] C[6] A[0][6] i=0, j=7 A[0][7] B[0][7] 10
76 Άσκηση 3 η Μέρος B (i) αναφορές στη μνήμη περιεχόμενα cache i=0, j=4 A[0][4] B[0][4] C[4] A[0][4] 0 A[0][1] A[0][2] A[0][3] 1 A[0][4] A[0][5] A[0][6] A[0][7] 2 i=0, j=5 A[0][5] B[0][5] A[0][5] i=0, j=6 A[0][6] B[0][6] C[6] A[0][6] i=0, j=7 A[0][7] B[0][7] 10 A[0][7]
77 Άσκηση 3 η Μέρος B (i) Σύνολο για i = 0: i = 0: αναφορές στη μνήμη αποτέλεσμα B[0][0] C[0] m m m m A[0][1] B[0][1] A[0][1] h m m A[0][2] B[0][2] C[2] A[0][2] h m m m A[0][3] B[0][3] A[0][3] h m m A[0][4] B[0][4] C[4] A[0][4] m m m m A[0][5] B[0][5] A[0][5] h m m A[0][6] B[0][6] C[6] A[0][6] h m m m A[0][7] B[0][7] A[0][7] h m m 28 accesses 22 misses 6 s Το ίδιο pattern για i = 1,, 7
78 Άσκηση 3 η Μέρος B (i) Συνολικά Accesses : 28 * 8 = 224 Misses : 22 * 8 = 176 Hits : 6 * 8 = 48
79 Άσκηση 3 η Μέρος B (ii) 2 ο Ζητούμενο: Σας προτείνουν να αντικαταστήσετε την κρυφή μνήμη με μια άλλη ίδιας χωρητικότητας, 2-way associative, με ίδιο μέγεθος block που χρησιμοποιεί LRU πολιτική αντικατάστασης. Βελτιώνεται η απόδοση του κώδικα; Υπολογίστε τον καινούριο αριθμό s και misses.
80 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 0 A[0][1] A[0][2] A[0][3]
81 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] 0 B[0][0] A[0][1] B[0][1] A[0][2] B[0][2] A[0][3] B[0][3]
82 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] C[0] B[0][1] C[1] B[0][2] C[2] B[0][3] C[3]
83 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] A[0][1] C[2] A[0][2] C[3] A[0][3]
84 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] A[0][1] C[2] A[0][2] C[3] A[0][3] 1 A[0][1] i=0, j=
85 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] A[0][1] B[0][1] A[0][2] B[0][2] A[0][3] B[0][3] 1 A[0][1] i=0, j=1 B[0][1]
86 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] A[0][1] B[0][2] A[0][2] B[0][3] A[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1]
87 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] A[0][1] B[0][2] A[0][2] B[0][3] A[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 4 5
88 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] A[0][1] B[0][1] A[0][2] B[0][2] A[0][3] B[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] 4 5
89 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] C[0] B[0][1] C[1] B[0][2] C[2] B[0][3] C[3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] C[2] 4 5
90 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] A[0][1] C[2] A[0][2] C[3] A[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] C[2] A[0][2] 4 5
91 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 C[0] C[1] A[0][1] C[2] A[0][2] C[3] A[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] C[2] A[0][2] 4 i=0, j=3 A[0][3] 5
92 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] A[0][1] B[0][1] A[0][2] B[0][2] A[0][3] B[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] C[2] A[0][2] 4 i=0, j=3 A[0][3] B[0][3] 5
93 Άσκηση 3 η Μέρος B (ii) αναφορές στη μνήμη περιεχόμενα cache i=0, j=0 B[0][0] C[0] 0 B[0][0] B[0][1] A[0][1] B[0][2] A[0][2] B[0][3] A[0][3] 1 A[0][1] i=0, j=1 B[0][1] A[0][1] 2 A[0][2] 3 i=0, j=2 B[0][2] C[2] A[0][2] 4 i=0, j=3 A[0][3] B[0][3] A[0][3] 5
94 Άσκηση 3 η Μέρος B (ii) Σύνολο για i = 0: i = 0: αναφορές στη μνήμη αποτέλεσμα B[0][0] C[0] m m m m A[0][1] B[0][1] A[0][1] h m h A[0][2] B[0][2] C[2] A[0][2] h h m m A[0][3] B[0][3] A[0][3] h m h A[0][4] B[0][4] C[4] A[0][4] m m m m A[0][5] B[0][5] A[0][5] h m h A[0][6] B[0][6] C[6] A[0][6] h h m m A[0][7] B[0][7] A[0][7] h m h 28 accesses 16 misses 12 s Το ίδιο pattern για i = 1,, 7
95 Άσκηση 3 η Μέρος B (ii) Direct-mapped (i) Accesses : 28 * 8 = 224 Misses : 22 * 8 = 176 Hits : 6 * 8 = 48 2-way (ii) Accesses : 28 * 8 = 224 Misses : 16 * 8 = 128 Hits : 12 * 8 = 96
96 Άσκηση 3 η Μέρος B (iii) 2 ο Ζητούμενο: Τροποποιήστε κατάλληλα τον κώδικα του loop ώστε να βελτιωθεί η απόδοση του όταν εκτελείται στο σύστημα του ερωτήματος B. Δώστε τον καινούριο κώδικα καθώς και τον καινούριο αριθμό s και misses.
97 Άσκηση 3 η Μέρος B (iii) 1 η βελτιστοποίηση: Αναδιάταξη των προσβάσεων int i,j; double A[8][8], B[8][8], C[64]; for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) A[i][j] = A[i][j] + + B[i][j] + C[8*i +j] ; else A[i][j] = A[i][j] + B[i][j];
98 Άσκηση 3 η Μέρος B (iii) 1 η βελτιστοποίηση: Αναδιάταξη των προσβάσεων int i,j; double A[8][8], B[8][8], C[64]; for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) A[i][j] = C[8*i +j] + A[i][j] + + B[i][j] ; else A[i][j] = A[i][j] + B[i][j];
99 Άσκηση 3 η Μέρος B (iii) Σύνολο για i = 0: i = 0: αναφορές στη μνήμη αποτέλεσμα C[0] B[0][0] m m m h A[0][1] B[0][1] A[0][1] h h h C[2] A[0][2] B[0][2] A[0][2] m h m h A[0][3] B[0][3] A[0][3] h h h C[4] A[0][4] B[0][4] A[0][4] m m m h A[0][5] B[0][5] A[0][5] h h h C[6] A[0][6] B[0][6] A[0][6] m h m h A[0][7] B[0][7] A[0][7] h h h 28 accesses 10 misses 18 s Το ίδιο pattern για i = 1,, 7
100 Άσκηση 3 η Μέρος B (iii) Συνολικά Accesses : 28 * 8 = 224 Misses : 10 * 8 = 80 Hits : 18 * 8 = 144
101 Άσκηση 3 η Μέρος B (iii) 2 η βελτιστοποίηση: Loop distribution int i,j; double A[8][8], B[8][8], C[64]; for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) A[i][j] = A[i][j] + B[i][j] + C[8*i +j]; else A[i][j] = A[i][j] + B[i][j];
102 Άσκηση 3 η Μέρος B (iii) 2 η βελτιστοποίηση: Loop distribution int i,j; double A[8][8], B[8][8], C[64]; for (i=0; i < 8; i++) { for (j=0; j < 8; j += 2) A[i][j] = A[i][j] + B[i][j] + C[8*i +j]; for (j=1; j < 8; j += 2 ) A[i][j] = A[i][j] + B[i][j]; }
103 Άσκηση 3 η Μέρος B (iii) Σύνολο για i = 0: i = 0: αναφορές στη μνήμη αποτέλεσμα B[0][0] C[0] m m m m A[0][2] B[0][2] C[2] A[0][2] h m m m A[0][4] B[0][4] C[4] A[0][4] m m m m A[0][6] B[0][6] C[6] A[0][6] h m m m A[0][1] B[0][1] A[0][1] h m h A[0][3] B[0][3] A[0][3] h h h A[0][5] B[0][5] A[0][5] h m h A[0][7] B[0][7] A[0][7] h h h 28 accesses 16 misses 12 s Το ίδιο pattern για i = 1,, 7
104 Άσκηση 3 η Μέρος B (iii) Συνολικά Accesses : 28 * 8 = 224 Misses : 16 * 8 = 128 Hits : 12 * 8 = 96
105 Άσκηση 3 η Μέρος B (iii) 3 η βελτιστοποίηση: Merging arrays int i,j; double A[8][8], B[8][8], C[64]; for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) A[i][j] = A[i][j] + B[i][j] + C[8*i +j]; else A[i][j] = A[i][j] + B[i][j];
106 Άσκηση 3 η Μέρος B (iii) 3 η βελτιστοποίηση: Merging arrays int i,j; double C[64]; struct { double A; double B; } AB[8][8]; for (i=0; i < 8; i++) for (j=0; j < 8; j++) if (j % 2 == 0) AB[i][j].A = AB[i][j].A + AB[i][j].B + C[8*i +j]; else AB[i][j].A = AB[i][j].A + AB[i][j].B;
107 Άσκηση 3 η Μέρος B (iii) Σύνολο για i = 0: i = 0: αναφορές στη μνήμη αποτέλεσμα AB[0][0].A AB[0][0].B C[0] AB[0][0].A m h m h AB[0][1].A AB[0][1].B AB[0][1].A h h h AB[0][2].A AB[0][2].B C[2] AB[0][2].A m h h h AB[0][3].A AB[0][3].B AB[0][3].A h h h AB[0][4].A AB[0][4].B C[4] AB[0][4].A m h m h AB[0][5].A AB[0][5].B AB[0][5].A h h h AB[0][6].A AB[0][6].B C[6] AB[0][6].A m h h h AB[0][7].A AB[0][7].B AB[0][7].A h h h 28 accesses 6 misses 22 s Το ίδιο pattern για i = 1,, 7
108 Άσκηση 3 η Μέρος B (iii) Συνολικά Accesses : 28 * 8 = 224 Misses : 6 * 8 = 48 Hits : 22 * 8 = 176
ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:
ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ονοματεπώνυμο: ΑΜ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (τμήμα Μ - Ω) Κανονική εξεταστική Φεβρουαρίου
Διαβάστε περισσότερα3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ntua.gr 3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΑσκήσεις Caches
Ασκήσεις Caches 1 Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4-way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1
Διαβάστε περισσότεραΆσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,
Ασκήσεις Caches Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1 byte
Διαβάστε περισσότεραΑσκήσεις Caches. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης
Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Ασκήσεις Caches http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΑσκήσεις Caches
Ασκήσεις Caches 1 Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4-way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1
Διαβάστε περισσότεραAΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (5 ο εξάμηνο) ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΞΕΤΑΣΗ (ΦΘΙΝΟΠΩΡΟ 2007) ΔΙΑΡΚΕΙΑ ΕΞΕΤΑΣΗΣ: 2 ΩΡΕΣ 30 ΛΕΠΤΑ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ Α Σ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ Ι Κ Ω Ν Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ
Διαβάστε περισσότεραΑ. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΡ ΙΟ ΥΠΟΛΟΟ ΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua. gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ
Διαβάστε περισσότεραΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ
1 ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ονοματεπώνυμο: ΑΜ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (τμήμα Λ - Ω) Εξέταση Μαρτίου 2014
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr
Διαβάστε περισσότεραΑσκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών
Ασκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών ακ. έτος 2006-2007 Νεκτάριος Κοζύρης Νίκος Αναστόπουλος {nkoziris,anastop}@cslab.ece.ntua.gr Άσκηση 1: pipelining Εξετάζουμε την εκτέλεση του παρακάτω
Διαβάστε περισσότεραΘέµατα Φεβρουαρίου
Θέµατα Φεβρουαρίου 2-2 cslab@ntua 2- Θέµα ο (3%): Έστω η παρακάτω ακολουθία εντολών που χρησιµοποιείται για την αντιγραφ από µια θέση µνµης σε µια άλλη (memory-to-memory copy): lw $2, ($) sw $2, 2($) i)
Διαβάστε περισσότεραΤμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering Οργάνωση και Σχεδίαση Η/Y (HY232) Εργαστήριο 8 Χειμερινό Εξάμηνο 2016-2017 1. Προσομοίωση λειτουργίας ιεραρχίας
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΤελική Εξέταση, Απαντήσεις/Λύσεις
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 Τελική Εξέταση, Απαντήσεις/Λύσεις Άσκηση 1: Assembly για
Διαβάστε περισσότεραΔιαδικασίες ΙI. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 5
ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 5 Διαδικασίες ΙI Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Εισαγωγή στους Η/Υ (ΗΥ134) 1 Κατανομή μνήμης Κείμενο
Διαβάστε περισσότεραΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος
ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος Ε.1 Σας δίνεται ο πιο κάτω κώδικας. Ξαναγράψτε τον ώστε να μειωθεί ο αριθμός των εντολών του αλλά διατηρώντας την ίδια λειτουργιά
Διαβάστε περισσότεραΑσκήσεις Αρχιτεκτονικής Υπολογιστών
Ασκήσεις Αρχιτεκτονικής Υπολογιστών ακαδ. έτος 2008-2009 Άσκηση 1: caches Θεωρούμε το ακόλουθο κομμάτι κώδικα #define N 4 #define M 8 double c[n], a[n][m], b[m]; int i,j; for(i = 0; i < N; i++) for(j =
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΤΕΛΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Τετάρτη, 21 Δεκεμβρίου 2016 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΩΡΕΣ Για πλήρη
Διαβάστε περισσότεραΟργάνωση Υπολογιστών
Οργάνωση Υπολογιστών Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών 1 Άδειες Χρήσης Το παρόν υλικό
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Κεφάλαιο 2 Ασκήσεις Άσκηση 1 Κώδικας C: f = g + h + B[4]; f = g A[B[4]]; f, g, h, στους $s0, $s1, $s2, και διευθύνσεις βάσης των πινάκων Α και Β στους $s6 και $s7 Ποιος είναι ο αντίστοιχος κώδικας MIPS;
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότερα2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ Α Σ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ Ι Κ Ω Ν Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΔιαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4
ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 4 Διαδικασίες Ι Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Εισαγωγή στους Η/Υ (ΗΥ134) 1 Διευθυνσιοδότηση διακλαδώσεων
Διαβάστε περισσότεραΕντολές του MIPS (2)
ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y»
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y» Σάββατο, 31 Οκτωβρίου 2015 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 150 ΛΕΠΤΑ ΘΕΜΑ 1.
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Διαβάστε περισσότερα1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr 1 η ΑΣΚΗΣΗ ΣΤΗΝ
Διαβάστε περισσότεραΣυναρτήσεις-Διαδικασίες
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 4 Συναρτήσεις-Διαδικασίες Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Διαδικασίες (procedures) Γνωστές και σαν υπορουτίνες (subroutines)
Διαβάστε περισσότεραΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Y Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3 = &A[0] = 0x0001080 &A[8]
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή Τρίτη (3 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Διαβάστε περισσότεραΠαραδείγματα Assembly (Μέρος
Παραδείγματα Assembly (Μέρος Β) 1 Άσκηση 1 Γράψτε ένα πρόγραμμα (4 εντολών) με το οποίο μπορείτε να προσθέσετε το περιεχόμενο των θέσεων μνήμης 0Χ30000000 και 0Χ30000001. Το αποτέλεσμα να αποθηκευτεί ως
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότερα1 η Άσκηση Στην Αρχιτεκτονική Υπολογιστών
η Άσκηση Στην Αρχιτεκτονική Υπολογιστών Ακ. Έτος 203 204, 5 ο Εξάμηνο, Σχολή ΗΜ&ΜΥ Τμήμα Λ - Ω Ημερομηνία Παράδοσης: 20/2/203 Απορίες στο: ca203-204t2@cslab.ece.ntua.gr Μέρος Α Δίνονται τα παρακάτω δύο
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΔιάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 H Μικρο-αρχιτεκτονική μας 4 1 0 PCSrc IF/ID Control ID/EX
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές
ΠΛΕ- 027 Μικροεπεξεργαστές 3ο μάθημα: γλώσσα μηχανής MIPS, προγραμματισμός assembly Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Stored Program Computers Αναπαράσταση
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραQuicksort [Hoare, 62] Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Quicksort 1
Quicksort [Hoare, 62] Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Quicksort 1 Quicksort [Hoare, 62] Στοιχείο διαχωρισµού (pivot), π.χ. πρώτο, τυχαίο, Αναδιάταξη και διαίρεση εισόδου σε δύο υπο-ακολουθίες:
Διαβάστε περισσότεραQuicksort. Επιμέλεια διαφανειών: Δ. Φωτάκης Μικροαλλαγές: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Quicksort Επιμέλεια διαφανειών: Δ. Φωτάκης Μικροαλλαγές: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Quicksort [Hoare, 6] Στοιχείο διαχωρισμού (pivot),
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Διαβάστε περισσότερα1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις Άσκηση 1: Σωστό/Λάθος
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΕισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής
Γιώργος Δημητρίου Μάθημα 2 ο Σύνολα Εντολών Οι εντολές που εκτελεί ο κάθε επεξεργαστής (ή οικογένεια επεξεργαστών) MIPS ARM SPARC PowerPC IA-32 Αρχιτεκτονικές συνόλου εντολών Βασικές Έννοιες Εντολές μηχανής
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Δευτέρα, 3 Νοεμβρίου 25 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΛΕΠΤΑ Για πλήρη
Διαβάστε περισσότεραQuicksort. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο
Quicksort ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Quicksort [Hoare, 62] Στοιχείο διαχωρισμού (pivot), π.χ. πρώτο, τυχαίο, Αναδιάταξη και διαίρεση
Διαβάστε περισσότεραΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018
ΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018 Ηµεροµηνία Παράδοσης πρώτου µέρους: 25/10/2018 Θα πρέπει να παραδώσετε
Διαβάστε περισσότεραΟργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση. Κεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή
Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Κεφάλαιο 2 Εντολές: η γλώσσα του υπολογιστή Ασκήσεις Η αρίθµηση των ασκήσεων είναι από την 4 η έκδοση του «Οργάνωση και Σχεδίαση
Διαβάστε περισσότεραΕισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 3-4: Προγραμματισμός MIPS. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής
Γιώργος Δημητρίου Μάθημα 3-4: Προγραμματισμός MIPS Προγραμματισμός σε Συμβολική Γλώσσα Η συμβολική γλώσσα: δεν έχει τύπους, δεν έχει δηλώσεις μεταβλητών, δεν έχει δομές ελέγχου, δεν έχει εντολές βρόχων,
Διαβάστε περισσότεραΟργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 5: Εντολές Συγκρίσεων και Μεταφοράς Ελέγχου. Μανόλης Γ.Η.
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Ασκήσεις 5: Εντολές Συγκρίσεων και Μεταφοράς Ελέγχου Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΠροτεινόμενες Λύσεις 1 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213 & Αποτελέσματα
Προτεινόμενες Λύσεις ης Ενδιάμεσης Εξέτασης στο ΗΜΥ & Αποτελέσματα Αποτελέσματα ης Ενδιάμεσης x(-9) x (-) Series x (-) x (-) 9 Μέσος όρος:.9/ Άσκηση srl/sll Ποιο θα είναι το περιεχόµενο του καταχωρητή
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΥΠΟΛΟΓΙΣΤΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο ΦΕΒΡΟΥΑΡΙΟΣ 2006 ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ
Διαβάστε περισσότεραQuicksort. Πρόβλημα Ταξινόμησης. Μέθοδοι Ταξινόμησης. Συγκριτικοί Αλγόριθμοι
Πρόβλημα Ταξινόμησης Quicksort Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Είσοδος : ακολουθία n αριθμών (α 1, α 2,..., α n
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Οργάνωση επεξεργαστή Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε
Διαβάστε περισσότεραΧρονισμός και Απόδοση Υπολογιστικών Συστημάτων
ΗΥ 232 Οργάνωση και στον Σχεδίαση Η/Y Διάλεξη 7 Χρονισμός και Απόδοση Υπολογιστικών Συστημάτων Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Τι σημαίνει απόδοση; Αεροσκάφος NYC to Paris
Διαβάστε περισσότερα6. Επιστροφή ελέγχου στο σημείο εκκίνησης
Υποστήριξη διαδικασιών στο υλικό των υπολογιστών Βήματα στην εκτέλεση μιας διαδικασίας (procedure) 1. Τοποθέτηση παραμέτρων 2. Μεταβίβαση ελέγχου στη διαδικασία 3. Λήψη πόρων αποθήκευσης 4. Εκτέλεση επιθυμητής
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Σάββατο, 26 Νοεμβρίου 2016 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 120 ΛΕΠΤΑ 1) Υλοποίηση
Διαβάστε περισσότεραQuicksort. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Quicksort ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραChapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Διαβάστε περισσότεραΆσκηση 1 (α) Άσκηση 1 (γ) Άσκηση 1 (β) Παραδείγματα Assembly. Άρα με έλεγχο στον $t1 αποφασίζω αν είναι 0 ή 1.
(α) Παραδείγματα Assembly Εαρινό Εξάμηνο 2012 Γράψτε ένα μικρό πρόγραμμα (1-3 εντολές) με το οποίο μπορείτε να ανιχνεύσετε την τιμή του δυαδικού ψηφίου στη θέση 7 της θέσης μνήμης 0Χ23450009 εάν το λιγότερο
Διαβάστε περισσότεραΥποστήριξη διαδικασιών στο υλικό των υπολογιστών
Βήματα στην εκτέλεση μιας διαδικασίας (procedure) 1. Τοποθέτηση παραμέτρων 2. Μεταβίβαση ελέγχου στη διαδικασία 3. Λήψη πόρων αποθήκευσης 4. Εκτέλεση επιθυμητής εργασίας 5. Τοποθέτηση αποτελέσματος σε
Διαβάστε περισσότεραΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 7ο μάθημα: Κρυφές μνήμες (cache) - εισαγωγή Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Σύστημα μνήμης! Η μνήμη είναι σημαντικό
Διαβάστε περισσότεραΔείγμα Τελικής Εξέτασης στο ΗΜΥ213. Διδάσκοντας: Γιώργος Ζάγγουλος
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) Δείγμα Τελικής Εξέτασης στο ΗΜΥ213 Διδάσκοντας: Γιώργος Ζάγγουλος Οδηγίες Διαβάστε Προσεκτικά! Αυτή η εξέταση γίνεται με
Διαβάστε περισσότεραΚεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή
Κεφάλαιο 2 Εντολές: η γλώσσα του υπολογιστή Σύνολο εντολών Σύνολο εντολών (Instruction set) Το «ρεπερτόριο» των εντολών ενός υπολογιστή Διαφορετικοί υπολογιστές έχουν διαφορετικά σύνολα εντολών Αλλά με
Διαβάστε περισσότεραMIPS functions and procedures
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης MIPS functions and procedures Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΚεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή
Κεφάλαιο 2 Εντολές: η γλώσσα του υπολογιστή Σύνολο εντολών Σύνολο εντολών (Instruction set) Το «ρεπερτόριο» των εντολών ενός υπολογιστή Διαφορετικοί υπολογιστές έχουν διαφορετικά σύνολα εντολών Αλλά με
Διαβάστε περισσότεραLANGUAGE OF THE MACHINE. TEI Κρήτης, Τμ. ΕΠΠ, Αρχιτεκτονική Υπολογιστών. Οργάνωση Υπολογιστή. Τυπική οργάνωση υπολογιστή
INSTRUCTIONS LANGUAGE OF THE MACHINE Οργάνωση Υπολογιστή Τυπική οργάνωση υπολογιστή 1 Εκτέλεση προγραμμάτων σε υπολογιστή INSTRUCTION SET Οι λέξεις στη γλώσσα μηχανής ονομάζονται εντολές (instructions)
Διαβάστε περισσότεραΤρόποι Διευθυνσιοδότησης
Τρόποι Διευθυνσιοδότησης στους Μικροεπεξεργαστές MIPS-32 (Διάλεξη 2) 1 Τρόποι Διευθυνσιοδότησης Η διεύθυνση μνήμης μπορεί να δηλωθεί με 6 τρόπους : 1. Περιεχόμενο καταχωρητή: 2. Άμεση τιμή: 3. Άμεση τιμή
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή
ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή Αρης Ευθυμίου Σύστημα μνήμης Η μνήμη είναι σημαντικό κομμάτι ενός υπολογιστή Επηρεάζει κόστος, ταχύτητα, κατανάλωση
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση
ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση Αρης Ευθυμίου Απόδοση απλής υλοποίησης Υλοποίηση ενός κύκλου είναι πολύ αργή κάθε κύκλος είναι τόσο μεγάλος όσο χρειάζεται
Διαβάστε περισσότεραPipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση»
Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. Δίπλωμα 4. αποθήκευση Σειριακή προσέγγιση για 4 φορτία = 8h 30 min κάθε «φάση» Pipelined προσέγγιση για 4 φορτία = 3.5h Το
Διαβάστε περισσότεραΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1 Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Σύνολο Εντολών Το ρεπερτόριο
Διαβάστε περισσότεραΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 13 Διακλαδώσεις Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Η μέχρι τώρα μικρο-αρχιτεκτονική (Eντολές Διακλάδωσης) Η μικρο-αρχιτεκτονική
Διαβάστε περισσότεραΑρχιτεκτονική Μικροεπεξεργαστών MIPS-32. Αρχείο καταχωρητών και Χάρτης Μνήµης
ΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών Εισαγωγή στους Μικροεπεξεργαστές MIPS-32 ( ιάλεξη 1) ιδάσκων: Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy Περίληψη Αρχιτεκτονική Μικροεπεξεργαστών
Διαβάστε περισσότεραΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών
ΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών Διδάσκοντες: Νικόλας Στυλιανίδης Γιώργος Ζάγγουλος Email: nstylianides@gmail.com zaggoulos.george@ucy.ac.cy Εισαγωγή στους Μικροεπεξεργαστές
Διαβάστε περισσότεραΗΜΥ 213. Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών. Διδάσκων: Δρ. Γιώργος Ζάγγουλος
ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Περίληψη Αρχιτεκτονική Μικροεπεξεργαστών
Διαβάστε περισσότεραΔιάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 5 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πόσο μεγάλη είναι μια μνήμη cache;
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών Ι
Αρχιτεκτονική Υπολογιστών Ι Επιλεγμένες εντολές και συναρτήσεις assembly Από το βιβλίο Αρχιτεκτονική Υπολογιστών & Προγραμματισμός Assembly (Συγγραφέας / Εκδότης : Παναγιώτης Παπάζογλου) Δρ. Παναγιώτης
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων
Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 2η: Αναπαράσταση Πληροφορίας - Σύνολα Εντολών Άσκηση 1: Να αποδείξετε ότι η μοναδική μη προσημασμένη ακέραια
Διαβάστε περισσότεραΕργαστήριο Αρχιτεκτονική Υπολογιστών Ι ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ. Άσκηση 2 Ποιες οι τιμές των καταχωρητών μετά την εκτέλεση του προγράμματος ;
Εργαστήριο Αρχιτεκτονική Υπολογιστών Ι ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ Άσκηση 1 Πόσους αστερίσκους θα τυπώσει το πρόγραμμα ; li $t2,2 li $t1,1 Εμφάνισε div $t1,$t2 mfhi $t3 add $t3,$t3,1 add $t1,$t1,$t3 ble $t1,10,start
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων
Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις
Διαβάστε περισσότεραΔιάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Καθυστερήσεις και Εκκενώσεις Εντολών
Διαβάστε περισσότεραΕίδη των Cache Misses: 3C s
Είδη των Cache Misses: 3C s 1 Compulsory: Συμβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί από χαμηλότερα επίπεδα μνήμης και να τοποθετηθεί στην cache (αποκαλούνται και cold start
Διαβάστε περισσότεραΠρογραμματισμός συστημάτων UNIX/POSIX. Θέμα επιλεγμένο από τους φοιτητές: Προγραμματιστικές τεχνικές που στοχεύουν σε επιδόσεις
Προγραμματισμός συστημάτων UNIX/POSIX Θέμα επιλεγμένο από τους φοιτητές: Προγραμματιστικές τεχνικές που στοχεύουν σε επιδόσεις Βελτιστοποιήσεις με στόχο τις επιδόσεις Σε αρκετές περιπτώσεις δεν αρκεί να
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών
Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Άσκηση 11 (εργαστηριακή): Ασκήσεις Εξαμήνου Μέρος Γ Δεκέμβριος 2016 Γράψτε ένα πρόγραμμα προσομοίωσης
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών II 16-2-2012. Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων
Αρχιτεκτονική Υπολογιστών II 6 --0 Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων Θέμα. Τι γνωρίζετε για την τοπικότητα των αναφορών και ποιών μονάδων του υπολογιστή ή τεχνικών η απόδοση εξαρτάται από
Διαβάστε περισσότεραΠανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής
Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής Ενότητα 1η: Αναπαράσταση Πληροφορίας Άσκηση 1: Να αποδείξετε ότι η μοναδική μη προσημασμένη ακέραια αναπαράσταση του αριθμού με τιμή 0 σε αριθμητικό σύστημα οποιασδήποτε
Διαβάστε περισσότεραSpim Cache. Εισαγωγή στη χρήση του προσοµοιωτή. Αρχιτεκτονική Υπολογιστών ΙΙ. Σπύρος Ξεργιάς, ηµήτρης Γκιζόπουλος, Πανεπιστήµιο Αθηνών
Spim Cache Εισαγωγή στη χρήση του προσοµοιωτή Αρχιτεκτονική Υπολογιστών ΙΙ Spim Cache Ελεύθερο Λογισµικό, επέκταση του PCSpim ηµιουργήθηκε στο Πολυτεχνείο της Βαλένθια, στην Ισπανία Συµβατό µε το λειτουργικό
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το
Διαβάστε περισσότεραΙεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης
Διαβάστε περισσότερα