LU-DIP-B:KP1
Contents
Kursa projekts #1 - vientakts procesora projektēšana
- Kursa projektu studenti veic grupās (1 grupa = 2 studenti).
- Sadalīšanos grupās studenti organizē paši pēc brīvprātības principa.
- Individuāls darbs pie kursa projekta nav paredzēts.
- Kursa projekta izpilde var tikt veikta gan praktisko darbu laikā, izmantojot LU datorresursus, gan citā laikā, izmantojot citus studentiem pieejamos datorresursus.
- Kursa projekts ir sadalīts 4 secīgos posmos.
- Posma laikā veicamo darbu sadalījumu grupas ietvaros studenti organizē paši pēc brīvprātības principa.
- Uzsākt nākošo posmu grupa var tikai tad, kad ir veiksmīgi nokārtojusi ieskaiti par iepriekšējā posmā paveikto.
- Lai nokārtotu ieskaiti, ir jābūt izpildītiem sekojošiem nosacījumiem:
- līdz kārtējās lekcijas sākumam uz e-pasta adresēm, kas ir minētas sadaļā Mājas darbu noformēšana un iesniegšana, ir iesūtīts saarhivēts ISE projekts;
- kārtējo praktisko darbu laikā ir atrādīts ISE projekts, kurā ar testpiemēriem tiek prezentēta izveidotā funkcionalitāte;
- ir jābūt skaidram, kāds ir katra studenta ieguldījums paveiktajā;
- ir jābūt skaidram, ka katram studentam ir izpratne gan par savu, gan par kolēģa paveikto.
Kursa projekts #1 - 1.posms
ALU n. [Arthritic Logic Unit or (rare) Arithmetic Logic Unit]
A random-number generator supplied as standard with all computer systems.
Stan Kelly-Bootle, The Devil’s DP Dictionary, 1981
- Aritmētiski loģiskais bloks (ALU) - 5.4, B.5, B.6
- ieejas signāli A(31:0), B(31:0), OPCODE(3:0)
- izejas signāli RESULT(31:0), ZERO, OVERFLOW, CarryOut
- operācijas AND(0000), OR(0001), ADD(0010), SUB(0110), SLT(0111), NOR(1100)
- Summators (Adder) - 5.3, B.6
- ieejas signāli A(31:0), B(31:0)
- izejas signāli RESULT(31:0), OVERFLOW, CarryOut
- Reģistru fails (Register file) - 5.3, B.8
- ieejas signāli ReadRegister1(4:0), ReadRegister2(4:0), WriteRegister(4:0), WriteData(31:0), RegWrite
- izejas signāli ReadData1(31:0), ReadData2(31:0)
- Multipleksors (MUX) - B.3
- ieejas signāli A(31:0), B(31:0), Select
- izejas signāli C(31:0)
- Iesūtīšanas termiņš 17.10.2008 10:30
- Atrādīšanas termiņš 17.10.2008 14:10
Kursa projekts #1 - 2.posms
MEMORY n.
Something that is remembered ("search as he would, the memory was lost")
The cognitive processes whereby past experience is remembered ("he can do it from memory"; "he enjoyed remembering his father")
The power of retaining and recalling past experience ("he had a good memory when he was younger")
An electronic memory device ("a memory and the CPU form the central part of a computer to which peripherals are attached")
The area of cognitive psychology that studies memory processes ("he taught a graduate course on learning and memory")
WordNet 3.0 © Princeton University 2006
- Instrukciju atmiņa (Instruction memory) - 5.3, B.8, B.9
- ieejas signāli ReadAddress(31:0)
- izejas signāli Instruction(31:0)
- PC reģistrs (Program counter) - 5.3, B.8
- ieejas signāli WriteData(31:0)
- izejas signāli ReadData(31:0)
- Zīmes paplašināšana (Sign-extension) - 5.3
- ieejas signāli Input(15:0)
- izejas signāli Result(31:0)
- Nobīde pa kreisi (Shift-left 2 32IN-32OUT) - 5.3
- ieejas signāli Input(31:0)
- izejas signāli Result(31:0)
- Iesūtīšanas termiņš 24.10.2008 10:30
- Atrādīšanas termiņš 24.10.2008 14:10
Kursa projekts #1 - 3.posms
Control is an Illusion
Mark Horstman, Law #4
- Datu atmiņa (Data memory) - 5.3, B.8, B.9
- ieejas signāli Address(31:0), WriteData(31:0), MemWrite, MemRead
- izejas signāli ReadData(31:0)
- Aritmētiski loģiskā bloka kontrole (ALU control) - 5.4, C.2
- ieejas signāli ALUOp(1:0), Function(5:0)
- izejas signāli OPCODE(3:0)
- Kontrole (Control) - 5.4, C.2, C.3
- ieejas signāli Op(5:0)
- izejas signāli RegDst, Jump, Branch, MemRead, MemToReg, ALUOp(1:0), MemWrite, ALUSrc, RegWrite
- Nobīde pa kreisi (Shift-left 2 26IN-28OUT) - 5.4
- ieejas signāli Input(25:0)
- izejas signāli Result(27:0)
- Iesūtīšanas termiņš 07.11.2008 10:30
- Atrādīšanas termiņš 07.11.2008 14:10
Kursa projekts #1 - 4.posms
- Integrācija - 5.4
- Šeit iespējams apskatīt DataPath BEZ Jump instrukcijas realizācijas
- Šeit iespējams apskatīt DataPath AR Jump instrukcijas realizāciju (pievērst uzmanību neprecizitātei attēla labajā augšējā stūrī)
- Šeit iespējams apskatīt instrukciju atmiņas simulatoru
- Papildus nosacījumi:
- Reģistru faila reģistrā #0 vienmēr atrodas vērtība 0
- Reģistru faila reģistrā #1 vienmēr atrodas vērtība 1
- Datu atmiņas adreses #28 biti(7:0) pievienoti LED(7:0)
- PC reģistrā iespējams ierakstīt vērtību 0, nospiežot pogu ROT_CENTER
- Pārbaude
- Shēmai jabūt spējīgai iziet visas 3 izstrādes fāzes (drīkst būt Warning'i, nedrīkst būt Error'i):
- Synthesize
- Implement Design
- Generate Programming File
- Ja nepieciešams (ISE konstatē iekārtas resursu nepietiekamību), datu atmiņas apjomu var samazināt līdz 64 adresēm
- Shēmai jabūt spējīgai iziet visas 3 izstrādes fāzes (drīkst būt Warning'i, nedrīkst būt Error'i):
- Lejupielāde uz Xilinx Spartan 3E platformas
- Testēšana ar kontrolpiemēriem
- Šeit iespējams apskatīt programmas sastādīšanai pieejamās instrukcijas
- Šeit iespējams apskatīt programmas paraugu (paldies Jānim T. un Jānim B.)
- Piezīmes:
- Instrukcijas NOR iekļaušana testa programmā nav obligāta (tas saistīts ar moduļa ALU control realizācijas atspoguļojumu grāmatā)
- Iespējams, ka programmas paraugu vēl būs nepieciešams modificēt (ir versija, ka shēma var nekorekti izpildīt viena un tā paša reģistra lasīšanu un rakstīšanu vienā programmas darbības solī)
- Iesūtīšanas termiņš 12.12.2008 10:30
- Atrādīšanas termiņš 12.12.2008 14:10