LU-DIP-B:index: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary |
No edit summary |
||
| Line 392: | Line 392: | ||
* [http://www.xilinx.com Xilinx kompānijas (FPGA ražotājs) portāls] |
* [http://www.xilinx.com Xilinx kompānijas (FPGA ražotājs) portāls] |
||
* [http://owlhouse.csie.nctu.edu.tw/old/CO2004/ch1-4_old.ppt Computer Organization & Design The Hardware/Software Interface, 2nd Edition] |
* [http://owlhouse.csie.nctu.edu.tw/old/CO2004/ch1-4_old.ppt Computer Organization & Design The Hardware/Software Interface, 2nd Edition - lekciju slaidi no National Chiao Tung University] |
||
* [http://owlhouse.csie.nctu.edu.tw/old/CO2004/CO2004_lecture_notes.ppt Computer Organization & Design The Hardware/Software Interface, 3nd Edition - lekciju slaidi no National Chiao Tung University] |
|||
Revision as of 08:49, 10 October 2008
Ievads Digitalajā Projektēšanā
LU FMF DN kurss, bakalaura programma, 2008.g rudens
Pasniedzējs: asoc.prof. Leo Seļāvo
Asistenti: Artis Mednis, Ģirts Strazdiņš
Kalendārs
| Nedēļas datumi | Kursa saturs |
|---|---|
| 25.08.2008. - 31.08.2008. | Reģistrācijas nedēļa |
| 05.09.2008. | 1. Lekcija: Ievadlekcija |
| 05.09.2008. | 1. Praktiskie darbi: Projekta izveide Xilinx ISE vidē. |
| 12.09.2008. | 2. Lekcija: Xilinx Spartan 3E aparatūras iespēju apskats |
| 12.09.2008. | 2. Praktiskie darbi: Projekta lejupielāde uz Xilinx Spartan 3E platformas. |
| 19.09.2008. | 3. Lekcija: Pulkstenis. Setup time, Hold time, Clock skew. |
| 19.09.2008. | 3. Praktiskie darbi: Pulkstenis. Frekvences dalīšana, izmantojot trigeri. |
| 26.09.2008. | 4. Lekcija: Procesors, atmiņa, Data path. ALU. |
| 26.09.2008. | 4. Praktiskie darbi - 1. daļa: Vienkārša ALU projektēšana. |
| 03.10.2008. | 5. Lekcija: Aiztures loģiskajās shēmās. Reset, Chip Enable, Output Enable. |
| 03.10.2008. | 4. Praktiskie darbi - 2. daļa: Vienkārša ALU implementācija uz Xilinx Spartan 3E platformas. |
| 10.10.2008. | 6. Lekcija: |
| 10.10.2008. | Kursa projekts #1 - 1.posms: Aritmētiski loģiskais bloks, summators, reģistru fails, multipleksors. |
| 13.10.2008. - 19.10.2008. | Studijas |
| 20.10.2008. - 26.10.2008. | Studijas |
| 27.10.2008. - 02.11.2008. | Studijas |
| 03.11.2008. - 09.11.2008. | Studijas |
| 10.11.2008. - 16.11.2008. | Studijas |
| 17.11.2008. - 23.11.2008. | Studijas |
| 24.11.2008. - 30.11.2008. | Studijas |
| 01.12.2008. - 07.12.2008. | Studijas |
| 08.12.2008. - 14.12.2008. | Studijas |
| 15.12.2008. - 21.12.2008. | Studijas |
| 22.12.2008. - 04.01.2009. | Ziemassvētku un Jaungada brīvdienas |
| 05.01.2009. - 11.01.2009. | Individuālās studijas un pārbaudījumi |
| 12.01.2009. - 18.01.2009. | |
| 19.01.2009. - 25.01.2009. | |
| 26.01.2009. - 01.02.2009. |
Administratīvie jautājumi
Mājas darbu noformēšana un iesniegšana
- Mājas darbi, ja vien nav norādīts savādāk, tiek iesniegti PDF failu veidā (1 mājas darbs = 1 PDF fails)
- PDF failu nosaukumi veidojami pēc sekojošas struktūras:
- DIP_MD[mājasdarba numurs]_[autora vārds]_[autora uzvārds]_[autora studenta apliecības numurs].PDF
- PDF failu nosaukumi nesatur specifiskās LV rakstzīmes
- Mājas darbi tiek iesniegti, nosūtot uz sekojošām (abām!) e-pasta adresēm:
- medart pie e-apollo punkts lv
- leo punkts selavo pie gmail punkts com
- E-pasta lauka SUBJ saturs identisks PDF faila nosaukumam
- Mājas darba iesniegšana pēc norādītā termiņa var negatīvi ietekmēt mājas darba vērtējumu
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.
Mācību materiāli
1. Praktiskie darbi
- Uzdevums 1: Xilinx ISE vidē izveidot jaunu projektu un tajā realizēt loģisko shēmu pēc sekojošas specifikācijas:
| INPUT1 | INPUT2 | INPUT3 | INPUT4 | OUTPUT |
|---|---|---|---|---|
| X | X | 0 | 0 | INPUT1 AND INPUT2 |
| X | X | 0 | 1 | NOT(INPUT1) |
| X | X | 1 | 0 | INPUT1 OR INPUT2 |
| X | X | 1 | 1 | INPUT1 XOR INPUT2 |
- Uzdevums 2: Pārbaudīt izveidoto loģisko shēmu, izmantojot Test Bench Waveform
- Šeit iespējams apskatīt izpildīta praktiskā darba paraugu
1. Mājas darbs
- Izveidot loģisko tabulu, kas ataino dotās loģiskās shēmas darbību
- Iesniegšanas termiņš 12.09.2008 10:30
2. Mājas darbs
- Izveidot loģisko tabulu un atbilstošu loģisko shēmu, kas darbojas kā 7-segmentu indikatora dekoderis (ieejā 3 biti, nepieciešams atainot skaitļus no 0 līdz 7)
- Iesniegšanas termiņš 12.09.2008 10:30
2. Praktiskie darbi
- Uzdevums 1: Xilinx ISE vidē realizēt loģisko shēmu - RS trigeri
- Uzdevums 2: Pārbaudīt izveidoto loģisko shēmu, izmantojot Test Bench Waveform
- Uzdevums 3: Xilinx ISE vidē realizēt loģisko shēmu pēc sekojošas specifikācijas:
| INPUT1 | INPUT2 | INPUT3 | INPUT4 | OUTPUT1 | OUTPUT2 | OUTPUT3 |
|---|---|---|---|---|---|---|
| X | X | X | X | NOT(INPUT1) | INPUT2 | INPUT1 AND INPUT2 |
- Uzdevums 4: Veikt izveidotās loģiskās shēmas piesaisti Xilinx Spartan 3E platformai pēc sekojošas specifikācijas:
| INPUT1 | INPUT2 | INPUT3 | INPUT4 | OUTPUT1 | OUTPUT2 | OUTPUT3 |
|---|---|---|---|---|---|---|
| SW0 | SW1 | SW2 | SW3 | LED0 | LED1 | LED2 |
- Uzdevums 5: Veikt izveidotās loģiskās shēmas lejupielādi uz Xilinx Spartan 3E platformas
- Uzdevums 6: Pārbaudīt lejupielādētās loģiskās shēmas darbības atbilstību sākotnējai specifikācijai
- Šeit iespējams apskatīt izpildīta praktiskā darba paraugu
3. Mājas darbs
- Izmantojot tranzistorus, izveidot 4 atsevišķas loģiskās shēmas, kuras nodrošina sekojošu funkcionalitāti:
- AND
- NAND
- OR
- NOR
- Iesniegšanas termiņš 19.09.2008 10:30
3. Praktiskie darbi
- Uzdevums 1: Xilinx ISE vidē realizēt loģisko shēmu pēc sekojošas specifikācijas:
| SW0 | SW1 | SW2 | LED0 | LED1 | LED2 |
|---|---|---|---|---|---|
| OFF | OFF | OFF | 0.2 Hz | 0.4 Hz | 0.7 Hz |
| ON | ON | ON | 1.5 Hz | 3.0 Hz | 6.0 Hz |
- Uzdevums 2: Veikt izveidotās loģiskās shēmas lejupielādi uz Xilinx Spartan 3E platformas
- Uzdevums 3: Pārbaudīt lejupielādētās loģiskās shēmas darbības atbilstību sākotnējai specifikācijai
- Šeit iespējams apskatīt izpildīta praktiskā darba paraugu
4. Mājas darbs
- Izveidot loģisko shēmu, kas nodrošina gaismas diodes LED0 mirgošanu ar frekvenci tieši 0.5 Hz (1 sekundi nedeg, 1 sekundi deg, utt.)
- Iesniegšanas termiņš 26.09.2008 10:30
4. Praktiskie darbi - 1.daļa
- Uzdevums 1: Xilinx ISE vidē realizēt ALU pēc sekojošas specifikācijas:
| INPUTS | OUTPUTS | OPCODE | RESULT | OPCODE | RESULT | OPCODE | RESULT | |
|---|---|---|---|---|---|---|---|---|
| A(3:0) | RESULT(3:0) | 000 | A AND B | 011 | A XOR B | 110 | reserved | |
| B(3:0) | OVERFLOW | 001 | A OR B | 100 | A ADD B | 111 | reserved | |
| OPCODE(2:0) | ZERO | 010 | NOT(A) | 101 | reserved |
5. Mājas darbs
- Izveidot divus loģiskās shēmas XOR variantus, izmantojot to konstruēšanā tikai loģiskos elementus NAND, NOR un NOT
- 1. variants - shēmas elementus savienojošo vadu krustošanās IR atļauta
- 2. variants - shēmas elementus savienojošo vadu krustošanās NAV atļauta
- Iesniegšanas termiņš 03.10.2008 10:30
4. Praktiskie darbi - 2.daļa
- Uzdevums 2: Veikt izveidotā ALU piesaisti Xilinx Spartan 3E platformai pēc sekojošas specifikācijas:
| Kontrolis | Darbība |
|---|---|
| SW0..SW3 | Ievades datu uzstādīšana |
| BTN_WEST | Ievades datu saglabāšana reģistrā A |
| BTN_EAST | Ievades datu saglabāšana reģistrā B |
| BTN_NORTH | Ievades datu saglabāšana reģistrā OPCODE |
| ROT_CENTER | Izvades datu attēlošana uz LED (LED0..LED3 dati, LED4 OVERFLOW, LED5 ZERO) |
| BTN_SOUTH | Izvades datu dzēšana |
| Vadības pogu nospiešana tiek dublēta ar LED7 iedegšanos |
- Uzdevums 3: Veikt izveidotā ALU lejupielādi uz Xilinx Spartan 3E platformas
- Uzdevums 4: Sagatavot 5 testpiemērus ALU darbības pārbaudei
- Uzdevums 5: Pārbaudīt cita studenta lejupielādētā ALU darbības atbilstību sākotnējai specifikācijai (students A pārbauda studenta B shēmu, students B - studenta C, utt.)
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
- Instrukciju atmiņa (Instruction memory)
- PC reģistrs (Program counter)
- Zīmes paplašināšana (Sign-extension)
- Nobīde pa kreisi (Shift-left 2 32IN-32OUT)
Kursa projekts #1 - 3.posms
- Datu atmiņa (Data memory)
- Aritmētiski loģiskā bloka kontrole (ALU control)
- Kontrole (Control)
- Nobīde pa kreisi (Shift-left 2 26IN-28OUT)
Kursa projekts #1 - 4.posms
- Integrācija
- Pārbaude
- Lejupielāde uz Xilinx Spartan 3E platformas
- Testēšana ar kontrolpiemēriem