Difference between revisions of "LU-DIP-b"

From DiLab
Jump to: navigation, search
(Kalendārs)
(08.11.2019)
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{LUDFKurss|Ievads digitālajā projektēšanā|DIP|DatZ3074|2DAT3255}}
 
{{LUDFKurss|Ievads digitālajā projektēšanā|DIP|DatZ3074|2DAT3255}}
  
* Pasniedzēji: Rinalds Ruskuls, Leo Seļāvo
+
* Pasniedzējs: Leo Seļāvo
 
* {{KursiGGroup|lu-dip-b}}
 
* {{KursiGGroup|lu-dip-b}}
 +
 +
Kurss šajā semestrī tiks vadīts attālināti, tāpēc klātienes lekcijas nebūs, izņemot kad iepriekš paziņots.
 +
 +
Wiki informācija tiks atjaunota tuvākajās dienās. Līdz tam lūdzu sekot kursa slack kanālam.
 +
  
 
== Darbu iesniegšana un vērtēšana ==
 
== Darbu iesniegšana un vērtēšana ==
Line 12: Line 17:
 
{| border=1 cellspacing=0 cellpadding=4
 
{| border=1 cellspacing=0 cellpadding=4
 
|-
 
|-
! Nedēļas datumi
+
! Datumi
 
! Kursa saturs
 
! Kursa saturs
 +
! Uzdevumi
 
|-
 
|-
| 29.08.2016
+
|
- 02.09.2016
+
===== 06.09.2019 =====
| Reģistrācijas nedēļa
 
|-
 
| 09.09.2016
 
 
| [http://selavo.lv/kursi/dip/L01-Introduction.1.02.pdf Ievadlekcija. Digitālās projektēšanas process.]
 
| [http://selavo.lv/kursi/dip/L01-Introduction.1.02.pdf Ievadlekcija. Digitālās projektēšanas process.]
  
 
Praktiskais darbs [[DIPb10:PD1 | PD1]].
 
Praktiskais darbs [[DIPb10:PD1 | PD1]].
  
Mājas darbs [[DIPb10:MD1 | MD1]]
+
|
 
|-
 
|-
| 16.09.2016
+
|
 +
===== 13.09.2019 =====
 
| [http://selavo.lv/kursi/dip/L02-Spartan3E.1.01.pdf Digitālo iekārtu izstrādes pamatelementi. Xilinx Spartan 3E.]
 
| [http://selavo.lv/kursi/dip/L02-Spartan3E.1.01.pdf Digitālo iekārtu izstrādes pamatelementi. Xilinx Spartan 3E.]
  
 
Praktiskais darbs [[DIPb10:PD2 | PD2]].
 
Praktiskais darbs [[DIPb10:PD2 | PD2]].
  
Mājas darbs [[DIPb10:MD2 | MD2]]
+
|
 
|-
 
|-
| 23.09.2016
+
|
 +
===== 20.09.2019 =====
 
| [http://selavo.lv/kursi/dip/L03-Triggers&Clock.1.02.pdf Trigeri. Pulkstenis.]
 
| [http://selavo.lv/kursi/dip/L03-Triggers&Clock.1.02.pdf Trigeri. Pulkstenis.]
  
 
Praktiskais darbs [[DIPb10:PD3 | PD3]].
 
Praktiskais darbs [[DIPb10:PD3 | PD3]].
  
Mājas darbs [[DIPb10:MD3 | MD3]]
+
|
 
|-
 
|-
| 30.09.2016
+
|
 +
===== 27.09.2019 =====
 
| [http://selavo.lv/kursi/dip/L04-CPUPartOne.1.02.pdf CPU. DataPath. ALU.]
 
| [http://selavo.lv/kursi/dip/L04-CPUPartOne.1.02.pdf CPU. DataPath. ALU.]
  
 
Praktiskais darbs [[DIPb10:PD4 | PD4]].
 
Praktiskais darbs [[DIPb10:PD4 | PD4]].
  
Mājas darbs [[DIPb10:MD4 | MD4]]
+
|
 
|-
 
|-
| 07.10.2016
+
|
 +
===== 4.10.2019 =====
 
| [http://selavo.lv/kursi/dip/L05-CPUPartTwo.1.02.pdf CPU. DataPath (turpinājums). Instrukciju izpildes maģistrāle.]
 
| [http://selavo.lv/kursi/dip/L05-CPUPartTwo.1.02.pdf CPU. DataPath (turpinājums). Instrukciju izpildes maģistrāle.]
  
Line 53: Line 60:
  
 
Kursa projekts [[DIPb10:KP1 | KP1]]
 
Kursa projekts [[DIPb10:KP1 | KP1]]
 +
|
 
|-
 
|-
| 14.10.2016
+
|
 +
===== 11.10.2019 =====
 
| [http://selavo.lv/kursi/dip/L09-HDLVerilog.1.02.pdf Aparatūras apraksta valodas. Verilog.]  
 
| [http://selavo.lv/kursi/dip/L09-HDLVerilog.1.02.pdf Aparatūras apraksta valodas. Verilog.]  
 
[http://selavo.lv/kursi/dip/L06-CPUPartThree.1.02.pdf CPU. DataPath (turpinājums). Zarošanās. Kontrole.]
 
[http://selavo.lv/kursi/dip/L06-CPUPartThree.1.02.pdf CPU. DataPath (turpinājums). Zarošanās. Kontrole.]
 
<!--| [http://selavo.lv/kursi/dip/L06-CPUPartThree.1.02.pdf CPU. DataPath (turpinājums). Zarošanās. Kontrole.] -->
 
<!--| [http://selavo.lv/kursi/dip/L06-CPUPartThree.1.02.pdf CPU. DataPath (turpinājums). Zarošanās. Kontrole.] -->
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP1 | KP1]].
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP1 | KP1]].
 +
|
 
|-
 
|-
| 21.10.2016
+
|
 +
===== 18.10.2019 =====
 
| [https://drive.google.com/open?id=0B55VrJN-wdIgdXJLaFdFaWNPNWs Verilog (turpinājums). Galīgs Stāvokļu Automāts (FSM)]
 
| [https://drive.google.com/open?id=0B55VrJN-wdIgdXJLaFdFaWNPNWs Verilog (turpinājums). Galīgs Stāvokļu Automāts (FSM)]
 
[http://selavo.lv/kursi/dip/L07-CPUPartFour.1.02.pdf CPU. DataPath (nobeigums). Ātrāks summators. Reģistru fails.]
 
[http://selavo.lv/kursi/dip/L07-CPUPartFour.1.02.pdf CPU. DataPath (nobeigums). Ātrāks summators. Reģistru fails.]
Line 66: Line 77:
 
Praktiskajos darbos veidojam VGA kontroleri [https://drive.google.com/open?id=0B55VrJN-wdIgak5QbmItSHBiTG8]
 
Praktiskajos darbos veidojam VGA kontroleri [https://drive.google.com/open?id=0B55VrJN-wdIgak5QbmItSHBiTG8]
  
 +
|
 
|-
 
|-
| 28.10.2016
+
|
| [http://selavo.lv/kursi/dip/L08-DLXProcessorAndInstructions.1.01.pdf DLX procesors un instrukcijas.]
+
===== 25.10.2019 =====
 +
| [http://selavo.lv/kursi/dip/L11-Memory.1.02.pdf Atmiņa. Fiziskās realizācijas varianti.]
 
Kursa projekts [[DIPb10:KP2 | KP2]]
 
Kursa projekts [[DIPb10:KP2 | KP2]]
 +
|
 
|-
 
|-
| 04.11.2016
+
|
| [http://selavo.lv/kursi/dip/L09-HDLVerilog.1.02.pdf Aparatūras apraksta valodas. Verilog.]
+
===== 01.11.2019 =====
 +
| [https://courses.cs.washington.edu/courses/cse378/10sp/lectures/lec09-perf.pdf Vientakts Procesors.]
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP2 | KP2]].
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP2 | KP2]].
 +
|
 +
'''Termiņš KP1''': 1. daļa
 +
<!-- '''Termiņš [[#MD1]]''': loģikas funkcijas no slēdžiem uz LED -->
 
|-
 
|-
| 11.11.2016
+
|
| '''Vidus semestra kontroldarbs'''  
+
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP2 | KP2]].
+
===== 08.11.2019 =====
 +
|  
 +
<!-- -->
 +
* '''Vidus semestra kontroldarbs'''  
 +
* Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP2 | KP2]].
 +
|
 +
<!--
 +
'''Termiņš [[#MD2]]''': Frekvences dalīšana no sistēmas ģeneratora 50MHz uz LED 1Hz
 +
-->
 
|-
 
|-
| 18.11.2016
+
|
| [http://selavo.lv/kursi/dip/L10-HDLVHDL.1.02.pdf Aparatūras apraksta valodas. VHDL.]
+
 
 +
===== 15.11.2019 =====
 +
|  
 +
'''Ekskursija''' HansaMatrix uzņēmumā, lekciju laikā. Lūdzu ierasties laicīgi 8:30 sekojošā adresē: Ziedleju iela 1, Mārupe, LV2167. Tas ir samērā netālu no t/c "Spice". Uzņēmumā jūs sagaidīs un jums parādīs un pastāstīs digitālās projektēšanas praktiskos aspektus un realitāti.
 +
 
 +
[http://selavo.lv/kursi/dip/L10-HDLVHDL.1.02.pdf Aparatūras apraksta valodas. VHDL.]
 
Kursa projekts [[DIPb10:KP3 | KP2]]
 
Kursa projekts [[DIPb10:KP3 | KP2]]
 +
|
 
|-
 
|-
| 25.11.2016
+
|
| [http://selavo.lv/kursi/dip/L11-Memory.1.02.pdf Atmiņa. Fiziskās realizācijas varianti.]
+
===== 22.11.2019 =====
 +
| [https://drive.google.com/open?id=0B55VrJN-wdIgQkZHVWNSN3JxZ00 Kopnes, saskarnes, to iedalījums.]
 +
[https://drive.google.com/open?id=0B55VrJN-wdIgYjhWQkxFbXNJbUE Integrálo mikroshému kopnes.]
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 +
|
 
|-
 
|-
| 04.12.2015
+
|
 +
===== 29.11.2019 =====
 
| [http://selavo.lv/kursi/dip/L12-MulticycleCPU.1.01.pdf Daudztaktu procesors.]
 
| [http://selavo.lv/kursi/dip/L12-MulticycleCPU.1.01.pdf Daudztaktu procesors.]
  
Line 93: Line 129:
  
 
[http://bear.ces.cwru.edu/eecs_318/eecs_318_7.pdf Multicycle CPU] PDF 455.60KB (lekciju slaidi no Case Western Reserve University)
 
[http://bear.ces.cwru.edu/eecs_318/eecs_318_7.pdf Multicycle CPU] PDF 455.60KB (lekciju slaidi no Case Western Reserve University)
 +
|
 
|-
 
|-
| 11.12.2015
+
|
 +
===== 06.12.2019 =====
 
| [http://selavo.lv/kursi/dip/L13-MulticycleCPUPartTwo.1.02.pdf Daudztaktu procesors (nobeigums).]
 
| [http://selavo.lv/kursi/dip/L13-MulticycleCPUPartTwo.1.02.pdf Daudztaktu procesors (nobeigums).]
  
Line 100: Line 138:
  
 
[http://www.sdsc.edu/~allans/cs141/l11redo.pdf Designing a Pipelined CPU] PDF 116.22KB (lekciju slaidi no San Diego Supercomputer Center)
 
[http://www.sdsc.edu/~allans/cs141/l11redo.pdf Designing a Pipelined CPU] PDF 116.22KB (lekciju slaidi no San Diego Supercomputer Center)
 +
|
 
|-
 
|-
| 18.12.2015
+
|
 +
===== 13.12.2019 =====
 
| [http://selavo.lv/kursi/dip/L14-FPGA.1.01.pdf FPGA.]
 
| [http://selavo.lv/kursi/dip/L14-FPGA.1.01.pdf FPGA.]
  
Line 107: Line 147:
  
 
[http://www.ppouyan.net/wp-content/uploads/2010/09/fpga.pdf How Does FPGA Work] PDF 1.06MB (lekciju slaidi no Lund University)  
 
[http://www.ppouyan.net/wp-content/uploads/2010/09/fpga.pdf How Does FPGA Work] PDF 1.06MB (lekciju slaidi no Lund University)  
 +
|
 
|-
 
|-
| xx.12.2015
+
|
- 01.01.2016
+
===== 23.12.2019 - 01.01.2020 =====
 
| Ziemassvētku un Jaungada brīvdienas  
 
| Ziemassvētku un Jaungada brīvdienas  
 +
|
 
|-
 
|-
| xx.01.2015,
+
|  
xx.01.2015
+
===== xx.01.2020 =====
| Konsultācijas
+
|  
|-
+
'''xx:xx: Eksāmens'''  
| xx.01.2016
+
 
| '''xx:xx: Gala eksāmena kontroldarbs'''  
+
Projektu prezentācijas - kursa noslēgums
|-
+
|
| xx.01.2016
 
| '''xx:xx:  Projektu prezentācijas - kursa noslēgums'''
 
|-
 
 
|}
 
|}
  
Line 136: Line 175:
 
== Mājas darbi (MD) ==
 
== Mājas darbi (MD) ==
  
 +
==== MD1 ====
 +
Mērķis: apgūt Spartan-3E attīstītājrīku un darba plūsmu veidojot vienkāršas digitālas iekārtas.
 +
 +
Realizēt sekojošu funkcionalitāti ar Spartan-3E rīka palīdzību:
 +
* Divi slēdzīši tiek izmantoti kā ieejas signāli loģikas funkcijām.
 +
* Divi LED seko slēdzīšu stāvoklim: ja ieslēgts slēdzis, LED spīd (nozīmē stāvokli "1")
 +
* Pieci LED attēlo sekojošu funkciju vērtības: AND, OR, NAND, NOR, XOR
 +
 +
Izveidot shēmu Xilinx ICE rīkā, kompilēt to un pārbaudīt tās darbību uz jums izsniegtā "dēļa" - Spartan attīstītājrīka.
 +
 +
==== MD2 ====
 +
Mērķis: apgūt takts ģeneratora funkcionalitāti un frekvences dalīšanas elementus.
 +
 +
Uzdevums:
 +
* Izveidot shēmu kas ņem Spartan-3E rīka iebūvētā takts ģeneratora signālu un izvada 1Hz signālu uz LED: tā, ka LED ir 1 sekundi ieslēgta un tad 1 sekundi izslēgta, un tā joprojām.
 +
* Kompilēt risinājumu un pārbaudīt darbībā uz Spartan-3E attīstītājrīka.
 +
 +
 +
 +
<!--
 
* [[DIPb10:MD1 | MD1]]
 
* [[DIPb10:MD1 | MD1]]
 
* [[DIPb10:MD2 | MD2]]
 
* [[DIPb10:MD2 | MD2]]
 
* [[DIPb10:MD3 | MD3]]
 
* [[DIPb10:MD3 | MD3]]
 
* [[DIPb10:MD4 | MD4]]
 
* [[DIPb10:MD4 | MD4]]
 +
-->
  
 
== Kursa projekti (KP) ==
 
== Kursa projekti (KP) ==

Latest revision as of 09:49, 11 October 2019

Ievads digitālajā projektēšanā (DIP)

LU DF bakalaura studiju kurss DatZ3074, meklēt eStudijās.


Kurss šajā semestrī tiks vadīts attālināti, tāpēc klātienes lekcijas nebūs, izņemot kad iepriekš paziņots.

Wiki informācija tiks atjaunota tuvākajās dienās. Līdz tam lūdzu sekot kursa slack kanālam.


Darbu iesniegšana un vērtēšana

Praktisko un mājas darbu iesniegšana izpildāma noteiktajos datumos un laikos elektroniski.

  • Iesniegšanas termiņa laiks ir 30 minūtes pirms lekcijas sākuma.
  • e-pasta Subj. jānorāda sekojošā formā "DIP MD1 Vards Uzvards" - piemērs MD1 iesniegumam.
  • Iesniegto failu vārdam arī jābūt līdzīga formātā, bet ar svītru tukšumu vietā, piemēram: "DIP_MD1_Vards_Uzvards.pdf"
  • Ja iesniedzams teksts, piemēram, eseja vai apraksts, tad failam jābūt PDF formātā, ja vien nav prasīts citādi uzdevuma nosacījumos.
  • Ja iesniedzami vairāki faili, piemēram, programmas pirmkods, tad tie iepriekš arhivējami kā *.zip arhīvs ar tādu pat faila vārdu kā aprakstīts iepriekš: "DIP_MD1_Vards_Uzvards.zip".
  • Ja darbs tiek iesniegts ar novēlošanos, rezultāts tiek samazināts par 50%. Ja darbs iesniegts vairāk kā nedēļu pēc termiņa, pasniedzējs darbu var nepieņemt.


Kalendārs

Datumi Kursa saturs Uzdevumi
06.09.2019
Ievadlekcija. Digitālās projektēšanas process.

Praktiskais darbs PD1.

13.09.2019
Digitālo iekārtu izstrādes pamatelementi. Xilinx Spartan 3E.

Praktiskais darbs PD2.

20.09.2019
Trigeri. Pulkstenis.

Praktiskais darbs PD3.

27.09.2019
CPU. DataPath. ALU.

Praktiskais darbs PD4.

4.10.2019
CPU. DataPath (turpinājums). Instrukciju izpildes maģistrāle.

Praktiskais darbs PD5.

Kursa projekts KP1

11.10.2019
Aparatūras apraksta valodas. Verilog.

CPU. DataPath (turpinājums). Zarošanās. Kontrole. Praktiskajos darbos turpinām strādāt pie kursa projekta KP1.

18.10.2019
Verilog (turpinājums). Galīgs Stāvokļu Automāts (FSM)

CPU. DataPath (nobeigums). Ātrāks summators. Reģistru fails.

Praktiskajos darbos veidojam VGA kontroleri [1]

25.10.2019
Atmiņa. Fiziskās realizācijas varianti.

Kursa projekts KP2

01.11.2019
Vientakts Procesors.

Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.

Termiņš KP1: 1. daļa

08.11.2019
  • Vidus semestra kontroldarbs
  • Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.
15.11.2019

Ekskursija HansaMatrix uzņēmumā, lekciju laikā. Lūdzu ierasties laicīgi 8:30 sekojošā adresē: Ziedleju iela 1, Mārupe, LV2167. Tas ir samērā netālu no t/c "Spice". Uzņēmumā jūs sagaidīs un jums parādīs un pastāstīs digitālās projektēšanas praktiskos aspektus un realitāti.

Aparatūras apraksta valodas. VHDL. Kursa projekts KP2

22.11.2019
Kopnes, saskarnes, to iedalījums.

Integrálo mikroshému kopnes. Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.

29.11.2019
Daudztaktu procesors.

Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.

Multicycle CPU PDF 455.60KB (lekciju slaidi no Case Western Reserve University)

06.12.2019
Daudztaktu procesors (nobeigums).

Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.

Designing a Pipelined CPU PDF 116.22KB (lekciju slaidi no San Diego Supercomputer Center)

13.12.2019
FPGA.

Praktiskajos darbos turpinām strādāt pie kursa projekta KP2.

How Does FPGA Work PDF 1.06MB (lekciju slaidi no Lund University)

23.12.2019 - 01.01.2020
Ziemassvētku un Jaungada brīvdienas
xx.01.2020

xx:xx: Eksāmens

Projektu prezentācijas - kursa noslēgums

Praktiskie darbi (PD)

Mājas darbi (MD)

MD1

Mērķis: apgūt Spartan-3E attīstītājrīku un darba plūsmu veidojot vienkāršas digitālas iekārtas.

Realizēt sekojošu funkcionalitāti ar Spartan-3E rīka palīdzību:

  • Divi slēdzīši tiek izmantoti kā ieejas signāli loģikas funkcijām.
  • Divi LED seko slēdzīšu stāvoklim: ja ieslēgts slēdzis, LED spīd (nozīmē stāvokli "1")
  • Pieci LED attēlo sekojošu funkciju vērtības: AND, OR, NAND, NOR, XOR

Izveidot shēmu Xilinx ICE rīkā, kompilēt to un pārbaudīt tās darbību uz jums izsniegtā "dēļa" - Spartan attīstītājrīka.

MD2

Mērķis: apgūt takts ģeneratora funkcionalitāti un frekvences dalīšanas elementus.

Uzdevums:

  • Izveidot shēmu kas ņem Spartan-3E rīka iebūvētā takts ģeneratora signālu un izvada 1Hz signālu uz LED: tā, ka LED ir 1 sekundi ieslēgta un tad 1 sekundi izslēgta, un tā joprojām.
  • Kompilēt risinājumu un pārbaudīt darbībā uz Spartan-3E attīstītājrīka.



Kursa projekti (KP)

Literatūra


Digital design textbooks @ Digilent Inc.

Saites

Xilinx produkti (FPGA čipi)

Xilinx attīstītajrīki

DiLab ir pieejami sekojoši Xilinx (Digilent) attīstītajrīki:

Xilinx ISE WebPACK (14.7)

Papildus:

Xilinx ISE WebPACK (12.2)

Video applications using FPGA

HDL tutorials

IP cores priekš FPGA


Ieteikumi prezentāciju veidošanā

Piezīmes par plakātu un prezentāciju veidošanu

Atsauksmes par kursu


Citi kursi un saites

Domu graudi

FPGA pielietojumi