
    

    <?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://ocw.cs.pub.ro/courses/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://ocw.cs.pub.ro/courses/feed.php">
        <title>CS Open CourseWare apm:laboratoare</title>
        <description></description>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <image rdf:resource="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico" />
       <dc:date>2026-04-19T20:10:33+03:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/00?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/009?rev=1765302850&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/01?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/02?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/03?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/04?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/05?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/06?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/07?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/08?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/09?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/10?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/11?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/12?rev=1709211989&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/apm/laboratoare/xx?rev=1709211989&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico">
        <title>CS Open CourseWare</title>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <url>http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico</url>
    </image>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/00?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 00 - Recapitulare</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/00?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 00 - Recapitulare



În acest laborator vom recapitula noțiuni învățate la SOC și ne vom familiariza cu programul Vivado.




	*  Laborator 1 SOC
	*  Laborator 2 SOC





Vivado

 Vivado Design Suite e un pachet software dezvoltat de compania Xilinx (achiziționată de AMD) pentru a programa FPGA-uri.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/009?rev=1765302850&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-09T19:54:10+03:00</dc:date>
        <title>Laboratorul 09 - Configurări</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/009?rev=1765302850&amp;do=diff</link>
        <description>Laboratorul 09 - Configurări

Cheatsheet

GPIO

Folosind GPIO (General-Purpose Input/Output) putem controla un pin al unui circuit integrat. De exemplu, putem aprinde un led folosind instrucțiuni AVR sau putem citi starea unui pin - LOW sau HIGH. Pinii ce suportă GPIO sunt grupați în porturi (grupuri de 8 pini logici numite A sau B) controlate de registre speciale (pe câte 8 biți):</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/01?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 01 - Memorii</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/01?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 01 - Memorii



În acest laborator vom învăța despre memorii. Vom implementa memorii de tip ROM și RAM în Verilog, apoi ne vom familiariza cu scheletul de laborator pe care îl vom folosi în cadrul următoarelor laboratoare pentru implementarea unui microcontroller.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/02?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 02 - ISA 1: Operații simple</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/02?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 02 - ISA 1: Operații simple



În acest laborator vom învăța ce este un procesor și un Instruction Set Architecture (ISA). Vom învăța cum funcționează arhitectura AVR (Harvard) și vom începe implementarea procesorului nostru prin a decodifica și executa câteva operații simple.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/03?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 03 - ISA 2: Acces la Memorie</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/03?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 03 - ISA 2: Acces la Memorie





0. Friendly reminders

Cum citim un datasheet? AVR ISA

add R5, R3
  Bit index    15    14    13    12    11    10    9    8    7    6    5    4    3    2    1    0    Bit value    0    0    0    1    1    1    1    1    0    1    0    1    0    0    1    1    Bit significance    opcode    Rr    Rd       Rr  
RrRdR16-&gt;R31
add R21, R19add R5, R3</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/04?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 04 - ISA 3: Instrucțiuni de control și stiva</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/04?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 04 - ISA 3: Instrucțiuni de control și stiva





0. Introducere

În acest laborator vom studia 2 tipuri noi de instrucțiuni din cadrul ISA: instrucțiuni de control și instrucțiuni care lucrează cu stiva.

	*  Instrucțiunile de control sunt importante deoarece determină ordinea în care sunt executate celelalte instrucțiuni din cadrul unui program. Ordinea de execuție este dată de salturi la diferite adrese în memoria ROM unde se află secvențele de program.
	*  Instrucțiunile care luc…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/05?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 05 - ISA 4: Apelul funcțiilor</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/05?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 05 - ISA 4: Apelul funcțiilor



În laboratorul 4 am menționat că din categoria instrucțiunilor de salt fac parte instrucțiunile ce apelează rutine și instrucțiuni care lucrează cu stiva. În continuare vom studia aceste instrucțiuni, dar și alte instrucțiuni și noțiuni necesare atunci când lucrăm cu funcții.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/06?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 06 - GPIO: Intrări &amp; Ieșiri</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/06?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 06 - GPIO: Intrări &amp; Ieșiri



În acest laborator vom învăța ce este GPIO, cum este implementat în microcontroller-ul ATTiny20 și îl vom adăuga implementării noastre a acestui controller.



1. Ce este GPIO?

GPIO (General-Purpose Input/Output) este calitatea unui pin al unui circuit integrat de a-i putea fi controlat comportamentul, adică direcția de trecere a curentului electric prin el și valoarea acestuia, într-un mod programatic. Astfel, noi putem să configurăm un pin pentru a '…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/07?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 07 - Timer</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/07?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 07 - Timer



În acest laborator vom învăța ce este și cum funcționează un timer/counter și vom adăuga un astfel de modul implementării noastre a microcontroller-ului ATtiny20.



Timer/Counter

În esență, un timer este un simplu numărător implementat în hardware:</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/08?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 08 - Întreruperi</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/08?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 08 - Întreruperi



În acest laborator vom înțelege cum funcționează întreruperile și vom implementa un sistem minimal de întreruperi pentru procesorul nostru AVR. Vom demonstra funcționalitatea lor folosind o rutină de tratare a întreruperilor de timer.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/09?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 08 - Întreruperi</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/09?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 08 - Întreruperi



În acest laborator vom înțelege cum funcționează întreruperile și vom implementa un sistem minimal de întreruperi pentru procesorul nostru AVR. Vom demonstra funcționalitatea lor folosind o rutină de tratare a întreruperilor de timer.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/10?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 10 - Recapitulare</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/10?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 10 - Recapitulare



În acest laborator ne propunem să definitivăm conceptele învățate pe parcursul semestrului, reamintindu-ne etapele prin care am trecut în construirea procesorului nostru.

În plus, vom analiza câte un model pentru colocviu și pentru problema de examen.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/11?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 11.</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/11?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 11.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/12?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul 12.</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/12?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul 12.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/apm/laboratoare/xx?rev=1709211989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T15:06:29+03:00</dc:date>
        <title>Laboratorul XX - Model laborator</title>
        <link>http://ocw.cs.pub.ro/courses/apm/laboratoare/xx?rev=1709211989&amp;do=diff</link>
        <description>Laboratorul XX - Model laborator



În acest laborator vom învăța despre memorii, vom implementa memorii ROM si RAM, si vom construi o aplicație simplă folosind o memorie.



Capitol

Ceva util și educațional.

Subcapitol

Încă ceva util și educațional.</description>
    </item>
</rdf:RDF>
