Difference between revisions of "LU-DIP-b"

From DiLab
Jump to: navigation, search
(Kalendārs)
(xx.xx.2020)
(2 intermediate revisions by the same user not shown)
Line 34: Line 34:
  
 
PD: Iepazīšanās ar PYNQ platformu.
 
PD: Iepazīšanās ar PYNQ platformu.
<!--
 
Praktiskais darbs [[DIPb10:PD1 | PD1]].
 
-->
 
  
 
|
 
|
Line 46: Line 43:
  
 
PD: PYNQ platforma.
 
PD: PYNQ platforma.
<!--
 
Praktiskais darbs [[DIPb10:PD2 | PD2]].
 
-->
 
  
 
|
 
|
Line 56: Line 50:
 
| [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]].
+
 
  
 
|
 
|
Line 64: Line 58:
 
| [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]].
+
 
  
 
|
 
|
Line 72: Line 66:
 
| [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.]
  
Praktiskais darbs [[DIPb10:PD5 | PD5]].
 
  
Kursa projekts [[DIPb10:KP1 | KP1]]
+
 
 
|
 
|
 
|-
 
|-
Line 82: Line 75:
 
[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]].
+
 
 
|
 
|
 
|-
 
|-
Line 90: Line 83:
 
[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.]
  
Praktiskajos darbos veidojam VGA kontroleri [https://drive.google.com/open?id=0B55VrJN-wdIgak5QbmItSHBiTG8]
 
  
 
|
 
|
Line 97: Line 89:
 
===== xx.xx.2020 =====
 
===== xx.xx.2020 =====
 
| [http://selavo.lv/kursi/dip/L11-Memory.1.02.pdf Atmiņa. Fiziskās realizācijas varianti.]
 
| [http://selavo.lv/kursi/dip/L11-Memory.1.02.pdf Atmiņa. Fiziskās realizācijas varianti.]
Kursa projekts [[DIPb10:KP2 | KP2]]
+
 
 
|
 
|
 
|-
 
|-
Line 103: Line 95:
 
===== xx.xx.2020 =====
 
===== xx.xx.2020 =====
 
| [https://courses.cs.washington.edu/courses/cse378/10sp/lectures/lec09-perf.pdf Vientakts Procesors.]
 
| [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]].
+
 
 
|
 
|
'''Termiņš KP1''': 1. daļa
+
 
<!-- '''Termiņš [[#MD1]]''': loģikas funkcijas no slēdžiem uz LED -->
 
 
|-
 
|-
 
|
 
|
Line 117: Line 108:
 
[https://drive.google.com/open?id=0B55VrJN-wdIgYjhWQkxFbXNJbUE Integrālo mikroshēmu kopnes.]
 
[https://drive.google.com/open?id=0B55VrJN-wdIgYjhWQkxFbXNJbUE Integrālo mikroshēmu kopnes.]
  
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP2 | KP2]].
 
  
<!--
 
 
* '''Vidus semestra kontroldarbs'''  
 
* '''Vidus semestra kontroldarbs'''  
-->
+
 
 
|  
 
|  
 
|-
 
|-
Line 145: Line 134:
 
[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)  
  
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
 
|
 
|
 
|-
 
|-
Line 154: Line 142:
 
Projektu statusa atskaite, diskusija.
 
Projektu statusa atskaite, diskusija.
  
Turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
  
 
|
 
|
Line 164: Line 151:
 
[http://selavo.lv/kursi/dip/L12-MulticycleCPU.1.01.pdf Daudztaktu procesors.]
 
[http://selavo.lv/kursi/dip/L12-MulticycleCPU.1.01.pdf Daudztaktu procesors.]
  
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
 
|
 
|
 
|-
 
|-
Line 175: Line 161:
 
[https://cseweb.ucsd.edu/classes/su06/cse141/slides/s09-pipeline-1up.pdf Designing a Pipelined CPU] (lekciju slaidi no UCSD)
 
[https://cseweb.ucsd.edu/classes/su06/cse141/slides/s09-pipeline-1up.pdf Designing a Pipelined CPU] (lekciju slaidi no UCSD)
  
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
 
|
 
|
 
|-
 
|-
Line 183: Line 168:
 
Kursa kopsavilkums.
 
Kursa kopsavilkums.
  
Praktiskajos darbos turpinām strādāt pie kursa projekta [[DIPb10:KP3 | KP2]].
 
 
|
 
|
 
|-
 
|-
 
|
 
|
  
===== xx.xx.2020 - xx.xx.2010 =====
+
===== xx.xx.2020 - xx.xx.2021 =====
 
| Ziemassvētku un Jaungada brīvdienas  
 
| Ziemassvētku un Jaungada brīvdienas  
 
|
 
|
Line 195: Line 179:
 
===== xx.xx.2021 =====
 
===== xx.xx.2021 =====
 
|  
 
|  
'''12:00: Eksāmens'''  
+
'''xx:xx: Eksāmens'''  
  
 
Projektu prezentācijas - kursa noslēgums
 
Projektu prezentācijas - kursa noslēgums

Revision as of 09:28, 18 September 2020

Īssaites: Kalendārs | Uzdevumi | Resursi | Šodiena... (ja ir lekcija)


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, e-studijās.

  • Iesniegšanas termiņa laiks ir 30 minūtes pirms lekcijas sākuma.
  • Ja darbs iesniedzams e-pastā, tad Subj. jānorāda sekojošā formā "DIP MD1 Vards Uzvards" - piemērs MD1 iesniegumam.
  • Iesniegto failu vārdam jābūt sekojošā formātā, 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
11.09.2020
Ievadlekcija. Digitālās projektēšanas process.

PD: Iepazīšanās ar PYNQ platformu.

18.09.2020

Digitālo iekārtu izstrādes pamatelementi.

PD: PYNQ platforma.

25.09.2020
Trigeri. Pulkstenis.


xx.xx.2020
CPU. DataPath. ALU.


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


xx.xx.2020
Aparatūras apraksta valodas. Verilog.

CPU. DataPath (turpinājums). Zarošanās. Kontrole.

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

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


xx.xx.2020
Atmiņa. Fiziskās realizācijas varianti.
xx.xx.2020
Vientakts Procesors.
xx.xx.2020

Kopnes, saskarnes, to iedalījums.

Integrālo mikroshēmu kopnes.


  • Vidus semestra kontroldarbs
xx.xx.2020

Aparatūras apraksta valodas. VHDL. Kursa projekts KP2

xx.xx.2020

FPGA uzbūve un izstrādes dzīves cikls. Map, place, route.

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

xx.xx.2020

Projektu statusa atskaite, diskusija.


xx.xx.2020

Daudztaktu procesors.

xx.xx.2020

Daudztaktu procesors (nobeigums).

Designing a Pipelined CPU (lekciju slaidi no UCSD)

xx.xx.2020

Kursa kopsavilkums.

xx.xx.2020 - xx.xx.2021
Ziemassvētku un Jaungada brīvdienas
xx.xx.2021

xx:xx: Eksāmens

Projektu prezentācijas - kursa noslēgums

Uzdevumi

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)

Resursi


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:


PMOD papildus moduļi

Mums ir pieejami dažādi PMOD perifērijas iekārtu moduļi (pārsvarā 1x6 formātā) par kuriem sīkāk var lasīt Digilentic portālā.

Xilinx ISE instalācija

Xilinx ISE WebPACK (14.7)

Xilinx ISE WebPACK (12.2)

Xilinx ISE lietošana

Vispārīga lietošana

Simulācija ar ISim

Simulācija ar ModelSim

Video applications using FPGA

ANVYL attīstītājrīks

ANVYL ir Xilinx Spartan 6G FPGA bāzēts attīstītājrīks ar dažādām papildus un perifērijas iekārtām.

PYNQ ietvars

PYNQ ir ietvars kas iespējo FPGA aparatūras funkciju izmantošanu ar Python programmēšanas valodu. Atbalstītā aparatūra iekļauj ZYNQ.

PYNQ informācijas avoti:

PYNQ projekti

PYNK un PMOD

HDL pamācības (Verilog, VHDL)

RISC-V

Seriālie protokoli

IP cores priekš FPGA


Ieteikumi prezentāciju veidošanā

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

Citi kursi un saites

  • 8 Bit Workshop - aparatūras simulators pārlūkā, tai skaitā Verilog.

Domu graudi

FPGA pielietojumi