LU-DIP-m12:index
Digitālā projektēšana [M] (DIP)
LU DF maģistru un doktorantu studiju kurss DatZ7034, meklēt eStudijās.
Par kursu
Kursa sākumā jāpiesakās attiecīgajai google-grupai, lai varētu sekot aktualitātēm un piedalīties virtuālās (neklātienes) diskusijās.
Februāra un marta mēnešos kurss notiks eksperimentālā, virtuālā režīmā. Tas nozīmē, ka studentu klātbūtne nav fiziski nepieciešama, bet nepieciešams sekot kursa portālam, ziņu kopai un pildīt uzdevumus.
Administratīvā informācija
- Pasniedzējs: Leo Seļāvo (epasts: vards.uzvards @ gmail.com)
- Vēstkopa komunikācijai par kursa aktualitātēm, uzdevumiem, termiņiem un problēmām:
- Google grupa lu-dip-m@googlegroups.com Lai pieteiktos, sekot http://groups.google.lv/group/lu-dip-m un pieslēgties ar savu google kontu, vai arī sūtīt epastu pasniedzējam.
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.
- 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
Datums, nedēļa | Kursa saturs | Uzdevumi un piezīmes |
---|---|---|
09.02.2012. |
Digitālā projektēšana (DIP)Ievads. Pielietojumi. Pamati. Iekartas, moduļi, loģiskie elementi un tranzistori. Tranzistora darbības modelis un pielietojums loģikas elementu izveidošanai. Enerģijas patēriņa kritēriji. Zema enerģijas patēriņa programmēšana un Gray kodi. Loģisku iekārtu projektēšana: tabulas, normālformas un shēmas. Praktiskie darbi - loģiskas funkcijas realizācija uz FPGA ar slēdžiem un LED kā ārējām iekārtām. Kursa materiāli: |
|
16.02.2012. - 29.03.2012. |
Virtuālās lekcijas (studenti piedalās neklātienē). | |
22.03.2012. |
Digitālu iekārtu prototipēšana(Virtuālā lekcija) Digitālie attīstītājrīki un to iespējas. Spartan 3E FPGA attīstītājrīks (development board). Kursa materiāli:
|
MD1 -
Termiņš: 12.04.2012 |
29.03.2012. |
Digitālu iekartu aprakstīšanas valodas(Virtuālā lekcija) Hardware description languages (HDL). Verilog un VHDL. Kursa materiāli:
|
MD2 -
Termiņš: 12.04.2012 |
05.04.2012. | Lieldienu brīvdienas | |
12.04.2012. |
Kursa pārskats un kursa projekts(Klātienes lekcija!) Līdz šim apskatītās tēmas un perspektīva kursā. Kursa projekta definēšana. Mini-datora projekts ar VGA, RAM, PS/2 un CPU moduļiem. |
Jāiesniedz MD1 un MD2. Paziņots MD3. |
19.04.2012. |
Instrukciju kopas arhitektūra(Virtuālā lekcija) Instrukciju kopas arhitektūra. Atvērtie procesoru kodoli priekš Spartan 3E FPGA. Kursa materiāli:
|
Jāiesniedz MD3 |
26.04.2012. |
Procesora arhitektūra(Klātienes lekcija!) Procesora arhitektūra. Reģistru fails, ALU. Instrukciju reģistrs un dekodētājs. IP reģistrs. Nulles reģistrs. Datu plūsma un tās kontrole. Zīmes paplašinātājs. Konveijera izpilde un tās tipiskās fāzes. | |
03.05.2012. |
FPGA uzbūve. Veiktspējas uzlabošana.FPGA arhitektūra un uzbūve. CLB. IOB. Konfigurējama komutācija (interconnect). FPGA uzbūves optimizācijas aspekti. CPU veiktspēja saistībā ar koda kompilātoriem. Spekulatīva izpilde. "Branch prediction". "Value prediction". "Trace caches" un "Value caches". Enerģijjas patēriņa optimizācijas. "Clock gating". "Voltage scaling". |
Paziņots MD4 - FPGA dizains. |
10.05.2012. |
Procesora veiktspējaCPU veiktspējas uzlabošana. Superskalāras arhitektūras. Vairāki paralēli izpildāmi ALU un citi moduļi. Mūra likums. Ievads kešatmiņās un lokalitātes princips. Datu un instrukciju kešatmiņas. |
Jāiesniedz MD4
|
17.05.2012. |
Datu kopnesWishbone kopne. Resursu arbitrācija. Atmiņas pieejas saskarne. |
|
24.05.2012. |
Atmiņas arhitektūraAtmiņas masīvi. Statiskā un dinamiskā atmiņa. |
|
21.06.2012. | 10:30 Eksāmens - projektu demonstrācija un plakāti. Pārcelts uz 27.06 ! | |
27.06.2012. | 10:30 Eksāmens - projektu demonstrācija un plakāti. |
MD
Mājas darbi.
MD1
Izvērtēt Spartan 3E pielietojumu mini-datora izstrādei.
Uzrakstīt esseju vienas lapas apjomā, kas atbild uz šādiem jautājumiem mini-datora projektēšanas kontekstā:
- Kādi resursi pieejami uz Spartan 3E attīstītājrīka
- Vai attīstītājrīka FPGA ietilpība ir atbilstoša minidatora izstrādei?
- Kādi parametri būtu šādam mini-datoram? Piemēram, ātrums, vārda platums, atmiņas apjoms...
- Kādas perifērijas iekartas šāds dators atbalstītu?
- Kādu operētājsistēmu būtu iespējams darbināt uz šī prototipa?
Mājas darbu iesniegt kā pdf failu pa epastu saskaņā ar kursa noteikumiem.
MD2
Tuvojoties Lieldienām aicinu tām gatavoties un uzbūvēt šūpoles ("lai odi nekož") ... ar FPGA vadību, lietojot Verilog.
Šūpoles varat veidot vienā no diviem variantiem:
- Variants A: Šūpoles ir LED gaismiņas uz dēļa, kas periodiski "skrien" uz vienu pusi un atpakaļ.
- Variants B: Šūpoles ir reālas šūpoles (piemēram, modelis ka būvets no LEGO Technics vai Mindstorms, kas pieejami DiLab), ko kustina servo motors (arī pieejams DiLab), kuru vada FPGA. Šajā gadījumā jums jāizstrādā iekārta kas ģenerē attiecīgus signālus servo motora vadībai. Tie ir impulsi ar laikā mainīgu garumu. Sīkāka informācja atrodama lasot dokumentus par servo motoru vadību.
Noklusētais svārstību perioda garums - 1 sekunde.
Bonusa punkti:
- +10% - kustības ātrumu regulē ar rotējošo pogu uz FPGA "dēļa". Pa labi - ātrāk, pa kreisi - lēnāk. Ar pogas piespiešanu vai slēdzi tiek iestadīts noklusētais ātrums.
- +20% - kustība ir reālistiska, abos galos šūpoles kustas lēnāk un pa vidu visātrāk. Ātrumus un paātrinājumus aprēķināt pēc fizikas likumiem.
Mājas darbs tiek ieskaitīts pēc demonstrācijas praktiso darbu laikā. Tad iesūtāmi arī arhivēti projekta izejas koda faili.
Termiņš - pēc Lieldienām.
MD3
Eseja par kursa projekta moduļu uzbūvi: VGA, Atmiņas kontrolieris, PS/2 klaviatūra un CPU. Esejā aprakstīt arhitektūru, īpašības un konkretizēt saskarni attiecīgajiem moduļiem. Īpašu vērību pievērst CPU instrukciju kopas arhitektūras izvēlei.
MD4
Izstrādāt projektu FPGA arhitektūrai, tai skaitā CLB shēmu, balstoties uz lekcijas materiāliem un diskusiju.
- Parametri: 4x4 CLB matrica. Katrā CLB 3 ieeju LUT un viens Flip-Flop trigeris.
- Mērķis: minimizēt elementu, komutācijas vadu un konfigurācijas bitu skaitu.
- Iesniegt kā pdf dokumentu:
- attēlu ar FPGA arhitektūru
- attēlu ar CLB arhitektūru
- aprakstu un resursu novērtējumu (konfigurācijas biti uz CLB, komutāciju un kopā) ne vairāk kā 1 lpp.
Saites
Digital design textbooks @ Digilent Inc.
- Introduction to Digital Design - Verilog Edition PDF 5.81MB
- Introduction to Digital Design - VHDL Edition PDF 6.68MB
- Real Digital - A hands-on approach to digital design
- Module 1: Introduction to Electronic Circuits PDF 465.54KB
- Module 2: Introduction to Digilent's Digital Design Circuit Boards PDF 65.94KB
- Module 3: Circuit Structure with an Introduction to CAD Tools PDF 247.60KB
- Module 4: Logic Minimization PDF 353.07KB
- Module 5: Introduction to VHDL PDF 197.37KB
- Module 6: Combinational Circuit Blocks PDF 244.46KB
- Module 7: Combinational Arithmetic Circuits PDF 361.00KB
- Module 8: Signal Propagation Delays PDF 126.77KB
- Module 9: Basic Memory Circuits PDF 232.41KB
- Module 10: The Structural Design of Sequential Circuits PDF 245.58KB
Xilinx ISE WebPACK 12.2
- Installer for Linux TAR/GZ 3.02GB (nepieciešams reģistrēties www.xilinx.com)
- Installer for Windows TAR/GZ 2.96GB (nepieciešams reģistrēties www.xilinx.com)
- ISE In-Depth Tutorial PDF 5.04MB
- ISE Design Suite: Logic Edition – A Quick Tour WMV 47.50MB
- ISim User Guide PDF 1.96MB
- How to Use the ISE Simulator (ISim) WMV 40.90MB
Xilinx attīstītajrīki
DiLab ir pieejami sekojoši Xilinx (Digilent) attīstītajrīki:
- Spartan-3E
Video applications using FPGA
HDL tutorials
- Verilog Tutorial I (10 pages) PDF 69.58KB
- Verilog Tutorial II (227 pages) PDF 876.25KB
- VHDL Tutorial I (15 pages)
- VHDL Tutorial II (84 pages) PDF 391.95KB
IP cores priekš FPGA
- LatticeMicro 32 soft-procesors